/* XORA Console UI (preview skin). Loaded last; everything scoped to html.xc so removing the class restores the old look. */
@font-face{font-family:"XC Display";src:url(/assets/console/fonts/space-grotesk.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"XC Text";src:url(/assets/console/fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"XC Mono";src:url(/assets/console/fonts/jetbrains-mono.woff2) format("woff2");font-weight:100 800;font-display:swap}
html.xc{
  --bg:#08080A;--card:#121214;--surface:#19191C;--border:rgba(var(--xc-a),.20);--text:#F3F1EC;--muted:#B3AEA4;
  --xc-glow:0 0 0 2px rgba(var(--xc-a),.55),0 8px 32px rgba(var(--xc-b),.35);
  --xc-ease:cubic-bezier(.2,.8,.2,1);
  --font-head:"XC Display",system-ui,sans-serif;
  background:var(--bg);color-scheme:dark;
}
html.xc body{font-family:"XC Text",system-ui,-apple-system,"Segoe UI",sans-serif!important;background:
  radial-gradient(90% 60% at 50% -10%,rgba(var(--xc-b),.16),transparent 60%),
  radial-gradient(60% 40% at 100% 100%,rgba(var(--xc-a),.06),transparent 60%),var(--bg)!important;
  background-attachment:fixed!important;color:var(--text);-webkit-font-smoothing:antialiased}
html.xc :is(h1,h2,h3,.font-display){font-family:"XC Display",system-ui,sans-serif!important;letter-spacing:-.01em}
html.xc .gold-gradient-text{background:var(--xc-grad)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
html.xc :is(code,kbd,.mono,.xora-engine-badge){font-family:"XC Mono",ui-monospace,monospace}
html.xc .screen p{max-width:75ch}
/* Desktop: hide old sidebar (kept in DOM), floating console dock everywhere */
html.xc .sidebar-desktop{display:none!important}
html.xc .main-content{margin-left:0!important;padding-bottom:110px!important}
html.xc .main-content>.screen,html.xc .main-content>section{max-width:1200px;margin-inline:auto}
html.xc .mobile-bottom-bar{display:flex!important;left:50%!important;right:auto!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;transform:translateX(-50%);
  width:min(560px,calc(100% - 20px));border-radius:24px;border:1px solid var(--border)!important;background:rgba(16,19,28,.78)!important;
  backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 12px 40px rgba(0,0,0,.55)!important;padding:6px!important;contain:layout paint}
html.xc .mobile-bottom-bar>button{flex:1;min-height:56px;border-radius:18px!important;color:var(--muted)!important;font-weight:600;letter-spacing:.02em;
  transition:background .18s var(--xc-ease),color .18s,transform .12s var(--xc-ease),box-shadow .18s}
html.xc .mobile-bottom-bar>button:is([aria-current="page"],.xc-on){color:#fff!important;background:linear-gradient(180deg,rgba(var(--xc-b),.28),rgba(var(--xc-a),.08))!important;box-shadow:inset 0 0 0 1px rgba(var(--xc-a),.35)}
html.xc .mobile-bottom-bar>button:active{transform:scale(.94)}
/* Header: console status bar */
html.xc header.sticky{background:rgba(7,8,13,.72)!important;border-bottom:1px solid var(--border)!important;backdrop-filter:blur(16px)}
html.xc .xc-logo{width:28px;height:28px;flex:0 0 28px;display:block}
/* Room rail (console tabs) */
.xc-rail{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:10px 16px 6px;max-width:1200px;margin:0 auto;scroll-snap-type:x mandatory;min-height:54px}
.xc-rail::-webkit-scrollbar{display:none}
.xc-tab{scroll-snap-align:start;flex:0 0 auto;height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);
  font:600 13px/1 "XC Display",system-ui,sans-serif;letter-spacing:.03em;cursor:pointer;transition:all .18s var(--xc-ease)}
.xc-tab[aria-current="page"]{color:var(--bg);background:var(--xc-grad);border-color:transparent;box-shadow:0 4px 18px rgba(var(--xc-b),.4)}
/* Cards / panels */
html.xc :is(.card,.glass-card,.stat-card,.rounded-xl,.rounded-2xl){border-radius:20px}
html.xc :is(.card,.glass-card,.stat-card){background:linear-gradient(180deg,rgba(255,255,255,.03),transparent),var(--card)!important;border:1px solid var(--border)!important;
  transition:transform .18s var(--xc-ease),box-shadow .18s,border-color .18s}
html.xc :is(.card,.glass-card,.stat-card,.more-item,.xc-tile):is(:hover,:focus-visible){border-color:rgba(var(--xc-a),.45)!important;box-shadow:var(--xc-glow)}
html.xc :focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px}
html.xc .btn-gold{background:var(--xc-grad)!important;color:var(--bg)!important;border:none!important;font-weight:700;border-radius:14px!important}
html.xc :is(input,select,textarea){background:var(--surface)!important;border:1px solid var(--border)!important;color:var(--text)!important;border-radius:14px!important;min-height:44px}
html.xc :is(input,select,textarea):focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(var(--xc-a),.18)!important}
/* Screen transitions: slide + fade, direction set by JS. Transform/opacity only => no layout shift */
html.xc .screen.active{animation:xc-in .28s var(--xc-ease) both}
html.xc.xc-back .screen.active{animation-name:xc-in-back}
@keyframes xc-in{from{opacity:0;transform:translate3d(24px,0,0)}to{opacity:1;transform:none}}
@keyframes xc-in-back{from{opacity:0;transform:translate3d(-24px,0,0)}to{opacity:1;transform:none}}
/* Room hub (the "More" sheet becomes a PS5-style tile hub) */
html.xc #mob-more-sheet .more-backdrop{background:rgba(4,5,9,.8);backdrop-filter:blur(10px)}
html.xc #mob-more-sheet .more-panel{background:var(--card);border:1px solid var(--border);max-width:980px;margin:0 auto;border-radius:28px 28px 0 0;padding:20px 18px calc(24px + env(safe-area-inset-bottom));animation:xc-up .3s var(--xc-ease) both}
@keyframes xc-up{from{transform:translate3d(0,40px,0);opacity:0}to{transform:none;opacity:1}}
html.xc #mob-more-sheet .grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:12px!important}
html.xc #mob-more-sheet .more-group-label{grid-column:1/-1;font:700 11px "XC Display";letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:8px 0 0}
html.xc #mob-more-sheet .more-item{flex-direction:column;align-items:flex-start;justify-content:space-between;aspect-ratio:1/1;min-height:0;padding:16px;border-radius:20px;
  background:radial-gradient(120% 90% at 0 0,rgba(var(--xc-b),.18),transparent 60%),var(--surface);transition:transform .16s var(--xc-ease),box-shadow .16s}
html.xc #mob-more-sheet .more-item .em{font-size:28px}
html.xc #mob-more-sheet .more-item small{display:block;color:var(--muted);font-size:12px;margin-top:4px;line-height:1.35}
html.xc #mob-more-sheet .more-item:active{transform:scale(.96)}
/* Phase 1: no packs / chance items shown anywhere in the hub */
html.xc #mob-more-sheet .more-item:is([data-more-screen="packs"],[data-more-screen="livebreak"]){display:none!important}
/* AI rooms: game-room framing */
html.xc :is(#screen-nova,#far-room){position:relative}
html.xc .xc-roombar{display:flex;align-items:center;gap:10px;padding:12px 14px;margin-bottom:12px;border-radius:20px;border:1px solid rgba(var(--xc-a),.3);
  background:linear-gradient(120deg,rgba(var(--xc-a),.10),rgba(var(--xc-b),.10) 50%,rgba(var(--xc-b),.08))}
html.xc .xc-roombar strong{font:700 15px "XC Display";letter-spacing:.04em}
html.xc .xc-roombar .xc-live{width:8px;height:8px;border-radius:50%;background:#00E5A8;box-shadow:0 0 10px #00E5A8}
html.xc .xc-exit{margin-left:auto;height:36px;padding:0 14px;border-radius:12px;background:var(--surface);border:1px solid var(--border);color:var(--text);font-weight:600;cursor:pointer}
html.xc #far-room{border:1px solid rgba(var(--xc-a),.25);border-radius:22px;padding:12px;background:var(--card)}
html.xc .far-pick{border-radius:16px!important;min-height:52px}
html.xc .xc-press{animation:xc-press .22s var(--xc-ease)}
@keyframes xc-press{50%{box-shadow:0 0 0 4px rgba(var(--xc-a),.35)}}
@media (prefers-reduced-motion:reduce){html.xc *,html.xc *::before,html.xc *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Static copy of easy-start sign-in rules so the sign-in card does not jump when that script runs (CLS fix) */
.auth-pitch{list-style:none;margin:18px 0 0;padding:0;text-align:left;display:grid;gap:10px}
.auth-pitch li{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;line-height:1.45;color:#D9CFBE}
.auth-pitch li strong{color:#F0E6D3;font-weight:700}
.auth-pitch svg{flex:none;width:34px;height:34px;padding:7px;border-radius:10px;background:rgba(201,162,39,0.10);border:1px solid rgba(201,162,39,0.28);fill:none;stroke:#E8C55A;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
html.xc #auth-screen{background:radial-gradient(90% 60% at 50% -10%,rgba(var(--xc-b),.18),transparent 60%),var(--bg)!important}
html.xc #auth-card{background:var(--card)!important;border-color:var(--border)!important}
html.xc #auth-card .auth-logo{width:230px;height:48px;max-width:100%}
html.xc .auth-pitch svg{stroke:#7DF9FF;background:rgba(var(--xc-a),.08);border-color:rgba(var(--xc-a),.28)}
html.xc .auth-btn{background:var(--xc-grad)!important}
/* Hub: tiles wrap in every group container */
html.xc #mob-more-sheet :has(> .more-item){display:flex!important;flex-wrap:wrap!important;gap:12px!important}
html.xc #mob-more-sheet :has(> .more-item)>.more-item{flex:1 1 150px;max-width:220px;width:auto}
html.xc #mob-more-sheet :has(> .more-item)>:not(.more-item){flex:0 0 100%}
html.xc #mob-more-sheet .more-item{aspect-ratio:auto!important;min-height:118px!important}
html.xc #header-title-c3d4,html.xc .screen h1,html.xc .screen h2.font-display{background:var(--xc-grad)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
html.xc a[href="/legal/packs.html"]{display:none!important}

/* ===== Themes (html[data-xt]); default Vault ===== */
html.xc,html.xc[data-xt="vault"]{--xc-a:212,175,85;--xc-b:150,112,40;--accent:#E3C27A;--gold:#E3C27A;--on-accent:#0B0904;
  --xc-grad:linear-gradient(120deg,#F4DE9C,#D4AF55 45%,#9C7330);--bg:#09080A;--card:#141210;--surface:#1B1815;--text:#F5EFE2;--muted:#BDB3A0}
html.xc[data-xt="chrome"]{--xc-a:205,210,218;--xc-b:120,126,138;--accent:#E6E9EE;--gold:#E6E9EE;--on-accent:#0A0B0D;
  --xc-grad:linear-gradient(120deg,#FFFFFF,#C9CED6 40%,#7E8592 70%,#E9ECF0);--bg:#060708;--card:#111315;--surface:#181B1E;--text:#F2F4F7;--muted:#AEB4BD}
html.xc[data-xt="patina"]{--xc-a:196,120,74;--xc-b:79,163,142;--accent:#D98A55;--gold:#D98A55;--on-accent:#0D0806;
  --xc-grad:linear-gradient(120deg,#E8A06A,#B8683C 45%,#5FAE98);--bg:#0A0908;--card:#15120F;--surface:#1D1915;--text:#F0E7DC;--muted:#B9AC9C}
html.xc[data-xt="volt"]{--xc-a:46,140,255;--xc-b:0,210,255;--accent:#3FA2FF;--gold:#5BB2FF;--on-accent:#02060D;
  --xc-grad:linear-gradient(120deg,#8FE3FF,#2E8CFF 50%,#1446D8);--bg:#04060B;--card:#0C1119;--surface:#121926;--text:#EEF4FF;--muted:#A7B4C9}
html.xc[data-xt="patina"] body{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.012' numOctaves='4' seed='3'/%3E%3CfeColorMatrix values='0 0 0 0 .3  0 0 0 0 .64  0 0 0 0 .56  0 0 0 .5 -.18'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E"),radial-gradient(90% 60% at 50% -10%,rgba(var(--xc-a),.14),transparent 60%),var(--bg)!important}
html.xc .btn-gold,html.xc .xc-tab[aria-current="page"]{color:var(--on-accent)!important}
html.xc .mobile-bottom-bar>button:is([aria-current="page"],.xc-on){color:var(--text)!important}
/* Theme switcher */
.xc-themes{display:flex;gap:6px;align-items:center;flex:0 0 auto;padding-left:6px;border-left:1px solid var(--border);margin-left:4px}
.xc-sw{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;flex:0 0 30px}
.xc-sw[aria-pressed="true"]{border-color:var(--text);box-shadow:0 0 0 3px rgba(var(--xc-a),.35)}
.xc-sw[data-t="vault"]{background:conic-gradient(#0B0904 0 50%,#D4AF55 0)}
.xc-sw[data-t="chrome"]{background:conic-gradient(#0A0B0D 0 50%,#C9CED6 0)}
.xc-sw[data-t="patina"]{background:conic-gradient(#0D0806 0 50%,#B8683C 0 75%,#5FAE98 0)}
.xc-sw[data-t="volt"]{background:conic-gradient(#02060D 0 50%,#2E8CFF 0)}
.xc-sw[data-t="ink"]{background:conic-gradient(#050407 0 50%,#E8C55A 0 80%,#F4EBD8 0)}
.xc-logo{width:auto!important;height:28px!important;flex:0 0 auto!important}
/* Toasts: one at a time, above the dock */
#toast-container{bottom:calc(96px + env(safe-area-inset-bottom))!important;right:50%!important;transform:translateX(50%);width:min(440px,calc(100% - 24px))}
#toast-container>.xora-toast:not(:last-child){display:none!important}
html.xc .xora-toast{background:var(--card)!important;border:1px solid var(--border)!important;color:var(--text)!important;border-radius:16px!important}
/* Founder SI room as a full-screen game room */
html.xc body.xc-in-room #far-room{position:fixed;inset:0;z-index:3200;border-radius:0;padding:calc(14px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));
  background:radial-gradient(80% 50% at 50% 0,rgba(var(--xc-a),.16),transparent 70%),var(--bg);animation:xc-room-in .32s var(--xc-ease) both}
@keyframes xc-room-in{from{opacity:0;transform:scale(1.03)}to{opacity:1;transform:none}}
html.xc body.xc-in-room #far-room #far-msgs{max-width:75ch;width:100%;margin:0 auto}
html.xc body.xc-in-room #far-form{max-width:820px;width:100%;margin:0 auto}
html.xc body.xc-in-room .mobile-bottom-bar{display:none!important}
html.xc #far-back{font-weight:700!important;color:var(--text)!important;border-color:rgba(var(--xc-a),.5)!important}
/* ===== Nexus (founder moodboard, default): night-city navy, chrome, electric-blue neon ===== */
html.xc[data-xt="nexus"]{--xc-a:59,140,255;--xc-b:150,200,255;--accent:#5FB0FF;--gold:#8CC8FF;--on-accent:#030814;
  --xc-grad:linear-gradient(180deg,#FFFFFF,#D5DCE8 42%,#7C889C 52%,#C4CDDB 64%,#F2F5FA);
  --bg:#03060F;--card:rgba(9,16,34,.86);--surface:#0D1730;--text:#EEF3FF;--muted:#A9B8D6;--border:rgba(59,140,255,.38)}
html.xc[data-xt="nexus"] body{background:
  linear-gradient(180deg,rgba(3,6,15,0) 55%,#03060F 92%),
  repeating-linear-gradient(90deg,transparent 0 46px,rgba(59,140,255,.05) 46px 47px),
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='260' viewBox='0 0 600 260'%3E%3Cg fill='%230A1430'%3E%3Crect x='0' y='120' width='40' height='140'/%3E%3Crect x='46' y='70' width='30' height='190'/%3E%3Crect x='84' y='140' width='54' height='120'/%3E%3Crect x='146' y='40' width='26' height='220'/%3E%3Crect x='180' y='100' width='60' height='160'/%3E%3Crect x='250' y='150' width='34' height='110'/%3E%3Crect x='292' y='60' width='44' height='200'/%3E%3Crect x='344' y='120' width='30' height='140'/%3E%3Crect x='382' y='20' width='36' height='240'/%3E%3Crect x='426' y='130' width='58' height='130'/%3E%3Crect x='492' y='80' width='30' height='180'/%3E%3Crect x='530' y='110' width='70' height='150'/%3E%3C/g%3E%3Cg fill='%233B8CFF' opacity='.5'%3E%3Crect x='52' y='90' width='3' height='3'/%3E%3Crect x='152' y='70' width='3' height='3'/%3E%3Crect x='300' y='90' width='3' height='3'/%3E%3Crect x='390' y='50' width='3' height='3'/%3E%3Crect x='500' y='110' width='3' height='3'/%3E%3Crect x='200' y='130' width='3' height='3'/%3E%3C/g%3E%3C/svg%3E") bottom center/1200px auto repeat-x,
  radial-gradient(70% 45% at 50% 0,rgba(59,140,255,.22),transparent 70%),#03060F!important;background-attachment:fixed!important}
/* Sci-fi framed panels: angled corners, thin neon border, corner brackets */
html.xc[data-xt="nexus"] :is(.card,.glass-card,.stat-card,.xc-panel){border-radius:4px!important;border:1px solid rgba(59,140,255,.45)!important;
  clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);
  background:linear-gradient(#5FB0FF,#5FB0FF) top left/22px 2px no-repeat,linear-gradient(#5FB0FF,#5FB0FF) top left/2px 22px no-repeat,
    linear-gradient(#5FB0FF,#5FB0FF) bottom right/22px 2px no-repeat,linear-gradient(#5FB0FF,#5FB0FF) bottom right/2px 22px no-repeat,
    linear-gradient(180deg,rgba(59,140,255,.10),rgba(9,16,34,.9) 40%),var(--card)!important;box-shadow:inset 0 0 24px rgba(59,140,255,.10)}
html.xc[data-xt="nexus"] .gold-gradient-text,html.xc[data-xt="nexus"] #header-title-c3d4{letter-spacing:.08em;text-transform:uppercase}
html.xc[data-xt="nexus"] .xc-tab{border-radius:3px;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);border-color:rgba(59,140,255,.4)}
html.xc[data-xt="nexus"] .xc-tab[aria-current="page"]{background:linear-gradient(180deg,#1D4FA8,#0E2A63);color:#fff!important;box-shadow:0 0 16px rgba(59,140,255,.6)}
html.xc[data-xt="nexus"] .mobile-bottom-bar{border-radius:6px!important;border-color:rgba(59,140,255,.5)!important}
.xc-sw[data-t="nexus"]{background:conic-gradient(#03060F 0 50%,#C9D2E0 0 75%,#3B8CFF 0)}
/* Home console deck */
.xc-deck{display:grid;gap:14px;margin:4px 0 18px}
.xc-hero{display:flex;justify-content:center;padding:6px 0 2px}
.xc-hero img{width:min(300px,78vw);height:auto;aspect-ratio:360/270}
.xc-mods{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none}
.xc-mod{scroll-snap-align:start;display:flex;flex-direction:column;min-height:168px;padding:0;text-align:left;cursor:pointer;color:var(--text);border:1px solid var(--border);background:var(--card);overflow:hidden}
.xc-mod h3{margin:0;padding:10px 12px;font:700 14px/1.2 "XC Display",sans-serif;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent);border-bottom:1px solid var(--border)}
.xc-mod .art{flex:1;min-height:88px;background:var(--art);position:relative}
.xc-mod .art svg{position:absolute;inset:auto 10px 8px auto;width:34px;height:34px;color:#CFE4FF;opacity:.9}
.xc-mod small{display:block;padding:8px 12px 10px;color:var(--muted);font-size:12px}
.xc-row{display:grid;gap:14px;grid-template-columns:1fr}
@media (min-width:900px){.xc-row{grid-template-columns:1fr 1.3fr 1fr}.xc-mods{grid-auto-flow:row;grid-template-columns:repeat(5,1fr)}}
.xc-panel{padding:14px 16px;border:1px solid var(--border);background:var(--card);border-radius:16px}
.xc-panel h3{margin:0 0 10px;font:700 13px "XC Display",sans-serif;letter-spacing:.12em;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center}
.xc-panel h3 .t{font-family:"XC Mono",monospace;color:var(--accent);letter-spacing:.04em}
.xc-pass{width:100%;min-height:46px;text-align:left;padding:0 14px;background:rgba(3,6,15,.7);border:1px solid var(--border);color:var(--muted);font-size:14px;cursor:pointer;border-radius:4px}
.xc-btn{min-height:44px;padding:0 16px;margin-top:10px;width:100%;border:1px solid rgba(var(--xc-a),.7);background:linear-gradient(180deg,rgba(var(--xc-a),.35),rgba(var(--xc-a),.12));color:var(--text);font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:4px}
.xc-ok{color:#6FE3B4;font-weight:700}
.xc-scale{display:block;width:84px;height:56px;margin:4px auto;color:var(--accent);filter:drop-shadow(0 0 6px rgba(var(--xc-a),.8))}
html.xc:not([data-xt="nexus"]) .xc-hero{display:none}
html.xc body.xc-in-room .screen.active,html.xc body.xc-in-room #main-content-a1b2,html.xc body.xc-in-room #fpanel-ai,html.xc body.xc-in-room #fpanel-ai *:has(#far-room){animation:none!important;transform:none!important;clip-path:none!important;filter:none!important;contain:none!important;backdrop-filter:none!important}
html.xc body.xc-in-room #far-room{display:flex!important;flex-direction:column}
#toast-container{left:12px!important;right:12px!important;transform:none!important;width:auto!important;align-items:center}
#toast-container>.xora-toast{max-width:min(440px,100%)!important;width:100%;box-sizing:border-box;white-space:normal}
html.xc,html.xc body{overflow-x:clip}html.xc #fpanel-ai,html.xc #far-picker{max-width:100%;min-width:0}html.xc body.xc-in-room #far-room{width:100vw;max-width:100vw;box-sizing:border-box}
/* v3: Nexus buttons/banners in blue steel instead of bright chrome fill */
html.xc[data-xt="nexus"] .btn-gold,html.xc[data-xt="nexus"] #scan-cta{background:linear-gradient(180deg,#2A66D6,#123A8C)!important;color:#FFFFFF!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 18px rgba(59,140,255,.35)!important;border:1px solid rgba(120,180,255,.6)!important}
/* Founder SI room: replace the room's built-in gold accents with the theme accent */
html.xc #far-room [style*="218,143,63"],html.xc #far-picker [style*="218,143,63"],html.xc #far-room button[style*="DA8F3F"],html.xc #far-room [style*="#1A1613"],html.xc #far-picker .far-pick{border-color:rgba(var(--xc-a),.45)!important}
html.xc #far-room #far-form{background:var(--surface)!important;border-color:rgba(var(--xc-a),.4)!important}
html.xc #far-room #far-form button[type=submit]{background:linear-gradient(180deg,rgba(var(--xc-a),1),rgba(var(--xc-a),.7))!important;color:var(--on-accent)!important}
html.xc[data-xt="nexus"] #far-room #far-form button[type=submit]{background:linear-gradient(180deg,#2A66D6,#123A8C)!important;color:#fff!important}
html.xc #far-room .far-user{background:rgba(var(--xc-a),.14)!important;border-color:rgba(var(--xc-a),.4)!important;color:var(--text)!important}
html.xc #far-room .far-ai{background:var(--card)!important}
html.xc #far-room :is(#far-clear,#far-back){border-color:rgba(var(--xc-a),.45)!important;color:var(--text)!important;background:var(--surface)!important}
html.xc #far-picker h3{color:var(--accent)!important}
html.xc #far-picker .far-pick{background:var(--surface)!important}
html.xc #far-room [style*="#9C8D78"],html.xc #far-picker [style*="#9C8D78"]{color:var(--muted)!important}
html.xc #far-room [style*="#EFE6D8"],html.xc #far-room [style*="#F0E6D3"]{color:var(--text)!important}
html.xc #far-input{background:transparent!important;border:none!important;box-shadow:none!important}
.xc-hero img{content-visibility:visible}
@media (min-width:900px){.xc-row{grid-template-columns:1fr 1fr!important}}
/* ===== v4 polish ===== */
html.xc{--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--fs-xs:12px;--fs-sm:14px;--fs-md:16px;--fs-lg:20px;--fs-xl:26px;--fs-2xl:32px}
html.xc .screen h1{font-size:var(--fs-2xl)!important;line-height:1.15}
html.xc .screen h2{font-size:var(--fs-xl);line-height:1.2}
html.xc .screen h3{font-size:var(--fs-lg);line-height:1.25}
html.xc .screen :is(small,.text-xs){font-size:var(--fs-xs)!important}
html.xc #header-title-c3d4{font-size:var(--fs-lg)!important}
html.xc .xi{width:20px;height:20px;stroke-width:1.75}
html.xc .mobile-bottom-bar .xi{width:22px;height:22px}
/* Module card art */
.xc-mod .art{overflow:hidden}
.xc-mod .art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.xc-mod .art svg{z-index:1;filter:drop-shadow(0 0 6px rgba(59,140,255,.7))}
/* Leftover gold from older inline styles -> theme accent */
html.xc #xp-display-e5f6{background:rgba(var(--xc-a),.14)!important;color:var(--accent)!important;border:1px solid rgba(var(--xc-a),.35)}
html.xc:not([data-xt="vault"]) [style*="color:var(--gold)"],html.xc:not([data-xt="vault"]) [style*="color:#DA8F3F"],html.xc:not([data-xt="vault"]) [style*="color:#EDB76A"],html.xc:not([data-xt="vault"]) [style*="color:#E8C55A"],html.xc:not([data-xt="vault"]) [style*="color: var(--gold)"]{color:var(--accent)!important}
html.xc:not([data-xt="vault"]) [style*="background:rgba(218,143,63"],html.xc:not([data-xt="vault"]) [style*="background: rgba(218,143,63"],html.xc:not([data-xt="vault"]) [style*="background:rgba(201,162,39"]{background:rgba(var(--xc-a),.12)!important}
html.xc:not([data-xt="vault"]) [style*="border:1px solid rgba(218,143,63"],html.xc:not([data-xt="vault"]) [style*="border-color:rgba(218,143,63"],html.xc:not([data-xt="vault"]) [style*="rgba(201,162,39"]{border-color:rgba(var(--xc-a),.35)!important}
html.xc:not([data-xt="vault"]) .mobile-bottom-bar>button::before,html.xc:not([data-xt="vault"]) [class*="gold"]:not(.gold-gradient-text):not(.btn-gold){border-color:rgba(var(--xc-a),.4)}
/* Universal tap feedback */
html.xc :is(button,a,[role="button"],.more-item,.xc-mod,.card[onclick]){-webkit-tap-highlight-color:transparent;transition:transform .12s var(--xc-ease),box-shadow .18s,background-color .18s,border-color .18s}
html.xc :is(button,[role="button"],.more-item,.xc-mod,.card[onclick]):active{transform:scale(.97)}
html.xc :is(button,a,.xc-mod):hover{box-shadow:0 0 0 1px rgba(var(--xc-a),.45),0 0 18px rgba(var(--xc-a),.22)}
html.xc .xc-press{animation:xc-press .26s var(--xc-ease)}
@keyframes xc-press{0%{box-shadow:0 0 0 0 rgba(var(--xc-a),.55)}100%{box-shadow:0 0 0 10px rgba(var(--xc-a),0)}}
/* Room enter / exit */
html.xc body.xc-room-out #far-room{animation:xc-room-out .22s var(--xc-ease) both!important}
@keyframes xc-room-out{to{opacity:0;transform:scale(.97)}}
html.xc #screen-nova.active{animation:xc-room-in .32s var(--xc-ease) both}
html.xc.xc-leaving-room .screen.active{animation:xc-room-out .2s var(--xc-ease) both}
/* WCAG: muted text and borders lifted per theme (see contrast report) */
html.xc[data-xt="nexus"]{--muted:#AFBEDD}
html.xc .screen .xc-mod h3{font-size:var(--fs-sm)!important}html.xc .screen .xc-panel h3{font-size:13px!important}
