/* Platform chrome stays compact; the game owns its visual language. */
body[data-game="aurora-weave"] .active-game-title{color:#b6ffe4;font-family:Georgia,serif;font-style:italic;text-transform:none;letter-spacing:.04em;text-shadow:0 0 16px #81ffd766}
body[data-game="lantern-keeper"] .active-game-title{color:#ffd29e;font-family:Georgia,serif;text-transform:none;text-shadow:2px 2px #7e3d43}
body[data-game="glacier-glide"] .active-game-title{color:#cff6ff;font-family:'Trebuchet MS',sans-serif;font-style:italic;letter-spacing:-.04em;text-shadow:2px 2px #207099}
body[data-in-game="true"] .bar{gap:12px;flex-wrap:nowrap;min-height:66px}
body[data-in-game="true"] .bar .brand{margin-right:0;flex:none}
body[data-in-game="true"] .bar .brand .marquee{display:none}
body[data-in-game="true"] .bar .brand img{width:32px;height:32px}
body[data-in-game="true"] .active-game-title{order:10;margin-left:auto;max-width:48%;text-align:right;font:900 clamp(19px,2.5vw,34px)/1.08 Impact,'Arial Black',sans-serif;text-transform:uppercase;letter-spacing:.035em;color:var(--game-accent);white-space:normal;text-wrap:balance;overflow:visible}
body[data-in-game="true"] .bar .player-badge{order:3;margin-left:0}
body[data-in-game="true"] .header-menu{order:1}
body[data-in-game="true"] .bar .meter,body[data-in-game="true"] .bar .readout{max-width:85px}
body[data-in-game="true"] .bar .onair{order:4}
body[data-in-game="true"] .listen{display:none}
body[data-game="reactor-foundry"] .bar,body[data-game="scrapstorm"] .bar{background:#101b20;border-color:#48616b}
body[data-game="reactor-foundry"] .active-game-title{color:#ffb347;font-family:Impact,'Arial Narrow',sans-serif;letter-spacing:.09em;text-shadow:2px 2px #5e3423}
body[data-game="neon-wake"] .active-game-title{color:#79ffb9;font-style:italic;letter-spacing:.12em;text-shadow:0 0 14px #20ff8b66}
body[data-game="rift-runner"] .active-game-title{color:#ff866e;font-style:italic;letter-spacing:-.03em;text-shadow:3px 3px #3f2b56}
body[data-game="pulse-breaker"] .active-game-title{font-family:'Arial Black',sans-serif;color:#ffdf54;letter-spacing:-.07em;text-shadow:2px 2px #b02b40}
body[data-game="orbit-needle"] .active-game-title{font-family:var(--font-mono);font-weight:500;color:#e7ff9e;letter-spacing:.1em}
body[data-game="scrapstorm"] .active-game-title{font-family:Impact,sans-serif;color:#d7e7f0;letter-spacing:.16em;text-shadow:2px 2px #48616b}
body[data-game="spark-cascade"] .active-game-title{font-family:'Trebuchet MS',sans-serif;color:#ffb9d4;letter-spacing:-.03em;text-shadow:2px 2px #b1386c,0 0 10px #ff558866}
body[data-game$="-reversi"] .active-game-title,body[data-game$="-five"] .active-game-title,body[data-game="progress-knight"] .active-game-title{font-family:Georgia,serif;text-transform:none;color:#edd5a0;font-style:italic}
body[data-game$="-boxes"] .active-game-title{font-family:'Trebuchet MS',sans-serif;color:#ffb795;transform:rotate(-2deg)}
body[data-game="a-dark-room"] .active-game-title{font:400 clamp(20px,2.5vw,32px)/1.1 Georgia,serif;color:#eee;text-transform:none}
.pov-toggle{order:2;flex:none;min-height:38px;padding:7px 10px;border:1px solid #6a6385;border-radius:7px;color:#ded8f3;background:#171527;font:600 11px/1.2 var(--font-body);cursor:pointer}
.pov-toggle[aria-pressed="true"]{color:#b1ffdf;border-color:#63d5a6;background:#133c30}
.pov-dialog{width:min(540px,calc(100% - 28px));max-height:85dvh;overflow:auto;padding:24px;border:1px solid #9a8db9;border-radius:16px;background:#221d38;color:#eee;box-shadow:0 20px 90px #0009}
.pov-dialog::backdrop{background:#080611c9;backdrop-filter:blur(6px)}
.pov-dialog h2{font:800 24px/1.2 var(--font-body);margin:0 0 16px}.pov-dialog p{font:400 14px/1.6 var(--font-body);color:#c9c4d7}.pov-dialog .row{flex-wrap:wrap}
/* Ore, steel, power: a production floor, rather than a stack of purple cards. */
body[data-game="reactor-foundry"] #pFoundry{background:radial-gradient(ellipse at 50% 0,#31454c,#0d171c 70%);color:#e8e3ce;align-items:start;padding:20px}
#pFoundry .foundry-shell{--well:#14242b;--line:#465c62;--muted:#b5c3be;--signal:#ffb347;--spark:#a9d9b4;--font-display:Impact,'Arial Narrow',sans-serif;width:min(1240px,100%);margin:0 auto;padding:22px;border:1px solid #5c7277;border-radius:3px;background:linear-gradient(120deg,#26363b,#1a292e);box-shadow:0 15px 70px #0007,inset 0 1px #a5b2a84d;font-family:var(--font-mono);position:relative}
#pFoundry .foundry-shell::before{content:'';display:block;height:6px;margin:-22px -22px 18px;background:repeating-linear-gradient(125deg,#e2a84b 0 12px,#222b2e 12px 24px)}
#pFoundry .foundry-header{align-items:center}.foundry-header .eyebrow{margin:0;font-size:10px;letter-spacing:.16em}#pFoundry .foundry-header .eyebrow{color:#ffb347}#foundryCores{font-size:11px!important;color:#b8c6c2!important;margin:7px 0!important}
#pFoundry .fine{font:400 11px/1.65 var(--font-mono);color:#b5c3be;margin:7px 0}
.foundry-reactor{height:140px;position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid #4e676e;background:repeating-linear-gradient(90deg,#ffffff04 0 1px,transparent 1px 32px),linear-gradient(#0b1a21,#142c31);margin:14px 0 0}
.foundry-reactor::before{content:'';position:absolute;width:90px;height:90px;border:13px double #8ce3bc;border-radius:50%;box-shadow:0 0 25px #76ffc93d,inset 0 0 20px #76ffc944;animation:reactor-spin 22s linear infinite;border-right-color:#345957;border-bottom-color:#345957}
.foundry-reactor::after{content:'⚡';font:400 44px/1 system-ui;color:#fff4b6;text-shadow:0 0 24px #8dffc7}
.foundry-reactor span{position:absolute;left:14px;top:10px;font:500 9px var(--font-mono);letter-spacing:.15em;color:#8faeaf}
.foundry-reactor b{position:absolute;right:12px;bottom:10px;font:500 10px var(--font-mono);color:#a0e8ba}
#pFoundry .foundry-resources{gap:1px;border:1px solid #4e676e;margin:0 0 16px;background:#4e676e}
#pFoundry .foundry-resources>div{background:#10232a;border:0;border-radius:0;gap:5px;padding:14px;position:relative}
#pFoundry .foundry-resources>div::before{content:'';position:absolute;top:12px;right:12px;width:5px;height:5px;background:#f5ae62;box-shadow:0 0 8px currentColor}
#pFoundry .foundry-resources>div:nth-child(2)::before{background:#c7d7dd}#pFoundry .foundry-resources>div:nth-child(3)::before{background:#b7ed7d}#pFoundry .foundry-resources>div:nth-child(4)::before{background:#75d3e3}
#pFoundry .foundry-resources span{color:#b3c7c4;font-size:10px}#pFoundry .foundry-resources strong{font:500 clamp(24px,3vw,34px)/1.2 var(--font-mono);color:#f0c477}
#pFoundry .btn,#pFoundry .foundry-import{border-radius:3px;font:700 12px/1.4 var(--font-mono);min-height:44px}#pFoundry .btn{background:#e5b46b;color:#1d282a;border:1px solid #ffe4ab;box-shadow:0 3px #815a36;padding:11px 14px}#pFoundry .btn.ghost{background:#273d43;border-color:#657b7e;color:#d2e0d8;box-shadow:0 3px #101d23}#pFoundry .btn:disabled{opacity:.5}
#pFoundry .foundry-actions{gap:10px;margin-bottom:15px}#foundryMachines{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
#pFoundry .foundry-machine{grid-template-columns:1fr;margin:0;padding:18px;border-radius:3px;background:linear-gradient(140deg,#31454b,#203139);border-color:#566c70;gap:14px;position:relative}
#pFoundry .foundry-machine::before{content:'01 / EXTRACTION';font:500 9px/1.4 var(--font-mono);letter-spacing:.12em;color:#d3ab6a}#pFoundry .foundry-machine:nth-child(2)::before{content:'02 / METALLURGY'}#pFoundry .foundry-machine:nth-child(3)::before{content:'03 / POWER GRID'}#pFoundry .foundry-machine:nth-child(4)::before{content:'04 / COMPUTATION'}
#pFoundry .foundry-machine h3{font:500 22px/1.2 Impact,sans-serif;letter-spacing:.05em;text-transform:uppercase;margin:0}#pFoundry .foundry-machine p{font-size:11px}#pFoundry .foundry-machine h3 span{font-family:var(--font-mono);color:#ffca7e}
#pFoundry .foundry-buy{grid-template-columns:1fr 1fr;gap:8px}#pFoundry .foundry-buy>span{grid-column:1/-1;color:#d5d8bc;font-size:11px}#pFoundry .foundry-prestige{border-radius:3px;border-color:#8b7955;background:#2e3934;padding:16px}#pFoundry .foundry-prestige h3{font-family:Impact,sans-serif;text-transform:uppercase;letter-spacing:.08em}
@keyframes reactor-spin{to{transform:rotate(360deg)}}
/* Each board has its own physical material and color system. */
body[data-game$="-gravity"] #pDuel{background:#102f59}body[data-game$="-gravity"] .duel-shell{background:#17457b;border-color:#4e83b3;border-radius:6px}.duel-board.gravity{background:#1c67c4;border:5px solid #104b92;box-shadow:0 8px #0b376d}.duel-board.gravity .duel-cell{background:#124b8a;border-color:#347bd0}
body[data-game$="-reversi"] #pDuel{background:radial-gradient(ellipse,#214c3a,#081f19)}body[data-game$="-reversi"] .duel-shell{background:#163a2b;border-color:#6b8060;border-radius:4px}.duel-board.reversi{background:#176248;border:7px solid #392f20;gap:1px}.duel-board.reversi .duel-cell{background:#226c50;border-color:#173f30}.duel-board.reversi .duel-cell[data-piece="1"]::before,.duel-board.five .duel-cell[data-piece="1"]::before{background:radial-gradient(circle at 35% 30%,#596263,#111819 65%);box-shadow:0 3px 3px #0008}.duel-board.reversi .duel-cell[data-piece="2"]::before,.duel-board.five .duel-cell[data-piece="2"]::before{background:radial-gradient(circle at 35% 30%,#fff,#d6d2c2 65%);box-shadow:0 3px 3px #0007}
body[data-game$="-five"] #pDuel{background:#3b2f24}body[data-game$="-five"] .duel-shell{background:#564433;border-color:#ac8d5e;border-radius:2px}.duel-board.five{background:repeating-linear-gradient(2deg,#c6a774 0 3px,#c8ab7b 4px 8px);border:7px solid #795b33}.duel-board.five .duel-cell{background:linear-gradient(transparent 49%,#775b3d 49% 51%,transparent 51%),linear-gradient(90deg,transparent 49%,#775b3d 49% 51%,transparent 51%)}
body[data-game$="-boxes"] #pDuel{background:#29515c}body[data-game$="-boxes"] .duel-shell{background:#254b55;border-color:#91c0bd}.duel-board.boxes{background:repeating-linear-gradient(#fff8df 0 23px,#d6ddd2 24px 25px);border:5px solid #e8c992;box-shadow:3px 7px #122b33}.duel-board.boxes .duel-dot{background:#203846}.duel-board.boxes .duel-edge:not([data-piece="1"]):not([data-piece="2"]){background:#aab7ac}.duel-board.boxes .duel-box{border-radius:2px}
body[data-game="a-dark-room"] #pOpenGame{background:#f4f2ee;color:#222}body[data-game="a-dark-room"] .open-game-shell{background:#fff;color:#222;border-color:#ccc;border-radius:0}body[data-game="a-dark-room"] .open-game-shell .fine{color:#555}
body[data-game="progress-knight"] #pOpenGame{background:#24312b}body[data-game="progress-knight"] .open-game-shell{background:#d7ceb3;color:#263228;border:4px double #8b794f;border-radius:2px}body[data-game="progress-knight"] .open-game-shell .fine{color:#4b5948}
/* Preview canvases always fill their cabinet; no outer letterbox, even on portrait thumbnails. */
.cab-screen{overflow:hidden;padding:0}.cab-screen canvas{width:100%;height:100%;border-radius:inherit}.cab-screen::after{inset:0}
body[data-game="pulse-breaker"] #actionHud .action-button{background:#f0e6ce;color:#222;border:2px solid #222;border-radius:2px;box-shadow:3px 3px #222}
body[data-game="neon-wake"] #actionHud .action-button{background:#071f1e;color:#85ffc9;border-color:#3dba91;border-radius:2px}
body[data-game="rift-runner"] #actionHud .action-button{background:#452844;color:#ffd2ad;border-color:#e48b79;border-radius:4px}
body[data-game="scrapstorm"] #actionHud .action-button{background:#253d49;color:#e6eff2;border-color:#8aafb8;border-radius:2px}
body[data-game="orbit-needle"] #actionHud .action-button{background:#0b151b;color:#ecffb5;border-color:#859e73;border-radius:99px}
body[data-game="spark-cascade"] #actionHud .action-button{background:#ffdae8;color:#673659;border:2px solid #fff4ed;border-radius:18px;box-shadow:0 3px #9e4d7a}
@media(max-width:760px){body[data-in-game="true"] .bar{gap:8px;min-height:57px;padding-block:6px}body[data-in-game="true"] .bar .brand img{width:27px;height:27px}body[data-in-game="true"] .active-game-title{flex:1;max-width:none;font-size:clamp(17px,4.3vw,23px);order:10;line-height:1.05}body[data-in-game="true"] .bar .player-badge{display:none}body[data-in-game="true"] .bar .onair{font-size:8px;letter-spacing:0;padding:5px}body[data-in-game="true"] .bar .onair i{display:none}.pov-toggle{max-width:80px;font-size:10px;padding:7px}.pov-dialog{padding:18px}body[data-game="reactor-foundry"] #pFoundry{padding:10px}#pFoundry .foundry-shell{padding:14px}#pFoundry .foundry-shell::before{margin:-14px -14px 12px}.foundry-reactor{height:115px}.foundry-reactor::before{width:68px;height:68px}.foundry-reactor span{font-size:8px;max-width:80px}#pFoundry .foundry-resources{grid-template-columns:repeat(4,minmax(0,1fr))}#pFoundry .foundry-resources>div{padding:12px 7px}#pFoundry .foundry-resources strong{font-size:20px}#pFoundry .foundry-resources span{font-size:8px}#pFoundry .foundry-resources>div::before{display:none}#pFoundry .foundry-actions{display:grid;grid-template-columns:1fr 1fr}#pFoundry .foundry-actions #foundryBoost{grid-column:1/-1}#foundryMachines{grid-template-columns:1fr}#pFoundry .foundry-machine{padding:14px}.cab-screen{padding:0}.cab-screen::after{inset:0}}
@media(prefers-reduced-motion:reduce){.foundry-reactor::before{animation:none}}

body[data-game="online-boxing"] .bar{background:#0b1724;border-color:#3b596c}body[data-game="online-boxing"] .active-game-title{color:#f2eada;font-style:italic;text-shadow:2px 2px #b74741}
body[data-game="online-boxing"] #pBoxing{background:radial-gradient(ellipse,#25465d,#0b1724)}body[data-game="online-boxing"] .boxing-lobby{background:#142b3d;border:1px solid #698493;border-radius:3px}.boxing-lobby>h2{display:none}body[data-game="online-boxing"] .boxing-lobby .btn{border-radius:3px;background:#e9dcc0;color:#172a37}body[data-game="online-boxing"] .boxing-lobby .btn.ghost{background:#263d4d;color:#e9dcc0;border-color:#6c8190}.boxing-bars{background:#0b1724}.boxing-side label{color:#ff857b}.boxing-side:last-child label{color:#a6d4ff}
#pIntro .result-identity .eyebrow,#pLaneIntro .result-identity .eyebrow,#pGliderIntro .result-identity .eyebrow{display:none}

.foundry-guide summary{font:600 12px/1.5 var(--font-mono);color:#d5bd8b;cursor:pointer;min-height:28px}body[data-game="pulse-breaker"] #actionReadout,body[data-game="pulse-breaker"] #actionHint{color:#253441}body[data-game="pulse-breaker"] #actionPause{background:#f3e5c6;color:#253441;border:1px solid #39444a;border-radius:3px}
@media(max-width:760px){body[data-in-game="true"] .active-game-title{font-size:clamp(19px,5vw,26px)}#pFoundry .fine{font-size:12px}#pFoundry .foundry-resources span{font-size:9px}#pFoundry .foundry-resources strong{font-size:23px}#pFoundry .foundry-machine p{font-size:12px}}

body[data-game="online-boxing"] .boxing-side progress::-webkit-progress-value{background:linear-gradient(90deg,#bf3948,#ff8879)}body[data-game="online-boxing"] .boxing-side:last-child progress::-webkit-progress-value{background:linear-gradient(90deg,#397fbd,#a5d6ff)}body[data-game="online-boxing"] .boxing-side progress::-moz-progress-bar{background:#ff756e}body[data-game="online-boxing"] .boxing-side:last-child progress::-moz-progress-bar{background:#88c7ff}
body[data-game$="-reversi"] .duel-seats span,body[data-game$="-five"] .duel-seats span{color:#eee6d2}body[data-game$="-reversi"] .duel-seats span::before,body[data-game$="-five"] .duel-seats span::before{content:'';display:inline-block;width:11px;height:11px;margin-right:7px;border-radius:50%;background:#161d20;border:1px solid #aaa}body[data-game$="-reversi"] .duel-seats span:last-child::before,body[data-game$="-five"] .duel-seats span:last-child::before{background:#fff9e6}

body[data-game="neon-wake"]{--world-panel:#0a2729f5;--world-text:#d5ffee;--world-muted:#9dc9ba;--world-accent:#8dffba;--world-font:monospace;--world-radius:2px}
body[data-game="rift-runner"]{--world-panel:#472d48f5;--world-text:#ffe5c8;--world-muted:#e4bcb8;--world-accent:#ffb69b;--world-font:Impact,sans-serif;--world-radius:4px}
body[data-game="pulse-breaker"]{--world-panel:#f6ebd5f5;--world-text:#24313b;--world-muted:#4a5962;--world-accent:#f6c348;--world-font:'Arial Black',sans-serif;--world-radius:2px}
body[data-game="orbit-needle"]{--world-panel:#101f24f5;--world-text:#e8f4d8;--world-muted:#b1c5ba;--world-accent:#e7ff9e;--world-font:monospace;--world-radius:20px}
body[data-game="scrapstorm"]{--world-panel:#213c49f5;--world-text:#e2eff1;--world-muted:#b3c9d0;--world-accent:#b6e2ed;--world-font:Impact,sans-serif;--world-radius:2px}
body[data-game="spark-cascade"]{--world-panel:#ffedf2f5;--world-text:#623b69;--world-muted:#825b81;--world-accent:#ffb4cf;--world-font:'Trebuchet MS',sans-serif;--world-radius:24px}
body[data-game$="-reversi"]{--world-panel:#19392bf5;--world-text:#f0e9ce;--world-muted:#b7c9af;--world-accent:#dfd3a2;--world-font:Georgia,serif;--world-radius:4px}
body[data-game$="-gravity"]{--world-panel:#16457bf5;--world-text:#f0e9ce;--world-muted:#bdcbe2;--world-accent:#f8c36f;--world-font:'Arial Black',sans-serif;--world-radius:6px}
body[data-game$="-five"]{--world-panel:#564433f5;--world-text:#f9efd5;--world-muted:#dfc9a9;--world-accent:#f4d5a3;--world-font:Georgia,serif;--world-radius:2px}
body[data-game$="-boxes"]{--world-panel:#fff5dff5;--world-text:#263b48;--world-muted:#5a706e;--world-accent:#edaf85;--world-font:'Trebuchet MS',sans-serif;--world-radius:6px}
body[data-game] #pIntro .card{background:var(--world-panel,var(--panel));color:var(--world-text,var(--text));border-color:var(--world-accent,var(--line));border-radius:var(--world-radius,18px)}
body[data-game] #pIntro h2{font-family:var(--world-font,var(--font-display))}body[data-game] #pIntro .lede,body[data-game] #pIntro .status{color:var(--world-muted,var(--muted))}
/* An accent's label is an ink color, independent of the panel's material. Secondary
   actions retain the shared glass treatment, including their disabled states. */
body[data-game] #pIntro .btn{border-radius:var(--world-radius,99px)}
body[data-game] #pIntro .btn:not(.ghost):not(:disabled){background:var(--world-accent,var(--signal));color:var(--world-on-accent,var(--af-ink,#15102f))}
body[data-game] #pIntro .linkbtn,body[data-game] #pIntro .game-support{color:var(--world-text,var(--text))}
body[data-game] #pIntro :is(.btn:not(.ghost),.linkbtn):focus-visible{outline:3px solid var(--world-text,var(--af-mint));outline-offset:4px}
@media(forced-colors:active){body[data-game] #pIntro .btn:not(.ghost):not(:disabled){color:ButtonText;background:ButtonFace}body[data-game] #pIntro :is(.btn,.linkbtn):focus-visible{outline-color:Highlight}}
.duel-board.reversi .duel-cell[data-piece="0"]::before{background:transparent;box-shadow:none}.duel-board.reversi .duel-cell[data-legal="true"][data-piece="0"]::before{background:#d5d9b18c;width:18%}
body[data-game] .duel-shell{--well:var(--world-panel,#1c1745);--line:#758372;--muted:var(--world-muted,#b7c9af);--signal:var(--world-accent,#e7d4a4);--font-display:var(--world-font,Georgia,serif)}body[data-game] .duel-side h3{font-weight:700}body[data-game] .duel-terms{background:#ffffff0a}body[data-game] .duel-side .btn{border-radius:5px}
/* The EXP destination returns after a run, even when the phone's play header is compact. */
@media(max-width:760px){body[data-in-game="true"][data-panel="pOver"] .bar{flex-wrap:wrap}body[data-in-game="true"][data-panel="pOver"] .bar .player-badge{display:flex;max-width:90px;min-height:38px}body[data-in-game="true"][data-panel="pOver"] .active-game-title{min-width:95px;flex:1}body[data-panel="pOver"] #povToggle[aria-pressed="false"]{display:none}}
