:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#03060c;--ink:#eaf4ff;--muted:#8fa8bd;--dim:#5d7689;--line:#82c8ff29;--line-strong:#82d2ff57;--cyan:#24efff;--magenta:#ff48ca;--violet:#b877ff;--gold:#ffcf53;--lime:#b5ff4b;--blue:#388cff;--display:"Orbitron", "Zen Kaku Gothic New", sans-serif;--body:"Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic UI", "Meiryo", sans-serif;--cut:14px;--notch:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));--edge:linear-gradient(135deg, transparent calc(50% - .7px), var(--line-strong) calc(50% - .7px) calc(50% + .7px), transparent calc(50% + .7px))}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;overflow:hidden}button,select,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}p{line-height:1.8}svg{width:20px;height:20px;display:block}#app{position:fixed;inset:0}.stage3d{position:absolute;inset:0}.stage3d canvas{touch-action:manipulation;width:100%;height:100%;display:block}.vignette{pointer-events:none;background:radial-gradient(at 50% 45%,#0000 60%,#00000059);position:absolute;inset:0}.screen{pointer-events:none;isolation:isolate;display:none;position:absolute;inset:0}.screen>*{pointer-events:auto}body[data-screen=title] .title-screen,body[data-screen=game] .game-screen{display:grid}.eyebrow{font:700 .62rem var(--display);letter-spacing:.32em;color:var(--cyan);text-transform:uppercase}.subtle{color:var(--muted);font-size:.82rem}.panel{border:1px solid var(--line);clip-path:var(--notch);background:var(--edge) top left / var(--cut) var(--cut) no-repeat, var(--edge) bottom right / var(--cut) var(--cut) no-repeat, linear-gradient(160deg, #111c2bd6, #060a12e0);-webkit-backdrop-filter:blur(10px);padding:16px;position:relative}.panel:before{content:"";top:-1px;left:calc(var(--cut) + 6px);background:var(--cyan);width:46px;height:2px;box-shadow:0 0 10px var(--cyan);position:absolute}.panel-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.panel-head h2{font-size:.92rem;font-weight:700}.panel-head h2 small{font:500 .5rem var(--display);letter-spacing:.28em;color:var(--dim);margin-top:3px;display:block}.pips{gap:5px;display:flex}.pips i{background:#1a2a39;width:16px;height:6px;transform:skew(-24deg)}.pips i.on{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.pips.cpu i.on{background:var(--magenta);box-shadow:0 0 8px var(--magenta)}.primary{--c:var(--token-color,var(--cyan));color:#03121b;background:linear-gradient(100deg, color-mix(in srgb, var(--c), #fff 32%), var(--c));clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);justify-content:center;align-items:center;gap:16px;min-height:50px;padding:0 22px;font-size:.95rem;font-weight:700;transition:filter .15s,transform .15s;display:inline-flex}.primary i{font:700 .58rem var(--display);letter-spacing:.22em;opacity:.65;font-style:normal}.primary:has(i){justify-content:space-between}.primary:hover:not(:disabled){filter:brightness(1.15)}.primary:active:not(:disabled){transform:translateY(1px)}.primary:disabled{color:#5c7686;background:#15232f}.ghost{min-height:44px;color:var(--ink);border:1px solid var(--line-strong);background:#101c2ab8;justify-content:center;align-items:center;padding:0 16px;font-size:.84rem;transition:border-color .15s,background .15s;display:inline-flex}.ghost:hover:not(:disabled){border-color:var(--cyan);background:#24efff1a}.ghost:disabled{opacity:.4}.wide{width:100%}.icon-button,.chip-button{border:1px solid var(--line);height:44px;color:var(--ink);-webkit-backdrop-filter:blur(8px);background:#080e17b8;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:inline-flex}.icon-button{flex:none;width:44px;font-size:1.3rem}.chip-button{font:700 .64rem var(--display);letter-spacing:.22em;gap:4px;padding:0 16px 0 8px}.icon-button:hover,.chip-button:hover{border-color:var(--cyan);color:var(--cyan)}.sound-toggle.off{color:var(--dim)}.tiny-badge{border:1px solid color-mix(in srgb, var(--token-color,var(--cyan)) 45%, transparent);color:color-mix(in srgb, var(--token-color,var(--cyan)), #fff 30%);padding:3px 9px;font-size:.68rem;display:inline-block}.button-row{gap:8px;margin-top:10px;display:flex}.button-row>*{flex:1}.file-button{cursor:pointer}.file-button input{opacity:0;width:1px;height:1px;position:absolute}.title-screen{grid-template:"tools tools"".stage"minmax(0,1fr)"brand stage""menu stage"".stage"minmax(0,1fr)"foot foot"/minmax(340px,min(42vw,560px)) minmax(0,1fr);column-gap:28px;padding:16px clamp(18px,4.5vw,64px) 14px}.title-screen:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#03060ce6,#03060c80 38%,#0000 62%);position:absolute;inset:0}.title-tools{grid-area:tools;align-items:center;gap:8px;display:flex}.spacer{flex:1}.title-brand{grid-area:brand;padding-bottom:26px}.title-stage{grid-area:stage;min-height:0;pointer-events:none!important}.title-menu{grid-area:menu}.logo{font-family:var(--display);text-transform:uppercase;margin:14px 0 0;font-weight:900;line-height:1}.logo span{display:block}.logo-neon{letter-spacing:.62em;color:#0000;-webkit-text-stroke:1.4px var(--cyan);filter:drop-shadow(0 0 10px #24efffb3);font-size:clamp(1.5rem,3.2vw,2.6rem);animation:7s infinite flicker}.logo-reversal{letter-spacing:.04em;color:#0000;background:linear-gradient(90deg, var(--cyan), #8fb0ff 48%, var(--magenta));filter:drop-shadow(0 0 18px #6ea0ff80);-webkit-background-clip:text;background-clip:text;margin-top:.12em;font-size:clamp(2.5rem,5.6vw,4.6rem)}.logo-sub{letter-spacing:.6em;color:var(--ink);align-items:center;gap:14px;margin-top:16px;font-size:.95rem;font-weight:700;display:flex}.logo-sub i{background:var(--cyan);flex:0 0 34px;height:1px;position:relative}.logo-sub i:after{content:"";background:var(--cyan);width:7px;height:7px;box-shadow:0 0 8px var(--cyan);position:absolute;top:-3px;transform:rotate(45deg)}.logo-sub i:first-child:after{right:-4px}.logo-sub i:last-child{background:linear-gradient(90deg, var(--magenta), transparent);flex:1;max-width:120px}.logo-sub i:last-child:after{background:var(--magenta);box-shadow:0 0 8px var(--magenta);left:-4px}.tagline{color:#b8cbdb;margin-top:16px;font-size:.92rem}@keyframes flicker{0%,91%,94%,to{opacity:1}92.5%{opacity:.55}96%{opacity:.8}}.menu{gap:8px;display:grid}.menu-item{text-align:left;color:var(--ink);border:1px solid var(--line);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);-webkit-backdrop-filter:blur(8px);background:linear-gradient(90deg,#0f1a28e6,#080d1699);grid-template-columns:1fr auto;grid-template-areas:"en en""jp note";align-items:baseline;gap:2px 12px;padding:9px 18px 11px 22px;transition:transform .16s,border-color .16s,background .16s;display:grid;position:relative}.menu-item:before{content:"";background:var(--cyan);opacity:.5;width:3px;transition:opacity .16s;position:absolute;top:10px;bottom:0;left:0}.menu-item i{font:700 .54rem var(--display);letter-spacing:.34em;color:var(--cyan);grid-area:en;font-style:normal}.menu-item span{grid-area:jp;font-size:1.02rem;font-weight:700}.menu-item small{color:var(--muted);grid-area:note;font-size:.72rem}.menu-item:hover{border-color:var(--cyan);background:linear-gradient(90deg,#143c4ee6,#080d1699);transform:translate(6px)}.menu-item:hover:before{opacity:1}.primary-item{color:#03121b;background:linear-gradient(100deg, #7df6ff, var(--cyan) 45%, #49b4ff);border-color:#0000;padding-top:13px;padding-bottom:15px}.primary-item:hover{background:linear-gradient(100deg,#b4fbff,#5cf3ff 45%,#6cc4ff);border-color:#0000}.primary-item:before{display:none}.primary-item i{color:#05505e}.primary-item span{font-size:1.2rem}.primary-item small{color:#0a4654}.record-strip{border-top:1px solid var(--line);margin-top:16px;padding:10px 0 0;display:flex}.record-strip div{text-align:center;border-right:1px solid var(--line);flex:1}.record-strip div:last-child{border:0}.record-strip strong{font:700 1.05rem var(--display);display:block}.record-strip small{color:var(--muted);font-size:.66rem}.title-foot{letter-spacing:.12em;color:var(--dim);grid-area:foot;justify-content:space-between;gap:12px;padding-top:12px;font-size:.62rem;display:flex}.title-foot span:first-child{font-family:var(--display);letter-spacing:.3em}.game-screen{grid-template:"top top top""left stage right"minmax(0,1fr)"left bottom right"/minmax(216px,284px) minmax(0,1fr) minmax(216px,284px);gap:12px 18px;padding:14px clamp(12px,2vw,30px) 16px}.hud-top{grid-area:top;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.hud-top>.chip-button{justify-self:start}.hud-tools{justify-self:end;gap:8px;display:flex}.scoreboard{border:1px solid var(--line);clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%,0 14px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(90deg,#24efff1a,#060a12d9 30% 70%,#ff48ca1a);grid-template-columns:auto minmax(150px,300px) auto;align-items:center;gap:20px;padding:6px 26px 8px;display:grid}.score{align-items:baseline;gap:12px;display:flex}.score b{font:900 2.3rem/1 var(--display);min-width:1.5em}.score small{font:700 .6rem var(--display);letter-spacing:.26em;color:var(--muted)}.score.you b{color:var(--cyan);text-shadow:0 0 18px #24efff99;text-align:left}.score.cpu b{color:var(--magenta);text-shadow:0 0 18px #ff48ca99;text-align:right}.score-mid{text-align:center}#turn-label{font:700 .7rem var(--display);letter-spacing:.34em;color:var(--muted);white-space:nowrap}#turn-number{color:var(--dim);letter-spacing:.08em;white-space:nowrap;font-size:.64rem;display:block}.balance{background:var(--magenta);height:4px;margin:7px 0 6px;box-shadow:0 0 10px #ff48ca80}.balance i{background:var(--cyan);width:50%;height:100%;box-shadow:0 0 10px var(--cyan);transition:width .7s cubic-bezier(.2,.8,.2,1);display:block}[data-turn=you] #turn-label{color:var(--cyan);text-shadow:0 0 12px #24efffb3}[data-turn=cpu] #turn-label{color:var(--magenta);text-shadow:0 0 12px #ff48cab3;animation:1.1s infinite blink}@keyframes blink{50%{opacity:.45}}.stage{grid-area:stage;min-width:0;min-height:0;position:relative;container-type:size;pointer-events:none!important}.board-grid{opacity:0;pointer-events:none;grid-template:repeat(8,1fr)/repeat(8,1fr);display:grid;position:absolute;inset:0}.cell{position:relative}.fallback-stone{display:none}.hud-left{grid-area:left;align-self:center}.hud-right{grid-area:right;align-self:center;gap:12px;display:grid}.hud-bottom{grid-area:bottom;justify-content:space-between;justify-self:center;align-items:center;gap:14px;width:min(100%,760px);padding:10px 14px 10px 20px;display:flex}.token-hand{gap:8px;display:grid}.token-card,.empty-slot{text-align:left;border:1px solid var(--line);background:#050910b3;grid-template-columns:68px 1fr;grid-template-areas:"img name""img note";align-content:center;column-gap:12px;min-height:80px;padding:6px 10px 6px 6px;transition:border-color .15s,background .15s,transform .15s;display:grid;position:relative}.token-card img{object-fit:contain;width:68px;height:68px;filter:drop-shadow(0 0 8px color-mix(in srgb, var(--token-color) 40%, transparent));grid-area:img;transition:transform .2s}.token-card span{font:700 .72rem var(--display);letter-spacing:.1em;color:var(--token-color);grid-area:name;align-self:end}.token-card small{color:var(--muted);grid-area:note;align-self:start;font-size:.7rem}.token-card:hover:not(:disabled){border-color:var(--token-color)}.token-card:hover:not(:disabled) img{transform:scale(1.06)rotate(-4deg)}.token-card.selected{border-color:var(--token-color);background:linear-gradient(90deg, color-mix(in srgb, var(--token-color) 22%, transparent), #050910b3);box-shadow:inset 0 0 22px color-mix(in srgb, var(--token-color) 22%, transparent)}.token-card.selected:after{content:"ARMED";font:700 .48rem var(--display);letter-spacing:.2em;color:var(--token-color);position:absolute;top:5px;right:7px}.token-card:disabled{opacity:.5}.token-card.consumable small{color:var(--gold)}.empty-slot{color:var(--dim);border-style:dashed}.empty-slot:before{content:"";border:1px dashed #2c4152;border-radius:50%;grid-area:img;place-self:center;width:46px;height:46px}.empty-slot span{font:700 .62rem var(--display);letter-spacing:.24em;grid-area:name;align-self:end}.empty-slot small{grid-area:note;font-size:.68rem}.token-description{min-height:58px;color:var(--muted);border-left:2px solid var(--line-strong);background:#04080e99;margin-top:12px;padding:9px 12px;font-size:.76rem;line-height:1.65}.token-description strong{font:700 .64rem var(--display);letter-spacing:.14em;margin-bottom:3px;display:block}.segmented{gap:6px;margin-top:8px;display:flex}.segmented button{border:1px solid var(--line-strong);min-height:40px;color:var(--muted);background:#101c2ab3;flex:1;font-size:.78rem}.segmented button.active{border-color:var(--blue);color:#9cc8ff;background:#388cff2e}.hand-note{color:var(--dim);margin-top:10px;font-size:.66rem;line-height:1.6}.brief h2{margin:6px 0;font-size:1.08rem;line-height:1.5}.brief p:not(.eyebrow){color:#b3c6d6;font-size:.8rem;line-height:1.75}.brief-actions{gap:8px;margin-top:12px;display:flex}.brief-actions:empty{display:none}.brief-actions .primary{flex:1;min-height:46px;padding:0 14px;font-size:.86rem}.brief.lesson:before{background:var(--gold);box-shadow:0 0 10px var(--gold)}.brief.lesson .eyebrow{color:var(--gold)}.cpu-panel:before{background:var(--magenta);box-shadow:0 0 10px var(--magenta)}.cpu-hand{gap:8px;display:grid}.cpu-token{grid-template-columns:44px 1fr;align-items:center;gap:10px;display:grid}.cpu-token img{width:44px;height:44px;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--token-color) 40%, transparent))}.cpu-token span{font:700 .62rem var(--display);letter-spacing:.1em;color:var(--token-color)}.cpu-token small{font:400 .66rem/1.45 var(--body);letter-spacing:0;color:var(--muted);margin-top:2px;display:block}.move-text{min-width:0}.move-text small{font:700 .58rem var(--display);letter-spacing:.26em;color:var(--cyan)}.move-text p{margin-top:2px;font-size:.84rem;line-height:1.5}.move-actions{flex:none;gap:8px;display:flex}.move-actions .primary{min-width:132px}.move-actions .primary.special{animation:1.2s infinite armed}@keyframes armed{50%{filter:brightness(1.25)}}@media (min-width:861px){.hud-left{transform-origin:0;transform:perspective(1200px)rotateY(16deg)}.hud-right{transform-origin:100%;transform:perspective(1200px)rotateY(-16deg)}.hud-bottom{transform-origin:bottom;transform:perspective(900px)rotateX(14deg)}.scoreboard{transform-origin:top;transform:perspective(900px)rotateX(-12deg)}.game-screen .panel{background:var(--edge) top left / var(--cut) var(--cut) no-repeat, var(--edge) bottom right / var(--cut) var(--cut) no-repeat, linear-gradient(160deg, #0e1e309e, #040810b8);border-color:#78dcff4d;box-shadow:inset 0 0 40px #24efff0f}}.manual{z-index:5;-webkit-backdrop-filter:blur(16px);background:#03060ce0;grid-template-rows:auto minmax(0,1fr);animation:.25s ease-out rise;display:grid;position:absolute;inset:0}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.manual-head{border-bottom:1px solid var(--line);background:linear-gradient(90deg,#24efff14,#0000 50%,#ff48ca0f);align-items:center;gap:18px;padding:14px clamp(16px,4.5vw,64px);display:flex}.manual-head h2{margin-top:2px;font-size:1.3rem}.manual-nav{scrollbar-width:none;gap:6px;margin-left:auto;display:flex;overflow-x:auto}.manual-nav a{color:var(--muted);border:1px solid var(--line);background:#0a121c99;flex:none;padding:9px 14px;font-size:.78rem}.manual-nav a:hover{color:var(--cyan);border-color:var(--cyan)}.manual-body{scrollbar-color:#24445a transparent;outline:none;padding:0 clamp(16px,4.5vw,64px) 70px;overflow-y:auto}.manual-section{border-bottom:1px solid var(--line);max-width:1060px;margin:0 auto;padding:36px 0 34px;scroll-margin-top:4px}.manual-section:last-child{border:0}.manual-number{font:900 .78rem var(--display);letter-spacing:.34em;color:var(--cyan);line-height:1}.manual-number:after{content:"";vertical-align:middle;background:linear-gradient(90deg, var(--cyan), transparent);width:46px;height:1px;margin-left:10px;display:inline-block}.manual-section h3{margin:8px 0 20px;font-size:1.5rem}.manual-steps{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.manual-steps article{border:1px solid var(--line);border-top:2px solid var(--cyan);background:#0c1521b3;padding:16px 18px 18px}.manual-steps b{margin-bottom:8px;font-size:1rem;display:block}.manual-steps p,.manual-points li,.manual-flow span,.manual-keys dd{color:#b7c9d8;font-size:.86rem;line-height:1.85}.manual em{font-style:normal;font-weight:700}.manual em.you{color:var(--cyan)}.manual em.cpu{color:var(--magenta)}.manual-flow{counter-reset:flow;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 20px;padding:0;list-style:none;display:grid}.manual-flow li{border:1px solid var(--line);counter-increment:flow;background:linear-gradient(90deg,#24efff1a,#0c152199);padding:16px 18px 16px 58px;position:relative}.manual-flow li:before{content:counter(flow);width:30px;height:30px;font:900 .9rem var(--display);color:#03121b;background:var(--cyan);border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;left:16px;box-shadow:0 0 12px #24efff99}.manual-flow b{margin-bottom:4px;display:block}.manual-flow span{display:block}.manual-points{gap:8px;margin:0;padding:0;list-style:none;display:grid}.manual-points li{padding-left:22px;position:relative}.manual-points li:before{content:"";background:var(--cyan);width:7px;height:7px;box-shadow:0 0 6px var(--cyan);position:absolute;top:.72em;left:4px;transform:rotate(45deg)}.manual-points b{color:var(--ink)}.manual-tokens{gap:12px;display:grid}.manual-token{border:1px solid color-mix(in srgb, var(--token-color) 34%, transparent);border-left:3px solid var(--token-color);background:linear-gradient(100deg, color-mix(in srgb, var(--token-color) 12%, #09111b), #070c14 58%);grid-template-columns:148px minmax(0,1fr) auto;align-items:center;gap:24px;padding:14px 24px 14px 16px;display:grid}.manual-token>img{width:148px;height:148px;filter:drop-shadow(0 0 16px color-mix(in srgb, var(--token-color) 45%, transparent))}.manual-token-kind{gap:8px;font-size:.68rem;line-height:1;display:flex}.manual-token-kind span{border:1px solid color-mix(in srgb, var(--token-color) 50%, transparent);color:color-mix(in srgb, var(--token-color), #fff 35%);padding:5px 9px}.manual-token-kind span+span{border-color:var(--line);color:var(--muted)}.manual-token h4{font:900 1.3rem var(--display);letter-spacing:.08em;color:var(--token-color);text-shadow:0 0 14px color-mix(in srgb, var(--token-color) 50%, transparent);margin:10px 0 6px}.manual-token h4 small{font:700 .82rem var(--body);letter-spacing:.1em;color:var(--ink);text-shadow:none;margin-left:12px}.manual-token p{font-size:.88rem}.manual-tip{color:var(--muted)}.manual-token figure{grid-auto-flow:column;justify-content:end;gap:6px 14px;margin:0;display:grid}.manual-token figcaption{color:var(--muted);grid-area:2/1/auto/-1;align-items:center;gap:6px;font-size:.66rem;display:flex}.manual-token figcaption i{width:10px;height:10px;margin-left:6px}.manual-token figcaption i:first-child{margin-left:0}.mini-grid{border:1px solid var(--line);background:#060b12;grid-template-columns:repeat(8,14px);gap:2px;padding:5px;display:grid}.mini-grid i{background:#121e2b;width:14px;height:14px}i.hit{background:color-mix(in srgb, var(--token-color) 72%, #000);box-shadow:0 0 6px color-mix(in srgb, var(--token-color) 60%, transparent)}i.origin{background:#fff;box-shadow:0 0 8px #fff}.manual-keys{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:8px;margin:0 0 24px;display:grid}.manual-keys div{border:1px solid var(--line);background:#0c1521b3;grid-template-columns:124px 1fr;gap:12px;padding:12px 16px;display:grid}.manual-keys dt{color:var(--cyan);font-size:.86rem;font-weight:700}.manual-keys dd{margin:0}dialog{width:min(560px,100vw - 24px);max-height:min(90dvh,860px);color:var(--ink);background:linear-gradient(170deg,#0f1c2c,#070c15);border:1px solid #78dcff66;padding:0;box-shadow:0 30px 120px #000}dialog.wide{width:min(860px,100vw - 24px)}dialog[open]{animation:.22s ease-out rise}dialog::backdrop{-webkit-backdrop-filter:blur(6px);background:#010409b8}.modal-header{z-index:1;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#10202f,#0a121d);justify-content:space-between;align-items:center;gap:14px;padding:18px 22px 16px;display:flex;position:sticky;top:0}.modal-header h2{margin-top:4px;font-size:1.25rem}.modal-header h2 small{color:var(--muted);font-size:.82rem;font-weight:500;display:block}.modal-body{padding:20px 22px 24px}.modal-body p{font-size:.88rem}.modal-body>*+*{margin-top:14px}.notice{border-left:2px solid var(--gold);color:#ffe6a6;background:#ffcf5314;padding:10px 14px}.choices+.choices{margin-top:20px}.choices{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.choices legend{margin-bottom:8px;padding:0;font-size:.86rem;font-weight:700}.choices legend small{color:var(--muted);margin-top:2px;font-size:.72rem;font-weight:400;display:block}.choice{cursor:pointer;position:relative}.choice input{opacity:0;position:absolute;inset:0}.choice>span{text-align:center;border:1px solid var(--line);background:#050910b3;flex-direction:column;justify-content:center;align-items:center;gap:3px;height:100%;min-height:104px;padding:10px 8px;transition:border-color .15s,background .15s;display:flex}.choice i{font:700 .54rem var(--display);letter-spacing:.28em;color:var(--token-color,var(--cyan));font-style:normal}.choice b{font-size:.95rem}.choice small{color:var(--muted);font-size:.68rem;line-height:1.5}.choice img{width:62px;height:62px}.choice:hover>span{border-color:var(--line-strong)}.choice input:checked+span{border-color:var(--token-color,var(--cyan));background:color-mix(in srgb, var(--token-color,var(--cyan)) 14%, #060b12);box-shadow:inset 0 0 20px color-mix(in srgb, var(--token-color,var(--cyan)) 18%, transparent)}.choice input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}.choice.disabled{cursor:default;opacity:.4}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:56px;font-size:.9rem;display:flex;margin:0!important}.setting-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--cyan)}.setting-row input[type=range]{width:min(52%,220px);accent-color:var(--cyan)}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.collection-card{text-align:center;border:1px solid color-mix(in srgb, var(--token-color) 30%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--token-color) 10%, #070c14), #070c14 70%);padding:14px 12px 16px}.collection-card img{width:100%;max-width:150px;height:auto;filter:drop-shadow(0 0 14px color-mix(in srgb, var(--token-color) 40%, transparent))}.collection-card b{font:700 .7rem var(--display);letter-spacing:.12em;color:var(--token-color);display:block}.collection-card h3{margin:4px 0;font-size:.9rem}.collection-card p{color:var(--muted);min-height:2.4em;margin-bottom:8px;font-size:.72rem;line-height:1.6}.collection-card.locked img{filter:grayscale()brightness(.5)}.collection-card.locked b{color:var(--dim)}dialog.result .modal-header h2{font:900 1.7rem var(--display);letter-spacing:.14em}dialog.result .modal-header h2 small{font-family:var(--body);letter-spacing:.05em;margin-top:4px}dialog.win{border-color:var(--cyan)}dialog.win .modal-header h2{color:var(--cyan);text-shadow:0 0 18px #24efff99}dialog.lose{border-color:#ff48ca99}dialog.lose .modal-header h2{color:var(--magenta)}.result-score{font:900 3.2rem/1 var(--display);color:var(--cyan);justify-content:center;align-items:center;gap:30px;display:flex}.result-score span:last-child{color:var(--magenta)}.result-score small{text-align:center;font:500 .78rem var(--body);color:var(--muted);margin-top:8px;display:block}.result-score b{color:var(--dim);font-size:1.2rem}.result-note{text-align:center;color:var(--muted)}.reward{border:1px solid color-mix(in srgb, var(--token-color) 45%, transparent);background:linear-gradient(100deg, color-mix(in srgb, var(--token-color) 14%, #09111b), #070c14);align-items:center;gap:18px;padding:14px 18px;display:flex}.reward img{width:110px;height:110px;filter:drop-shadow(0 0 16px color-mix(in srgb, var(--token-color) 50%, transparent))}.reward h3{font:900 1.1rem var(--display);letter-spacing:.08em;color:var(--token-color);margin:6px 0}.reward h3 small{font:700 .8rem var(--body);color:var(--ink);margin-left:10px}.reward .eyebrow{color:var(--gold)}.token-detail{text-align:center}.token-detail img{width:min(280px,80%);filter:drop-shadow(0 0 22px color-mix(in srgb, var(--token-color) 50%, transparent))}.token-detail h3{font:900 1.2rem var(--display);letter-spacing:.14em;color:var(--token-color)}.toast{z-index:30;border:1px solid var(--line-strong);border-left:3px solid var(--cyan);opacity:0;pointer-events:none;background:#09111bf2;width:max-content;max-width:calc(100vw - 32px);padding:11px 22px;font-size:.86rem;transition:opacity .2s,transform .2s;position:fixed;bottom:max(96px,13vh);left:50%;transform:translate(-50%,12px);box-shadow:0 10px 40px #000a}.toast.visible{opacity:1;transform:translate(-50%)}.save-warning{z-index:30;color:#ffe1a0;background:#281e0ef2;border:1px solid #b69649;width:min(680px,100vw - 24px);padding:10px 14px;font-size:.8rem;position:fixed;top:70px;left:50%;transform:translate(-50%)}.save-warning button{color:#ffe1a0;padding:4px 8px;text-decoration:underline}.fallback .stage3d{display:none}.fallback .board-grid{opacity:1;pointer-events:auto;background:#08121c;border:2px solid #1f6f86;width:min(100cqw,100cqh);height:min(100cqw,100cqh);inset:50% auto auto 50%;transform:translate(-50%,-50%)}.fallback .cell{border:1px solid #1c3445}.fallback .cell.legal:after{content:"";background:var(--cyan);opacity:.6;border-radius:50%;position:absolute;inset:40%}.fallback .cell.effect-area{background:#b877ff29}.fallback .cell.will-flip{background:#24efff38}.fallback .cell.chosen,.fallback .cell.hint{outline:2px solid var(--gold);outline-offset:-3px}.fallback .owned-you .fallback-stone,.fallback .owned-cpu .fallback-stone{border:2px solid var(--cyan);background:radial-gradient(circle at 30% 25%,#26445a,#0a1824);border-radius:50%;display:block;position:absolute;inset:11%}.fallback .owned-cpu .fallback-stone{border-color:var(--magenta);background:radial-gradient(circle at 30% 25%,#f1f6fc,#8fa0b5)}.fallback-stone img{object-fit:contain;width:100%;height:100%}@media (max-width:1080px){.game-screen{grid-template-columns:minmax(190px,230px) minmax(0,1fr) minmax(190px,230px);gap:10px 12px}.token-card,.empty-slot{grid-template-columns:54px 1fr;min-height:66px}.token-card img{width:54px;height:54px}.cpu-token small{display:none}}@media (max-width:860px){.title-screen{padding:10px 16px max(10px, env(safe-area-inset-bottom));grid-template:"tools""brand""stage"minmax(120px,1fr)"menu""foot"/minmax(0,1fr)}.title-screen:before{background:linear-gradient(#03060ce0,#0000 34% 52%,#03060ce6 74%)}.title-brand{text-align:center;padding:6px 0 0}.logo{margin-top:8px}.logo-neon{padding-left:.62em;font-size:clamp(1.2rem,6vw,1.9rem)}.logo-reversal{font-size:clamp(2.1rem,11.4vw,3.6rem)}.logo-sub{justify-content:center;margin-top:10px;font-size:.82rem}.logo-sub span{padding-left:.6em}.logo-sub i:first-child{background:linear-gradient(270deg, var(--cyan), transparent);flex:1;max-width:70px}.logo-sub i:last-child{max-width:70px}.tagline{display:none}.menu{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.menu:has([data-action=continue]){grid-template-columns:repeat(4,minmax(0,1fr))}.menu-item{text-align:center;grid-template-columns:1fr;grid-template-areas:"en""jp";padding:9px 4px 10px}.menu-item:before{display:none}.menu-item i{letter-spacing:.14em;font-size:.44rem}.menu-item span{font-size:.8rem}.menu-item small{display:none}.menu:has([data-action=continue]) .menu-item:not(.primary-item) span{font-size:.7rem}.menu:has([data-action=continue]) .menu-item:not(.primary-item) i{display:none}.menu:has([data-action=continue]) .menu-item:not(.primary-item){place-items:center;min-height:46px;display:grid}.primary-item{text-align:left;grid-column:1/-1;grid-template-columns:1fr auto;grid-template-areas:"en en""jp note";padding:10px 18px 12px}.primary-item i{letter-spacing:.3em;font-size:.54rem}.primary-item span{font-size:1.12rem}.primary-item small{display:block}.menu-item:hover{transform:none}.record-strip{margin-top:10px;padding-top:8px}.record-strip strong{font-size:.92rem}.title-foot{padding-top:8px;font-size:.56rem}.title-foot span:first-child{display:none}.title-foot{justify-content:center}.game-screen{padding:8px 8px max(8px, env(safe-area-inset-bottom));grid-template:"top""right""stage"minmax(0,1fr)"left""bottom"/minmax(0,1fr);gap:7px}.hud-top{grid-template-columns:auto minmax(0,1fr) auto;gap:6px}.hud-top .chip-button{width:40px;height:40px;padding:0}.hud-top .chip-button span{display:none}.hud-tools{gap:4px}.hud-tools .icon-button{width:40px;height:40px}.hud-tools [data-action=settings]{display:none}.scoreboard{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:4px 12px 5px}.score{flex-direction:column;align-items:center;gap:0}.score.cpu{flex-direction:column-reverse}.score b{min-width:0;font-size:1.5rem}.score small{letter-spacing:.14em;font-size:.46rem}#turn-label{letter-spacing:.14em;font-size:.54rem}#turn-number{letter-spacing:0;font-size:.5rem}.balance{margin:4px 0}.panel{--cut:10px;padding:9px 11px}.hud-right{align-self:stretch;gap:7px;display:flex}.brief{flex:1;min-width:0}.brief .eyebrow{display:none}.brief h2{margin:0 0 2px;font-size:.84rem}.brief p:not(.eyebrow){-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;line-height:1.5;display:-webkit-box;overflow:hidden}.brief.lesson p:not(.eyebrow){display:block}.brief.lesson .eyebrow{margin-bottom:2px;font-size:.5rem;display:block}.brief-actions{margin-top:8px}.brief-actions .primary,.brief-actions .ghost{min-height:40px;font-size:.8rem}.cpu-panel{flex:none;max-width:46%}.hud-right:has(.lesson) .cpu-panel{display:none}.panel-head{margin-bottom:6px}.panel-head h2{font-size:.7rem}.panel-head h2 small{display:none}.pips i{width:12px;height:5px}.cpu-hand{gap:4px;display:flex}.cpu-token{display:block}.cpu-token img{width:34px;height:34px}.cpu-token span{display:none}.cpu-hand .subtle{font-size:.64rem;line-height:1.4}.hud-left{align-self:stretch}.token-hand{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.token-card,.empty-slot{grid-template-columns:44px minmax(0,1fr);column-gap:6px;min-height:54px;padding:4px 6px 4px 4px}.token-card img{width:44px;height:44px}.token-card span{letter-spacing:.02em;overflow-wrap:anywhere;font-size:.5rem;line-height:1.25}.token-card small,.empty-slot small{font-size:.56rem;line-height:1.3}.empty-slot:before{width:30px;height:30px}.empty-slot span{letter-spacing:.12em;font-size:.5rem}.token-card.selected:after{display:none}.token-description{min-height:0;margin-top:6px;padding:5px 9px;font-size:.68rem;line-height:1.5}.token-description strong{margin-right:8px;display:inline}.token-description span{display:inline}.segmented{margin-top:6px}.segmented button{min-height:36px}.hand-note{display:none}.hud-bottom{gap:8px;width:100%;padding:7px 8px 7px 12px}.move-text .more{display:none}.move-text small{font-size:.5rem}.move-text p{font-size:.72rem;line-height:1.4}.move-actions{gap:5px}.move-actions .ghost{min-height:42px;padding:0 10px;font-size:.76rem}.move-actions .primary{min-width:96px;min-height:42px;padding:0 12px;font-size:.86rem}.toast{bottom:150px}.manual-head{flex-wrap:wrap;gap:10px;padding:10px 14px}.manual-head .eyebrow{display:none}.manual-head h2{font-size:1.05rem}.manual-head .icon-button{order:2;margin-left:auto}.manual-nav{order:3;width:100%;margin:0}.manual-nav a{padding:7px 11px;font-size:.72rem}.manual-body{padding:0 14px 50px}.manual-section{padding:26px 0 24px}.manual-section h3{margin-bottom:14px;font-size:1.25rem}.manual-flow{grid-template-columns:1fr;gap:8px}.manual-token{grid-template-columns:92px minmax(0,1fr);gap:10px 14px;padding:12px 14px 14px 10px}.manual-token>img{align-self:start;width:92px;height:92px}.manual-token h4{margin:8px 0 4px;font-size:1.02rem}.manual-token h4 small{margin:3px 0 0;display:block}.manual-token p{font-size:.8rem;line-height:1.7}.manual-token figure{grid-column:1/-1;justify-content:start}.mini-grid{grid-template-columns:repeat(8,12px)}.mini-grid i{width:12px;height:12px}.manual-keys div{grid-template-columns:104px 1fr;padding:10px 12px}.choice>span{min-height:92px;padding:8px 4px}.choice small{font-size:.62rem}.choice b{font-size:.8rem}.choice img{width:52px;height:52px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-header{padding:14px 16px 12px}.modal-body{padding:16px 16px 20px}.reward{text-align:center;flex-direction:column;gap:8px}}@media (min-width:861px) and (max-height:700px){.game-screen{gap:8px 12px;padding-top:8px;padding-bottom:8px}.panel{padding:10px 12px}.token-card,.empty-slot{grid-template-columns:46px 1fr;min-height:54px}.token-card img{width:46px;height:46px}.token-description{min-height:0;margin-top:8px}.hand-note,.cpu-token small{display:none}.cpu-token{grid-template-columns:36px 1fr}.cpu-token img{width:36px;height:36px}.score b{font-size:1.8rem}.title-brand{padding-bottom:12px}.tagline{display:none}.menu{gap:5px}.menu-item{padding-top:6px;padding-bottom:7px}.primary-item{padding-top:8px;padding-bottom:9px}.record-strip{margin-top:8px;padding-top:6px}}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{transition:none!important;animation:none!important}
