/* Single light theme. Dark mode and theme switching intentionally removed. */
.login-overlay { z-index: 2000 !important; }

:root {
    color-scheme: light;
    /* shared theme tokens */
    --theme-bg: #fbf8f4;
    --theme-bg-alt: #f4f7fb;
    --theme-text: #352d27;
    --theme-muted: #7f756d;
    --theme-border: rgba(214, 205, 196, .78);
    --theme-surface: rgba(255, 255, 255, .72);
    --theme-surface-strong: rgba(255, 255, 255, .88);
    --theme-surface-soft: rgba(255, 251, 247, .58);
    --theme-input: rgba(255, 255, 255, .82);
    --theme-accent: #f59bb1;
    --theme-accent-soft: rgba(245, 155, 177, .12);
    --theme-blue: #5e7fa9;
    --theme-blue-soft: rgba(94, 127, 169, .12);
    --theme-green: #5fa973;
    --theme-green-soft: rgba(95, 169, 115, .12);
    --theme-red: #d36a6a;
    --theme-red-soft: rgba(211, 106, 106, .12);
    --theme-shadow: 0 10px 26px rgba(74, 63, 53, .07);
    --theme-shadow-soft: 0 6px 16px rgba(74, 63, 53, .05);
    --theme-overlay: rgba(249, 245, 240, .50);
    --theme-primary: #58483c;
    --theme-primary-text: #ffffff;
    --theme-secondary-bg: rgba(255, 255, 255, .62);
    --theme-secondary-text: #352d27;
    --theme-secondary-border: rgba(214, 205, 196, .86);
    --theme-glass-blur: blur(14px) saturate(140%);
    --theme-scrollbar-thumb: #c8bbb0;
    --theme-scrollbar-track: #f3ede8;

    --site-header-bg: rgba(251, 248, 244, .78);
    --site-header-border: rgba(214, 205, 196, .72);
    --site-header-brand: #352d27;
    --site-header-pill-bg: rgba(255, 255, 255, .72);
    --site-header-pill-border: rgba(214, 205, 196, .82);
    --site-header-pill-text: #352d27;
    --site-header-pill-hover-bg: rgba(255, 255, 255, .95);
    --site-header-pill-hover-border: rgba(245, 155, 177, .72);
    --site-header-pill-active-bg: #352d27;
    --site-header-pill-active-border: #352d27;
    --site-header-pill-active-text: #ffffff;

    /* original template tokens forced for light theme */
    --bg: #fbf8f4;
    --main-text: #4a3f35;
    --text: #4a3f35;
    --ink: #4a3f35;
    --muted-text: #8d8177;
    --muted: #8d8177;
    --accent: #f59bb1;
    --accent-soft: #fff1f5;
    --soft-white: #ffffff;
    --border-color: #e6ddd4;
    --border: #e6ddd4;
    --line: #e6ddd4;
    --warm-card: #faf5ef;
    --blue: #5e7fa9;
    --blue-soft: #eef5ff;
    --green: #5fa973;
    --green-soft: #f3fbf5;
    --danger: #d36a6a;
    --red-soft: #fff1f1;
    --pink: #fff1f5;
    --pink2: #fff1f5;
    --shadow: 0 10px 26px rgba(74, 63, 53, .07);
    --card-shadow: 0 10px 26px rgba(74, 63, 53, .07);
    --button-shadow: 0 6px 16px rgba(74, 63, 53, .05);
    --action-bg: #58483c;
    --action-text: #ffffff;
    --action-hover: #463930;
}


html {
    background:
        radial-gradient(circle at 12% 0%, rgba(222, 205, 212, .08) 0, transparent 30%),
        radial-gradient(circle at 88% 10%, rgba(120, 130, 150, .08) 0, transparent 28%),
        linear-gradient(180deg, var(--theme-bg) 0%, var(--theme-bg-alt) 100%) !important;
}

body {
    background:
        radial-gradient(circle at 12% 0%, rgba(222, 205, 212, .08) 0, transparent 30%),
        radial-gradient(circle at 88% 10%, rgba(120, 130, 150, .08) 0, transparent 28%),
        linear-gradient(180deg, var(--theme-bg) 0%, var(--theme-bg-alt) 100%) !important;
    color: var(--theme-text) !important;
}

html, body, .site-header, .site-header__nav a,
.card, .panel, .hero-card, .hero-main, .hero-visual, .price-card, .faq-card, .support-card,
.paper, .article, .head, input, textarea, select, button, .policy-card, .term-card,
.contact-card, .traffic-note, .notice, .subscribe, .empty, .bubble, .message-bubble,
.footer-links a {
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

h1, h2, h3, h4, h5, h6, strong, b, .title, .logo, .brand { color: var(--theme-text) !important; }
p, li, span, small, label, .muted, .lead, .hint, .small, .subtitle, .sub, .desc, .meta, .footer { color: inherit; }

.card,
.hero-card,
.hero-main,
.hero-visual,
.stats,
.intro-card,
.country-card,
.country-card-mini,
.price-card,
.promo-banner,
.faq-card,
.blog-home-card,
.blog-home-subscribe,
.tariff-switch,
.selected-tariff,
.desktop-screen,
.step-card,
.sub-data-item,
.device-item,
.pay-opt,
.reward-card,
.platform-guide,
.install-choice,
.install-mode-panel,
.browser-pill,
.platform-link,
.email-verify-card,
.panel,
.metric,
.user-card,
.subpanel,
.stat,
.post,
.paper,
.bubble,
.subscribe,
.head,
.article,
.support-card,
.ticket-card,
.contact-card,
.summary-item,
.detail,
.privacy-cat,
.support-cat,
.terms-cat,
.stamp,
.page-tabs,
.chart-kpi,
.chart-tabs,
.create-sub-result,
.login-card,
.check,
.drop,
.admin-pill,
.ref-container,
.price-display,
.success-banner,
.hero-side,
.hero-cat,
.top,
.back,
.share,
.login-form,
.sheet,
.modal,
.dialog,
.box,
.pane,
.policy-card,
.term-card,
.notice,
.traffic-note,
.empty,
.footer-links a {
    background: var(--theme-surface) !important;
    color: var(--theme-text) !important;
    border-color: var(--theme-border) !important;
    box-shadow: var(--theme-shadow) !important;
    -webkit-backdrop-filter: var(--theme-glass-blur);
    backdrop-filter: var(--theme-glass-blur);
}

.policy-card.wide,
.term-card.wide,
.contact-card,
.notice,
.traffic-note,
.share {
    background: linear-gradient(135deg, var(--theme-surface-strong), var(--theme-surface-soft)) !important;
}

.hero-side,
.privacy-cat,
.support-cat,
.terms-cat {
    background: linear-gradient(145deg, color-mix(in srgb, var(--theme-blue-soft) 70%, var(--theme-surface-strong)), color-mix(in srgb, var(--theme-accent-soft) 70%, var(--theme-surface-strong))) !important;
}

.eyebrow,
.tag,
.badge,
.label,
.status-pill,
.lock-badge {
    background: color-mix(in srgb, var(--theme-blue-soft) 72%, var(--theme-surface-strong)) !important;
    color: var(--theme-blue) !important;
    border-color: color-mix(in srgb, var(--theme-blue) 18%, var(--theme-border)) !important;
}

.push-btn,
.btn,
.btn-main,
.primary-button,
.login-form button,
#send-btn,
#verify-btn,
input[type="submit"],
input[type="button"],
button:not(.secondary):not(.page-tab):not(.install-choice):not(.pay-opt):not(.platform-link):not(.back):not(.tariff-option) {
    background: var(--theme-primary) !important;
    color: var(--theme-primary-text) !important;
    border-color: var(--theme-primary) !important;
    box-shadow: var(--theme-shadow-soft) !important;
}

button.secondary,
.btn.secondary,
.logout-btn,
.pill,
.mini,
.text-button,
.platform-link,
.page-tab,
.install-choice,
.pay-opt,
.back,
.footer-links a {
    background: var(--theme-secondary-bg) !important;
    color: var(--theme-secondary-text) !important;
    border-color: var(--theme-secondary-border) !important;
}

.page-tab.active,
.install-choice.active,
.pay-opt.active,
.tariff-option.active,
.active-chip,
.current,
.site-header__nav a.active,
.site-header__nav a[aria-current="page"] {
    background: var(--theme-primary) !important;
    color: var(--theme-primary-text) !important;
    border-color: var(--theme-primary) !important;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
textarea,
select,
.input,
.field {
    background: var(--theme-input) !important;
    color: var(--theme-text) !important;
    border-color: var(--theme-border) !important;
    caret-color: var(--theme-text);
    -webkit-text-fill-color: var(--theme-text);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
    -webkit-backdrop-filter: blur(12px) saturate(135%);
    backdrop-filter: blur(12px) saturate(135%);
}
input::placeholder, textarea::placeholder { color: var(--theme-muted) !important; opacity: 1; }
option { background: var(--theme-surface-strong); color: var(--theme-text); }
input:focus, textarea:focus, select:focus {
    border-color: color-mix(in srgb, var(--theme-accent) 44%, var(--theme-border)) !important;
    outline: none;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-accent) 14%, transparent) !important;
}
input[autocomplete="one-time-code"], input.code, #cabinet-code, #admin-code {
    background: var(--theme-input) !important;
    color: var(--theme-text) !important;
    -webkit-text-fill-color: var(--theme-text) !important;
    border-color: var(--theme-border) !important;
    font-variant-numeric: tabular-nums;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--theme-text) !important;
    -webkit-box-shadow: 0 0 0 1000px var(--theme-input) inset !important;
    box-shadow: 0 0 0 1000px var(--theme-input) inset !important;
    transition: background-color 99999s ease-out 0s;
}

.metric.good, .ok, .notice.ok, .push-on { background: var(--theme-green-soft) !important; border-color: color-mix(in srgb, var(--theme-green) 46%, var(--theme-border)) !important; color: var(--theme-green) !important; }
.metric.warn { background: var(--theme-accent-soft) !important; border-color: color-mix(in srgb, var(--theme-accent) 36%, var(--theme-border)) !important; }
.metric.info { background: var(--theme-blue-soft) !important; border-color: color-mix(in srgb, var(--theme-blue) 38%, var(--theme-border)) !important; color: var(--theme-blue) !important; }
.badge.pub { background: var(--theme-green-soft) !important; color: var(--theme-green) !important; }
.error, .notice.err, .push-off, .expired-banner, .status.err { background: var(--theme-red-soft) !important; border-color: color-mix(in srgb, var(--theme-red) 38%, var(--theme-border)) !important; color: var(--theme-red) !important; }
.status:not(.ok):not(.err), .notice:not(.ok):not(.err), .push-status { background: transparent !important; color: var(--theme-muted) !important; border-color: transparent !important; box-shadow: none !important; }
.status.ok { color: var(--theme-green) !important; }
.lead, .muted, .small, .hint, .card p, .hero p, .policy-card p, .term-card p, .notice p, .contact-card p, .empty, .push-status { color: var(--theme-muted) !important; }
.more, .footer a, .contact-card a { color: var(--theme-text) !important; }

.email-verification-overlay,
.login-overlay {
    background: transparent !important;
    -webkit-backdrop-filter: blur(18px) saturate(112%) !important;
    backdrop-filter: blur(18px) saturate(112%) !important;
}
code, pre, kbd { background-color: var(--theme-secondary-bg) !important; color: var(--theme-text) !important; }
a:not(.site-header__brand):not(.site-header__nav a) { color: inherit; }
* { scrollbar-color: var(--theme-scrollbar-thumb) var(--theme-scrollbar-track); }

/* Subscription/install page: explicit light/dark polish. */
.desktop-screen {
    background: transparent !important;
    color: #3f3730 !important;
}
.page-lead,
.step-head p,
.sub-data-label,
.device-date,
.device-item-placeholder,
.install-choice span,
.install-subtitle,
.mini-title,
.reward-card p,
.platform-guide ol,
.legal-footer,
#ref-link {
    color: #8a7d74 !important;
}
.page-tabs {
    background: rgba(255,255,255,.84) !important;
    border-color: #e5dcd3 !important;
    box-shadow: 0 8px 22px rgba(74,63,53,.055) !important;
}
.page-tab {
    background: transparent !important;
    color: #5b5047 !important;
    box-shadow: none !important;
}
.page-tab.active {
    background: #4a4038 !important;
    color: #fff !important;
    border-color: #4a4038 !important;
    box-shadow: 0 7px 18px rgba(74,63,53,.14) !important;
}
.step-card,
.reward-card,
.platform-guide,
.sub-data-item,
.device-item,
.slider-block,
.price-display,
.ref-container,
.email-verify-card {
    background: rgba(255,255,255,.88) !important;
    color: #3f3730 !important;
    border-color: #e5dcd3 !important;
    box-shadow: 0 8px 24px rgba(74,63,53,.055) !important;
}
.step-card:nth-of-type(2n) {
    background: linear-gradient(160deg, rgba(255,255,255,.95), rgba(245,249,253,.92)) !important;
}
.install-choice {
    background: rgba(255,255,255,.88) !important;
    color: #3f3730 !important;
    border-color: #e5dcd3 !important;
    box-shadow: 0 7px 18px rgba(74,63,53,.045) !important;
}
.install-choice.active {
    background: #f7f1ec !important;
    color: #3f3730 !important;
    border-color: #bdaea2 !important;
    box-shadow: 0 8px 20px rgba(74,63,53,.08) !important;
}
.install-choice.active strong,
.install-choice.active span {
    color: #3f3730 !important;
}
.install-choice .mini-icon {
    background: #f7eef1 !important;
    color: #5a4a43 !important;
    border-color: #eadde0 !important;
}
.system-pill,
.browser-pill,
.platform-link,
.text-button {
    background: rgba(255,255,255,.90) !important;
    color: #4a4038 !important;
    border-color: #e5dcd3 !important;
    box-shadow: 0 5px 14px rgba(74,63,53,.04) !important;
}
.system-pill {
    background: #f6f1ec !important;
    color: #4a4038 !important;
}
.primary-button,
.copy-btn {
    background: #4a4038 !important;
    color: #fff !important;
    border-color: #4a4038 !important;
    box-shadow: 0 8px 18px rgba(74,63,53,.10) !important;
}
.primary-button:hover,
.copy-btn:hover {
    background: #342d28 !important;
}
.footer-links a {
    background: rgba(255,255,255,.88) !important;
    color: #4a4038 !important;
    border-color: #e5dcd3 !important;
    box-shadow: none !important;
}
.legal-footer {
    border-top-color: #e5dcd3 !important;
}


/* Tariff switch: readable light-theme state. */
.tariff-switch {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}
button.tariff-option {
    box-shadow: none !important;
    opacity: 1 !important;
}
button.tariff-option {
    background: #fffdfb !important;
    color: #352d27 !important;
    border: 2px solid #e3d8cf !important;
}
button.tariff-option b {
    color: #352d27 !important;
    -webkit-text-fill-color: #352d27 !important;
}
button.tariff-option span {
    color: #81756b !important;
    -webkit-text-fill-color: #81756b !important;
}
button.tariff-option.active {
    background: #58483c !important;
    color: #ffffff !important;
    border-color: #58483c !important;
}
button.tariff-option.active b {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
button.tariff-option.active span {
    color: #eadfd7 !important;
    -webkit-text-fill-color: #eadfd7 !important;
}


button.tariff-option:hover {
    transform: translateY(-1px);
    filter: brightness(1.02);
}


/* Support / content alignment helpers */
.field-input,
.field-textarea {
    background: var(--theme-input) !important;
    color: var(--theme-text) !important;
    border-color: var(--theme-border) !important;
}

.ticket-error {
    color: var(--theme-red) !important;
}

#ticket-messages > div,
.ticket-message,
.message-item {
    background: var(--theme-surface-soft) !important;
    border: 1px solid var(--theme-border) !important;
    border-radius: 16px;
    padding: 12px 14px;
}

.support-cat,
.privacy-cat,
.terms-cat,
.hero-side {
    box-shadow: var(--theme-shadow) !important;
}


@media (max-width: 980px) {
    .support-cat, .privacy-cat, .terms-cat, .hero-side {
        width: 100%;
        max-width: 420px;
        margin: 0 auto;
    }
}


/* Force the single light theme even when the OS/browser prefers dark colors. */
html, body { color-scheme: light !important; }
