/* Shared PHAZOR palette. Legacy token aliases in panel-theme.css resolve here. */
:root{color-scheme:dark;--bg:#101112;--bg-2:#151719;--surface:#1b1e20;--surface-2:#24282a;--ink:#f4f5f5;--ink-2:#a4acad;--ink-3:#778183;--line:#343a3c;--line-2:#525b5d;--cyan:#c9f66f;--violet:#b0a1fa;--magenta:#b0a1fa;--acid:#c9f66f;--grad:linear-gradient(90deg,#f4f5f5,#f4f5f5);--font-sans:'Space Grotesk',ui-sans-serif,system-ui,'Segoe UI',sans-serif;--font-mono:'JetBrains Mono',ui-monospace,monospace;--header-height:74px}
body{background:var(--bg);color:var(--ink);font-family:var(--font-sans)}
a,button,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--violet);outline-offset:4px}
::selection{background:var(--violet);color:var(--bg)}
.site-header,.site-header.scrolled{background:rgba(16,17,18,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(15px);box-shadow:none}
.nav-shell{gap:23px}
.brand{gap:10px;font-weight:700;letter-spacing:.06em;font-size:16px}
.brand-mark{width:32px;height:32px;padding:7px;background:var(--paper);border-radius:9px;fill:var(--bg)}
.brand-build{padding:4px 6px;border-radius:4px;background:var(--surface-2);color:var(--ink-3);font-size:8px;letter-spacing:.08em}
.desktop-nav a,.nav-link{color:var(--ink-2);font-size:12px}
.desktop-nav a:hover,.nav-link:hover{color:var(--ink)}
.desktop-nav a:after,.nav-link:after{background:var(--violet)}
.guest-actions{gap:9px}
.button{border-radius:9px;font-size:13px;box-shadow:none}
.button-primary,.button-light{background:var(--paper);color:var(--bg);border-color:transparent;box-shadow:none}
.button-primary:hover,.button-light:hover{background:var(--violet);color:var(--bg)}
.button-primary:disabled,.button-light:disabled{background:var(--surface-2);color:var(--ink-3)}
#downloadLauncher,#downloadLauncherSecondary,#bootstrapAdminButton{background:var(--lime);color:var(--bg)}
#downloadLauncher:hover,#downloadLauncherSecondary:hover,#bootstrapAdminButton:hover{background:#d8ff90}
.button-outline{border-color:var(--line);background:transparent;color:var(--ink-2)}
.button-outline:hover{background:var(--surface-2);border-color:var(--line-2);color:var(--ink)}
.mobile-menu{background:var(--bg);border-bottom-color:var(--line)}
.mobile-menu a{color:var(--ink-2)}
.mobile-menu a:hover{color:var(--ink)}
.auth-grid,.auth-halo,.buy-grid,.buy-glow{display:none}
.auth-view{padding:calc(var(--header-height) + 42px) 0 65px;min-height:100vh;background:var(--bg)}
.auth-shell{width:min(100% - 64px,1080px);max-width:1080px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:30px 72px;align-items:start}
.auth-back{grid-column:1/-1;margin:0;color:var(--ink-3);font-size:12px;width:fit-content}
.auth-back:hover{color:var(--ink)}
.auth-intro{padding:24px 0 0;background:none}
.auth-eyebrow{display:flex;gap:9px;margin-inline:0;font-family:var(--font-mono);font-size:10px;color:var(--ink-3);letter-spacing:.09em;justify-content:flex-start;margin-bottom:20px}
.auth-eyebrow span{flex:none;width:6px;height:6px;border-radius:50%;background:var(--violet)}
.auth-eyebrow span:last-child{display:none}
.auth-intro h1{background:none;color:var(--ink);font-size:clamp(44px,5.2vw,65px);font-weight:600;letter-spacing:-.05em;line-height:1.05;margin-bottom:22px}
.auth-intro>p{font-size:14px;line-height:1.7;color:var(--ink-2);max-width:400px}
.auth-art{height:210px;margin-top:30px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.auth-art img{width:100%;height:100%;object-fit:cover;object-position:center 53%}
.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:none}
.auth-card:before,.auth-card:after{display:none}
.auth-tabs{background:var(--bg);padding:4px;border:1px solid var(--line);border-radius:9px;box-shadow:none;margin-bottom:25px}
.auth-tabs button{border-radius:6px;color:var(--ink-2);font-size:12px}
.auth-tabs button[aria-selected=true]{background:var(--paper);color:var(--bg);box-shadow:none}
.form-heading span{font-size:24px;letter-spacing:-.025em;font-weight:600}
.form-heading p{color:var(--ink-2);font-size:12px}
.auth-form>label,.settings-form>label{color:var(--ink-2);font-size:12px}
.auth-form input,.settings-form input,.dialog-input-wrap input{background:var(--bg);border:1px solid var(--line);color:var(--ink);border-radius:8px;box-shadow:none}
.auth-form input::placeholder{color:var(--ink-3)}
.password-field button{color:var(--ink-3)}
.password-field button:hover{color:var(--ink)}
.auth-submit{height:46px;border-radius:9px;background:var(--paper);color:var(--bg);font-size:13px;font-weight:600;box-shadow:none}
.auth-submit:hover{background:var(--violet);filter:none}
.auth-submit:disabled{opacity:.55}
.auth-foot{border-color:var(--line);color:var(--ink-3);font-size:11px;line-height:1.6}
.check-control input:checked+span{background:var(--lime)}
.check-control input:checked+span:after{border-color:var(--bg)}
.check-control input:focus-visible+span{outline:2px solid var(--violet);outline-offset:3px}
.form-error{color:var(--red);font-size:12px;line-height:1.5}
.buy-view{background:var(--bg);padding-top:calc(var(--header-height) + 42px)}
.buy-back{margin-bottom:36px;font-size:12px;color:var(--ink-3)}
.buy-back:hover{color:var(--ink)}
.buy-heading{margin-bottom:32px;gap:35px}
.buy-kicker{font-size:10px;color:var(--ink-3)}
.buy-kicker i,.checkout-live i{background:var(--lime);box-shadow:none}
.buy-heading h1{font-size:clamp(42px,5.5vw,66px);font-weight:600;letter-spacing:-.05em;line-height:1.02;color:var(--ink)}
.buy-heading h1 span{color:var(--violet)}
.buy-heading>p{color:var(--ink-2);font-size:13px}
.buy-layout{grid-template-columns:minmax(0,1fr) 360px;gap:24px}
.tariff-card{min-height:128px;grid-template-columns:90px minmax(0,1fr) auto 20px;gap:18px;padding:23px;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:none}
.tariff-card:hover{background:var(--surface-2);border-color:var(--line-2);transform:none}
.tariff-card.selected{background:var(--surface);border-color:var(--paper);box-shadow:inset 3px 0 var(--paper)}
.tariff-code{color:var(--ink-3);font-size:9px}
.tariff-main b{font-size:20px;font-weight:600;color:var(--ink)}
.tariff-main small{font-size:11px;color:var(--ink-2)}
.tariff-price{color:var(--ink);font-size:28px}
.tariff-select{border-color:var(--line-2)}
.tariff-card.selected .tariff-select{background:var(--lime);border-color:var(--lime);box-shadow:none}
.tariff-card.selected .tariff-select:after{border-color:var(--bg)}
.checkout-card{background:var(--paper);color:var(--bg);padding:25px;border:0;border-radius:16px;box-shadow:none}
.checkout-head{border-color:#d2d8cf;color:#737b74}
.checkout-live{color:#6d7766;font-size:9px}
.checkout-total span{color:#6b746b}
.checkout-total strong{color:var(--bg);font-weight:600;font-size:34px;letter-spacing:-.045em}
.buy-promo-label{color:#475045}
.buy-promo-label span,.buy-promo-hint{color:#727b6f}
.buy-promo-control{border:1px solid #cbd3c7;background:#e5eae1;border-radius:8px;box-shadow:none}
.buy-promo-control input{background:transparent;color:var(--bg);font-size:12px}
.buy-promo-control input::placeholder{color:#7d8779}
.buy-promo-control>span{color:#798572}
.buy-promo-hint.invalid{color:#a04947}
.payment-label{color:#727b6f}
.payment-option{background:#e5eae1;border-color:#d3dacd;color:#6c7765;border-radius:9px}
.payment-option small{color:#7f8979}
.payment-option-active{background:var(--bg);border-color:var(--bg);color:var(--ink)}
.payment-option-active small{color:var(--ink-2)}
.payment-icon,.funpay-icon{background:#d4dccd;color:#69765e;border-radius:6px}
.payment-option-active .funpay-icon{background:var(--paper);color:var(--bg)}
.payment-option em{background:#d8dfd2;color:#8a9582;font-size:8px}
.checkout-card .checkout-button{background:var(--lime);color:var(--bg);border:0;border-radius:9px;box-shadow:none}
.checkout-card .checkout-button:hover{background:#b8e65e}
.checkout-note{color:#737c70;font-size:10px}
.toast,.action-dialog{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:0 16px 45px rgba(0,0,0,.3)}
.action-dialog h2{letter-spacing:-.025em}
.action-dialog::backdrop{background:rgba(0,0,0,.65)}
@media(max-width:1050px){.desktop-nav a{padding-inline:8px}.nav-shell{gap:16px}.buy-layout{grid-template-columns:minmax(0,1fr) 320px;gap:18px}.tariff-card{grid-template-columns:minmax(0,1fr) auto 18px;gap:14px;padding:20px}.tariff-code{grid-column:1/-1}.auth-shell{gap:25px 45px;grid-template-columns:minmax(0,1fr) 410px}}
@media(max-width:980px){.desktop-nav{display:none}.menu-button{display:grid}.nav-shell{width:calc(100% - 42px)}.auth-shell{width:calc(100% - 48px);gap:25px 32px;grid-template-columns:minmax(0,1fr) 390px}.auth-intro h1{font-size:48px}.auth-card{padding:25px}.auth-art{height:180px}}
@media(max-width:800px){.auth-shell{grid-template-columns:1fr;max-width:510px;width:calc(100% - 40px);gap:25px}.auth-intro{padding:0}.auth-intro h1{font-size:42px;margin-bottom:15px}.auth-intro>p{font-size:13px}.auth-art{display:none}.auth-eyebrow{margin-bottom:15px}.auth-view{padding-top:calc(var(--header-height) + 28px)}.buy-layout{grid-template-columns:1fr}.buy-heading{display:block}.buy-heading>p{margin-top:20px;max-width:550px}.buy-view{padding-top:calc(var(--header-height) + 30px)}.checkout-card{margin-top:8px}.tariff-card{grid-template-columns:minmax(0,1fr) auto 20px;min-height:115px}.checkout-total strong{font-size:38px}}
@media(max-width:560px){:root{--header-height:64px}.nav-shell{width:calc(100% - 32px);gap:12px}.brand{font-size:14px;gap:8px}.brand-mark{width:29px;height:29px}.brand-build{display:none}.guest-actions .button-small{font-size:11px;padding:7px 11px;min-height:32px}.nav-link{font-size:11px;padding:7px 9px}.guest-actions{gap:2px}.user-actions{gap:0}.user-actions .nav-link{padding:7px}.auth-card{padding:23px}.auth-tabs{margin-bottom:23px}.auth-intro h1{font-size:39px}.auth-form input{font-size:16px}.form-row{gap:12px;flex-wrap:wrap}.terms-control{line-height:1.6}.buy-heading h1{font-size:43px}.buy-back{margin-bottom:27px}.tariff-main b{font-size:18px}.tariff-main small{font-size:10px}.tariff-price{font-size:26px}.checkout-card{padding:23px}.tariff-card{padding:19px}.buy-promo-control input{font-size:16px}}
@media(max-width:380px){.guest-actions>.nav-link{display:none}.brand{font-size:13px}.nav-shell{gap:8px}.auth-shell{width:calc(100% - 32px)}.auth-card{padding:20px}.auth-intro h1{font-size:36px}.user-actions .nav-link{font-size:10px;padding:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
