:root{--bg: #0b0907;--bg-2: #0f0d0a;--surf: #15120f;--surf-2: #1c1814;--surf-3: #25201a;--border: rgba(232,220,196,.08);--border-2: rgba(232,220,196,.14);--rule: rgba(232,220,196,.18);--gold: #c8a84b;--gold-2: #e2bd6a;--gold-soft: rgba(200,168,75,.14);--gold-line: rgba(200,168,75,.32);--ink: #f1ead8;--ink-2: #e8dcc4;--mute: rgba(241,234,216,.55);--mute-2: rgba(241,234,216,.34);--mute-3: rgba(241,234,216,.18);--success: #7fa75a;--err: #c64a3d;--light-sq: #e8dcc4;--dark-sq: #6b4f2e;--display: "Instrument Serif", "Times New Roman", Georgia, serif;--body: "Inter", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink);font-family:var(--body);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:dark;min-height:100vh}body{background-image:radial-gradient(ellipse 70% 60% at 78% -10%,rgba(200,168,75,.06),transparent 60%),radial-gradient(ellipse 50% 50% at 0% 100%,rgba(200,168,75,.03),transparent 60%);background-attachment:fixed;overscroll-behavior:none}::selection{background:var(--gold);color:#0a0806}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#e8dcc41a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#e8dcc42e}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,[role=button]:focus-visible,a:focus-visible{outline:1px solid var(--gold);outline-offset:2px}.display{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.02}.display i,.display em{font-style:italic}.mono{font-family:var(--mono);font-feature-settings:"ss03"}.eyebrow{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--mute-2)}.rule{height:1px;background:var(--rule)}.rule-soft{height:1px;background:var(--border)}.app{display:flex;min-height:100vh}.app>aside.sidebar-col{width:264px;flex-shrink:0}.app>.main-col{flex:1;min-width:0}.page-inner{width:100%;margin:0 auto}@media (max-width: 880px){.app{flex-direction:column}.app>aside.sidebar-col{width:100%}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.92)}60%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes flash{0%{box-shadow:0 0 #7fa75a00}30%{box-shadow:0 0 0 6px #7fa75a47,0 0 36px #7fa75a2e}to{box-shadow:0 0 #7fa75a00}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@keyframes shimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin-ring{0%{--ring-angle: 0deg;transform:rotate(0)}to{--ring-angle: 360deg;transform:rotate(360deg)}}@keyframes scoreReveal{0%{opacity:0;transform:scale(.6) rotate(-6deg);filter:blur(10px)}70%{transform:scale(1.04) rotate(1deg);filter:blur(0)}to{opacity:1;transform:scale(1) rotate(0);filter:blur(0)}}@keyframes checkBounce{0%{transform:scale(0) rotate(-10deg);opacity:0}60%{transform:scale(1.2) rotate(4deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes streakPop{0%{transform:scale(1)}28%{transform:scale(1.35)}55%{transform:scale(.92)}78%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes xpFloat{0%{opacity:0;transform:translate(-50%) translateY(0) scale(.8)}15%{opacity:1;transform:translate(-50%) translateY(-10px) scale(1.05)}70%{opacity:1;transform:translate(-50%) translateY(-40px) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-60px) scale(.9)}}@keyframes xpShimmer{0%{background-position:200% center}to{background-position:-200% center}}@media (prefers-reduced-motion: no-preference){@keyframes screenEnter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes mainColEnter{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes explanationReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes modalIn{0%{opacity:0;transform:scale(.93) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes shimmerSweep{0%{background-position:-200% center}to{background-position:200% center}}@keyframes tabBounce{0%,to{transform:translateY(0) scale(1)}35%{transform:translateY(-5px) scale(1.18)}65%{transform:translateY(-2px) scale(1.06)}}@keyframes confettiBurst{0%{opacity:0;transform:translate(0) rotate(0) scale(.2)}12%{opacity:1;transform:translate(calc(var(--tx)*.08),calc(var(--ty)*.08)) rotate(calc(var(--rot)*.08)) scale(1.4)}to{opacity:0;transform:translate(var(--tx),var(--ty)) rotate(var(--rot)) scale(.25)}}@keyframes flameRise{0%{opacity:0;transform:translateY(40px) scale(.4) scaleX(.7)}12%{opacity:1;transform:translateY(0) scale(1) scaleX(1)}75%{opacity:.85}to{opacity:0;transform:translateY(-75vh) scale(.5) scaleX(.6)}}@keyframes levelUpOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes levelUpBounce{0%{opacity:0;transform:scale(.15) rotate(-15deg)}50%{opacity:1;transform:scale(1.22) rotate(5deg)}70%{transform:scale(.91) rotate(-2deg)}85%{transform:scale(1.06) rotate(1deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes levelUpStar{0%{opacity:0;transform:translate(0) scale(0) rotate(0)}25%{opacity:1;transform:translate(calc(var(--tx)*.4),calc(var(--ty)*.4)) scale(1.5) rotate(180deg)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.3) rotate(540deg)}}@keyframes levelUpGlow{0%{box-shadow:0 0 #c8a84b00}40%{box-shadow:0 0 80px 40px #c8a84b59}to{box-shadow:0 0 #c8a84b00}}@keyframes lineRowIn{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}@keyframes scorePlateIn{0%{opacity:0;transform:scale(.88) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes confettiFloat{0%{opacity:1;transform:translateY(0) rotate(0) scale(1)}75%{opacity:.8}to{opacity:0;transform:translateY(-130px) rotate(720deg) scale(.4)}}@keyframes boardCorrectFlash{0%{box-shadow:0 0 #7fa75a00}30%{box-shadow:0 0 0 6px #7fa75a47,0 0 36px #7fa75a2e}to{box-shadow:0 0 #7fa75a00}}@keyframes boardWrongShake{0%,to{transform:translate(0)}15%{transform:translate(-9px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(5px)}78%{transform:translate(-3px)}}@keyframes lockGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.82)}}}.fade-up{animation:fadeUp .5s cubic-bezier(.16,1,.3,1) both}.fade-up-1{animation:fadeUp .5s .06s cubic-bezier(.16,1,.3,1) both}.fade-up-2{animation:fadeUp .5s .12s cubic-bezier(.16,1,.3,1) both}.fade-up-3{animation:fadeUp .5s .18s cubic-bezier(.16,1,.3,1) both}.fade-up-4{animation:fadeUp .5s .24s cubic-bezier(.16,1,.3,1) both}.fade-up-5{animation:fadeUp .5s .3s cubic-bezier(.16,1,.3,1) both}.fade-up-6{animation:fadeUp .5s .36s cubic-bezier(.16,1,.3,1) both}.fade-up-7{animation:fadeUp .5s .42s cubic-bezier(.16,1,.3,1) both}.fade-up-8{animation:fadeUp .5s .48s cubic-bezier(.16,1,.3,1) both}.fade-in{animation:fadeIn .3s ease both}.slide-up{animation:slideUp .35s cubic-bezier(.16,1,.3,1) both}.pop{animation:pop .5s cubic-bezier(.34,1.56,.64,1) both}.pop-in{animation:pop .45s cubic-bezier(.34,1.56,.64,1) both}.flash{animation:flash .55s cubic-bezier(.25,.8,.25,1) both}.shake{animation:shake .42s cubic-bezier(.36,.07,.19,.97) both}.pulse{animation:pulse 1.8s ease-in-out infinite}.score-reveal{animation:scoreReveal .6s cubic-bezier(.34,1.56,.64,1) .1s both}.check-bounce{animation:checkBounce .4s cubic-bezier(.34,1.56,.64,1) both}.streak-pop{animation:streakPop .55s cubic-bezier(.34,1.56,.64,1) both}.xp-float{animation:xpFloat 1.8s cubic-bezier(.16,1,.3,1) forwards}.screen-enter{animation:screenEnter .42s cubic-bezier(.16,1,.3,1) both}.main-col-enter{animation:mainColEnter .38s cubic-bezier(.16,1,.3,1) both}.explanation-reveal{animation:explanationReveal .22s cubic-bezier(.25,.8,.25,1) both}.modal-in{animation:modalIn .28s cubic-bezier(.34,1.56,.64,1) both}.tab-bounce{animation:tabBounce .38s cubic-bezier(.34,1.56,.64,1) both}.board-correct-flash{animation:boardCorrectFlash .52s cubic-bezier(.25,.8,.25,1) both}.board-wrong-shake{animation:boardWrongShake .44s cubic-bezier(.36,.07,.19,.97) both}.lock-pulse{animation:lockGlow 2.2s ease-in-out infinite}.xp-bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold) 0%,var(--gold-2) 38%,#f0d878 50%,var(--gold-2) 62%,var(--gold) 100%);background-size:400% 100%;animation:xpShimmer 3s linear infinite}.btn-cta{position:relative;overflow:hidden}.btn-cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.16) 50%,transparent 65%);background-size:200% 100%;animation:shimmerSweep 3.2s 2.5s linear infinite;border-radius:inherit;pointer-events:none}.input-focus-glow{transition:border-color .18s ease,box-shadow .18s ease}.input-focus-glow:focus{outline:none;border-color:#c8a84b99!important;box-shadow:0 0 0 3px #c8a84b1f}.card-lift{transition:border-color .2s ease,transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s ease;cursor:pointer}.card-lift:hover{transform:translateY(-2px);box-shadow:0 12px 36px #00000073}.card-lift:active{transform:scale(.985);transition-duration:.1s}@keyframes tabIndicatorIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.tab-active{position:relative}.tab-active:after{content:"";position:absolute;top:-1px;left:20%;right:20%;height:2px;background:currentColor;border-radius:2px;transform-origin:left center;animation:tabIndicatorIn .35s cubic-bezier(.16,1,.3,1) both}.confetti-particle{position:fixed;pointer-events:none;z-index:9999;font-size:var(--size, 18px);animation:confettiBurst var(--dur, .9s) var(--del, 0s) cubic-bezier(.22,1,.36,1) forwards}.flame-particle{position:absolute;pointer-events:none;animation:flameRise var(--dur, 1.2s) var(--del, 0s) ease-out forwards}.level-up-pop{animation:levelUpOverlayIn .25s ease both}.level-up-bounce{animation:levelUpBounce .7s cubic-bezier(.34,1.56,.64,1) .15s both}.level-up-star{animation:levelUpStar 1s cubic-bezier(.22,1,.36,1) var(--del, 0s) both}.level-up-glow{animation:levelUpGlow 1.2s ease-out .1s both}.line-row-in{animation:lineRowIn .38s cubic-bezier(.16,1,.3,1) var(--del, 0s) both}.score-plate-in{animation:scorePlateIn .55s cubic-bezier(.34,1.56,.64,1) .25s both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}}.ambient-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.ambient-knight{position:absolute;width:56px;height:70px;color:#c8a84b73;filter:drop-shadow(0 0 20px rgba(200,168,75,.45));transition:transform 1.1s cubic-bezier(.65,.05,.36,1),opacity .8s ease;will-change:transform}@keyframes ambientMarkerFade{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}18%{opacity:.85;transform:translate(-50%,-50%) scale(1.2)}to{opacity:0;transform:translate(-50%,-50%) scale(.6)}}.ambient-marker{position:absolute;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle,rgba(226,189,106,.7),rgba(200,168,75,.15) 60%,transparent 80%);transform:translate(-50%,-50%);animation:ambientMarkerFade 5s ease-out forwards}@keyframes constellationDrift{0%{transform:translate3d(var(--dx0,0px),var(--dy0,0px),0) rotate(var(--r0,0deg))}to{transform:translate3d(var(--dx1,30px),var(--dy1,-22px),0) rotate(var(--r1,8deg))}}.constellation-piece{position:absolute;color:#e8dcc408;animation:constellationDrift var(--dur, 32s) ease-in-out infinite alternate;will-change:transform}@keyframes grainDrift{0%{transform:translate(0)}to{transform:translate(-32px,-24px)}}.grain{position:fixed;top:-64px;right:-64px;bottom:-64px;left:-64px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' seed='3'/><feColorMatrix values='0 0 0 0 0.78  0 0 0 0 0.66  0 0 0 0 0.29  0 0 0 0.18 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.04;mix-blend-mode:overlay;pointer-events:none;z-index:1;animation:grainDrift 8s steps(8) infinite}.hero-spotlight{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(420px circle at var(--mx, 30%) var(--my, 40%),rgba(200,168,75,.1),rgba(200,168,75,.04) 30%,transparent 70%);mix-blend-mode:screen}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay, 0s)}.reveal.is-visible{opacity:1;transform:none}.reveal-rule{height:1px;background:var(--rule);transform:scaleX(0);transform-origin:left center;transition:transform 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay, 0s)}.reveal-rule.is-visible{transform:scaleX(1)}@keyframes letterIn{0%{opacity:0;transform:translateY(.55em) rotateX(-50deg);filter:blur(4px)}to{opacity:1;transform:none;filter:blur(0)}}.letter{display:inline-block;animation:letterIn .9s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--ld, 0s);transform-origin:50% 100%}.letter.space{width:.3em}@keyframes goldShimmer{0%{background-position:200% center}to{background-position:-200% center}}.gold-shimmer{background:linear-gradient(100deg,var(--gold) 0%,#f6dfa0 22%,var(--gold-2) 38%,#fff2c8 50%,var(--gold-2) 62%,var(--gold) 78%,var(--gold) 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:goldShimmer 5.5s linear infinite}.mag-card{transform-style:preserve-3d;transition:transform .32s cubic-bezier(.16,1,.3,1);transform:perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg))}.mag-card .mag-lift{transform:translateZ(28px);transition:transform .32s cubic-bezier(.16,1,.3,1)}@property --angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes borderTrace{to{--angle: 360deg}}.trace-border{position:relative;isolation:isolate}.trace-border:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;padding:1px;background:conic-gradient(from var(--angle, 0deg),transparent 0deg,var(--card-accent, var(--gold)) 60deg,transparent 130deg,transparent 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .32s ease;pointer-events:none;z-index:1}.trace-border:hover:before{opacity:1;animation:borderTrace 2.4s linear infinite}.opening-card-numeral{position:absolute;top:8px;right:12px;font-family:var(--display);font-style:italic;font-size:56px;line-height:1;pointer-events:none;color:#f1ead80d;transition:color .4s ease,transform .55s cubic-bezier(.16,1,.3,1),text-shadow .45s ease,opacity .4s ease;transform-origin:top right}.opening-card:hover .opening-card-numeral{transform:scale(1.22) translate(-2px,4px);color:var(--card-accent, var(--gold));text-shadow:0 0 18px var(--card-accent, var(--gold)),0 0 36px rgba(200,168,75,.6);opacity:.55}.gold-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;background:linear-gradient(180deg,var(--gold) 0%,#b8983c 100%);color:#0a0806;border:1px solid var(--gold-line);font-family:var(--body);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .2s;white-space:nowrap}.gold-btn:hover{background:linear-gradient(180deg,var(--gold-2) 0%,var(--gold) 100%);box-shadow:0 0 32px #c8a84b52}.gold-btn:disabled{opacity:.35;cursor:not-allowed}.ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;background:transparent;color:var(--ink-2);border:1px solid var(--border-2);font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .2s;white-space:nowrap}.ghost-btn:hover{background:#e8dcc40a;border-color:var(--gold-line);color:var(--gold)}.ghost-btn:disabled{opacity:.35;cursor:not-allowed}@keyframes ctaHalo{0%,to{box-shadow:0 0 #c8a84b00}60%{box-shadow:0 0 38px 8px #c8a84b4d}}.cta-halo{animation:ctaHalo 3.4s ease-in-out infinite 1.5s}@keyframes logoGlint{0%,88%,to{transform:translate(-120%) skew(-20deg);opacity:0}92%,96%{transform:translate(160%) skew(-20deg);opacity:.7}}.logo-wrap{position:relative;overflow:hidden}.logo-glint{position:absolute;top:0;left:0;bottom:0;width:35%;background:linear-gradient(90deg,transparent,rgba(255,239,180,.65),transparent);animation:logoGlint 6s ease-in-out infinite;pointer-events:none}@keyframes dotWave{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(-3px);opacity:.6}}.weekly-dot{animation:dotWave 2.4s ease-in-out infinite;animation-delay:var(--dot-d, 0s)}@keyframes piecePop{0%{transform:scale(.5);opacity:.6}60%{transform:scale(1.18)}to{transform:scale(1);opacity:1}}@keyframes particleBurst{0%{opacity:0;transform:translate(0) scale(.4)}18%{opacity:1;transform:translate(calc(var(--tx)*.18),calc(var(--ty)*.18)) scale(1.4)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.3)}}.particle-burst{position:absolute;pointer-events:none;z-index:5;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle,#ffe5a0 0%,#c8a84b 60%,transparent 100%);filter:drop-shadow(0 0 6px #c8a84b);animation:particleBurst .9s cubic-bezier(.22,1,.36,1) var(--del, 0s) both}.chip-underline{position:relative;padding:5px 14px;font-size:11px;font-weight:700;letter-spacing:.07em;border:1px solid var(--border);background:transparent;color:var(--mute);font-family:var(--mono);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.chip-underline[data-active=true]{color:var(--gold);border-color:var(--gold-line);background:#c8a84b0f}.chip-underline:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .55s cubic-bezier(.16,1,.3,1)}.chip-underline:hover:after,.chip-underline[data-active=true]:after{transform:scaleX(1)}.odometer{display:inline-flex;font-variant-numeric:tabular-nums;line-height:1}.odometer-digit{position:relative;height:1em;width:.62em;overflow:hidden}.odometer-reel{display:flex;flex-direction:column;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.odometer-reel>span{display:block;height:1em;line-height:1;text-align:center}@keyframes legalDotIn{0%{opacity:0;transform:scale(.2)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes hintPulse{0%,to{opacity:.32}50%{opacity:.85}}.your-turn-pulse{animation:yourTurnPulse 2.8s ease-in-out infinite}@keyframes yourTurnPulse{0%,to{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 16px var(--gold)}}@keyframes mtEdgeDraw{0%{stroke-dashoffset:220;opacity:0}to{stroke-dashoffset:0;opacity:1}}@keyframes mtNodeIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes mtAnnotIn{0%{opacity:0}to{opacity:1}}.mt-edge{stroke-dasharray:220}.move-tree-wrap::-webkit-scrollbar{height:4px}.move-tree-wrap::-webkit-scrollbar-track{background:transparent}.move-tree-wrap::-webkit-scrollbar-thumb{background:#c8a84b59;border-radius:2px}.app{position:relative;z-index:2}@keyframes starMint{0%{opacity:0;transform:scale(0) rotate(-45deg)}60%{opacity:1;transform:scale(1.3) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}.big-piece{position:absolute;display:flex;align-items:center;justify-content:center;font-size:clamp(24px,4vw,42px);pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.45));-webkit-user-select:none;user-select:none}.big-piece.white{color:#fbf5e1;text-shadow:0 1px 2px rgba(0,0,0,.55)}.big-piece.black{color:#15110a;text-shadow:0 0 2px rgba(230,214,169,.35)}@keyframes rippleGo{0%{opacity:.7}to{opacity:0}}.rep-tile-ripple{pointer-events:none}.rep-tile-ripple.ripple-go{animation:rippleGo .6s ease-out forwards}@keyframes numeralBloom{0%{opacity:0;transform:scale(.55) translateY(8px);filter:blur(6px)}55%{opacity:1;transform:scale(1.06) translateY(-2px);filter:blur(0)}to{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}.numeral-bloom{opacity:0;transition:opacity 0s}.numeral-bloom.is-visible{animation:numeralBloom .85s cubic-bezier(.16,1,.3,1) both;opacity:1}.page-curtain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none;overflow:hidden}.page-curtain-stripe{position:absolute;left:0;right:0;height:80px;top:-80px;background:radial-gradient(ellipse at center,rgba(200,168,75,.2) 0%,rgba(200,168,75,.05) 40%,transparent 80%);pointer-events:none;transition:top .65s cubic-bezier(.65,.05,.35,1)}.page-curtain-stripe:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(226,189,106,0) 12%,rgba(226,189,106,.85) 50%,rgba(226,189,106,0) 88%,transparent 100%);box-shadow:0 0 12px #ffefb473}.page-curtain.in .page-curtain-stripe{top:calc(100vh + 80px)}.page-curtain.no-anim .page-curtain-stripe{transition:none!important}@media (prefers-reduced-motion: reduce){.ambient-knight,.ambient-marker,.constellation-piece,.grain,.logo-glint,.cta-halo,.gold-shimmer,.weekly-dot{animation:none!important}.ambient-knight{display:none}.reveal{opacity:1!important;transform:none!important}.reveal-rule{transform:scaleX(1)!important}.letter{opacity:1!important;transform:none!important;filter:none!important;animation:none!important}.numeral-bloom{opacity:1!important;animation:none!important}.page-curtain-stripe{transition:none!important}}@keyframes railDraw{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes milestonePulse{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:.7;transform:scale(1.05)}}@keyframes cmdOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes cmdDialogIn{0%{opacity:0;transform:scale(.94) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes cmdRowIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.learn-complete-cta,.learn-done-card,.sidebar-nav-icon{display:none}.sidebar-mob-only{display:none!important}:root{--mob-tab: 56px;--mob-nav: 48px}@media (max-width: 768px){html,body{overflow-x:hidden!important}*,*:before,*:after{max-width:100vw;box-sizing:border-box}.app>aside.sidebar-col{position:fixed!important;bottom:0!important;top:auto!important;left:0!important;right:0!important;z-index:500!important;width:100%!important;height:calc(var(--mob-tab) + env(safe-area-inset-bottom,0px))!important;max-height:none!important;padding:0 0 env(safe-area-inset-bottom,0px) 0!important;border-right:none!important;border-bottom:none!important;border-top:1px solid var(--border)!important;flex-direction:row!important;align-items:stretch!important;gap:0!important;align-self:auto!important;background:#0b0907f7!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;overflow:hidden!important;box-shadow:0 -1px #e8dcc40f,0 -8px 32px #00000073!important;min-height:calc(var(--mob-tab) + env(safe-area-inset-bottom,0px))!important}.app{padding-top:0!important;padding-bottom:calc(var(--mob-tab) + env(safe-area-inset-bottom,0px))!important;height:100dvh!important;min-height:100dvh!important;overflow:hidden!important}.sidebar-logo,.sidebar-section-label,.sidebar-spacer,.sidebar-stats,.sidebar-footer{display:none!important}.sidebar-nav{flex:1!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;height:var(--mob-tab)!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;-ms-overflow-style:none!important;padding:0!important;gap:0!important;margin-bottom:0!important}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-nav-btn{flex:1!important;min-width:48px!important;max-width:80px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;height:var(--mob-tab)!important;padding:7px 2px 5px!important;gap:3px!important;border-bottom:none!important;border-radius:0!important;white-space:nowrap!important;min-height:0!important;font-style:normal!important;position:relative!important;transition:color .15s ease!important}.sidebar-nav-btn[data-active=true]:before{content:""!important;position:absolute!important;top:0!important;left:20%!important;right:20%!important;height:2px!important;background:var(--gold)!important;border-radius:0 0 2px 2px!important}.sidebar-nav-btn>span[style*="border-radius: 50%"]{display:none!important}.sidebar-nav-icon{display:flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;flex-shrink:0!important;pointer-events:none!important}.sidebar-nav-label{font-size:9px!important;font-style:normal!important;font-family:var(--mono)!important;letter-spacing:.06em!important;text-transform:uppercase!important;line-height:1!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important}.sidebar-mob-only{display:flex!important}.main-col{flex:1!important;min-height:0!important;min-width:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}.page-inner{padding:24px 16px 72px!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}.home-masthead-row{flex-direction:column!important;gap:16px!important;align-items:stretch!important}.section-study-grid{grid-template-columns:1fr!important;gap:16px!important}.opening-cards-grid{grid-template-columns:1fr!important;border:none!important}.opening-cards-grid>div{min-width:0!important;max-width:100%!important;border-right:none!important;border-bottom:1px solid var(--border)!important}.opening-cards-grid>div:last-child{border-bottom:none!important}.stat-band-grid{grid-template-columns:1fr 1fr 1fr!important}.opening-hero-grid{grid-template-columns:1fr!important;gap:20px!important}.opening-title-h1{font-size:clamp(36px,11vw,72px)!important}.opening-meta-col{border-left:none!important;padding-left:0!important;border-top:1px solid var(--rule)!important;padding-top:16px!important}.chapter-row-grid{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;padding:16px 0!important}.chapter-row-grid>span.display{font-size:32px!important;line-height:1!important}.chapter-row-stats{display:none!important}.chapter-row-actions{justify-content:flex-start!important;width:100%!important}.chapter-row-actions>button{flex:1!important;min-height:44px!important}.weak-spots-grid,.tactics-two-col,.tactics-puzzle-body{grid-template-columns:1fr!important}.tactics-recent-grid{grid-template-columns:1fr 1fr!important}.account-screen-inner{padding:24px 16px 72px!important;max-width:100%!important}.board-topbar{grid-template-columns:auto 1fr auto!important;padding:0 12px!important;gap:6px!important;height:var(--mob-nav)!important;min-height:var(--mob-nav)!important;z-index:50!important}.board-topbar [style*="160px"]{width:72px!important}.board-3panel{display:flex!important;flex-direction:column!important;overflow:visible!important;min-height:0!important;flex:1!important}.board-left-panel{display:none!important}.board-center-main{padding:8px 16px 4px!important;justify-content:flex-start!important;align-items:center!important;min-height:0!important;flex-shrink:0!important}.board-right-panel{border-left:none!important;border-top:1px solid var(--border)!important;padding:14px 16px 16px!important;max-height:35vh!important;min-height:110px!important;overflow-y:auto!important;flex-shrink:0!important;flex:none!important;background:var(--bg-2)!important;-webkit-overflow-scrolling:touch!important}.board-right-panel>div[style*="flex:1"],.board-right-panel>div[style*="flex: 1"]{display:none!important}.board-right-panel p span[style*="float: left"]{float:none!important;font-size:24px!important;line-height:1!important;margin-right:3px!important;margin-top:0!important;display:inline!important}.board-right-panel p[style*="font-size: 20px"]{font-size:14px!important;line-height:1.5!important}.board-right-panel h2.display{font-size:24px!important;line-height:1.1!important;margin-bottom:8px!important}.chess-board-outer{max-width:min(calc(100vw - 32px),calc(100dvh - 226px))!important;width:100%!important}.learn-complete-cta{display:flex!important;flex-direction:column!important;gap:8px!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;padding:12px 16px!important;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;background:#0b0907f7!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;border-top:1px solid var(--border)!important;z-index:200!important}.screen-enter{min-height:100dvh!important}.gold-btn,.ghost-btn{min-height:44px!important;padding-top:10px!important;padding-bottom:10px!important}.result-inner{padding:20px 16px 40px!important;align-items:flex-start!important;justify-content:flex-start!important;flex-direction:column!important;min-height:100dvh!important}.result-title-h1{font-size:clamp(26px,8.5vw,48px)!important}.result-score-plate{grid-template-columns:1fr!important;padding:16px!important;margin-bottom:20px!important;gap:0!important}.result-score-plate>div{padding:14px 0!important}.result-score-plate>div[style*="height: 80"],.result-score-plate>div[style*="height:80"]{display:none!important}.result-score-plate .display{font-size:48px!important;line-height:1!important}.result-score-plate .display>span{font-size:20px!important}.result-actions{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.result-actions .gold-btn,.result-actions .ghost-btn{width:100%!important;justify-content:center!important}.learn-all-done .board-3panel{display:none!important}.learn-done-card{display:flex!important;flex:1!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:40px 24px 56px!important;text-align:center!important;max-width:400px!important;width:100%!important;margin:0 auto!important}.stat-band-grid{grid-template-columns:1fr 1fr!important}.study-card-actions{flex-direction:column!important;align-items:stretch!important;gap:8px!important}.study-card-actions>.gold-btn,.study-card-actions>.ghost-btn{width:100%!important;justify-content:center!important}.result-line-row-inner{grid-template-columns:20px 1fr auto!important;gap:8px!important;padding:14px 0!important}.result-line-bar{display:none!important}.stats-screen-inner{padding:24px 16px 80px!important}.rep-screen-outer{padding:24px 16px 0!important}.rep-two-col{grid-template-columns:1fr!important;gap:32px!important}.explorer-screen-inner{padding:24px 16px 72px!important;max-width:100%!important}.explorer-main-grid{grid-template-columns:1fr!important}.tactics-home-inner{padding:24px 16px 80px!important;max-width:100%!important}.tactics-category-grid{grid-template-columns:1fr 1fr!important}.screen-enter{padding-bottom:0!important}}.rep-layout{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}@media (min-width: 680px){.rep-layout{grid-template-columns:1fr 1fr;gap:28px}}.screen-home{min-height:100dvh;display:flex;flex-direction:column}.home-sidebar{padding:52px 20px 32px;border-bottom:1px solid rgba(255,255,255,.08)}.home-sidebar-inner{max-width:520px;margin:0 auto}.home-main{flex:1;padding-bottom:60px}.home-sidebar-nav,.desktop-nav{display:none}@media (min-width: 900px){.bottom-tab-bar{display:none!important}.screen-home{flex-direction:row;height:100dvh;min-height:0;overflow:hidden}.home-sidebar{width:280px;flex-shrink:0;height:100dvh;overflow-y:auto;padding:36px 24px 32px;border-bottom:none;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column}.home-sidebar-inner{max-width:none;margin:0;flex:1;display:flex;flex-direction:column}.home-sidebar-nav{display:flex;flex-direction:column;margin-top:28px;flex:1;justify-content:flex-end}.home-main{flex:1;height:100dvh;overflow-y:auto;padding:36px 40px 48px}.home-cards-section{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;max-width:none!important;padding:0!important;margin:0 0 4px!important}.home-cards-section>*{margin-bottom:0!important}.home-section-header-wrap{max-width:none!important;padding:20px 0 10px!important;margin:0!important}.openings-grid-wrap{max-width:none!important;padding:0!important;grid-template-columns:1fr 1fr!important}}@media (min-width: 1280px){.home-sidebar{width:300px}.home-main{padding:40px 60px 56px}.openings-grid-wrap{grid-template-columns:repeat(3,1fr)!important}}
