:root{color:#0f2236;background:#def;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--blue-deep: #0a4da3;--blue-mid: #1f86df;--blue-soft: #cbe9ff;--square-light: #e6f2fc;--square-dark: #5a9bd8;--board-frame: #134e9b;--gold: #ffd84f;--ink: #0f2236}*{box-sizing:border-box}body{margin:0;min-width:320px}button{font:inherit;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.68}.site-shell{min-height:100dvh;overflow-x:hidden;padding-bottom:1.25rem;background:linear-gradient(180deg,#f3f8ee,#e7f1fb)}.circuit-shell{display:flex;flex-direction:column;min-height:100dvh;width:100%;overflow-x:hidden;background:linear-gradient(180deg,#f3f8ee,#e7f1fb)}.top-nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;width:min(1140px,calc(100% - 1.5rem));margin:0 auto;padding:.9rem 0 0;gap:.8rem}.brand{display:inline-flex;align-items:center;gap:.6rem;color:var(--ink);font-size:1rem;font-weight:800}.brand-text{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1.15}.brand-name{font-size:1rem;font-weight:800}.brand-slogan{font-size:.7rem;font-weight:600;color:var(--muted, rgba(10, 77, 163, .7))}.brand-button{border:0;background:transparent;cursor:pointer;padding:0}.brand-mark{display:block;width:2.4rem;height:2.4rem;border-radius:.75rem;object-fit:cover;box-shadow:0 .8rem 1.8rem #0a4da338}.page-tabs{display:flex;gap:.3rem;padding:.3rem;border:1px solid rgba(255,255,255,.72);border-radius:1rem;background:#fff9;box-shadow:0 .8rem 1.8rem #0a4da31f}.page-tabs button{display:inline-flex;align-items:center;gap:.4rem;min-height:2.7rem;padding:0 .9rem;border:0;border-radius:.75rem;color:#24425f;background:transparent;cursor:pointer;font-weight:800}.page-tabs button.active{color:#fff;background:var(--blue-deep)}.tab-icon{font-size:1.15rem;line-height:1}.tab-dropdown{position:relative;display:flex}.tab-caret{font-size:.7rem;line-height:1}.tab-dropdown-menu{position:absolute;top:calc(100% + .45rem);left:50%;transform:translate(-50%);z-index:30;display:flex;flex-direction:column;gap:.15rem;min-width:11rem;padding:.3rem;border:1px solid rgba(255,255,255,.72);border-radius:1rem;background:#fffffff5;box-shadow:0 1.2rem 2.6rem #0a4da338}.tab-dropdown-menu button{justify-content:flex-start;min-height:2.5rem;white-space:nowrap}.lang-switch{display:inline-flex;gap:.2rem;padding:.25rem;border:1px solid rgba(255,255,255,.72);border-radius:.85rem;background:#fff9;box-shadow:0 .8rem 1.8rem #0a4da31f}.lang-switch button{min-width:2.4rem;min-height:2.2rem;padding:0 .55rem;border:0;border-radius:.6rem;color:#24425f;background:transparent;cursor:pointer;font-weight:800;font-size:.8rem;letter-spacing:.03em}.lang-switch button.active{color:#fff;background:var(--blue-deep)}.sound-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;min-height:2.4rem;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:.85rem;background:#fff9;box-shadow:0 .8rem 1.8rem #0a4da31f;cursor:pointer;font-size:1.05rem;line-height:1}.game-page{display:grid;gap:.9rem;width:min(1140px,calc(100% - 1.5rem));margin:0 auto;padding:.9rem 0 1rem}.game-titlebar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem}.game-titlebar h1{margin:0;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:clamp(1.7rem,4.5vw,2.7rem);line-height:1.05}.status-chip{padding:.5rem .95rem;border-radius:2rem;border:1px solid rgba(255,255,255,.7);background:#ffffffbf;box-shadow:0 .6rem 1.4rem #0a4da324;color:var(--blue-deep);font-weight:900;white-space:nowrap}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(15rem,19rem);gap:1rem;align-items:start}.board-wrap{position:relative;padding:.5rem;border-radius:1.2rem;background:#ffffff8f;box-shadow:0 1.6rem 3.6rem #083b7938,inset 0 0 0 1px #ffffffbd}.board-wrap-black{background:#3b48608f;box-shadow:0 1.6rem 3.6rem #083b7942,inset 0 0 0 1px #ffffff52}.library-board{width:min(100%,calc(100dvh - 12rem));aspect-ratio:1;margin:0 auto}.library-board>div[id$=-board]{width:100%!important;height:100%!important}.quick-board{display:grid;margin:0 auto;overflow:hidden;border:.22rem solid var(--board-frame);border-radius:1rem;background:var(--board-frame);box-shadow:0 1.4rem 3.2rem #083b792e;touch-action:none}.quick-square{position:relative;display:grid;min-width:0;min-height:0;place-items:center;border:0;padding:0;cursor:pointer}.quick-square.light{background:var(--square-light)}.quick-square.dark{background:var(--square-dark)}.quick-square:focus-visible{z-index:5;outline:.24rem solid var(--gold);outline-offset:-.24rem}.quick-square.movable{cursor:grab}.quick-square.fogged:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;background:linear-gradient(135deg,#96a0b0f0,#748296f5)}.quick-piece{position:relative;z-index:2;display:grid;width:88%;aspect-ratio:1;place-items:center;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 .16rem .22rem rgba(4,30,66,.35))}.quick-piece.drag-origin{opacity:.3}.piece-svg{width:100%;height:100%;object-fit:contain;display:block}.drag-ghost{position:fixed;top:0;left:0;z-index:50;pointer-events:none;filter:drop-shadow(0 .5rem .8rem rgba(4,30,66,.4))}.rank-label,.file-label{position:absolute;z-index:4;color:#072c668f;font-size:clamp(.56rem,1.6vw,.78rem);font-weight:900;line-height:1;pointer-events:none}.rank-label{top:.24rem;left:.28rem}.file-label{right:.28rem;bottom:.24rem}.selected-square{box-shadow:inset 0 0 0 .24rem var(--gold)}.last-move{box-shadow:inset 0 0 0 .2rem #ffd84fb8}.hint-square:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 .18rem #92dc3cf2,inset 0 0 .8rem .3rem #92dc3c80;animation:hint-square-pulse 1.4s ease-in-out infinite}@keyframes hint-square-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.hint-square:after{animation:none}}.king-in-check:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 .18rem #dc1e1e,inset 0 0 .8rem .3rem #dc1e1e8c,inset 0 0 1.6rem .5rem #b400004d}.conflict-mark{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 .18rem #dc1e1e,inset 0 0 .8rem .3rem #dc1e1e8c,inset 0 0 1.6rem .5rem #b400004d}.target-marker{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;border-radius:inherit}.target-marker-white{box-shadow:inset 0 0 0 .2rem #f8f8f8eb}.target-marker-black{box-shadow:inset 0 0 0 .2rem #242424c7}.target-marker.satisfied{box-shadow:inset 0 0 0 .2rem #3ac45cf2,inset 0 0 .8rem .25rem #3ac45c66}.target-ghost{position:absolute;top:10%;right:10%;bottom:10%;left:10%;z-index:1;display:grid;place-items:center;pointer-events:none;opacity:.38}.target-ghost svg,.target-ghost img{width:100%;height:100%}.move-dot{position:absolute;width:22%;aspect-ratio:1;border-radius:50%;background:#053d7d73;box-shadow:0 0 0 .32rem #ffffff3d}.chess-dot{z-index:3;width:30%;background:#0b3c7880;box-shadow:0 0 0 .22rem #ffffff4d}.capture-ring{position:absolute;z-index:3;width:86%;aspect-ratio:1;border-radius:50%;border:.28rem solid rgba(255,216,79,.9);pointer-events:none}.capture-stack{position:relative;margin:0 auto;width:min(100%,calc(100dvh - 12rem));aspect-ratio:1}.capture-full-board .capture-hud,.capture-full-board .capture-stack{width:min(100%,calc(100dvh - 8rem))}.capture-stack .quick-board{width:100%!important;height:100%}.capture-piece-layer{position:absolute;z-index:6;top:.22rem;right:.22rem;bottom:.22rem;left:.22rem;overflow:hidden;border-radius:.85rem;pointer-events:none}.capture-black-piece{position:absolute;display:grid;width:12.5%;height:12.5%;place-items:center;animation:capture-spawn .24s ease-out;transition:left .21s ease,top .21s ease}.capture-black-glyph{display:grid;width:88%;aspect-ratio:1;place-items:center;filter:drop-shadow(0 .16rem .22rem rgba(4,30,66,.35))}.capture-popup-layer{position:absolute;z-index:7;top:.22rem;right:.22rem;bottom:.22rem;left:.22rem;pointer-events:none}.capture-score-popup{position:absolute;display:grid;width:12.5%;height:12.5%;place-items:center;font-size:clamp(2rem,6.4vw,3.4rem);font-weight:900;text-shadow:0 0 .3rem rgba(255,255,255,.95),0 .12rem .3rem rgba(4,30,66,.4);animation:capture-popup 1.8s ease-out forwards}.capture-score-popup.plus{color:#0f9d4f}.capture-score-popup.minus{color:#d92f2f}.board-start-flash{position:absolute;z-index:22;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(1.8rem,6vw,3rem);font-weight:900;color:#fff;text-shadow:0 .15rem 0 rgba(8,59,121,.85),0 .5rem 1.6rem rgba(8,59,121,.55);-webkit-text-stroke:1px rgba(8,59,121,.65);animation:start-flash 1.1s ease-out forwards}@keyframes start-flash{0%{opacity:0;transform:scale(.4)}18%{opacity:1;transform:scale(1.12)}30%{transform:scale(1)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.25)}}.capture-countdown{position:absolute;z-index:22;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(4rem,16vw,7rem);font-weight:900;color:#fff;text-shadow:0 .15rem 0 rgba(8,59,121,.85),0 .5rem 1.6rem rgba(8,59,121,.55);-webkit-text-stroke:2px rgba(8,59,121,.65);animation:capture-countdown 1s ease-out forwards}@keyframes capture-countdown{0%{opacity:0;transform:scale(1.6)}25%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(.95)}to{opacity:0;transform:scale(.85)}}@media(prefers-reduced-motion:reduce){.capture-countdown{animation:none}}.board-overlay{position:absolute;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;border-radius:1.2rem;background:#072c6652;animation:overlay-fade .18s ease-out}.board-overlay-window{position:relative;display:grid;gap:.55rem;width:min(19rem,100%);max-height:100%;overflow-y:auto;padding:1.1rem 1.1rem 1rem;border:1px solid rgba(255,255,255,.8);border-radius:1rem;background:#fffffff5;box-shadow:0 1.6rem 3.6rem #083b7966;text-align:center;animation:overlay-pop .22s ease-out}.board-overlay-close{position:absolute;top:.35rem;right:.35rem;display:grid;width:1.9rem;height:1.9rem;place-items:center;border:0;border-radius:50%;background:#0a4da31a;color:var(--blue-deep);cursor:pointer;font-size:1.25rem;line-height:1;font-weight:800}.board-overlay-close:hover{background:#0a4da333}.promotion-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}.promotion-choice{width:3.6rem;height:3.6rem;padding:.35rem;border:1px solid rgba(10,77,163,.25);border-radius:.85rem;background:#0a4da314;cursor:pointer;transition:background .12s ease,transform .12s ease}.promotion-choice:hover{background:#0a4da333;transform:translateY(-2px)}.overlay-title{margin:0;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1.5rem;line-height:1.15}.overlay-score{margin:0;color:var(--blue-deep);font-size:2.3rem;font-weight:900;line-height:1.1}.overlay-place{margin:0;color:#1c3a5c;font-weight:700}.overlay-score-list{padding:.5rem .7rem;border-radius:.8rem;background:#cbe9ff8c;text-align:left}.high-score-list li.current{padding:.1rem .35rem;margin:-.1rem -.35rem;border-radius:.45rem;background:#ffd84f8c;color:#072c66}.high-score-gap{justify-content:center;color:#41607f;font-weight:900;line-height:.8}.star{position:absolute;z-index:1;color:var(--gold);font-size:clamp(1.3rem,4.5vw,2.4rem);filter:drop-shadow(0 0 .55rem rgba(255,216,79,.9));animation:twinkle 1.7s ease-in-out infinite;pointer-events:none}.variant-explainer{display:grid;gap:.6rem;width:min(1140px,calc(100% - 1.5rem));margin:0 auto 1rem;padding:.9rem 1.1rem;border-radius:1.1rem;background:#ffffffb8;box-shadow:0 1.2rem 2.6rem #083b7929}.variant-explainer-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem}.variant-explainer h2{margin:0;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1.15rem}.variant-explainer p{margin:0;color:#1c3a5c;font-weight:600;line-height:1.5}.explainer-speak{display:flex;align-items:center;gap:.45rem;padding:.45rem .95rem;border:1px solid rgba(10,77,163,.22);border-radius:2rem;background:#ffffffb3;color:var(--blue-deep);cursor:pointer;font-weight:800}.explainer-speak[aria-pressed=true]{color:#fff;border-color:var(--blue-deep);background:var(--blue-deep)}.game-panel{display:grid;gap:.9rem;padding:.9rem;border-radius:1.1rem;background:#ffffffb8;box-shadow:0 1.2rem 2.6rem #083b7929}.message-bubble{display:flex;align-items:center;gap:.5rem;min-height:3.4rem;margin:0;padding:.6rem .8rem;border:1px solid rgba(10,77,163,.14);border-radius:.9rem;background:#f2f9ff;color:#1c3a5c;font-weight:700;line-height:1.35}.control-group{display:grid;gap:.5rem}.control-label{color:#23425f;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.choice-row button{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.9rem;border:1px solid rgba(10,77,163,.22);border-radius:.8rem;background:#ffffffb3;color:#24425f;cursor:pointer;font-weight:800}.choice-row button.active{color:#fff;border-color:var(--blue-deep);background:var(--blue-deep)}.choice-glyph{font-size:1.5rem;line-height:1}.level-stars{display:flex;flex-wrap:wrap;gap:.1rem}.level-stars.compact button{font-size:1.4rem;padding:.05rem .08rem}.level-stars button{border:0;padding:.05rem .12rem;background:transparent;color:#0a4da338;cursor:pointer;font-size:2.1rem;line-height:1}.level-stars button.filled{color:var(--gold);text-shadow:0 0 .55rem rgba(255,216,79,.65)}.level-hint{margin:0;color:#41607f;font-size:.88rem}.piece-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.piece-picker button{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.45rem .2rem;border:1px solid rgba(10,77,163,.22);border-radius:.75rem;background:#ffffffa8;color:#24425f;cursor:pointer;font-size:.8rem;font-weight:800}.piece-picker button.active{color:#fff;border-color:var(--blue-deep);background:var(--blue-deep)}.piece-picker-glyphs{display:inline-flex;height:2rem}.piece-picker-glyph{display:inline-grid;width:2rem;height:2rem;place-items:center}.piece-picker-glyph:not(:first-child){margin-left:-.9rem}.piece-picker.capture-picker{grid-template-columns:repeat(4,1fr)}.starquest-completion{display:flex;justify-content:center;padding:.55rem .7rem;border-radius:.85rem;background:#ffd84f3d;color:#1c3a5c;font-weight:900}.capture-hud{display:flex;gap:.7rem;width:min(100%,calc(100dvh - 12rem));margin:0 auto .6rem}.capture-hud-cell{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .8rem;border-radius:1rem;background:#ffffffd1;box-shadow:0 .7rem 1.6rem #0a4da329,inset 0 0 0 1px #ffffffb3}.capture-hud-cell.points{background:#ffd84f52}.capture-hud-label{color:#5a7798;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.capture-hud-value{color:var(--blue-deep);font-size:clamp(1.7rem,6vw,2.7rem);font-weight:900;line-height:1}.capture-hud-score{transform-origin:center}.capture-hud-score.negative{color:#d92f2f}.capture-hud-target{margin-left:.1rem;color:#5a7798;font-size:.5em}.capture-hud-cell.timer.low .capture-hud-value{color:#d92f2f;animation:hud-timer-flash 1s ease-in-out infinite}.capture-hud-score.gain{animation:hud-score-gain .6s ease-out}.capture-hud-score.loss{animation:hud-score-loss .5s ease-out}@media(orientation:landscape),(min-width:641px){.capture-game-page{padding:.35rem .5rem;gap:.4rem}.capture-game-page .game-titlebar{display:none}.capture-game-page .game-layout{align-items:stretch}.capture-game-page .board-wrap{display:flex;align-items:stretch;gap:.4rem;padding:.3rem;height:calc(100dvh - 5.2rem)}.capture-game-page .capture-hud{display:contents}.capture-game-page .capture-hud-cell{flex:0 0 auto;width:5.2rem;padding:.5rem .3rem;flex-direction:column;justify-content:center}.capture-game-page .capture-hud-value{font-size:clamp(1.3rem,5vh,2rem)}.capture-game-page .capture-hud-cell.points{order:2}.capture-game-page .capture-stack{order:1;align-self:center;flex:0 1 calc(100dvh - 5.8rem);min-width:0;width:auto;height:auto;max-width:100%;margin:0 auto}.capture-game-page .capture-combo-board{display:none}.capture-game-page .capture-combo-hud{display:block}.capture-game-page .game-panel{max-height:calc(100dvh - 5.2rem);padding:.55rem;gap:.5rem;overflow-y:auto}.capture-game-page .message-bubble{min-height:0;padding:.4rem .55rem;font-size:.82rem}.capture-game-page .goal-readout{padding:.4rem .55rem;font-size:.85rem}.capture-game-page .level-hint{font-size:.72rem}.capture-game-page .game-layout.capture-full-board{grid-template-columns:1fr}}@media(max-height:500px),(min-width:641px)and (max-width:700px){.capture-game-page .game-layout{grid-template-columns:minmax(0,1fr) minmax(7rem,11rem)}.capture-game-page .game-layout.capture-full-board{grid-template-columns:1fr}}.high-score-list{display:grid;gap:.3rem;margin:0;padding:0;list-style:none;color:#1c3a5c;font-weight:700}.high-score-list li{display:flex;align-items:baseline;gap:.45rem}.high-score-rank{color:var(--blue-deep)}.high-score-points{flex:1}.high-score-date{color:#41607f;font-size:.8rem;font-weight:600}.count-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:.45rem}.count-picker button{min-height:2.6rem;border:1px solid rgba(10,77,163,.22);border-radius:.75rem;background:#ffffffa8;color:#24425f;cursor:pointer;font-weight:800}.count-picker button.active{color:#fff;border-color:var(--blue-deep);background:var(--blue-deep)}.goal-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.switch{position:relative;flex:none;width:3.2rem;height:1.9rem;padding:0;border:1px solid rgba(10,77,163,.25);border-radius:1rem;background:#0a4da32e;cursor:pointer;transition:background .16s ease}.switch.on{border-color:var(--blue-deep);background:var(--blue-deep)}.switch-knob{position:absolute;top:50%;left:.22rem;width:1.36rem;height:1.36rem;border-radius:50%;background:#fff;box-shadow:0 .15rem .35rem #083b7959;transform:translateY(-50%);transition:left .16s ease}.switch.on .switch-knob{left:calc(100% - 1.58rem)}.goal-readout{margin:0;padding:.5rem .7rem;border-radius:.7rem;background:#ffd84f4d;color:#1c3a5c;font-weight:700}.goal-extra{color:#41607f}.primary-action{min-height:3.1rem;border:0;border-radius:.9rem;color:#fff;background:var(--blue-deep);box-shadow:0 .8rem 1.4rem #0a4da333;cursor:pointer;font-size:1.05rem;font-weight:900}.primary-action:hover{background:#083d84}.secondary-action{min-height:3.1rem;border:1px solid rgba(10,77,163,.25);border-radius:.9rem;color:var(--blue-deep);background:#ffffffb8;cursor:pointer;font-weight:800}.secondary-action:hover{background:#fff}.thinking-dot{display:inline-block;flex:none;width:.55rem;height:.55rem;border-radius:50%;background:var(--blue-mid);animation:pulse .9s ease-in-out infinite}.analysis-panel textarea{width:100%;min-height:6.5rem;resize:vertical;border:1px solid rgba(10,77,163,.22);border-radius:.75rem;padding:.75rem;color:var(--ink);background:#ffffffc7;font:.92rem/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.action-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:.7rem}.action-row-single{grid-template-columns:1fr}.path-map{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.4rem;width:min(24rem,100%);margin:0 auto;padding:1rem 0 2.5rem}.path-map:before{content:"";position:absolute;top:1rem;bottom:2.5rem;left:50%;border-left:.22rem dashed rgba(10,77,163,.18)}.path-row{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.35rem}.path-node{position:relative;display:grid;width:4.4rem;height:4.4rem;place-items:center;border:.28rem solid rgba(10,77,163,.25);border-radius:50%;background:#fffc;cursor:pointer;font-size:1.9rem;line-height:1;box-shadow:0 .7rem 1.6rem #083b792e}.path-node.done{border-color:#d9a800;background:var(--gold)}.path-node.current{border-color:#fff;background:var(--blue-deep);animation:path-pulse 1.6s ease-in-out infinite}.path-node.locked{cursor:not-allowed;filter:grayscale(.9);opacity:.75;box-shadow:none}.path-node-icon{display:grid;place-items:center;pointer-events:none}.path-node-piece{display:grid;width:2.7rem;height:2.7rem;place-items:center;filter:drop-shadow(0 .16rem .22rem rgba(4,30,66,.35))}.path-node-badge{position:absolute;right:-.35rem;bottom:-.35rem;display:grid;width:1.6rem;height:1.6rem;place-items:center;border-radius:50%;background:#fff;box-shadow:0 .25rem .6rem #083b794d;color:#0f9d4f;font-size:.95rem;font-weight:900}.path-node-label{max-width:10rem;color:#1c3a5c;font-size:.85rem;font-weight:800;text-align:center}.path-node-start{padding:.2rem .7rem;border-radius:1rem;background:var(--gold);color:#5a4500;font-size:.78rem;font-weight:900;box-shadow:0 .4rem 1rem #083b7933}.path-mission-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;width:min(1140px,calc(100% - 1.5rem));margin:.9rem auto 0}.path-back{min-height:2.5rem;padding:0 .9rem}.path-mission-goal{color:#072c66;font-weight:800}.path-complete-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:1rem;background:#072c6673;animation:overlay-fade .18s ease-out}@keyframes path-pulse{0%,to{box-shadow:0 .7rem 1.6rem #083b792e,0 0 #1f86df8c}50%{box-shadow:0 .7rem 1.6rem #083b792e,0 0 0 .65rem #1f86df00}}@keyframes twinkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.16) rotate(8deg)}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes overlay-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes capture-popup{0%{opacity:0;transform:translateY(18%) scale(.7)}9%{opacity:1;transform:translateY(0) scale(1.15)}18%{transform:translateY(-6%) scale(1)}70%{opacity:1;transform:translateY(-14%) scale(1)}to{opacity:0;transform:translateY(-78%)}}@keyframes hud-score-gain{0%{transform:scale(1)}30%{transform:scale(1.5);color:#0f9d4f;text-shadow:0 0 .8rem rgba(15,157,79,.55)}to{transform:scale(1)}}@keyframes hud-score-loss{0%,to{transform:translate(0) scale(1)}20%{transform:translate(-.25rem) scale(1.12);color:#d92f2f}60%{transform:translate(.25rem) scale(1.12);color:#d92f2f}}@keyframes hud-timer-flash{0%,to{opacity:1}50%{opacity:.4}}@keyframes capture-spawn{0%{opacity:0;transform:scale(.15)}62%{opacity:1;transform:scale(1.16)}to{transform:scale(1)}}@keyframes pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.learn-stage,.learn-board{position:relative}.learn-poster{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:grid;place-items:center;border-radius:1rem;background:#083b7957;animation:overlay-fade .22s ease}.learn-watch{font-size:1.15rem;padding:.9rem 1.6rem;box-shadow:0 .8rem 2rem #041e4266}.learn-narrator{display:flex;align-items:flex-start;gap:.6rem}.learn-narrator-img{display:block;flex:0 0 auto;width:7.5rem;height:7.5rem;transform-origin:50% 90%;animation:narrator-idle 3.2s ease-in-out infinite;filter:drop-shadow(0 .3rem .5rem rgba(4,30,66,.25))}.learn-narrator-img svg{display:block;width:100%;height:100%}.learn-narrator.talking .learn-narrator-img{animation:narrator-talk .42s ease-in-out infinite}.eagle-beak-upper,.eagle-beak-lower{transform-box:view-box;transform-origin:690px 486px;transition:transform .14s ease-out}.learn-narrator.talking .eagle-beak-upper{animation:beak-chatter-upper .34s ease-in-out infinite}.learn-narrator.talking .eagle-beak-lower{animation:beak-chatter-lower .34s ease-in-out infinite}@keyframes beak-chatter-upper{0%,to{transform:rotate(0)}45%{transform:rotate(-12deg)}65%{transform:rotate(-8deg)}}@keyframes beak-chatter-lower{0%,to{transform:rotate(0)}45%{transform:rotate(4.5deg)}65%{transform:rotate(3deg)}}.owl-beak-upper,.owl-beak-lower{transform-box:view-box;transition:transform .14s ease-out}.learn-narrator.talking .owl-beak-upper{animation:owl-beak-upper .34s ease-in-out infinite}.learn-narrator.talking .owl-beak-lower{animation:owl-beak-lower .34s ease-in-out infinite}@keyframes owl-beak-upper{0%,to{transform:translateY(0)}45%{transform:translateY(-14px)}65%{transform:translateY(-9px)}}@keyframes owl-beak-lower{0%,to{transform:translateY(0)}45%{transform:translateY(26px)}65%{transform:translateY(16px)}}.horse-mouth-upper,.horse-mouth-lower{transform-box:view-box;transform-origin:915px 574px;transition:transform .14s ease-out}.learn-narrator.talking .horse-mouth-upper{animation:horse-mouth-upper .34s ease-in-out infinite}.learn-narrator.talking .horse-mouth-lower{animation:horse-mouth-lower .34s ease-in-out infinite}@keyframes horse-mouth-upper{0%,to{transform:rotate(0)}45%{transform:rotate(-6deg)}65%{transform:rotate(-4deg)}}@keyframes horse-mouth-lower{0%,to{transform:rotate(0)}45%{transform:rotate(14deg)}65%{transform:rotate(9deg)}}.cat-jaw,.lion-jaw{transform-box:view-box;transition:transform .14s ease-out}.learn-narrator.talking .cat-jaw{animation:cat-jaw-drop .34s ease-in-out infinite}.learn-narrator.talking .lion-jaw{animation:lion-jaw-drop .34s ease-in-out infinite}@keyframes cat-jaw-drop{0%,to{transform:translateY(0)}45%{transform:translateY(16px)}65%{transform:translateY(10px)}}@keyframes lion-jaw-drop{0%,to{transform:translateY(0)}45%{transform:translateY(18px)}65%{transform:translateY(12px)}}.bird-beak-lower{transform-box:view-box;transform-origin:727px 328px;transition:transform .14s ease-out}.learn-narrator.talking .bird-beak-lower{animation:bird-beak-chatter .34s ease-in-out infinite}@keyframes bird-beak-chatter{0%,to{transform:rotate(0)}45%{transform:rotate(7deg)}65%{transform:rotate(4.5deg)}}.learn-bubble{position:relative;flex:1;margin:0;padding:.7rem .85rem;border-radius:.9rem;background:#fff;border:1px solid rgba(10,77,163,.22);color:#1c3d5e;font-weight:700;font-size:.95rem;line-height:1.35;box-shadow:0 .5rem 1.2rem #083b791f}.learn-bubble:before{content:"";position:absolute;top:1.2rem;left:-.55rem;width:1rem;height:1rem;background:#fff;border-left:1px solid rgba(10,77,163,.22);border-bottom:1px solid rgba(10,77,163,.22);transform:rotate(45deg)}@keyframes narrator-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-4%)}}@keyframes narrator-talk{0%,to{transform:translateY(0) rotate(-.7deg)}50%{transform:translateY(-3%) rotate(.7deg)}}.learn-hero{position:absolute;top:0;left:0;z-index:6;width:12.5%;height:12.5%;transition:transform .65s ease-in-out}.learn-hero>svg,.learn-hero>*{width:88%;height:88%}.learn-cast{z-index:5;transition:transform .65s ease-in-out,opacity .25s ease .42s}.learn-cast.captured{opacity:0}.learn-hero-morph{position:relative;display:block}.learn-morph-from,.learn-morph-to{position:absolute;top:0;right:0;bottom:0;left:0}.learn-morph-from>*,.learn-morph-to>*{width:100%;height:100%}.learn-morph-from{animation:learn-morph-out .4s ease .7s forwards}.learn-morph-to{opacity:0;transform:scale(.3);animation:learn-morph-in .55s cubic-bezier(.34,1.56,.64,1) .78s forwards}@keyframes learn-morph-out{to{opacity:0;transform:scale(1.3)}}@keyframes learn-morph-in{0%{opacity:0;transform:scale(.3);filter:drop-shadow(0 0 0 rgba(255,205,66,0))}60%{filter:drop-shadow(0 0 16px rgba(255,205,66,.95))}to{opacity:1;transform:scale(1);filter:drop-shadow(0 0 2px rgba(255,205,66,.35))}}.learn-enemy{transition:opacity .25s ease .42s}.learn-enemy.captured{opacity:0}.learn-chapters{display:flex;gap:.45rem;margin-bottom:.9rem}.learn-chapters button{flex:1;padding:.5rem .4rem;border:1px solid rgba(10,77,163,.22);border-radius:999px;background:#ffffffa8;color:#24425f;cursor:pointer;font-size:.9rem;font-weight:800}.learn-chapters button.active{color:#fff;border-color:var(--blue-deep);background:var(--blue-deep)}.learn-picker{grid-template-columns:repeat(6,1fr);margin-bottom:.9rem}.learn-picker button:disabled{cursor:default;opacity:.55}.learn-exercises h2{margin:0 0 .6rem;font-size:1.05rem;color:#0a4da3e6}.learn-picker.learn-picker-rules{grid-template-columns:repeat(5,1fr)}.learn-picker.learn-picker-school{grid-template-columns:repeat(4,1fr)}.learn-exercises{margin-top:1.4rem}.learn-star-game .game-page{width:100%;padding:0}.learn-star-game .game-titlebar h1{display:none}.learn-progress{display:flex;justify-content:center}.learn-progress button{width:1.6rem;height:1.6rem;padding:0;border:none;background:none;display:grid;place-items:center;cursor:pointer}.learn-progress button:before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:#0a4da340;transition:background .2s ease,transform .2s ease}.learn-progress button.visited:before{background:#0a4da38c}.learn-progress button:hover:before,.learn-progress button:focus-visible:before{transform:scale(1.35)}.learn-progress button.active:before{background:var(--blue-deep);transform:scale(1.35)}@media(max-width:900px){.top-nav{flex-direction:column;align-items:stretch}.brand{justify-content:center}.page-tabs{flex-wrap:wrap}.page-tabs button{flex:1;flex-direction:column;gap:.15rem;min-height:3.2rem;padding:.35rem .2rem;font-size:.78rem}.tab-dropdown{flex:1}.tab-dropdown>button{width:100%}.tab-dropdown .tab-caret{display:none}.tab-dropdown-menu button{flex-direction:row;gap:.4rem;justify-content:flex-start;min-height:2.5rem;padding:0 .9rem}.tab-icon{font-size:1.35rem}.game-layout{grid-template-columns:1fr}.learn-picker,.learn-picker.learn-picker-rules,.learn-picker.learn-picker-school{grid-template-columns:repeat(3,1fr)}.board-wrap{padding:.4rem}.game-titlebar h1{font-size:clamp(1.5rem,6vw,2.1rem)}}@media(max-width:480px){.game-page,.top-nav{width:calc(100% - .9rem)}.status-chip{font-size:.88rem}}.site-footer{width:min(1140px,calc(100% - 1.5rem));margin:2.5rem auto 0;padding:1rem 0 .25rem;border-top:1px solid rgba(120,86,38,.2);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;font-size:.85rem;color:#5b4a2cbf}.footer-link{background:none;border:none;padding:0;cursor:pointer;color:#7a5215;font-weight:600;text-decoration:underline}.footer-link:hover{color:#5b4a2c}.legal-page{width:min(760px,calc(100% - 1.5rem));margin:1.5rem auto 0;padding:1.75rem 1.9rem;background:linear-gradient(165deg,#fdf7ea,#f4e6cd);border:1px solid rgba(150,108,52,.22);border-radius:1rem;box-shadow:0 1.2rem 3rem #7856262e;color:#4c3d24;line-height:1.6}.legal-page h1{color:#6b4f23;margin-top:0}.legal-page h2{color:#6b4f23;margin-top:2rem;padding-bottom:.3rem;border-bottom:1px solid rgba(150,108,52,.28)}.legal-page h3{color:#5b4a2c;margin-bottom:.3rem}.legal-page a{color:#7a5215;font-weight:600}.legal-updated{font-size:.85rem;color:#5b4a2ca6}.legal-meta{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1.2rem;margin:.5rem 0 0}.legal-meta dt{font-weight:700;color:#5b4a2c}.legal-meta dd{margin:0}.email-link{background:none;border:none;padding:0;cursor:pointer;color:#7a5215;font:inherit;font-weight:600;text-decoration:underline}.email-link:hover{color:#5b4a2c}.circuit-stage{width:min(1240px,calc(100% - 1.5rem));margin:0 auto;padding:.9rem 0 1.25rem;display:flex;flex-direction:column;gap:.85rem}.circuit-hud{position:sticky;top:0;z-index:20;background:linear-gradient(135deg,#0a4da3,#1f86df);color:#fff;box-shadow:0 .4rem 1.4rem #083b7947}.circuit-hud-inner{width:min(1240px,calc(100% - 1.5rem));margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .6rem;min-height:3rem;padding:.45rem 0}.circuit-hud-nav{display:inline-flex;align-items:center;justify-content:center;min-width:2.6rem;min-height:2.3rem;border:1px solid rgba(255,255,255,.55);background:#ffffff24;color:#fff;border-radius:.7rem;padding:.35rem .55rem;font-size:1.15rem;line-height:1;cursor:pointer}.circuit-hud-nav:hover{background:#ffffff42}.circuit-hud-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:auto}.circuit-chip{display:inline-flex;align-items:center;gap:.3rem;background:#ffffff2e;border-radius:2rem;padding:.25rem .7rem;font-weight:800;white-space:nowrap}.circuit-chip-icon{font-size:1.05rem}.circuit-chip-runs.is-exhausted{background:#ffb34752;opacity:.85}.circuit-hud-status{font-size:1.25rem;line-height:1}.circuit-hud-crest{border:none;background:none;padding:0;cursor:pointer;display:inline-flex;align-items:center}.circuit-hud-crest-img{height:2.6rem;width:auto;filter:drop-shadow(0 .15rem .35rem rgba(8,59,121,.45));transition:transform .12s ease}.circuit-hud-crest:hover .circuit-hud-crest-img{transform:scale(1.08)}.circuit-hud-icon{display:inline-flex;align-items:center;justify-content:center;min-width:2.3rem;min-height:2.3rem;border:1px solid rgba(255,255,255,.55);background:#ffffff24;color:#fff;border-radius:.7rem;font-size:1.15rem;line-height:1;cursor:pointer;padding:0}.circuit-hud-icon:hover{background:#ffffff42}.circuit-guide-fab{position:fixed;left:clamp(.75rem,2.5vw,1.5rem);bottom:clamp(.75rem,2.5vw,1.5rem);z-index:30;display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;border:none;border-radius:2rem;background:linear-gradient(135deg,#b6862c,#e0a93b);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 .5rem 1.4rem #083b7957}.circuit-guide-fab:hover{filter:brightness(1.06)}.circuit-guide-fab-icon{font-size:1.3rem;line-height:1}.circuit-feedback-text{width:100%;resize:vertical;padding:.6rem .7rem;border:1px solid rgba(8,59,121,.35);border-radius:.6rem;font:inherit;margin-bottom:.6rem}@media(max-width:480px){.circuit-guide-fab-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@media(max-width:600px){.circuit-hud-inner{gap:.35rem .45rem;min-height:2.7rem}.circuit-hud-chips{gap:.3rem}.circuit-chip{padding:.2rem .55rem}.circuit-chip-icon{font-size:.95rem}.circuit-hud-nav{padding:.3rem .45rem;font-size:1.05rem;min-width:2.3rem;min-height:2.1rem}.circuit-hud-crest-img{height:2.2rem}.circuit-hud-icon{min-width:2.1rem;min-height:2.1rem;font-size:1.05rem}.circuit-hud-sound{display:none}.circuit-stage{padding-bottom:4.75rem}}.circuit-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:38;display:flex;align-items:flex-end;justify-content:center;background:#08203c80}.circuit-sheet{width:min(640px,100%);max-height:85dvh;overflow-y:auto;padding:.6rem 1.25rem 1.5rem;background:#fff;border-radius:1.2rem 1.2rem 0 0;box-shadow:0 -1.2rem 3rem #083b794d;animation:circuit-sheet-rise .18s ease-out}@keyframes circuit-sheet-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}.circuit-sheet-grip{width:2.6rem;height:.3rem;margin:.2rem auto .6rem;border-radius:1rem;background:#0a4da338}.circuit-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.circuit-sheet-title{margin:0;font-size:1.2rem;font-weight:800;color:var(--blue-deep)}.circuit-sheet-close{border:none;background:#0a4da31a;color:var(--blue-deep);width:2rem;height:2rem;border-radius:50%;font-size:1.2rem;line-height:1;cursor:pointer}.circuit-sheet-close:hover{background:#0a4da32e}.circuit-inv-headline{display:flex;flex-direction:column;gap:.1rem}.circuit-inv-summary{margin:0;font-size:.85rem;font-weight:700;color:#8a6f44}.circuit-inv-grid{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.circuit-inv-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.85rem .6rem .7rem;border:1px solid rgba(150,108,52,.22);border-radius:.9rem;background:linear-gradient(165deg,#fdf7ea,#f4e6cd);box-shadow:0 .35rem .8rem #7856261f}.circuit-inv-card-art{display:flex;align-items:center;justify-content:center;width:100%;height:4.2rem}.circuit-inv-card-art img{max-width:3.6rem;max-height:100%;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(120,86,38,.25))}.circuit-inv-card-name{font-size:.85rem;font-weight:700;color:#5b4a2c;text-align:center;line-height:1.2}.circuit-inv-card-count{position:absolute;top:.45rem;right:.45rem;min-width:1.5rem;padding:.1rem .4rem;border-radius:1rem;background:#785626eb;color:#fff;font-size:.8rem;font-weight:800;text-align:center;box-shadow:0 1px 2px #7856264d}.circuit-inv-empty{margin:1.2rem 0;text-align:center;color:#8a6f44;font-weight:600}.circuit-sheet-note{margin:1rem 0 0;padding:.6rem .8rem;border-radius:.7rem;background:#0a4da30f;color:#355475;font-size:.9rem}.circuit-sheet-reset{display:block;margin-top:1.1rem;border:none;background:none;color:#5a728f;font-size:.82rem;text-decoration:underline;cursor:pointer;padding:.2rem .1rem}.circuit-sheet-reset:hover{color:var(--blue-deep)}.circuit-sheet-legal{display:block;margin-top:1.1rem;color:#5a728f;font-size:.82rem;text-decoration:underline;padding:.2rem .1rem}.circuit-sheet-legal:hover{color:var(--blue-deep)}.circuit-auth-legal{margin:.8rem 0 0;text-align:center;font-size:.8rem}.circuit-auth-legal a{color:#5a728f}.circuit-auth-legal a:hover{color:var(--blue-deep)}@media(min-width:768px){.circuit-inv-backdrop,.circuit-settings-backdrop{align-items:flex-start;justify-content:flex-end;padding:4rem clamp(.75rem,2.5vw,1.5rem) 0;background:#08203c47}.circuit-inv-sheet,.circuit-settings-sheet{width:min(30rem,100%);max-height:min(70dvh,34rem);border-radius:1.1rem;box-shadow:0 1.2rem 3rem #083b7952;animation:circuit-inv-pop .16s ease-out}.circuit-settings-sheet{width:min(22rem,100%)}.circuit-inv-sheet .circuit-sheet-grip,.circuit-settings-sheet .circuit-sheet-grip{display:none}.circuit-inv-grid{grid-template-columns:repeat(auto-fill,minmax(6.25rem,1fr))}}@keyframes circuit-inv-pop{0%{opacity:0;transform:translateY(-.6rem) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.circuit-settings-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.55rem .1rem;border-bottom:1px solid rgba(8,59,121,.12)}.circuit-settings-label{font-weight:700}.circuit-settings-row-stacked{flex-direction:column;align-items:stretch;gap:.45rem}.circuit-settings-dial{display:flex;border:1px solid rgba(8,59,121,.35);border-radius:.6rem;overflow:hidden;background:#fff}.circuit-settings-dial-option{position:relative;flex:1;padding:.4rem .3rem;text-align:center;font-size:.85rem;font-weight:600;cursor:pointer}.circuit-settings-dial-option+.circuit-settings-dial-option{border-left:1px solid rgba(8,59,121,.18)}.circuit-settings-dial-option input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:pointer}.circuit-settings-dial-option:focus-within{outline:2px solid rgba(8,59,121,.6);outline-offset:-2px}.circuit-settings-dial-option.is-active{background:#083b791f;color:#083b79}.circuit-settings-name-input{padding:.45rem .6rem;border:1px solid rgba(8,59,121,.35);border-radius:.6rem;background:#fff;font:inherit;font-weight:600;color:inherit}.circuit-settings-name-input:focus-visible{outline:2px solid rgba(8,59,121,.6);outline-offset:-2px}.circuit-settings-name-row{display:flex;align-items:center;gap:.5rem}.circuit-settings-name-row .circuit-settings-name-input{flex:1;min-width:0}.circuit-settings-name-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.circuit-settings-name-value.is-unset{font-weight:400;opacity:.55}.circuit-settings-name-button{padding:.4rem .8rem;border:1px solid rgba(8,59,121,.35);border-radius:.6rem;background:#fff;font:inherit;font-size:.85rem;font-weight:700;color:inherit;cursor:pointer}.circuit-settings-name-button:focus-visible{outline:2px solid rgba(8,59,121,.6);outline-offset:-2px}.circuit-settings-hint{margin:0;font-size:.78rem;opacity:.65}.is-tappable{cursor:pointer}.circuit-hub{position:relative;padding:clamp(.5rem,1.5vw,1rem);border-radius:1.2rem}.circuit-hub-tagline{margin:.1rem 0 .8rem;text-align:center;font-weight:700;color:#2f5a33;text-shadow:0 1px 0 rgba(255,255,255,.65)}.circuit-hub-map{position:relative;width:100%;aspect-ratio:1672 / 941;border-radius:1rem;overflow:hidden;background-image:var(--hub-desktop, none),radial-gradient(125% 90% at 50% 0%,#eafae0,#d7f0cf 42%,#cfe9f7);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #ffffff80}@media(max-width:640px){.circuit-hub-map{aspect-ratio:auto;overflow:visible;display:grid;grid-template-columns:1fr;align-items:stretch;justify-items:stretch;gap:.6rem;padding:.6rem .3rem;background-image:var(--hub-mobile, none),radial-gradient(130% 60% at 50% 0%,#eafae0,#d7f0cf 42%,#cfe9f7)}.circuit-hub-map:before{content:"";position:absolute;z-index:0;top:.6rem;bottom:.6rem;left:1.55rem;width:.4rem;border-radius:1rem;background:repeating-linear-gradient(to bottom,rgba(196,154,74,.55) 0 .7rem,transparent .7rem 1.5rem)}}.hub-spot{position:absolute;left:var(--spot-x);top:var(--spot-y);width:var(--spot-w);transform:translate(-50%,-50%);z-index:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:0;border:none;background:none;color:inherit;cursor:pointer;transition:transform .12s ease,filter .12s ease}.hub-spot:hover,.hub-spot:focus-visible{transform:translate(-50%,calc(-50% - 4px));filter:drop-shadow(0 .5rem .8rem rgba(8,59,121,.28));outline:none;z-index:2}.hub-spot:focus-visible .hub-spot-label{box-shadow:0 0 0 2px var(--blue-deep)}.hub-spot-label{display:flex;flex-direction:column;align-items:center;gap:.05rem;padding:.25rem .7rem;border-radius:.8rem;background:#ffffffd1;box-shadow:0 .3rem .8rem #083b792e;text-align:center}.hub-spot-title{font-weight:800;line-height:1.15;color:var(--ink)}.hub-spot-subtitle{font-size:.78rem;line-height:1.1;color:#355475}.hub-tile-art{display:flex;align-items:flex-end;justify-content:center;width:100%;background:radial-gradient(50% 18% at 50% 90%,rgba(33,86,38,.28),transparent 70%)}.hub-tile-art-img{width:100%;height:auto;display:block;filter:drop-shadow(0 .35rem .45rem rgba(8,59,121,.3))}.hub-tile-art-fallback{font-size:2.6rem;line-height:1}.hub-league .hub-tile-art-fallback{font-size:4rem}.hub-league .hub-spot-label{background:linear-gradient(135deg,#fff4cf,#ffe48a);box-shadow:inset 0 0 0 2px var(--gold),0 .4rem 1rem #083b7933}.hub-league .hub-spot-title{font-size:clamp(1rem,1.5vw,1.25rem)}.hub-stars{opacity:.95}.hub-stars .hub-tile-art{background:none}.hub-stars .hub-tile-art-fallback{font-size:clamp(1.6rem,3vw,2.4rem);filter:drop-shadow(0 .2rem .4rem rgba(120,92,0,.45))}.hub-stars .hub-spot-title{font-size:.9rem}.hub-stars .hub-spot-subtitle{font-size:.72rem}@media(max-width:640px){.hub-spot{position:relative;left:auto;top:auto;width:auto;transform:none;flex-direction:row;align-items:center;justify-content:flex-start;gap:.8rem;max-width:none;margin-left:2.5rem;padding:.5rem .8rem;min-height:4.4rem;border-radius:1.1rem;background:#ffffff8c;box-shadow:inset 0 0 0 1px #fff9}.hub-spot:hover,.hub-spot:focus-visible{transform:translateY(-3px)}.hub-spot-label{align-items:flex-start;padding:0;background:none;box-shadow:none;text-align:left}.hub-tile-art{flex:0 0 auto;align-items:center;width:3.4rem;height:3.4rem;background:none}.hub-tile-art-fallback{font-size:2.1rem}.hub-league{margin-left:0;background:linear-gradient(135deg,#fff4cfe0,#ffe48ae0);box-shadow:inset 0 0 0 2px var(--gold)}.hub-league .hub-tile-art{width:4.6rem;height:4.6rem}.hub-league .hub-tile-art-fallback{font-size:2.8rem}.hub-league .hub-spot-label{background:none;box-shadow:none}.hub-stars{margin-left:2.5rem;min-height:3.4rem;opacity:.85}.hub-stars .hub-tile-art{width:2.6rem;height:2.6rem}}.hub-spot-construction{display:inline-flex;align-items:center;gap:.25rem;margin-top:.1rem;padding:.05rem .5rem;border-radius:1rem;font-size:.72rem;font-weight:700;color:#7a4b12;background:#ffd682eb;box-shadow:inset 0 0 0 1px #7a4b124d}.hub-travel .hub-spot-label{opacity:.94}.hub-mountain-pass .hub-tile-art{background:none}.hub-mountain-pass .hub-tile-art-img{filter:none}.hub-sealed-tower{opacity:.95}.hub-sealed-tower .hub-spot-subtitle{letter-spacing:.25em}.circuit-hub-rookhold .hub-tournament{flex-direction:column-reverse}.hub-sealed-tower .hub-spot-label{position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:.4rem;white-space:nowrap}.rookhold-construction{display:flex;flex-direction:column;align-items:center;gap:.6rem;max-width:30rem;margin:8vh auto 0;text-align:center}.rookhold-construction-glyph{font-size:2.6rem}.circuit-screen{display:flex;flex-direction:column;gap:.85rem}.circuit-screen-head{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.circuit-screen-head h2{margin:0;font-size:1.35rem}.circuit-screen-head .status-chip{margin-left:auto}.circuit-card{padding:1rem;border-radius:1rem;background:#ffffffa8;box-shadow:inset 0 0 0 1px #ffffffb3;display:flex;flex-direction:column;gap:.5rem}.circuit-card h3{margin:0}.circuit-config-error ul{margin:.4rem 0 0;padding-left:1.2rem;color:#8a1f2c}.circuit-result{padding:1.2rem;border-radius:1rem;background:#ffffffb8;box-shadow:inset 0 0 0 1px #ffffffb3;text-align:center;display:flex;flex-direction:column;gap:.6rem;align-items:center}.circuit-match{display:flex;flex-direction:column;align-items:center;gap:.7rem;padding:clamp(.5rem,1.6vw,1rem);border-radius:1.1rem;background-image:var(--match-bg, none),linear-gradient(160deg,#f7e8cd,#efe2c6 45%,#e7f0dc);background-size:cover;background-position:center;background-repeat:no-repeat}.circuit-match .board-wrap{max-width:100%}.riddle-puzzle .board-wrap,.switchyard-puzzle .board-wrap{width:min(100%,calc(100dvh - 12rem))}.circuit-match .library-board{width:min(100%,calc(100dvh - 13rem))}@media(max-width:700px)and (orientation:portrait){.circuit-stage:has(.board-wrap){width:100%}.circuit-stage .game-page{width:100%}.circuit-stage .circuit-match,.circuit-stage .board-wrap{padding-left:0;padding-right:0;border-radius:0}}.match-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.3rem .55rem;padding:.3rem .85rem;border-radius:999px;background:#ffffffa8;box-shadow:inset 0 0 0 1px #ffffffb3;color:#2a3f17;font-weight:700;font-size:.95rem}.match-meta-opponent,.match-meta-you{color:#1c3a5c}.match-meta-vs{opacity:.45;font-weight:600}.match-meta-dot{opacity:.45}.match-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem .6rem;min-height:1.6rem;color:#1c3a5c;font-weight:700;text-align:center}.match-status-move{color:#5a4a2c;font-weight:600;font-size:.9rem}.match-hint{margin:0;max-width:32rem;text-align:center;color:#3a4a2c;font-size:.85rem;opacity:.85}.match-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.match-action{font-size:.9rem;padding:.4rem .9rem}.match-side{display:contents}@media(max-width:720px){.circuit-match{padding:.4rem;gap:.5rem}.circuit-match .library-board{width:min(100%,calc(100dvh - 11rem))}}@media(orientation:landscape)and (max-height:500px){.circuit-stage{padding:.35rem .6rem}.circuit-match-arena{display:grid;grid-template-columns:minmax(5rem,11rem) minmax(0,1fr) minmax(6rem,12rem);align-items:stretch;column-gap:.6rem;padding:.3rem .5rem;height:calc(100dvh - 4.3rem)}.circuit-match-arena .match-meta{flex-direction:column;justify-content:center;align-self:center;height:auto;text-align:center}.circuit-match-arena .board-wrap{padding:.3rem;display:flex;align-items:center;justify-content:center;min-width:0}.circuit-match-arena .library-board{width:min(100%,calc(100dvh - 4.9rem))!important}.circuit-match-arena .quick-board{width:min(100%,calc((100dvh - 4.9rem) * 5 / 6))!important}.circuit-match-arena .match-side{display:flex;flex-direction:column;justify-content:center;gap:.5rem}.circuit-match-arena .match-status,.circuit-match-arena .match-actions{flex-direction:column}.circuit-match-arena .match-hint{font-size:.72rem}}.circuit-match-resign-only{flex-direction:row;align-items:center;justify-content:center;gap:1.2rem}.circuit-match-resign-only .match-side{display:flex;flex:0 0 auto}.circuit-match-resign-only .match-actions{flex-direction:column}.circuit-match-resign-only .library-board,.circuit-match-resign-only .quick-board{width:min(100%,calc(100dvh - 7rem))}@media(orientation:landscape)and (max-height:500px){.circuit-match-resign-only.circuit-match-arena{grid-template-columns:minmax(0,1fr) minmax(6rem,12rem)}}@media(orientation:landscape)and (min-height:501px){.circuit-match-arena:not(.circuit-match-resign-only){display:grid;grid-template-columns:minmax(0,1fr) minmax(9rem,13rem);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"meta meta" "board side";justify-items:center;align-items:center;column-gap:.9rem}.circuit-match-arena:not(.circuit-match-resign-only) .match-meta{grid-area:meta}.circuit-match-arena:not(.circuit-match-resign-only) .board-wrap{grid-area:board;min-width:0;width:min(100%,calc(100dvh - 9.5rem))}.circuit-match-arena:not(.circuit-match-resign-only) .match-side{grid-area:side;justify-self:stretch;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:.6rem}.circuit-match-arena:not(.circuit-match-resign-only) .match-status{flex-direction:column}.circuit-match-arena:not(.circuit-match-resign-only) .match-actions{flex-direction:column}.circuit-match-arena:not(.circuit-match-resign-only) .library-board{width:min(100%,calc(100dvh - 10.5rem))}}@media(orientation:portrait){.circuit-match-arena:has(.weapon-action) .library-board{width:min(100%,calc(100dvh - 17rem))}.circuit-match-arena:has(.weapon-action) .quick-board{width:min(100%,calc((100dvh - 17rem) * 5 / 6))!important}}@media(max-width:700px)and (orientation:portrait){.circuit-match-resign-only{flex-direction:column}.circuit-match-resign-only .board-wrap{min-height:calc(100dvh - 6rem);display:flex;align-items:center;justify-content:center}.circuit-match-resign-only .match-side{width:100%}.circuit-match-resign-only .library-board,.circuit-match-resign-only .quick-board{width:min(100%,calc(100dvh - 6rem))}}.shop-grid,.tavern-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.75rem}.shop-card,.tavern-card{display:flex;flex-direction:column;gap:.3rem;padding:.85rem;border-radius:.9rem;background:#ffffffb8;box-shadow:inset 0 0 0 1px #ffffffb3;text-align:center;align-items:center}.shop-piece-art{width:3.4rem;height:3.4rem;object-fit:contain}.shop-bundle-art{font-size:2.6rem;line-height:3.4rem}.shop-name,.tavern-name{font-weight:800}.shop-owned,.tavern-level,.tavern-stake{font-size:.82rem;color:#355475}.shop-needed{font-size:.8rem;color:#8a5a00;font-weight:600}.shop-short{font-size:.78rem;color:#c43a1c;font-weight:700}.shop-missing-alert{font-size:.85rem;color:#ff2b2b;font-weight:800}.shop-section-title{margin:1.4rem 0 .4rem;font-size:1.15rem}.shop-weapon-art{width:4.6rem;height:4.6rem;object-fit:contain;border-radius:.7rem}.shop-weapon-info{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer}.shop-weapon-info:hover .shop-weapon-art,.shop-weapon-info:focus-visible .shop-weapon-art{transform:scale(1.06)}.shop-weapon-info .shop-weapon-art{transition:transform .15s ease-out}.shop-weapon-info .shop-name{text-decoration:underline dotted rgba(53,84,117,.6);text-underline-offset:.2em}.weapon-info-art{width:5.6rem;height:5.6rem;object-fit:contain;align-self:center;filter:drop-shadow(0 .4rem .6rem rgba(8,59,121,.25))}.weapon-info-summary{margin:0;font-weight:600}.weapon-info-section{text-align:left;background:#083b790f;border-radius:.7rem;padding:.6rem .75rem}.weapon-info-section h4{margin:0 0 .25rem;font-size:.9rem}.weapon-info-section p{margin:0;font-size:.9rem;color:#355475}.weapon-info-games{margin:0;font-size:.82rem;color:#8a5a00;font-weight:600}.tavern-layout{display:grid;grid-template-columns:minmax(0,972fr) 400fr;gap:20px;align-items:start}.tavern-map{position:relative;aspect-ratio:972 / 780;width:100%;border-radius:1rem;overflow:hidden;background-color:#2c1c12;background-size:cover;background-position:center;box-shadow:inset 0 0 0 4px #3a2314e6,inset 0 0 60px #0000008c,0 12px 28px #00000059;container-type:inline-size}.tavern-table{position:absolute;transform:translate(-50%,-50%);padding:0;border:0;background:transparent;cursor:pointer;border-radius:12cqw}.tavern-table-glow{position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;background:radial-gradient(circle,#ffc46e8c,#ffc46e00);opacity:0;transition:opacity .14s ease;pointer-events:none}.tavern-table:hover .tavern-table-glow,.tavern-table:focus-visible .tavern-table-glow,.tavern-table.is-active .tavern-table-glow{opacity:1}.tavern-table:focus-visible{outline:3px solid #ffd479;outline-offset:2px}.tavern-table img{position:absolute;left:50%;transform:translate(-50%);pointer-events:none;-webkit-user-drag:none}.tavern-table-art{top:50%;width:13cqw;transform:translate(-50%,-50%)}.tavern-table-player{top:15%;width:9cqw;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}.tavern-table-chair{top:84%;width:7.5cqw;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35));transition:filter .14s ease}.tavern-table:hover .tavern-table-chair,.tavern-table:focus-visible .tavern-table-chair,.tavern-table.is-active .tavern-table-chair{filter:drop-shadow(0 0 4px rgba(255,176,80,.95))}.tavern-table-chair-far{top:auto;bottom:25%;transform:translate(-50%) rotate(180deg)}.tavern-table.is-vacant .tavern-table-glow{background:radial-gradient(circle,#aac8ff66,#aac8ff00)}.tavern-new-challenger{margin:.4rem 0 0;color:#8a5a18;font-weight:800}.tavern-map:has(.tavern-table.is-active) .tavern-table:not(.is-active){filter:brightness(.8)}.tavern-table.is-locked.is-active{outline:2px solid rgba(255,210,120,.8);outline-offset:-2px;border-radius:50%}.tavern-table.is-selected{border-radius:50%;box-shadow:0 0 0 3px #f7c55c,0 0 .9rem #f7c55ca6}.tavern-table.is-locked.is-selected{box-shadow:0 0 0 3px #ffd278cc,0 0 .9rem #ffd27880}.tavern-sidebar{display:flex;flex-direction:column;gap:18px}.tavern-detail{position:relative;padding:24px;border-radius:1rem;color:#34230f;background:linear-gradient(#fff7e0c7,#f7e8c6c7),url(/tavern/ui/sidebar-parchment-wood.webp);background-size:cover;background-position:center;box-shadow:inset 0 0 0 5px #3f2714eb,0 10px 24px #00000047;display:flex;flex-direction:column;gap:.55rem;min-height:16rem}.tavern-detail-title{margin:0;font-weight:800;letter-spacing:.02em}.tavern-detail-lead{margin:0;font-size:1.2rem;font-weight:700;color:#6a4a1f}.tavern-detail-money{margin:0;font-weight:700}.tavern-portrait{width:132px;height:132px;align-self:center;border-radius:.6rem;overflow:hidden;background:#0000001f;box-shadow:inset 0 0 0 4px #3f2714e6}.tavern-portrait img{width:100%;height:100%;object-fit:cover}.tavern-detail-name{margin:0;text-align:center;font-size:1.3rem;font-weight:800}.tavern-detail-type{margin:0;text-align:center;color:#6a4a1f;font-weight:600}.tavern-stats{margin:.4rem 0 0;display:flex;flex-direction:column;gap:.35rem}.tavern-stats div{display:flex;justify-content:space-between;gap:.75rem;border-bottom:1px dashed rgba(99,64,28,.4);padding-bottom:.25rem}.tavern-stats dt{margin:0;color:#6a4a1f}.tavern-stats dd{margin:0;font-weight:700}.tavern-detail.is-locked .primary-action[disabled]{margin-top:.4rem;height:48px}@media(max-width:860px){.tavern-layout{grid-template-columns:1fr;gap:12px}.tavern-detail{min-height:0;padding:18px}.tavern-portrait{width:96px;height:96px}}.garrison-lead{margin:0;color:#4a5364;font-weight:600}.garrison-room-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.garrison-room-tab{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.5rem .9rem;border:0;border-radius:.7rem;cursor:pointer;font:inherit;color:#2c3242;background:#fff9;box-shadow:inset 0 0 0 2px #4a536459}.garrison-room-tab.is-active{color:#f4f6fb;background:#3f4a60;box-shadow:inset 0 0 0 2px #2c3242}.garrison-room-tab-name{font-weight:800}.garrison-room-tab-preset{font-size:.85rem;opacity:.85}.garrison-map{background-color:#2a3140;box-shadow:inset 0 0 0 4px #1e2432eb,inset 0 0 60px #050a148c,0 12px 28px #00000059}.garrison-nameplate{position:absolute;left:50%;top:100%;transform:translate(-50%,.15cqw);padding:.35cqw 1.1cqw;border-radius:999px;font-size:clamp(.62rem,1.7cqw,.85rem);font-weight:700;white-space:nowrap;color:#e8edf7;background:#1e2432d1;box-shadow:inset 0 0 0 1px #96a8c873;pointer-events:none}.garrison-nameplate.is-champion{color:#3a2c08;background:#f0cd69e6;box-shadow:inset 0 0 0 1px #8c6c2ab3}.garrison-map .tavern-table.is-champion .tavern-table-glow{background:radial-gradient(circle,#ffd67899,#ffd67800)}.garrison-map .tavern-table.is-locked img{filter:grayscale(.35) brightness(.75)}.garrison-map .tavern-table.is-locked .garrison-nameplate{opacity:.75}.garrison-screen .tavern-detail{color:#1f2634;background:linear-gradient(#d6deecf5,#b2bdd0f5);box-shadow:inset 0 0 0 5px #303a4eeb,0 10px 24px #00000047}.garrison-screen .tavern-detail-lead,.garrison-screen .tavern-detail-type,.garrison-screen .tavern-stats dt{color:#45526b}.garrison-screen .tavern-portrait{box-shadow:inset 0 0 0 4px #303a4ee6}.garrison-screen .tavern-stats div{border-bottom-color:#45526b66}.tournament-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.tournament-card{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:.9rem;background:#ffffffa8;box-shadow:inset 0 0 0 1px #ffffffb3}.tournament-card>div{display:flex;flex-direction:column;gap:.15rem}.tournament-card button{margin-left:auto}.tournament-meta,.tournament-status{font-size:.82rem;color:#355475}.arena{display:flex;flex-direction:column;gap:.85rem}.arena-scene{position:relative;width:100%;aspect-ratio:16 / 9;max-height:360px;border-radius:1.1rem;overflow:hidden;background:radial-gradient(120% 120% at 50% 0%,#ffe7ad,#f4b65a 48%,#e07b3a);box-shadow:inset 0 0 0 1px #fff6}.arena-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:var(--arena-desktop, none);background-size:cover;background-position:center;background-repeat:no-repeat;transform-origin:50% 35%}.arena-corner{position:absolute;left:clamp(.4rem,2vw,1.4rem);bottom:0;width:min(62%,30rem);height:100%;z-index:2;pointer-events:none}.arena-aurelia{position:absolute;left:0;bottom:0;height:clamp(8rem,70%,18rem)}.arena-aurelia img{height:100%;width:auto;object-fit:contain;object-position:bottom left;filter:drop-shadow(0 6px 14px rgba(64,32,8,.4))}.arena-speech-bubble{position:absolute;left:clamp(3.5rem,32%,9rem);top:clamp(.5rem,6%,1.6rem);max-width:min(15rem,60%);padding:.55rem .8rem;border-radius:.85rem;background:linear-gradient(160deg,#fffcf4f7,#ffeac6f2);border:1px solid rgba(150,90,30,.32);box-shadow:0 .3rem .9rem #4a260847;color:#4a3110;animation:arena-bubble-enter .36s ease-out both}.arena-speech-bubble:after{content:"";position:absolute;left:1.3rem;bottom:-.45rem;width:.9rem;height:.9rem;background:inherit;border-right:1px solid rgba(150,90,30,.32);border-bottom:1px solid rgba(150,90,30,.32);transform:rotate(45deg)}@keyframes arena-bubble-enter{0%{opacity:0;transform:translateY(-.3rem)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.arena-speech-bubble{animation:none}}.arena-speech-name{display:block;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#b06a1e}.arena-speech-line{display:block;font-weight:700;line-height:1.3;font-size:clamp(.85rem,2vw,1.02rem)}.arena-panel{display:flex;flex-direction:column;gap:.85rem}.arena-fight-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.1rem;border-radius:.9rem;color:#fbe6cf;background:linear-gradient(155deg,#3a1e0cf0,#5c3012e6);border:1px solid rgba(255,196,110,.35);box-shadow:0 4px 16px #2814064d,inset 0 0 0 1px #ffe0a81f}.arena-fight-card .level-hint{color:#e6c79a}.arena-fight-card strong{color:#ffd98a}.arena-bout-label{margin:0;font-size:clamp(1.2rem,3.4vw,1.65rem);font-weight:800;color:#ffe1a0}.arena-bout-variant{margin:0;font-weight:600;color:#e8c590;text-transform:capitalize}.arena-fight-card .league-piece-chip{gap:.6rem;padding:.5rem 1rem .5rem .7rem;font-size:1.4rem}.arena-fight-card .league-piece-chip img{width:2.8rem;height:2.8rem}.arena-fight-card .league-piece-price{padding-left:.6rem;margin-left:.2rem;font-size:1.1rem}.arena-ko-bracket{display:flex;align-items:stretch;gap:.9rem;margin:.6rem 0 .2rem;padding:.9rem .9rem .6rem;width:100%;box-sizing:border-box;border-radius:.9rem;background:linear-gradient(155deg,#3a1e0cf0,#5c3012e6);border:1px solid rgba(255,196,110,.35);box-shadow:0 4px 16px #2814064d,inset 0 0 0 1px #ffe0a81f;overflow-x:auto}.arena-ko-column{display:flex;flex-direction:column;align-items:stretch;min-width:6.4rem}.arena-ko-connector{display:flex;flex-direction:column;width:1.1rem;flex-shrink:0;align-self:stretch}.arena-ko-connector-spacer{visibility:hidden}.arena-ko-connector-track{position:relative;flex:1}.arena-ko-connector-pair{position:absolute;left:0;width:.55rem;box-sizing:border-box;border-top:2px solid rgba(255,196,110,.4);border-bottom:2px solid rgba(255,196,110,.4);border-right:2px solid rgba(255,196,110,.4);border-top-right-radius:4px;border-bottom-right-radius:4px}.arena-ko-connector-pair:after{content:"";position:absolute;top:50%;left:100%;width:.55rem;height:2px;background:#ffc46e66;transform:translateY(-1px)}.arena-ko-column-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#ffd98a;text-align:center;margin-bottom:.35rem}.arena-ko-column-entries{display:flex;flex:1;flex-direction:column;justify-content:space-around;gap:.4rem;margin:0;padding:0;list-style:none}.arena-ko-node{position:relative;padding:.4rem .55rem;border-radius:.6rem;text-align:center;font-size:.78rem;color:#e6c79a;background:#3a1e0c99;border:1px solid rgba(255,196,110,.25);white-space:nowrap}.arena-ko-node--you{font-weight:700;color:#fbe6cf;border-color:#ffc46e80}.arena-ko-node--current{border-color:#ffd878e6;background:#5c3012e6;box-shadow:0 0 .5rem #ffc46e66}.arena-ko-node--champion{font-weight:700;color:#ffd98a;border-color:#ffd878d9;background:#5c3012d9}.arena-ko-node--open{color:#e6c79a8c;border-style:dashed;border-color:#ffc46e33;background:#3a1e0c4d}.arena-crowd,.arena-vignette,.arena-flash,.arena-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.arena-crowd{z-index:1}.arena-banner{position:absolute;top:-.2rem;width:clamp(1.3rem,4.5vw,2.5rem);height:clamp(2.6rem,20%,4.8rem);clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%);transform-origin:50% 0;opacity:.9;filter:drop-shadow(0 2px 5px rgba(40,16,4,.35));animation:arena-banner-sway 4.4s ease-in-out infinite}.arena-banner--a{left:11%;background:linear-gradient(180deg,#f0612f,#b62f17);animation-duration:4.6s}.arena-banner--b{left:47%;background:linear-gradient(180deg,#f6b441,#d8761d);animation-duration:3.8s;animation-delay:-1.3s}.arena-banner--c{right:11%;background:linear-gradient(180deg,#e8542f,#a82a1f);animation-duration:5s;animation-delay:-.7s}@keyframes arena-banner-sway{0%,to{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}@keyframes arena-banner-wave{0%,to{transform:rotate(-8deg) translateY(0)}30%{transform:rotate(7deg) translateY(-2px)}60%{transform:rotate(-5deg) translateY(-1px)}}@keyframes arena-banner-droop{0%,to{transform:rotate(5deg) translateY(3px)}50%{transform:rotate(8deg) translateY(4px)}}.arena-vignette{z-index:3;opacity:0;background:radial-gradient(70% 70% at 50% 42%,transparent 38%,rgba(20,8,2,.55) 100%);transition:opacity .6s ease}.arena-flash{z-index:4;opacity:0;background:radial-gradient(90% 80% at 50% 30%,rgba(255,214,130,.55),rgba(255,170,70,.2) 55%,transparent 80%)}@keyframes arena-flash-pulse{0%{opacity:0}30%{opacity:.6}to{opacity:0}}@keyframes arena-glow{0%,to{opacity:.25}50%{opacity:.6}}.arena-confetti{z-index:5;overflow:hidden;opacity:0}.arena-confetti-bit{position:absolute;top:-10%;width:.5rem;height:.7rem;border-radius:1px;background:hsl(var(--confetti-hue, 40) 90% 60%);opacity:.9}@keyframes arena-confetti-fall{0%{top:-10%;opacity:0;transform:rotate(0)}8%{opacity:1}92%{opacity:1}to{top:108%;opacity:0;transform:rotate(540deg)}}@keyframes arena-lean-in{0%{transform:scale(1.08);filter:brightness(1.08)}to{transform:scale(1.025);filter:brightness(1)}}@keyframes arena-roar{0%,to{transform:scale(1.02)}50%{transform:scale(1.05)}}.arena-scene[data-crowd=ambient] .arena-flash{opacity:.12}.arena-scene[data-crowd=boutIntro] .arena-backdrop{animation:arena-lean-in .76s ease-out both}.arena-scene[data-crowd=winBout] .arena-backdrop{filter:saturate(1.35) brightness(1.08)}.arena-scene[data-crowd=winBout] .arena-banner{animation-name:arena-banner-wave;animation-duration:1.1s}.arena-scene[data-crowd=winBout] .arena-flash{animation:arena-flash-pulse 1.4s ease-out 2}.arena-scene[data-crowd=winBout] .arena-confetti{opacity:1}.arena-scene[data-crowd=winBout] .arena-confetti-bit{animation:arena-confetti-fall var(--confetti-dur, 3s) linear var(--confetti-delay, 0s) infinite}.arena-scene[data-crowd=winBout] .arena-confetti-bit:nth-child(2n){display:none}.arena-scene[data-crowd=loseBout] .arena-backdrop{filter:grayscale(.85) brightness(.78)}.arena-scene[data-crowd=loseBout] .arena-banner{opacity:.55;filter:grayscale(.7);animation-name:arena-banner-droop;animation-duration:9s}.arena-scene[data-crowd=finalBout] .arena-backdrop{filter:brightness(.72) saturate(.85) contrast(1.05)}.arena-scene[data-crowd=finalBout] .arena-banner{opacity:.7;animation-duration:7s}.arena-scene[data-crowd=finalBout] .arena-vignette{opacity:1}.arena-scene[data-crowd=champion] .arena-backdrop{filter:saturate(1.4) brightness(1.12);animation:arena-roar 2.4s ease-in-out infinite}.arena-scene[data-crowd=champion] .arena-banner{animation-name:arena-banner-wave;animation-duration:.85s}.arena-scene[data-crowd=champion] .arena-flash{animation:arena-glow 1.8s ease-in-out infinite}.arena-scene[data-crowd=champion] .arena-confetti{opacity:1}.arena-scene[data-crowd=champion] .arena-confetti-bit{animation:arena-confetti-fall var(--confetti-dur, 3s) linear var(--confetti-delay, 0s) infinite}@media(prefers-reduced-motion:reduce){.arena-backdrop,.arena-banner,.arena-flash,.arena-confetti-bit{animation:none!important}.arena-scene[data-crowd=boutIntro] .arena-backdrop,.arena-scene[data-crowd=champion] .arena-backdrop{transform:scale(1.02)}.arena-scene[data-crowd=winBout] .arena-flash,.arena-scene[data-crowd=champion] .arena-flash{opacity:.4}.arena-confetti{display:none}.arena-vignette{transition:none}}.arena-ceremony{background:linear-gradient(160deg,#3a1e0ceb,#603212e0);color:#fbe6cf;border:1px solid rgba(255,196,110,.4)}.arena-ceremony .overlay-title{color:#ffe1a0}.arena-ceremony .overlay-place{color:#e8c79a}.arena-ceremony .money-countup-value{color:#ffd98a}.arena-plinth-stage{position:relative;width:min(58%,11rem);aspect-ratio:3 / 4;margin:.3rem auto .1rem}.arena-plinth{position:absolute;inset:auto 0 0 0;height:40%;background-size:contain;background-position:bottom center;background-repeat:no-repeat}.arena-ceremony-trophy{position:absolute;top:0;right:0;bottom:28%;left:0;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;font-size:4rem;line-height:1;background-size:contain;background-position:bottom center;background-repeat:no-repeat;transform-origin:bottom center;animation:arena-trophy-rise .76s cubic-bezier(.2,.85,.3,1.25) both}@keyframes arena-trophy-rise{0%{transform:translateY(26%) scale(.4);opacity:0}60%{opacity:1}to{transform:translateY(0) scale(1);opacity:1}}.arena-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;mix-blend-mode:screen;background:linear-gradient(115deg,transparent 32%,rgba(255,244,200,.85) 48%,rgba(255,255,255,.95) 52%,transparent 68%);background-size:220% 220%;animation:arena-shimmer-sweep 2.6s ease-in-out .6s infinite}@keyframes arena-shimmer-sweep{0%{background-position:130% 0;opacity:0}22%{opacity:.9}55%,to{background-position:-30% 0;opacity:0}}.arena-shelf{display:flex;flex-direction:column;gap:.5rem;padding:.8rem .9rem;border-radius:.9rem;background:linear-gradient(155deg,#3a1e0ce6,#5c3012d9);border:1px solid rgba(255,196,110,.3)}.arena-shelf-title{margin:0;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#ffd98a}.arena-shelf-row{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}.arena-shelf-trophy{display:flex;flex-direction:column;align-items:center;gap:.25rem;width:4.8rem;padding:.45rem .3rem;border-radius:.7rem;background:#fff0d20f;border:1px solid rgba(255,200,120,.25);color:#fbe6cf;cursor:pointer}.arena-shelf-trophy:hover,.arena-shelf-trophy--open{background:#ffe0a829;border-color:#ffd88c8c}.arena-trophy-art{display:flex;align-items:flex-end;justify-content:center;width:100%;height:2.8rem;font-size:2.6rem;line-height:1;background-size:contain;background-position:center;background-repeat:no-repeat}.arena-trophy-name{font-size:.7rem;font-weight:700;text-align:center;line-height:1.15}.arena-shelf-trophy--new{border-color:#ffdc82e6;box-shadow:0 0 0 1px #ffdc8299,0 0 18px #ffc65ab3;animation:arena-trophy-pop .9s ease-out 1}@keyframes arena-trophy-pop{0%{transform:scale(.7)}55%{transform:scale(1.12)}to{transform:scale(1)}}.arena-shelf-detail{margin:0;font-size:.85rem;font-weight:600;color:#ffe1a0}@media(prefers-reduced-motion:reduce){.arena-ceremony-trophy,.arena-shimmer,.arena-shelf-trophy--new{animation:none!important}.arena-shimmer{opacity:0}}@media(max-width:640px){.arena-scene{aspect-ratio:auto;height:clamp(120px,22vh,160px);max-height:none;background:radial-gradient(120% 90% at 50% 0%,#ffe7ad,#f4b65a 50%,#e07b3a)}.arena-aurelia{height:90%}.arena-speech-bubble{display:none}}.league-gate{display:flex;flex-direction:column;gap:.85rem}.league-gate-scene{position:relative;width:100%;aspect-ratio:16 / 9;max-height:360px;border-radius:1.1rem;overflow:hidden;display:flex;align-items:flex-end;gap:clamp(.6rem,2vw,1.2rem);padding:clamp(.8rem,2.5vw,1.6rem);background-image:var(--league-gate-desktop, none),radial-gradient(120% 100% at 50% 0%,#fbf1d8,#f0e0bd 45%,#d9e8f4);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #ffffff80}.league-gate-crest{flex:0 0 auto;width:clamp(56px,12vw,104px);aspect-ratio:1 / 1;background-image:var(--league-gate-crest, none);background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 2px 4px rgba(0,0,0,.35))}.league-gate-title{position:relative;display:flex;flex-direction:column;gap:.15rem;padding:.4rem .85rem;border-radius:.7rem;background:#fffcf4d1;box-shadow:0 1px 6px #0000002e}.league-gate-title h3{margin:0;font-size:clamp(1.1rem,3vw,1.5rem);color:#5a3b18}.league-gate-title p{margin:0;font-weight:600;color:#6b5536}.league-gate-panel{display:flex;flex-direction:column;gap:.85rem}.league-gate-columns{display:flex;flex-wrap:wrap;gap:.85rem;align-items:flex-start}.league-gate-main{flex:1 1 24rem;min-width:0;display:flex;flex-direction:column;gap:.85rem}.league-gate-side{flex:1 1 14rem;min-width:0}.knight-guard-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-size:contain;background-position:bottom center;background-repeat:no-repeat;pointer-events:none;filter:drop-shadow(0 6px 14px rgba(0,0,0,.4));animation:knight-guard-enter .36s ease-out both}@keyframes knight-guard-enter{0%{opacity:0}to{opacity:1}}.knight-speech-bubble{position:absolute;left:calc(50% + 2.5rem);top:clamp(.6rem,4%,1.6rem);max-width:min(16rem,34%);padding:.65rem .85rem;border-radius:.75rem;background:linear-gradient(160deg,#fffaebf5,#f4e4c4eb);border:1px solid rgba(150,110,54,.32);box-shadow:0 .25rem .8rem #40291238;color:#4a3318;pointer-events:none;animation:knight-guard-enter .36s ease-out both}.knight-speech-bubble:after{content:"";position:absolute;left:-.5rem;top:50%;width:.9rem;height:.9rem;background:inherit;border-left:1px solid rgba(150,110,54,.32);border-bottom:1px solid rgba(150,110,54,.32);transform:rotate(45deg)}.knight-speech-name{display:block;margin-bottom:.15rem;font-size:.84rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:#8f5717}.knight-speech-line{display:block;font-weight:800;line-height:1.25;font-size:clamp(.85rem,2.2vw,1.05rem)}@media(max-width:640px){.league-gate-scene{aspect-ratio:576 / 450;max-height:44vh;background-image:var(--league-gate-mobile, none),radial-gradient(120% 70% at 50% 0%,#fbf1d8,#f0e0bd 45%,#d9e8f4)}.knight-speech-bubble{display:none}.knight-guard-overlay{background-size:auto 82%}}.league-ladder{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.league-ladder-slot{display:grid;grid-template-columns:1.6rem 1.9rem 1fr auto;align-items:center;gap:.55rem;min-height:2.6rem;padding:.4rem .7rem;border-radius:.6rem;background:#fffcf4d1;border-left:4px solid transparent;box-shadow:0 1px 4px #0000001f}.league-ladder-slot.is-promotion{border-left-color:var(--league-accent, #d4a13a);background:linear-gradient(90deg,#ffe9b0eb,#fffcf4d1 60%)}.league-ladder-slot.is-player{background:#ffd84f80;font-weight:700}.league-ladder-place{font-weight:700;color:#5a3b18;text-align:center}.league-ladder-marker{width:1.9rem;height:1.9rem;background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.league-ladder-name{color:#4a3318;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.league-ladder-points{font-weight:600;color:#6b5536;white-space:nowrap}.league-climb{display:flex;flex-direction:column;gap:.55rem;width:100%;margin:0;padding:.8rem .9rem;border-radius:.9rem;text-align:left;color:#fbe6cf;background:linear-gradient(155deg,#3c2c16e6,#563e1cd1);border:1px solid rgba(255,214,140,.3)}.league-climb--strip{font:inherit;cursor:pointer}.league-climb--strip:hover,.league-climb--strip:focus-visible{border-color:#ffd88c99;background:linear-gradient(155deg,#48341aeb,#664820db)}.league-climb-heading{font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#ffd98a}.league-climb-rungs{display:flex;flex-direction:column-reverse;gap:.4rem}.league-climb-rung{display:grid;grid-template-columns:2.4rem 1fr;align-items:center;gap:.6rem;padding:.4rem .55rem;border-radius:.6rem;background:#fff0d20f;border-left:4px solid transparent}.league-climb-rung.is-current{border-left-color:var(--league-accent, #d4a13a);background:#ffe0a829}.league-climb-rung.is-locked{opacity:.55}.league-climb-trophy{position:relative;width:2.4rem;height:2.4rem;display:flex;align-items:center;justify-content:center;font-size:1.4rem;line-height:1;background-size:contain;background-position:center;background-repeat:no-repeat}.league-climb-rung.is-earned .league-climb-trophy{filter:drop-shadow(0 1px 3px rgba(255,198,90,.6))}.league-climb-rung.is-current .league-climb-trophy{filter:grayscale(.4) brightness(.85)}.league-climb-rung.is-locked .league-climb-trophy{filter:brightness(.25) grayscale(1)}.league-climb-rung.is-locked .league-climb-trophy:after{content:"🔒";position:absolute;right:-.15rem;bottom:-.15rem;font-size:.85rem;filter:none}.league-climb-text{display:flex;flex-direction:column;min-width:0}.league-climb-name{font-weight:700;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.league-climb-state{font-size:.72rem;font-weight:600;color:#e7c79b}.league-climb-cta{font-size:.78rem;font-weight:700;color:#ffd98a}.league-climb-rung.is-just-won{border-color:#ffdc82e6;box-shadow:0 0 0 1px #ffdc8299,0 0 16px #ffc65a99;animation:arena-trophy-pop .9s ease-out 1}.league-climb-rung--replay{border:0;border-left:4px solid transparent;font:inherit;text-align:left;width:100%;cursor:pointer}.league-climb--hall .league-climb-rung--replay:hover,.league-climb--hall .league-climb-rung--replay:focus-visible{background:#ffe0a83d;border-color:#ffd88c99}.league-climb-crown{position:absolute;top:-.5rem;left:50%;width:1.5rem;height:1rem;transform:translate(-50%);background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.league-climb--hall{gap:.8rem;padding:1.1rem 1.2rem}.league-climb--hall .league-climb-rung{grid-template-columns:3.6rem 1fr;gap:.9rem;padding:.7rem .8rem;background:linear-gradient(180deg,#fff0d214,#78562833);box-shadow:inset 0 -3px #00000040}.league-climb--hall .league-climb-rung.is-current{background:#ffe0a82e}.league-climb--hall .league-climb-trophy{width:3.6rem;height:3.6rem;font-size:2.2rem}.league-climb--hall .league-climb-crown{top:-.7rem;width:2.2rem;height:1.5rem}.league-climb--hall .league-climb-name{font-size:1.05rem}@media(prefers-reduced-motion:reduce){.league-climb-rung.is-just-won{animation:none!important}}.league-table-drawer{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.league-table-drawer .league-table{width:100%}.league-scroll{display:flex;flex-direction:column;gap:.55rem;padding:.9rem 1rem;border-radius:.8rem;background:linear-gradient(160deg,#fffaebf2,#f4e4c4e6);border:1px solid rgba(150,110,54,.28);box-shadow:0 2px 8px #5a3b1829}.league-scroll-title{margin:0;font-size:clamp(1.2rem,3.4vw,1.7rem);color:#5a3b18}.league-scroll-subtitle{margin:0;font-weight:600;color:#6b5536}.league-scroll-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.35rem .9rem;margin:0}.league-scroll-facts>div{display:flex;justify-content:space-between;gap:.5rem;padding:.2rem 0;border-bottom:1px solid rgba(150,110,54,.18)}.league-scroll-facts dt{font-weight:600;color:#6b5536}.league-scroll-facts dd{margin:0;color:#4a3318;text-align:right}.league-scroll-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.league-piece-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .55rem .25rem .35rem;border-radius:999px;background:#ffffffd1;border:1px solid rgba(150,110,54,.32);font-weight:700;color:#5a3b18}.league-piece-chip img{width:1.4rem;height:1.4rem;object-fit:contain}button.league-piece-buy{cursor:pointer;font:inherit;transition:transform .08s ease,background .15s ease,border-color .15s ease}button.league-piece-buy:hover:not(:disabled){background:#fffffff5;border-color:#966e3699}button.league-piece-buy:active:not(:disabled){transform:scale(.95)}button.league-piece-buy:disabled{opacity:.5;cursor:not-allowed}.league-piece-count{color:#8a5a1f}.league-piece-price{padding-left:.35rem;margin-left:.1rem;border-left:1px solid rgba(150,110,54,.32);font-size:.82rem;font-weight:700;color:#6b5536}.league-scroll-loss{display:flex;flex-direction:column;gap:.35rem;align-items:center}.league-consolation{display:flex;flex-direction:column;gap:.45rem;align-items:center}.league-consolation-gift{display:flex;gap:.55rem;align-items:center;padding:.4rem .85rem;border:1px solid rgba(212,164,60,.55);border-radius:.75rem;background:#fff0cdd9;box-shadow:0 0 14px #f0be5059}.league-consolation-gift img{width:2.4rem;height:2.4rem;object-fit:contain}.league-consolation-gift p{margin:0;font-weight:700;color:#6b4d16}.knight-guard-scroll{gap:.5rem}.knight-guard-scroll--compact{align-items:center;text-align:center;gap:.9rem}.knight-guard-scroll--compact .league-scroll-title{align-self:center;text-align:center}.knight-guard-scroll--compact .league-scroll-chips{width:100%;justify-content:center;gap:.9rem}.knight-guard-scroll--compact .league-piece-chip{gap:.6rem;padding:.5rem 1rem .5rem .7rem;font-size:1.4rem}.knight-guard-scroll--compact .league-piece-chip img{width:2.8rem;height:2.8rem}.knight-guard-scroll--compact .league-piece-price{padding-left:.6rem;margin-left:.2rem;font-size:1.1rem}.knight-guard-scroll--compact .level-hint{margin:0;text-align:center}.knight-guard-name{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6b5536}.knight-guard-quote{margin:0;font-style:italic;font-size:clamp(1rem,2.6vw,1.2rem);line-height:1.4;color:#4a3318}.league-result-scene{border-radius:1rem;padding:clamp(.5rem,2vw,1.1rem);background-image:var(--league-result-bg, none),radial-gradient(120% 100% at 50% 0%,#fbf1d8,#f0e0bd 45%,#d9e8f4);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #ffffff80}.league-result-scene .circuit-result{background:#fffaf0db;border-radius:.8rem;padding:clamp(.7rem,2.5vw,1.3rem)}.league-ceremony-wrap{display:flex;flex-direction:column;gap:.85rem}.league-ceremony{position:relative;width:100%;aspect-ratio:16 / 9;max-height:360px;border-radius:1.1rem;overflow:hidden;background:radial-gradient(120% 110% at 50% 0%,#f4ead0,#d9c597 48%,#b6a079);box-shadow:inset 0 0 0 1px #fff6}.league-ceremony-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:var(--league-ceremony-desktop, none);background-size:cover;background-position:center;background-repeat:no-repeat;transform-origin:50% 35%}.league-ceremony-banners,.league-ceremony-vignette,.league-ceremony-flare,.league-ceremony-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.league-ceremony-banners{z-index:1}.league-banner{position:absolute;top:-.2rem;width:clamp(1.3rem,4.5vw,2.5rem);height:clamp(2.6rem,20%,4.8rem);clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%);transform-origin:50% 0;opacity:.9;filter:drop-shadow(0 2px 5px rgba(28,16,6,.4));animation:arena-banner-sway 4.4s ease-in-out infinite}.league-banner--a{left:9%;background:linear-gradient(180deg,#b8324a,#7c1f33);animation-duration:4.6s}.league-banner--b{left:47%;background:linear-gradient(180deg,#e8c049,#b3851f);animation-duration:3.8s;animation-delay:-1.3s}.league-banner--c{right:9%;background:linear-gradient(180deg,#3f6b8e,#274a66);animation-duration:5s;animation-delay:-.7s}.league-ceremony-vignette{z-index:3;opacity:0;background:radial-gradient(72% 72% at 50% 42%,transparent 40%,rgba(18,10,2,.5) 100%);transition:opacity .6s ease}.league-ceremony-flare{z-index:4;opacity:0;background:radial-gradient(95% 85% at 50% 78%,rgba(255,196,104,.6),rgba(255,150,56,.24) 52%,transparent 82%)}.league-ceremony-confetti{z-index:5;overflow:hidden;opacity:0}.league-confetti-bit{position:absolute;top:-10%;width:.5rem;height:.7rem;border-radius:1px;background:hsl(var(--confetti-hue, 44) 85% 62%);opacity:.92}.league-ceremony-panel{display:flex;flex-direction:column;gap:.85rem}.league-ceremony[data-crowd=ambient] .league-ceremony-flare{opacity:.12}.league-ceremony[data-crowd=promote] .league-ceremony-backdrop{filter:saturate(1.3) brightness(1.1);animation:arena-roar 2.6s ease-in-out infinite}.league-ceremony[data-crowd=promote] .league-banner{animation-name:arena-banner-wave;animation-duration:.95s}.league-ceremony[data-crowd=promote] .league-ceremony-flare{animation:arena-glow 1.9s ease-in-out infinite}.league-ceremony[data-crowd=promote] .league-ceremony-vignette{opacity:.32}.league-ceremony[data-crowd=promote] .league-ceremony-confetti{opacity:1}.league-ceremony[data-crowd=promote] .league-confetti-bit{animation:arena-confetti-fall var(--confetti-dur, 3s) linear var(--confetti-delay, 0s) infinite}.league-ceremony[data-crowd=champion] .league-ceremony-backdrop{filter:saturate(1.45) brightness(1.16);animation:arena-roar 2.1s ease-in-out infinite}.league-ceremony[data-crowd=champion] .league-banner{animation-name:arena-banner-wave;animation-duration:.8s}.league-ceremony[data-crowd=champion] .league-ceremony-flare{animation:arena-glow 1.5s ease-in-out infinite;filter:brightness(1.2)}.league-ceremony[data-crowd=champion] .league-ceremony-vignette{opacity:.5}.league-ceremony[data-crowd=champion] .league-ceremony-confetti{opacity:1}.league-ceremony[data-crowd=champion] .league-confetti-bit{animation:arena-confetti-fall var(--confetti-dur, 3s) linear var(--confetti-delay, 0s) infinite}.league-ceremony-card{background:linear-gradient(160deg,#302210f0,#563a18e6);color:#fbe6cf;border:1px solid rgba(255,210,130,.4)}.league-ceremony-card .overlay-title{color:#ffe1a0}.league-ceremony-card .overlay-place{color:#ffd9a0}.league-ceremony-card .level-hint{color:#e7c79b}.league-ceremony-card .money-countup-value{color:#ffd98a}.league-champion-name{margin:.1rem 0 .3rem;font-weight:800;font-variant-caps:small-caps;letter-spacing:.08em;font-size:1.05rem;color:#ffe9b8}.league-ascension{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.3rem 0}.league-ascension-crest{width:3rem;height:3rem;background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));animation:league-crest-rise .9s ease-out both}.league-ascension-arrow{font-size:1.2rem;line-height:1;color:var(--league-accent, #ffd98a)}.league-ascension-marker{width:2rem;height:2rem;background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));animation:league-marker-step .9s ease-out both}.league-ascension-label{font-size:.8rem;font-weight:700;color:#ffe1a0}@keyframes league-crest-rise{0%{opacity:0;transform:translateY(.8rem) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes league-marker-step{0%{transform:translateY(.6rem)}to{transform:translateY(0)}}.league-coronation-crown{position:absolute;top:1%;left:50%;width:36%;height:26%;transform:translate(-50%);background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));animation:league-crown-descend 1.1s cubic-bezier(.2,.8,.3,1.1) .5s both}@keyframes league-crown-descend{0%{opacity:0;transform:translate(-50%,-120%) scale(.8)}60%{opacity:1}to{opacity:1;transform:translate(-50%) scale(1)}}.league-collection{display:flex;justify-content:center;align-items:flex-end;gap:.7rem;padding:.3rem 0}.league-collection-trophy{display:flex;flex-direction:column;align-items:center;gap:.2rem;width:4.2rem;animation:league-assemble .7s ease-out both;animation-delay:calc(var(--assemble-i, 0) * .13s)}.league-collection-art{display:flex;align-items:flex-end;justify-content:center;width:100%;height:2.6rem;font-size:1.9rem;line-height:1;background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 1px 3px rgba(255,198,90,.55))}.league-collection-name{font-size:.66rem;font-weight:700;text-align:center;line-height:1.1;color:#f3dcb3}@keyframes league-assemble{0%{opacity:0;transform:translate(calc((var(--assemble-i, 0) - 1) * 3rem)) translateY(.4rem) scale(.8)}to{opacity:1;transform:translate(0) translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.league-ceremony-backdrop,.league-banner,.league-ceremony-flare,.league-confetti-bit,.league-ascension-crest,.league-ascension-marker,.league-coronation-crown,.league-collection-trophy{animation:none!important}.league-ceremony[data-crowd=promote] .league-ceremony-backdrop,.league-ceremony[data-crowd=champion] .league-ceremony-backdrop{transform:scale(1.02)}.league-ceremony[data-crowd=champion] .league-ceremony-flare{opacity:.5}.league-ceremony[data-crowd=promote] .league-ceremony-flare{opacity:.42}.league-ceremony-confetti{display:none}.league-ceremony-vignette{transition:none}}@media(max-width:640px){.league-ceremony{aspect-ratio:9 / 16;max-height:56vh;background:radial-gradient(120% 90% at 50% 0%,#f4ead0,#d9c597 50%,#b6a079)}.league-ceremony-backdrop{background-image:var(--league-ceremony-mobile, none)}}.league-gate,.league-result-scene,.league-ceremony-wrap{--league-accent: #c98a3c}.league-gate[data-league=copper],.league-result-scene[data-league=copper],.league-ceremony-wrap[data-league=copper]{--league-accent: #b87333}.league-gate[data-league=silver],.league-result-scene[data-league=silver],.league-ceremony-wrap[data-league=silver]{--league-accent: #6f86a6}.league-scroll-title{border-bottom:2px solid var(--league-accent, #c98a3c);padding-bottom:.25rem}@media(max-width:640px){.league-scroll-facts{grid-template-columns:1fr}.league-scroll-facts>div{justify-content:space-between}.league-ladder-slot{grid-template-columns:1.4rem 1.6rem 1fr auto;gap:.4rem}.league-ladder-marker{width:1.6rem;height:1.6rem}.league-result-scene .circuit-result{padding:.85rem}}.league-table{width:100%;border-collapse:collapse;font-size:.9rem;background:#ffffffb8;border-radius:.6rem;overflow:hidden}.league-table th,.league-table td{padding:.35rem .5rem;text-align:center;border-bottom:1px solid rgba(8,59,121,.12)}.league-table th:nth-child(2),.league-table td:nth-child(2){text-align:left}.league-row-player{background:#ffd84f73;font-weight:700}.star-field{position:relative;height:320px;border-radius:1rem;background:radial-gradient(circle at 50% 30%,#123a63,#07203a);overflow:hidden}.star-target{position:absolute;transform:translate(-50%,-50%);background:none;border:none;font-size:1.8rem;cursor:pointer;filter:drop-shadow(0 0 6px rgba(255,216,79,.8));animation:circuit-star-pop .25s ease}@keyframes circuit-star-pop{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}}.star-done{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;background:#07203ad1;color:#fff}html.forest-map-active,body.forest-map-active{overflow:hidden;height:100%}.forest-wrap{position:relative;width:100%;border-radius:1rem;overflow:hidden;box-shadow:inset 0 0 0 1px #fff6;touch-action:none}.forest-canvas{display:block;cursor:grab}.forest-canvas:active{cursor:grabbing}.forest-start-btn{position:absolute;top:.6rem;left:.6rem;z-index:1}.castle-banner{width:100%;height:150px;object-fit:cover;border-radius:1rem;box-shadow:inset 0 0 0 1px #ffffff80}.castle-art-fallback{display:flex;align-items:center;justify-content:center;background:#0f22361f;color:#0f223680}.castle-banner.castle-art-fallback{font-size:3rem}.castle-hero{display:flex;gap:.85rem;align-items:center;padding:.85rem;border-radius:1rem;background:#ffffffa8;box-shadow:inset 0 0 0 1px #ffffffb3}.castle-king-art{width:84px;height:84px;flex:0 0 auto;object-fit:contain;border-radius:.8rem;font-size:2.2rem}.castle-hero-text{display:flex;flex-direction:column;gap:.2rem}.castle-king-title{font-weight:700;color:var(--ink)}.castle-king-greeting{margin:0;font-style:italic;color:#0f2236d9}.castle-rule-box{padding:.75rem .85rem;border-radius:.9rem;background:#ffffff8c;box-shadow:inset 0 0 0 1px #fff9}.castle-rule-box strong{color:var(--ink)}.castle-rule-box p{margin:.3rem 0 0}.castle-reward{display:flex;flex-direction:column;gap:.1rem}.castle-reward-value{font-weight:700;color:var(--ink)}.castle-task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.castle-task{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:.9rem;background:#ffffffa8;box-shadow:inset 0 0 0 1px #ffffffb3}.castle-task.is-current{box-shadow:inset 0 0 0 2px var(--gold)}.castle-task.is-upcoming{opacity:.6}.castle-task-badge{font-size:1.1rem;width:1.5rem;text-align:center;flex:0 0 auto}.castle-task-body{display:flex;flex-direction:column;gap:.1rem;flex:1 1 auto}.castle-task-title{font-weight:700;color:var(--ink)}.castle-task-desc{font-size:.82rem;color:#0f2236cc}.castle-task-action{flex:0 0 auto}.castle-task-locked{font-size:.8rem;color:#0f223680}.castle-cta{display:flex;flex-direction:column;gap:.5rem}.circuit-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:1rem;background:#08203c8c}.circuit-modal{width:min(26rem,100%);padding:1.4rem;border-radius:1.1rem;background:#fff;box-shadow:0 1.6rem 3.6rem #083b794d;display:flex;flex-direction:column;gap:.7rem;text-align:center}.reward-piece{display:flex;flex-direction:column;align-items:center;gap:.5rem}.reward-piece-img{width:4.5rem;height:4.5rem;object-fit:contain;filter:drop-shadow(0 .4rem .6rem rgba(8,59,121,.25));animation:reward-piece-pop .4s ease-out both}@keyframes reward-piece-pop{0%{transform:scale(.5) rotate(-8deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.castle-reveal-backdrop{z-index:60;background:radial-gradient(circle at 50% 38%,#56340880,#08203cb8)}.castle-reveal{width:min(32rem,100%);padding:2.2rem 1.8rem;gap:.9rem;background:linear-gradient(180deg,#fffaf0,#fff4d6);border:2px solid #f3c75a;box-shadow:0 0 0 6px #f6c5442e,0 2rem 4.4rem #56340866;animation:castle-reveal-pop .35s ease-out both}@keyframes castle-reveal-pop{0%{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}.castle-reveal-crown{font-size:3.4rem;line-height:1;filter:drop-shadow(0 .3rem .5rem rgba(86,52,8,.35))}.castle-reveal-title{font-size:1.9rem;color:#6b4708}.castle-reveal-king{margin:0;color:#8a5a12;font-style:italic}.castle-reveal-prize{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:1rem 1.2rem;border-radius:.9rem;background:#f6c54438}.castle-reveal-pieces{list-style:none;margin:0 0 .2rem;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem}.castle-reveal-piece{position:relative;display:inline-flex;align-items:center;justify-content:center}.castle-reveal-piece img{width:3.4rem;height:3.4rem;object-fit:contain;filter:drop-shadow(0 .3rem .5rem rgba(86,52,8,.35));animation:castle-reveal-pop .35s ease-out both}.castle-reveal-piece-count{position:absolute;right:-.4rem;bottom:-.35rem;min-width:1.3rem;padding:0 .3rem;border-radius:999px;background:#f6c544;border:1px solid #f3c75a;color:#5a3a06;font-size:.8rem;font-weight:900;line-height:1.45}.castle-reveal-reward{font-size:1.5rem;font-weight:900;color:#5a3a06}.castle-reveal-sub{font-size:.85rem;color:#8a5a12}.weapon-reveal-art{display:block;margin:0 auto;width:8.5rem;height:8.5rem;object-fit:contain;border-radius:1rem;filter:drop-shadow(0 .3rem .5rem rgba(86,52,8,.35));animation:castle-reveal-pop .35s ease-out both}.weapon-reveal-desc{margin:0;color:#8a5a12}.board-rewind{animation:time-rewind .7s ease-out}@keyframes time-rewind{0%{filter:sepia(.9) contrast(1.15) brightness(1.2);transform:scale(.965) rotate(-1.2deg)}60%{filter:sepia(.35) contrast(1.05) brightness(1.05)}to{filter:none;transform:none}}@media(prefers-reduced-motion:reduce){.board-rewind{animation:none}}.board-teleport{animation:teleport-sparkle .7s ease-out}@keyframes teleport-sparkle{0%{filter:brightness(1.7) saturate(1.5) drop-shadow(0 0 1.1rem rgba(120,190,255,.95));transform:scale(1.03)}55%{filter:brightness(1.15) drop-shadow(0 0 .5rem rgba(120,190,255,.5))}to{filter:none;transform:none}}@media(prefers-reduced-motion:reduce){.board-teleport{animation:none}}.match-action.weapon-action.is-armed{border-color:#6fb3ff;background:#d6ebffe6;color:#123a6b}.board-weapon-frame{position:relative}.board-fog{position:absolute;top:0;right:0;bottom:50%;left:0;pointer-events:none;border-radius:.5rem .5rem 0 0;background:radial-gradient(120% 90% at 30% 20%,rgba(238,244,250,.85),transparent 70%),radial-gradient(110% 80% at 75% 55%,rgba(222,232,242,.75),transparent 72%),linear-gradient(to bottom,#e6eef6cc,#e6eef600);animation:fog-roll-in .6s ease-out,fog-drift 6s ease-in-out infinite alternate}@keyframes fog-roll-in{0%{opacity:0}to{opacity:1}}@keyframes fog-drift{0%{background-position:0 0,0 0,0 0}to{background-position:1.4rem .4rem,-1.2rem -.3rem,0 0}}@media(prefers-reduced-motion:reduce){.board-fog{animation:none}}.glue-slime{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(58% 34% at 50% 72%,rgba(104,201,66,.78) 0 55%,rgba(88,178,54,.4) 75%,transparent 100%),radial-gradient(16% 26% at 34% 88%,rgba(88,178,54,.7) 0 60%,transparent 100%),radial-gradient(12% 20% at 68% 90%,rgba(104,201,66,.65) 0 60%,transparent 100%);filter:drop-shadow(0 .1rem .2rem rgba(46,110,20,.35));animation:glue-splat .4s ease-out,glue-wobble 2.4s ease-in-out infinite alternate}@keyframes glue-splat{0%{opacity:0;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}@keyframes glue-wobble{0%{transform:scale(1) translateY(0)}to{transform:scale(1.06,.96) translateY(.08rem)}}@media(prefers-reduced-motion:reduce){.glue-slime{animation:none}}.weapon-prep{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin:.6rem auto;padding:.7rem .9rem;max-width:24rem;border:1px solid rgba(210,160,60,.55);border-radius:.8rem;background:#fff4d6a6}.match-action.weapon-action{border-color:#d2a03cbf;background:#fff4d6bf;color:#5a3a06;font-weight:700;display:inline-flex;align-items:center;gap:.4rem}.weapon-action-art{width:1.6rem;height:1.6rem;object-fit:contain;border-radius:.35rem}.match-action.weapon-action:disabled{opacity:.55}@media(max-width:720px){.match-action.weapon-action{font-size:.8rem;padding:.3rem .55rem;gap:.3rem}.weapon-action-art{width:1.3rem;height:1.3rem}}.weapon-prep.is-armed{border-color:#d8a83c;background:#ffecb2d9}.weapon-prep-offer{display:flex;align-items:center;gap:.55rem}.weapon-prep-art{width:2.6rem;height:2.6rem;object-fit:contain;border-radius:.5rem}.weapon-prep-name{font-weight:700;color:#5a3a06}.weapon-prep-armed{margin:0;font-weight:700;color:#5a3a06}.status-chip.is-complete{background:#f6c544;border-color:#f3c75a;color:#5a3a06;font-weight:800}.circuit-reset-input{padding:.55rem .7rem;border:1px solid rgba(8,59,121,.4);border-radius:.6rem;font:inherit;text-align:center;letter-spacing:.1em}.guide-intro-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:flex;align-items:flex-end;justify-content:center;padding:1rem;background:linear-gradient(to top,#072c668c,#072c661f)}.guide-intro{position:relative;display:flex;align-items:flex-end;gap:.4rem;width:min(40rem,100%)}.guide-intro-art{flex:0 0 6.5rem;align-self:flex-end}.guide-intro-art img{display:block;width:100%;height:auto;border-radius:.9rem;filter:drop-shadow(0 .8rem 1.4rem rgba(4,30,66,.4))}.guide-intro-dialogue{position:relative;flex:1 1 auto;padding:1.2rem 1.3rem;border-radius:1.1rem;background:#fff;box-shadow:0 1.4rem 3rem #083b7947}.guide-intro-name{margin:0 0 .5rem;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1.25rem;font-weight:900;line-height:1.15}.guide-intro-copy{margin:0 0 1rem;color:var(--ink);line-height:1.5}.guide-intro-actions{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.guide-intro-close{position:absolute;top:.45rem;right:.55rem;width:2rem;height:2rem;border:0;border-radius:50%;background:#0a4da31a;color:var(--blue-deep);font-size:1.2rem;line-height:1;cursor:pointer}.guide-intro-close:hover{background:#0a4da333}.guide-intro-speak{right:2.85rem;font-size:.95rem}.guide-intro-speak[aria-pressed=true]{background:#0a4da340}@media(min-width:40rem){.guide-intro-backdrop{align-items:center}.guide-intro{gap:.75rem}.guide-intro-art{flex-basis:11rem}}.circuit-guide-tip{display:flex;align-items:flex-end;gap:.5rem;width:min(34rem,100%);margin:.9rem auto 0;text-align:left}.circuit-guide-tip-art{flex:0 0 4.5rem;align-self:flex-end}.circuit-guide-tip-art img{display:block;width:100%;height:auto;border-radius:.8rem;filter:drop-shadow(0 .6rem 1rem rgba(4,30,66,.35))}.circuit-guide-tip-dialogue{position:relative;flex:1 1 auto;padding:1rem 1.1rem;border-radius:1rem;background:#fff;box-shadow:0 1rem 2.2rem #083b793d}.circuit-guide-tip-name{margin:0 0 .35rem;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1.05rem;font-weight:900;line-height:1.15}.circuit-guide-tip-copy{margin:0 0 .8rem;color:var(--ink);line-height:1.45}.circuit-guide-tip-close{position:absolute;top:.4rem;right:.45rem;width:1.8rem;height:1.8rem;border:0;border-radius:50%;background:#0a4da31a;color:var(--blue-deep);font-size:1.1rem;line-height:1;cursor:pointer}.circuit-guide-tip-close:hover{background:#0a4da333}.circuit-coach-line{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:.8rem;background:#cbe9ff8c;text-align:left}.circuit-coach-art{flex:0 0 3rem}.circuit-coach-art img{display:block;width:100%;height:auto;border-radius:.6rem}.circuit-coach-dialogue{flex:1 1 auto;min-width:0}.circuit-coach-name{margin:0 0 .15rem;color:#072c66;font-size:.8rem;font-weight:900}.circuit-coach-copy{margin:0;min-height:2.5em;color:var(--ink);font-size:.9rem;line-height:1.25}.circuit-coach-reveal{animation:circuit-coach-fade .35s ease}.circuit-coach-dots span{animation:circuit-coach-pulse 1.2s ease-in-out infinite}.circuit-coach-dots span:nth-child(2){animation-delay:.2s}.circuit-coach-dots span:nth-child(3){animation-delay:.4s}@keyframes circuit-coach-fade{0%{opacity:0}to{opacity:1}}@keyframes circuit-coach-pulse{0%,to{opacity:.25}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.circuit-coach-reveal,.circuit-coach-dots span{animation:none}}.circuit-guide-bar{position:fixed;top:calc(var(--circuit-hud-h, 3.2rem) + .4rem);left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:flex-end;gap:.5rem;width:min(1240px,calc(100% - 1rem));text-align:left;animation:circuit-guide-bar-in .25s ease-out}@keyframes circuit-guide-bar-in{0%{transform:translate(-50%,-.6rem);opacity:0}to{transform:translate(-50%);opacity:1}}@media(prefers-reduced-motion:reduce){.circuit-guide-bar{animation:none}}.circuit-guide-bar-art{flex:0 0 4rem;align-self:flex-end}.circuit-guide-bar-art img{display:block;width:100%;height:auto;border-radius:.8rem;filter:drop-shadow(0 .6rem 1rem rgba(4,30,66,.35))}.circuit-guide-bar-dialogue{position:relative;flex:1 1 auto;padding:.8rem 2.4rem .8rem 1rem;border-radius:1rem;background:#fff;box-shadow:0 1rem 2.2rem #083b7947}.circuit-guide-bar-name{margin:0 0 .25rem;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1rem;font-weight:900;line-height:1.15}.circuit-guide-bar-copy{margin:0;color:var(--ink);line-height:1.45}.circuit-guide-bar-caret{display:inline-block;margin-left:.05em;animation:circuit-guide-caret-blink .9s steps(1) infinite}@keyframes circuit-guide-caret-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.circuit-guide-bar-caret{animation:none}}.circuit-guide-bar-close{position:absolute;top:.4rem;right:.45rem;width:1.8rem;height:1.8rem;border:0;border-radius:50%;background:#0a4da31a;color:var(--blue-deep);font-size:1.1rem;line-height:1;cursor:pointer}.circuit-guide-bar-close:hover{background:#0a4da333}.castle-king-bar-speak{right:2.5rem;font-size:.85rem}.castle-king-bar-speak[aria-pressed=true]{background:#0a4da340}.castle-king-bar .circuit-guide-bar-art{flex-basis:12rem}.castle-king-bar-fallback{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:.8rem;background:#fffc;font-size:4rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.money-countup{position:relative;display:grid;place-items:center;min-height:4.2rem;margin:.2rem 0}.money-countup-value{color:var(--blue-deep);font-size:2.4rem;font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums}.money-countup-value.gain{animation:hud-score-gain .6s ease-out}.money-countup-value.loss{color:#d92f2f;animation:hud-score-loss .5s ease-out}.money-countup-float{position:absolute;top:0;left:50%;color:#0f9d4f;font-size:2rem;font-weight:900;text-shadow:0 0 .3rem rgba(255,255,255,.95),0 .12rem .3rem rgba(4,30,66,.35);pointer-events:none;animation:money-countup-float-up 1.4s ease-out forwards}.money-countup-float.loss{color:#d92f2f}@keyframes money-countup-float-up{0%{opacity:0;transform:translate(-50%,60%) scale(.7)}18%{opacity:1;transform:translate(-50%) scale(1.15)}35%{transform:translate(-50%,-20%) scale(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-120%) scale(1)}}.circuit-opponent-grid{display:grid;grid-template-columns:auto 1fr;gap:.25rem .9rem;margin:0}.circuit-opponent-grid dt{font-weight:700;color:#355475}.circuit-opponent-grid dd{margin:0}.capture-yard{display:flex;flex-direction:column;gap:.9rem}.capture-yard-overview{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(.5rem,2vw,1.1rem);padding:clamp(.6rem,2.5vw,1.4rem);aspect-ratio:1672 / 941;border-radius:1rem;overflow:hidden;background-image:var(--overview-desktop, none),radial-gradient(125% 90% at 50% 0%,#eafae0,#d7f0cf 42%,#cfe9f7);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #ffffff80}.capture-yard-card{--card-scale: 1;flex:1 1 calc(8rem * var(--card-scale));max-width:calc(13rem * var(--card-scale));display:flex;flex-direction:column;gap:.3rem;padding:calc(.7rem * var(--card-scale)) calc(.8rem * var(--card-scale));border:1px solid rgba(255,255,255,.6);border-radius:.9rem;background:#ffffffd1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 4px 14px #2646242e;color:#2f5a33;text-align:center;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.capture-yard-card:hover,.capture-yard-card:focus-visible{transform:translateY(-2px);box-shadow:0 7px 18px #26462442}.capture-yard-card-name{font-weight:800;font-size:calc(1.05rem * var(--card-scale))}.capture-yard-card-meta{font-size:.78rem;color:#4a6b4d}.capture-yard-card.is-locked{background:#ecf0e9c7;color:#5b6b5c;box-shadow:0 2px 8px #2646241f}.capture-yard-card.is-locked:hover,.capture-yard-card.is-locked:focus-visible{transform:none;box-shadow:0 2px 8px #2646241f}.capture-yard-card-lock{font-size:.74rem;color:#7a5a2c}.capture-head-statuses{margin-left:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.capture-head-statuses .status-chip{margin-left:0}.capture-bonus-chip{color:#2f5a33}.capture-yard-locknote{min-height:1.2rem;margin:.4rem 0 0;font-size:.9rem;font-weight:700;color:#7a5a2c;text-align:center}.capture-level-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(12rem,17rem);gap:clamp(.6rem,2vw,1.2rem);align-items:start}.capture-level-stage{display:flex;flex-direction:column;gap:.8rem;min-width:0}.capture-level-start{display:flex;flex-direction:column;gap:.3rem;margin-top:.4rem}.capture-level-start .primary-action{align-self:flex-start}.capture-level-side{display:flex;flex-direction:column;gap:.8rem;min-width:0}.capture-level-panel{flex-direction:column;align-items:stretch;text-align:center}.capture-level-panel .capture-yard-opponent-portrait{align-self:center;width:clamp(4.5rem,40%,6.5rem)}.capture-level-panel .capture-yard-opponent-stats{justify-content:center}.capture-level-panel .capture-level-start{align-items:center}.capture-level-panel .capture-level-start .primary-action{align-self:center}.capture-level-board{padding:.7rem .9rem;border:1px solid rgba(8,59,121,.18);border-radius:.9rem;background:#ffffffd9}.capture-level-board-title{margin:0 0 .4rem;font-size:.95rem;color:#2f5a33}.capture-level-board-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.capture-level-board-list li{display:grid;grid-template-columns:1.6rem 1fr auto;gap:.4rem;align-items:baseline;font-size:.85rem}.capture-level-board-rank{font-weight:800;color:#7a5a2c}.capture-level-board-score{font-weight:700;color:#2f5a33}.capture-level-board-date{font-size:.72rem;color:#6a7a6c}.capture-result-status{margin:0;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1.5rem;font-weight:900;line-height:1.15;text-transform:uppercase;letter-spacing:.03em}.capture-result-status.is-won{color:#1e7a34}.capture-result-status.is-lost{color:#b0212c}.capture-result-score-big{margin:0;color:var(--blue-deep);font-size:2.6rem;font-weight:900;line-height:1.1}.capture-result-unlocks{display:flex;flex-direction:column;gap:.2rem}.capture-result-unlocks-heading{margin:0;font-weight:800;color:#1c3a5c}.capture-result-unlocks ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem;font-weight:700;color:#2f5a33}.capture-result-money{margin:0;font-size:1.15rem}.capture-result-board{margin-top:.2rem}.capture-result-board p{margin:.1rem 0}.capture-run{width:100%}@media(max-width:760px){.capture-level-grid{grid-template-columns:1fr}}.capture-yard-scene{position:relative;width:min(100%,calc(72vh * 1402 / 1122));margin-inline:auto;aspect-ratio:1402 / 1122;border-radius:1rem;overflow:hidden;background-image:var(--yard-scene, none),radial-gradient(120% 90% at 50% 10%,#f3ecd9,#e3d7bd 55%,#cfe3c6);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #ffffff80}.capture-yard-standee{position:absolute;left:var(--standee-x);top:var(--standee-y);width:17%;transform:translate(-50%,-100%);padding:0;border:none;background:none;cursor:pointer;transition:transform .12s ease,filter .12s ease}.capture-yard-standee:hover,.capture-yard-standee:focus-visible{transform:translate(-50%,-100%) scale(1.05)}.capture-yard-standee.is-selected{border-radius:.9rem;background:#fff8e447;box-shadow:0 0 0 3px #f7c55c,0 0 .9rem #f7c55ca6;filter:drop-shadow(0 0 .5rem rgba(247,197,92,.95))}.capture-yard-standee.is-locked .capture-yard-standee-img{filter:grayscale(.85) brightness(.92) drop-shadow(0 6px 8px rgba(0,0,0,.3));opacity:.85}.capture-yard-standee-lock{position:absolute;top:0;left:50%;transform:translate(-50%);font-size:1.1rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.capture-yard-standee-img{display:block;width:100%;height:auto;aspect-ratio:3 / 4;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 6px 8px rgba(0,0,0,.3));transition:opacity .25s ease}.capture-yard-opponent{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;border:1px solid rgba(8,59,121,.18);border-radius:1rem;background:#ffffffe6;box-shadow:0 4px 14px #26462424}.capture-yard-opponent-portrait{width:clamp(4.5rem,22vw,6.5rem);aspect-ratio:4 / 5;object-fit:cover;border-radius:.8rem;background:#cfe3c699;box-shadow:0 3px 8px #0003}.capture-yard-opponent-info{display:flex;flex-direction:column;gap:.2rem}.capture-yard-opponent-name{font-weight:800;font-size:1.1rem;color:#2f5a33}.capture-yard-opponent-role{font-size:.82rem;color:#4a6b4d}.capture-yard-opponent-stats{display:flex;flex-wrap:wrap;gap:.3rem .9rem;margin:.3rem 0 0;padding:0;list-style:none;font-size:.85rem;color:#355475}.capture-yard-opponent-stats strong{color:#2f5a33}.capture-yard-img-fallback{display:flex;align-items:center;justify-content:center;background:#cfe3c68c;border-radius:.6rem;font-size:2rem;line-height:1;color:#355475}.capture-yard-standee-img.is-loading,.capture-yard-opponent-portrait.is-loading{opacity:0}.capture-yard-standee-img.is-loaded,.capture-yard-opponent-portrait.is-loaded{opacity:1}@media(max-width:640px){.capture-yard-overview{aspect-ratio:941 / 1672;flex-direction:column;flex-wrap:nowrap;background-image:var(--overview-mobile, none),radial-gradient(130% 60% at 50% 0%,#eafae0,#d7f0cf 42%,#cfe9f7)}.capture-yard-card{flex:0 0 auto;width:min(calc(17rem * var(--card-scale)),100%);max-width:none}.capture-yard-opponent{flex-direction:column;text-align:center}.capture-yard-opponent-stats{justify-content:center}}.spawn-hud{display:flex;gap:.7rem;width:min(100%,calc(100dvh - 12rem));margin:0 auto .6rem}.spawn-hud-cell{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .8rem;border-radius:1rem;background:#ffffffd1;box-shadow:0 .7rem 1.6rem #0a4da329,inset 0 0 0 1px #ffffffb3}.spawn-hud-cell.active{box-shadow:0 .7rem 1.6rem #0a4da333,inset 0 0 0 .16rem #ffd84fe6}.spawn-hud-label{color:#5a7798;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.spawn-hud-value{color:var(--blue-deep);font-size:clamp(1.3rem,5vw,2rem);font-weight:900;line-height:1}.spawn-marker{position:absolute;top:.08rem;right:.12rem;z-index:1;font-size:clamp(.55rem,1.9vw,.95rem);line-height:1;opacity:.85;pointer-events:none}.spawn-marker-production{top:auto;bottom:.08rem}.spawn-build-target{position:absolute;top:8%;right:8%;bottom:8%;left:8%;z-index:1;border-radius:30%;border:.18rem dashed rgba(255,216,79,.95);background:#ffd84f2e;animation:spawn-build-pulse 1.1s ease-in-out infinite;pointer-events:none}@keyframes spawn-build-pulse{0%,to{transform:scale(1);opacity:.75}50%{transform:scale(1.08);opacity:1}}.spawn-lock-badge{position:absolute;top:.08rem;left:.12rem;z-index:3;font-size:clamp(.6rem,2vw,1rem);line-height:1;filter:drop-shadow(0 .08rem .14rem rgba(8,59,121,.5));pointer-events:none}.spawn-build-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:.4rem 0 .7rem}.spawn-build-option{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .6rem;border:.14rem solid rgba(19,78,155,.25);border-radius:.9rem;background:#ffffffeb;color:var(--blue-deep);font-weight:800;cursor:pointer}.spawn-build-option.active{border-color:#ffd84ff2;box-shadow:inset 0 0 0 .1rem #ffd84f99}.spawn-build-option:disabled{opacity:.45;cursor:not-allowed}.spawn-build-glyph{width:2.2rem;height:2.2rem;display:inline-flex}.spawn-build-glyph .piece-svg{width:100%;height:100%}.spawn-build-cost{font-size:.85rem;color:#5a7798}.capture-result-reveal{animation:capture-result-reveal .32s ease-out both}.capture-result-reveal.reveal-2{animation-delay:.45s}.capture-result-reveal.reveal-3{animation-delay:.9s}.capture-result-reveal.reveal-4{animation-delay:1.3s}@keyframes capture-result-reveal{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translateY(0)}}.capture-result-best{display:flex;flex-direction:column;align-items:center;gap:.15rem}.capture-result-best-badge{position:relative;overflow:hidden;padding:.35rem .9rem;border-radius:999px;background:linear-gradient(180deg,#ffe9a3,#ffd84f);box-shadow:0 .35rem .9rem #ba890f59,inset 0 0 0 1px #ffffffbf;color:#6b4b06;font-weight:900;font-size:1.05rem;animation:capture-best-pop .5s cubic-bezier(.2,1.4,.4,1) .45s both}.capture-result-best-badge:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.85) 50%,transparent 70%);transform:translate(-120%);animation:capture-best-shine .9s ease-out .95s forwards}.capture-result-best-prev{color:#7a5a2c;font-size:.85rem;font-weight:700}@keyframes capture-best-pop{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes capture-best-shine{to{transform:translate(120%)}}.capture-combo-badge{padding:.3rem 1.1rem;border-radius:999px;font-size:clamp(1.15rem,4.5vw,1.6rem);font-weight:900;letter-spacing:.02em;white-space:nowrap;pointer-events:none;opacity:1;transition:opacity .4s ease}.capture-combo-board{position:absolute;top:calc(100% + .45rem);left:50%;z-index:8;transform:translate(-50%);animation:capture-combo-pop .45s cubic-bezier(.2,1.6,.4,1)}.capture-combo-hud{display:none;margin-top:.45rem;padding:.3rem .45rem;font-size:.95rem;white-space:normal;text-align:center;animation:capture-combo-pop-hud .45s cubic-bezier(.2,1.6,.4,1)}.capture-combo-badge.tier-1{background:linear-gradient(180deg,#ffe9a3,#ffcf3d);color:#6b4b06;box-shadow:0 .35rem 1rem #ba890f80,inset 0 0 0 2px #ffffffb3}.capture-combo-badge.tier-2{background:linear-gradient(180deg,#ffd08a,#ff9c2e);color:#5d2e00;box-shadow:0 .35rem 1.1rem #d66c088c,inset 0 0 0 2px #ffffffa6}.capture-combo-badge.tier-3{background:linear-gradient(180deg,#ff9d66,#ff5722);color:#fff;text-shadow:0 1px 2px rgba(120,30,0,.45);box-shadow:0 .35rem 1.2rem #e64a1999,inset 0 0 0 2px #ffffff8c}.capture-combo-badge.is-fading{opacity:0}@keyframes capture-combo-pop{0%{transform:translate(-50%) scale(.5)}55%{transform:translate(-50%) scale(1.35)}to{transform:translate(-50%) scale(1)}}@keyframes capture-combo-pop-hud{0%{transform:scale(.5)}55%{transform:scale(1.2)}to{transform:scale(1)}}.capture-hud-cell.points.goal-flash-near{animation:capture-goal-flash .7s ease-out}.capture-hud-cell.points.goal-flash-goal{animation:capture-goal-flash-strong .9s ease-out}.capture-hud-target.is-pulsing{display:inline-block;animation:capture-target-pulse .9s ease-out}@keyframes capture-goal-flash{0%{background:#ffd84f52}25%{background:#ffd84fd9;box-shadow:0 0 1.2rem #ffc82899,inset 0 0 0 1px #ffffffb3}to{background:#ffd84f52}}@keyframes capture-goal-flash-strong{0%{background:#ffd84f52}20%{background:#ffd232;box-shadow:0 0 1.8rem #ffbe14d9,inset 0 0 0 2px #ffffffe6;transform:scale(1.04)}60%{background:#ffd84fb3;transform:scale(1)}to{background:#ffd84f52}}@keyframes capture-target-pulse{0%{transform:scale(1)}30%{transform:scale(1.35);color:#b8860b}to{transform:scale(1)}}.capture-burst-layer{position:absolute;z-index:8;top:.22rem;right:.22rem;bottom:.22rem;left:.22rem;overflow:hidden;border-radius:.85rem;pointer-events:none}.capture-burst{position:absolute;display:grid;width:12.5%;height:12.5%;place-items:center}.capture-burst-spark{grid-area:1 / 1;font-style:normal;line-height:1;font-size:clamp(.7rem,2.2vw,1.1rem);color:#ffc832;text-shadow:0 0 .35rem rgba(255,220,120,.9);animation:capture-burst-fly 1.1s ease-out forwards}.capture-burst-spark:before{content:"✦";display:block}.capture-burst-spark.spark-0{--burst-x: -260%;--burst-y: -220%}.capture-burst-spark.spark-1{--burst-x: 260%;--burst-y: -260%;color:#ffe27a}.capture-burst-spark.spark-2{--burst-x: -280%;--burst-y: 200%;animation-delay:.04s}.capture-burst-spark.spark-3{--burst-x: 280%;--burst-y: 240%;color:#ffe27a;animation-delay:.04s}.capture-burst-spark.spark-4{--burst-x: 0%;--burst-y: -320%;font-size:clamp(.55rem,1.8vw,.9rem);animation-delay:.07s}@keyframes capture-burst-fly{0%{opacity:0;transform:translate(0) scale(.4)}15%{opacity:1;transform:translate(calc(var(--burst-x) * .3),calc(var(--burst-y) * .3)) scale(1.15)}70%{opacity:1;transform:translate(calc(var(--burst-x) * .85),calc(var(--burst-y) * .85)) scale(.85) rotate(60deg)}to{opacity:0;transform:translate(var(--burst-x),var(--burst-y)) scale(.5) rotate(90deg)}}@media(prefers-reduced-motion:reduce){.capture-result-reveal,.capture-result-best-badge,.capture-result-best-badge:after,.capture-combo-badge,.capture-hud-cell.points.goal-flash-near,.capture-hud-cell.points.goal-flash-goal,.capture-hud-target.is-pulsing{animation:none}.capture-result-best-badge:after{content:none}.capture-combo-badge{transition:none}.capture-burst-layer{display:none}}.circuit-auth-card{max-width:26rem;margin:10vh auto 0;gap:.7rem}.circuit-auth-tabs{display:flex;gap:.4rem}.circuit-auth-tab{flex:1;padding:.5rem .7rem;border:1px solid rgba(8,59,121,.35);border-radius:.6rem;background:#fff9;font:inherit;cursor:pointer}.circuit-auth-tab.is-active{background:#083b79e6;color:#fff;border-color:#083b79e6}.circuit-auth-label{display:flex;flex-direction:column;gap:.3rem;font-weight:600}.circuit-auth-input{padding:.55rem .7rem;border:1px solid rgba(8,59,121,.4);border-radius:.6rem;font:inherit;font-weight:400}.circuit-auth-hint{margin:-.3rem 0 0;font-size:.85rem;opacity:.75}.circuit-auth-typo{margin:-.3rem 0 0;font-size:.9rem;color:#8a5a00}.circuit-auth-typo-apply{border:none;background:none;padding:0;font:inherit;color:#083b79;text-decoration:underline;cursor:pointer}.circuit-auth-error{margin:0;color:#8a1f2c;font-weight:600}.circuit-auth-hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}.circuit-sync-chip{position:fixed;left:.6rem;bottom:.6rem;z-index:40;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;background:#ffffffbf;box-shadow:inset 0 0 0 1px #083b7933;color:#083b79bf;pointer-events:none}.circuit-sync-offline,.circuit-sync-error{background:#fff0d6eb;color:#8a5a00;box-shadow:inset 0 0 0 1px #8a5a0059}.catacombs-screen{max-width:40rem;margin:0 auto}.catacombs-head{text-align:center;margin-bottom:.6rem}.catacombs-title{margin:0 0 .15rem}.catacombs-progress{margin:0 0 .2rem;font-weight:700;color:#355475}.catacombs-path{display:flex;flex-direction:column;border-radius:1rem;overflow:hidden;box-shadow:0 .4rem 1.2rem #081e3c59}.catacombs-level{position:relative;padding:1rem .8rem .6rem;background-image:var(--cata-bg),var(--cata-bg-fallback);background-size:cover;background-position:center;color:#f3ead8}.catacombs-level-name{margin:0 0 .5rem;font-weight:800;letter-spacing:.04em;text-shadow:0 1px 4px rgba(0,0,0,.75)}.catacombs-nodes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.catacombs-node{margin-left:var(--node-x);width:fit-content}.catacombs-node-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.25rem .45rem;border:none;border-radius:.7rem;background:none;color:inherit;cursor:default}.catacombs-chest{width:3.4rem;height:auto;display:block;filter:drop-shadow(0 .25rem .3rem rgba(0,0,0,.55))}.catacombs-chest-fallback{font-size:2rem;line-height:1}.catacombs-node-number{font-size:.72rem;font-weight:700;padding:0 .4rem;border-radius:.6rem;background:#00000073;color:#f3ead8}.catacombs-node.is-solved .catacombs-chest{filter:saturate(.75) brightness(.9)}.catacombs-node-check{position:absolute;top:-.3rem;right:-.3rem;width:1.2rem;height:1.2rem;border-radius:50%;background:#3f9b4f;color:#fff;font-weight:800;font-size:.8rem;line-height:1.2rem;text-align:center;box-shadow:0 1px 3px #00000080}.catacombs-node.is-today .catacombs-node-btn{cursor:pointer}.catacombs-node.is-today .catacombs-chest{animation:catacombs-glow 1.6s ease-in-out infinite alternate}.catacombs-node.is-today .catacombs-node-btn:hover,.catacombs-node.is-today .catacombs-node-btn:focus-visible{transform:scale(1.08);outline:none}@keyframes catacombs-glow{0%{filter:drop-shadow(0 .25rem .3rem rgba(0,0,0,.55)) drop-shadow(0 0 .35rem rgba(255,190,90,.55))}to{filter:drop-shadow(0 .25rem .3rem rgba(0,0,0,.55)) drop-shadow(0 0 .8rem rgba(255,200,100,.95))}}.catacombs-node-today,.catacombs-node-wait{font-size:.72rem;font-weight:700;padding:.1rem .45rem;border-radius:.6rem;background:#ffd282eb;color:#4a2f00;white-space:nowrap}.catacombs-node-wait{background:#dce2eee6;color:#33415c}.catacombs-node.is-locked .catacombs-node-btn{opacity:.6;filter:grayscale(.6)}.catacombs-stairs{display:block;width:5rem;margin:.4rem auto 0;filter:drop-shadow(0 .3rem .4rem rgba(0,0,0,.5))}.catacombs-finale{padding:1rem .8rem 1.2rem;text-align:center;background:linear-gradient(180deg,#191430,#0e0b20);color:#e8e2ff}.catacombs-finale-gate{width:min(60%,14rem);height:auto;filter:drop-shadow(0 0 1rem rgba(140,120,255,.4))}.catacombs-finale-text{margin:.5rem 0 0;font-weight:800}.catacombs-reveal .catacombs-chest{width:5rem;margin:.3rem auto}.hub-spot-badge{position:absolute;top:-.4rem;right:12%;z-index:3;width:1.4rem;height:1.4rem;border-radius:50%;background:#e04f2f;color:#fff;font-weight:800;line-height:1.4rem;text-align:center;box-shadow:0 .15rem .5rem #78140080;animation:catacombs-badge-pulse 1.4s ease-in-out infinite}@keyframes catacombs-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.catacombs-task-screen{width:100%}.catacombs-task-bar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;width:min(1140px,calc(100% - 1.5rem));margin:0 auto}.catacombs-task-goal{font-weight:700;color:#355475}.catacombs-node-kind{position:absolute;top:-.35rem;left:-.35rem;font-size:1rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.circuit-variants-screen{width:100%}.circuit-variants-bar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;width:min(1140px,calc(100% - 1.5rem));margin:0 auto}.circuit-variants-playing{font-weight:700;color:#355475}.circuit-variants-head{display:flex;flex-direction:column;gap:.25rem}.circuit-variants-head .overlay-title{margin:0}.circuit-variants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.6rem}.circuit-variants-choice{display:flex;align-items:center;gap:.55rem;padding:.75rem .9rem;border:.14rem solid rgba(19,78,155,.25);border-radius:.8rem;background:#fff;color:var(--ink);font-weight:700;font-size:.95rem;text-align:left;cursor:pointer}.circuit-variants-choice:hover{border-color:var(--blue-mid);background:#eef6ff}.circuit-variants-screen .mist-match .board-wrap{width:min(100%,calc(100dvh - 13rem))}.circuit-variants-choice.circuit-variants-locked,.circuit-variants-choice.circuit-variants-locked:hover{border-color:#134e9b26;border-style:dashed;background:#f1f5fb;color:#134e9b8c;cursor:default}.circuit-variants-choice-icon{font-size:1.3rem}.circuit-hud-nav.is-active{background:#ffffff52}.quest-board-spot{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;cursor:pointer;border-radius:.6rem}.quest-board-spot:hover,.quest-board-spot:focus-visible{filter:drop-shadow(0 0 6px rgba(255,196,110,.9))}.quest-board-spot:focus-visible{outline:3px solid #ffd479;outline-offset:2px}.quest-board-art{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none}.quest-board-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:6cqw;border-radius:.5cqw;background:linear-gradient(180deg,#6b4426,#4a2d17);box-shadow:inset 0 0 0 .3cqw #1e1108d9,0 .3cqw .8cqw #00000073}.quest-board-spot.has-collectible{animation:quest-board-glow 1.6s ease-in-out infinite}@keyframes quest-board-glow{0%,to{filter:drop-shadow(0 0 3px rgba(255,208,120,.55))}50%{filter:drop-shadow(0 0 9px rgba(255,208,120,.95))}}.quest-board-badge{position:absolute;top:-.4rem;right:-.3rem;z-index:3;width:1.3rem;height:1.3rem;border-radius:50%;background:#e04f2f;color:#fff;font-weight:800;line-height:1.3rem;text-align:center;box-shadow:0 .15rem .5rem #78140080;animation:catacombs-badge-pulse 1.4s ease-in-out infinite}.quest-board-modal{position:relative;width:min(46rem,100%);max-height:min(92vh,44rem);overflow-y:auto;padding:1.3rem 1.4rem 1.6rem;border-radius:1.1rem;background-color:#4a2d17;background-size:cover;background-position:center;box-shadow:inset 0 0 0 5px #1e1108d9,inset 0 0 50px #00000073,0 1.6rem 3.6rem #00000080;display:flex;flex-direction:column;gap:.9rem;color:#f5e7c8;text-align:center}.quest-board-head{position:relative;padding:0 2.2rem}.quest-board-title{margin:0;font-size:1.35rem;color:#ffe9b8;text-shadow:0 2px 4px rgba(0,0,0,.6)}.quest-board-rules{margin:.2rem 0 0;font-size:.85rem;opacity:.85}.quest-board-close{position:absolute;top:-.35rem;right:0;color:#f5e7c8}.quest-board-empty{margin:2.5rem 0;font-style:italic;opacity:.85}.quest-board-payout{position:absolute;top:clamp(.8rem,4vh,2.2rem);left:50%;transform:translate(-50%);z-index:5;border-radius:.8rem;padding:.5rem .8rem;background:#140a04d9;box-shadow:0 .6rem 1.6rem #0006;text-align:center}.quest-board-payout-title{margin:0 0 .2rem;font-weight:700;color:#ffe9b8}.quest-note-row{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin:0;padding:0}@media(max-width:640px){.quest-note-row{grid-template-columns:1fr}}.quest-note{display:flex}.quest-note-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.45rem;width:100%;min-height:13rem;padding:2rem 1.5rem 1.3rem;border:0;border-radius:.35rem;background-image:url(/tavern/quests/quest-note.webp),linear-gradient(165deg,#f7ecd2,#efdcae 55%,#e3c98f);background-size:100% 100%,cover;box-shadow:0 .5rem 1rem #0006,inset 0 0 .6rem #78541e59;color:#4a3316;font:inherit;text-align:center;transform:rotate(-.6deg)}.quest-note:nth-child(2) .quest-note-card{transform:rotate(.7deg)}.quest-note:nth-child(3) .quest-note-card{transform:rotate(-.3deg)}.quest-note-title{font-weight:800;line-height:1.25}.quest-note-desc{font-size:.82rem;line-height:1.3;opacity:.85}.quest-note-progress{display:flex;flex-direction:column;align-items:center;gap:.2rem;font-size:.85rem;font-weight:700}.quest-note-tally{display:flex;gap:.18rem;flex-wrap:wrap;justify-content:center}.quest-tally-mark{width:.28rem;height:.85rem;border-radius:.14rem;background:#4a331640}.quest-tally-mark.is-done{background:#7c5417}.quest-note-reward{margin-top:auto;font-weight:800;color:#7c5417}.quest-note-tear{position:absolute;top:.25rem;right:.25rem;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:50%;background:#4a33161f;color:#6a4a1e;font-size:.95rem;cursor:pointer}.quest-note-tear:hover,.quest-note-tear:focus-visible{background:#4a331647}.quest-note-collect{cursor:pointer}.quest-note.is-done .quest-note-card{box-shadow:0 0 0 3px #f7c55cd9,0 .5rem 1.1rem #00000073}.quest-note.is-blocked .quest-note-card{filter:grayscale(.5) brightness(.92);box-shadow:0 0 0 2px #b4aa9699,0 .5rem 1rem #00000059}.quest-note-collect-hint{font-size:.85rem;font-weight:800;color:#1f7a2f}.quest-note-tomorrow{font-size:.85rem;font-weight:700;color:#6f6353}.quest-seal{position:absolute;top:.5rem;left:.6rem;width:2rem;height:2rem}img.quest-seal{object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}.quest-seal-fallback{display:flex;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#d24a35,#8e1f14);color:#ffe9c9;font-weight:900;font-size:1.2rem;box-shadow:inset 0 0 .3rem #3c0802cc,0 2px 4px #0006}.quest-completed-modal{align-items:center}.quest-completed-modal .quest-seal{position:static;width:3.4rem;height:3.4rem}.quest-completed-name{margin:0;font-weight:800;color:#355475}.quest-swap-confirm{z-index:45}.rules-intro-backdrop{overflow-y:auto;align-items:flex-start}.rules-intro-backdrop .circuit-modal{margin:auto}.rules-intro-panel{width:min(64rem,100%);text-align:left}.circuit-learning-panel{margin:0 auto}.rules-intro-panel>.overlay-title,.rules-intro-panel>.level-hint{text-align:center}.rules-intro-picker button{position:relative}.rules-intro-check{margin-left:.3rem;font-weight:800;color:#1d9e57}.rules-intro-panel{position:relative}.rules-intro-close{position:absolute;top:.7rem;right:.7rem;z-index:1}.rules-intro-reward-pop{z-index:45}.rules-intro-lang{display:flex;justify-content:center;margin-bottom:.4rem}.hub-character .hub-character-art{display:flex;align-items:flex-end;justify-content:center;width:100%;background:radial-gradient(50% 14% at 50% 92%,rgba(33,86,38,.3),transparent 70%)}.hub-character .hub-character-art img{width:100%;height:auto;display:block;filter:drop-shadow(0 .35rem .45rem rgba(8,59,121,.3))}.hub-character-rooky .hub-character-art img{filter:drop-shadow(0 .35rem .45rem rgba(8,59,121,.3)) drop-shadow(0 0 2px rgba(15,45,80,.55))}.hub-character .hub-spot-title{font-size:.85rem}.hub-character-aurelia.is-off .hub-character-art{filter:grayscale(1);opacity:.65}@media(max-width:640px){.hub-character .hub-character-art{flex:0 0 auto;align-items:center;width:3.4rem;height:3.4rem;background:none}.hub-character .hub-character-art img{width:100%;height:100%;object-fit:contain}}.bughouse-boards{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.9rem;align-items:start}.bughouse-board-col{display:grid;gap:.45rem}.bughouse-board-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.4rem;padding:0 .2rem}.bughouse-board-title{margin:0;color:#072c66;font-family:ui-rounded,SF Pro Rounded,Inter,system-ui,sans-serif;font-size:1.1rem}.bughouse-board-vs{color:#072c66a6;font-size:.8rem;font-weight:700}.bughouse-seatbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:2.6rem}.bughouse-seat-name{color:#072c66;font-size:.85rem;font-weight:900;white-space:nowrap}.bughouse-pocket{display:flex;flex:1;justify-content:center;gap:.25rem}.bughouse-pocket-piece{position:relative;display:grid;width:2.5rem;height:2.5rem;place-items:center;padding:.2rem;border:1px solid rgba(7,44,102,.18);border-radius:.6rem;background:#fffc;cursor:pointer}.bughouse-pocket-piece:disabled{cursor:default}.bughouse-pocket-piece.empty{opacity:.35}.bughouse-pocket-piece.selected{background:#fff;outline:.2rem solid var(--gold);outline-offset:-.1rem}.bughouse-pocket-piece .piece-svg{width:100%;height:100%}.bughouse-pocket-count{position:absolute;right:-.3rem;bottom:-.3rem;display:grid;min-width:1.15rem;height:1.15rem;place-items:center;padding:0 .25rem;border-radius:999px;background:var(--blue-deep);color:#fff;font-size:.68rem;font-weight:900}.bughouse-clock{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;border:1px solid rgba(7,44,102,.14);border-radius:.7rem;background:#ffffffbf;color:#072c66;font-variant-numeric:tabular-nums;font-weight:900;white-space:nowrap}.bughouse-clock.running{border-color:#0a4da380;background:#eaf6ff;box-shadow:0 .3rem .9rem #0a4da32e}.bughouse-clock.warning{border-color:#d32f2f8c;color:#b00020}.bughouse-clock.warning.running{background:#fdecec}.bughouse-watch .quick-square{cursor:default}@media(max-width:900px){.bughouse-boards{grid-template-columns:1fr}}.fp-arena{display:grid;grid-template-areas:"left top right" "left board right" "left bottom right";grid-template-columns:auto minmax(0,1fr) auto;gap:.55rem;align-items:center;justify-items:center}.fp-board-wrap{grid-area:board;width:100%;justify-self:stretch}.fp-seat-top{grid-area:top}.fp-seat-bottom{grid-area:bottom}.fp-seat-left{grid-area:left}.fp-seat-right{grid-area:right}.fp-seat{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border:1px solid rgba(7,44,102,.14);border-radius:.7rem;background:#ffffffbf;color:#072c66;font-size:.85rem;font-weight:900;white-space:nowrap}.fp-seat-left,.fp-seat-right{flex-direction:column;padding:.6rem .35rem}.fp-seat-turn{border-color:#0a4da380;background:#eaf6ff;box-shadow:0 .3rem .9rem #0a4da32e}.fp-seat-out{opacity:.55}.fp-seat-dot{width:.9rem;height:.9rem;border:2px solid rgba(7,44,102,.3);border-radius:999px;flex:none}.fp-seat-dot{background:var(--fp-army, #888)}.fp-seat-tag,.fp-seat-state{color:#072c66a6;font-size:.7rem;font-weight:700}.fp-seat-arrow{color:#0a4da3;font-size:.7rem}.fp-board .fp-void{background:transparent}.fp-board .rank-label,.fp-board .file-label{font-size:clamp(.4rem,1.1vw,.6rem)}.fp-red{--fp-army: #c9403c}.fp-blue{--fp-army: #2b62b8}.fp-yellow{--fp-army: #eab308}.fp-green{--fp-army: #2e9e44}.fp-piece{position:relative}.fp-piece .piece-svg{visibility:hidden}.fp-piece:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--fp-army, #888);filter:drop-shadow(0 1px 1px rgba(7,44,102,.35));-webkit-mask:var(--fp-mask) center / contain no-repeat;mask:var(--fp-mask) center / contain no-repeat}.fp-piece.fp-dead{--fp-army: #98a1ab}.fp-piece.fp-dead:after{opacity:.6}.drag-ghost .fp-piece{display:block;width:100%;height:100%}@media(max-width:720px){.fp-arena{display:flex;flex-wrap:wrap;justify-content:center}.fp-seat-left,.fp-seat-right{flex-direction:row;padding:.3rem .6rem}.fp-board-wrap{flex-basis:100%}}
