::backdrop,:root{--accent:#5a0b13;--accent-soft:#9e3f41;--accent-ink:#fff8f7;--accent-hover:#7f282b;--accent-lit:#8a262c;--accent-deep:#36050c;--flare:#b00077;--flare-glow:#ea00a0;--board:#dcb35c;--grid:#1f1408;--stone-black:#141414;--stone-white:#fcfcfa;--mark-wrong:#c62828;--mark-right:#1b5e20;--mark-wrong-board:#a31515;--mark-right-text:var(--mark-right);--mark-wrong-text:var(--mark-wrong);--label-brilliant:#1d5fd1;--label-great:#4a86d8;--label-best:#2e8b57;--label-inaccuracy:#c99a00;--label-mistake:#cc6214;--label-miss:#cc6214;--label-blunder:#c62828;--flash-right:#0f9d3a;--flash-wrong:#ff1a1a;--done:#197430;--locked:#6f655d;--track-tutorial:var(--accent);--track-lad:#1f5f8b;--track-openings:#8a5f14;--track-tutorial-text:var(--accent-text);--track-lad-text:var(--track-lad);--track-openings-text:var(--track-openings);--accent-text:var(--accent);--accent-text-hover:var(--accent-hover);--accent-text-deep:var(--accent-deep);--done-text:var(--done);--flare-text:var(--flare);--club-gold:#dcb35c;--kata:#197330;--kata-lit:#22803a;--kata-deep:#0f4d1f;--line-you:#1f5f8b;--line-coach:#845b13;--kata-text:var(--kata);--line-you-text:var(--line-you);--line-coach-text:var(--line-coach);--mark-you:#174669;--tree-stone-white:var(--stone-white);--tree-stone-edge:var(--stone-black);--bg:#f7f2e8;--panel:#fbf3ec;--panel-high:#f5e6e0;--line:#eae3d5;--line-strong:#dcc0bf;--plot:#fffbf7;--ink:#3c1014;--ink-soft:#564241;--step--1:0.889rem;--step-0:1rem;--step-1:1.125rem;--step-2:1.266rem;--step-3:1.424rem;--step-4:1.602rem;--radius:14px;--radius-lg:20px;--shadow-ambient:0 2px 12px rgba(90,11,19,0.06);--shadow-raised:0 8px 28px rgba(90,11,19,0.1);--scrim:rgba(60,16,20,0.35);--font-stack:var(--font-serif,"Source Serif 4"),Georgia,"Times New Roman",serif;--font-display-stack:var(--font-display,"Fraunces"),Georgia,serif;--key-lip:2px;--key-cream-top:#fffbf7;--key-cream-hover:#fff6f1;--key-cream-lip:#e4d0c8;--key-cream-edge:#c9a3a1;--key-cream-pressed:#ead6cd;--key-shadow:0 1px 2px rgba(90,11,19,0.08);--key-shadow-hover:0 2px 5px rgba(90,11,19,0.1);--tray:#efe5d6;--climb-mat:#efe5d2;--heart:#a3212b;--heart-edge:#5a0b13;--heart-shine:#f3b3b3;--field:#ffffff;--field-edge:#8a7472;--field-edge-hover:var(--ink-soft);--field-shadow:inset 0 1px 3px rgba(60,16,20,0.1);--shade-rgb:90 11 19;--tint-rgb:90 11 19;--glint-rgb:255 255 255;--nav-glass:rgba(247,242,232,0.92);--glass:rgba(251,243,236,0.92);--glass-strong:rgba(251,243,236,0.94);--chat-well:#fffdf8;--learn-dot:rgb(var(--tint-rgb)/0.12);--focus-glow:rgba(90,11,19,0.12);--key-cream-shine:#fff;--accent-hover-top:#9c3036;--logo-navy:#1f1d2b;--logo-navy-deep:#0e0d15;--logo-cream:#fbf4e6;--logo-gold:#e9b35f;--logo-gold-deep:#c98a3a;--logo-flame:#d9502f;--logo-flame-lit:#ff6e4f;--apple-fill:#000000;--apple-ink:#ffffff;--google-fill:#ffffff;--google-edge:#747775;--google-ink:#1f1f1f}@media screen{:root[data-theme=dark],:root[data-theme=dark] ::backdrop{color-scheme:dark;--accent:#b93d42;--accent-soft:#d47c79;--accent-hover:#bd4448;--accent-lit:#be4a4c;--accent-deep:#6f181e;--accent-text:#e68582;--accent-text-hover:#f0a09d;--accent-text-deep:var(--accent-text);--accent-hover-top:#be4a4c;--flare:#7c1556;--flare-text:#fe4db8;--board:#b8924a;--mark-right:#085112;--mark-wrong-board:#880000;--mark-right-text:#66bb6a;--mark-wrong-text:#ef7b72;--label-brilliant:#6c9cf2;--label-great:#8ab2ec;--label-best:#5cbd85;--label-inaccuracy:#e8c040;--label-mistake:#f39a55;--label-miss:#f39a55;--label-blunder:#f0625f;--done:#257d38;--done-text:#54a861;--locked:#958a81;--track-lad:#3774a2;--track-openings:#91651d;--track-lad-text:#74a6d0;--track-openings-text:#d4a24f;--kata:#257d38;--kata-lit:#2a8640;--kata-deep:#0c3d18;--line-you:#3774a2;--line-coach:#91651d;--kata-text:#67bb74;--line-you-text:#74a6d0;--line-coach-text:#d4a24f;--mark-you:#174669;--tree-stone-white:#d9d2c8;--tree-stone-edge:#9a8c86;--bg:#170f11;--panel:#261a1b;--panel-high:#312224;--line:#3a2a2b;--line-strong:#5a4244;--plot:#33252a;--ink:#e2d5cb;--ink-soft:#b8a69e;--shadow-ambient:0 2px 12px rgba(0,0,0,0.35);--shadow-raised:0 8px 28px rgba(0,0,0,0.5);--scrim:rgba(10,5,6,0.6);--key-cream-top:#3a2a2b;--key-cream-hover:#433133;--key-cream-lip:#1a1011;--key-cream-edge:#4f3a3c;--key-cream-pressed:#2a1c1e;--key-cream-shine:#433133;--key-shadow:0 1px 2px rgba(0,0,0,0.45);--key-shadow-hover:0 2px 5px rgba(0,0,0,0.5);--tray:rgba(0,0,0,0.2);--climb-mat:#2a262d;--heart:#d0454b;--heart-edge:#6f181e;--heart-shine:#f6c6c4;--field:#120b0c;--field-shadow:inset 0 1px 3px rgba(0,0,0,0.5);--shade-rgb:0 0 0;--tint-rgb:230 133 130;--glint-rgb:74 52 54;--nav-glass:rgba(23,15,17,0.92);--glass:rgba(38,26,27,0.92);--glass-strong:rgba(38,26,27,0.94);--chat-well:#160e10;--focus-glow:rgba(230,133,130,0.35);--apple-fill:#ffffff;--apple-ink:#000000;--google-fill:#131314;--google-edge:#8e918f;--google-ink:#e3e3e3}:root[data-theme=dark] :is(.oggo-drawing,.oggo-flyer-drawing){filter:drop-shadow(0 0 1px var(--logo-cream))}:root[data-theme=dark] .board-svg{--ink:var(--grid);--ink-soft:#3c2a28;--accent:#5a0b13;--kata:#0f4d1f;--line-you:#174669}:root[data-theme=dark] :is(.home-banner,.tour-hero){--accent:#5a0b13;--accent-hover:#7f282b;--accent-lit:#8a262c;--accent-deep:#36050c}:root[data-theme=dark] .territory-bar{border-color:var(--field-edge)}:root[data-theme=dark] .game-card-stone.is-black{box-shadow:inset 0 0 0 1px var(--ink-soft)}:root[data-theme=dark] .stone-glyph[data-seat]{display:inline-block;width:.6em;height:.6em;overflow:hidden;border-radius:50%;color:transparent}:root[data-theme=dark] .stone-glyph[data-seat=black]{background:var(--stone-black);box-shadow:inset 0 0 0 1px var(--ink-soft)}:root[data-theme=dark] .stone-glyph[data-seat=white]{background:var(--stone-white)}:root[data-theme=dark] .stone-text-plain{display:none}:root[data-theme=dark] .stone-text-drawn{display:inline}}html.theme-switching *,html.theme-switching :after,html.theme-switching :before{transition:none!important}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-stack);font-size:var(--step-0);line-height:1.5}:where(a){color:var(--accent-text);text-decoration-thickness:1px;text-underline-offset:.15em;transition:color .12s ease,text-decoration-thickness .12s ease}:where(a:hover){color:var(--accent-text-hover);text-decoration-thickness:2px}:where(a:active){color:var(--accent-text-deep)}button{font:inherit}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden],[type=submit],[type=button]),select,textarea){font:inherit;color:var(--ink);border:1.5px solid var(--field-edge);border-radius:var(--radius);background-color:var(--field);box-shadow:var(--field-shadow)}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden],[type=submit],[type=button]),select,textarea):where(:hover:not(:disabled,:focus)){border-color:var(--field-edge-hover)}:where(input,select,textarea):where(:disabled){background-color:var(--bg);box-shadow:none;cursor:not-allowed}h1,h2,h3{font-family:var(--font-display-stack)}summary{cursor:pointer}:where(summary):hover{color:var(--accent-text-hover)}.site-shell{--nav-w:14rem;display:grid;grid-template-columns:var(--nav-w) minmax(0,1fr);min-height:100dvh}.site-nav{grid-column:1;grid-row:1}.site-main{grid-column:2;grid-row:1;min-width:0;container-type:inline-size;container-name:content}.site-main:focus{outline:none}.site-main:has(>.learn-map-page){height:100dvh;display:flex;flex-direction:column;overflow:hidden}.skip-link{position:fixed;top:.5rem;left:-100vw;z-index:60;padding:.5rem .9rem;border-radius:var(--radius);background:var(--accent);color:var(--accent-ink);font-size:var(--step--1);font-weight:700;text-decoration:none}.skip-link:focus-visible{left:.5rem;outline:2px solid var(--ink);outline-offset:2px}.site-nav{position:sticky;top:0;align-self:start;z-index:40;display:flex;flex-direction:column;height:100dvh;padding:1rem .75rem 1.25rem;border-right:1px solid var(--line);background:var(--nav-glass);box-shadow:1px 0 8px rgb(var(--shade-rgb)/.04)}.site-nav:not(:has(.learn-nudge)){overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.nav-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0 .25rem .5rem}.wordmark{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-width:2.75rem;min-height:2.75rem;margin-block:-.5rem;font-family:var(--font-display-stack);font-size:var(--step-1);font-weight:700;letter-spacing:-.02em;color:var(--accent-text);text-decoration:none}.brand-mark{flex:0 0 auto;width:1.75rem;height:1.75rem}.wordmark .brand-mark{transition:transform .12s ease,filter .12s ease}.wordmark:hover{color:var(--accent-text-hover)}.wordmark:hover .brand-mark{transform:translateY(var(--key-rise)) rotate(-6deg);filter:drop-shadow(0 2px 2px rgba(90,55,20,.3))}.wordmark:active,.wordmark:has(>.nav-pending[data-pending=true]){color:var(--accent-text-deep)}.wordmark:active .brand-mark,.wordmark:has(>.nav-pending[data-pending=true]) .brand-mark{transform:translateY(var(--key-sink));filter:none}.nav-icon{display:block;flex:0 0 auto}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0}.nav-tray{display:flex;flex-direction:column;gap:.4rem;padding:.4rem;border-radius:var(--radius-lg);background:var(--tray);box-shadow:inset 0 2px 4px rgb(var(--shade-rgb)/.1),inset 0 -1px 0 rgb(var(--glint-rgb)/.7)}.nav-primary{margin-top:.5rem}.nav-item{position:relative;display:flex;align-items:center;gap:.65rem;width:100%;min-height:2.75rem;padding:.45rem .75rem;font-size:var(--step--1);text-align:left;text-decoration:none}.nav-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-count{margin-left:auto;color:var(--ink-soft);font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nav-pending{position:absolute;inset-inline:.6rem;bottom:.3rem;height:2px;border-radius:1px;overflow:hidden;opacity:0;pointer-events:none}.nav-pending:after{content:"";position:absolute;inset-block:0;left:0;width:40%;border-radius:inherit;background:currentColor}.nav-pending[data-pending=true]{animation:nav-pending-in .15s ease .1s forwards}.nav-pending[data-pending=true]:after{animation:nav-pending-run 1.1s ease-in-out infinite}@keyframes nav-pending-in{to{opacity:.7}}@keyframes nav-pending-run{0%{transform:translateX(-100%)}to{transform:translateX(250%)}}@media (prefers-reduced-motion:reduce){.nav-pending[data-pending=true]{animation:none;opacity:.7}.nav-pending[data-pending=true]:after{animation:none;width:100%}}.nav-foot{margin-top:auto}.nav-slot{visibility:hidden;pointer-events:none}.nav-identity{display:flex;align-items:center;gap:.65rem;margin:0;padding:.3rem .75rem .1rem;color:var(--ink-soft);font-family:var(--font-display-stack);font-size:var(--step--1);font-weight:600}.nav-identity.is-member{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.65rem;row-gap:.2rem;overflow:hidden;margin-bottom:.15rem;padding:.45rem .5rem .45rem .75rem;border:1px solid #a8802c;border-radius:var(--radius);background:linear-gradient(135deg,#f8e8b4,#e6c473 38%,#f5dfa0 56%,#d9ae55);box-shadow:inset 0 1px 2px rgba(90,60,10,.25),inset 0 -1px 0 rgba(255,255,255,.6);color:var(--grid)}.nav-identity.is-member .nav-icon{grid-row:span 2;width:1.6rem;height:1.6rem;color:#5a0b13}.nav-identity.is-member:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%);transform:translateX(-110%);animation:nav-member-sheen 1.4s ease-in-out .4s both}.nav-identity.is-member:hover:after{animation-name:nav-member-sheen-again;animation-delay:0s}@keyframes nav-member-sheen{to{transform:translateX(110%)}}@keyframes nav-member-sheen-again{0%{transform:translateX(-110%)}to{transform:translateX(110%)}}@media (prefers-reduced-motion:reduce){.nav-identity.is-member:after{display:none}}.nav-member-tag{justify-self:start;padding:.15rem .5rem;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:.7rem;font-weight:700;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.nav-streaks{display:flex;flex-wrap:wrap;gap:.375rem;min-height:2.25rem}.nav-streaks.is-loading{min-height:4.4rem}.nav-streak-club{flex-basis:100%}.nav-streaks-more{flex-basis:100%;display:flex;gap:.375rem}.nav-streaks-more .nav-streak{padding:.25rem;font-size:.95rem}.nav-streaks-more .nav-streak .streak-icon{width:1.25rem;height:1.25rem}.nav-streak{flex:1 1;min-width:0;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.375rem;border-radius:.75rem;background:rgb(var(--glint-rgb)/.45);box-shadow:inset 0 1px 2px rgb(var(--shade-rgb)/.08);color:var(--ink);font-family:var(--font-display-stack);font-size:1.1rem;font-weight:800;line-height:1}.nav-streak .streak-icon{width:1.5rem;height:1.5rem;flex:none}.nav-streak.is-todo{background:transparent;box-shadow:none;outline:1.5px dashed var(--field-edge);outline-offset:-1.5px;color:var(--ink-soft)}.nav-streak.is-todo .streak-icon{filter:grayscale(1);opacity:.5}.nav-streak-n{display:inline-block;animation:nav-streak-roll .45s cubic-bezier(.2,1.6,.4,1) both}@keyframes nav-streak-roll{0%{transform:translateY(60%);opacity:0}}.nav-streaks-guest{margin:0;padding:.1rem .75rem .2rem;color:var(--ink-soft);font-size:var(--step--1)}@media (prefers-reduced-motion:reduce){.nav-streak-n{animation:none}}.nav-reviews-slot{position:relative;margin-top:auto}.nav-reviews-slot+.nav-foot{margin-top:.5rem}.nav-reviews-rows{display:flex;flex-direction:column;gap:.4rem;max-height:30dvh;margin:-.25rem;padding:.25rem;overflow-y:auto;list-style:none}.nav-reviews-item{display:flex;align-items:center;gap:.3rem}.review-row{display:flex;flex-direction:column;gap:.15rem;flex:1 1;min-width:0;padding:.4rem .6rem;font-size:var(--step--1)}.review-row-status,.review-row-title{overflow-wrap:anywhere}.review-row-status{color:var(--ink-soft)}.review-row-key{flex:none}.review-row .review-row-bar{flex:none;margin-top:.15rem}.nav-reviews-rail{display:none}.nav-reviews-count{position:absolute;top:.1rem;right:.1rem;min-width:1.1rem;padding:0 .25rem;border-radius:999px;background:var(--ink);color:var(--panel);font-size:.7rem;line-height:1.1rem;text-align:center}.nav-scrim{display:none}html.nav-collapsed .site-shell{--nav-w:3.75rem}html.nav-collapsed .site-nav{padding-inline:.5rem;scrollbar-width:none}html.nav-collapsed .site-nav::-webkit-scrollbar{display:none}html.nav-collapsed .nav-head{flex-direction:column;gap:.6rem;padding-inline:0}html.nav-collapsed .nav-identity,html.nav-collapsed .nav-reviews-rows,html.nav-collapsed .nav-text{display:none}html.nav-collapsed .nav-reviews-rail{display:flex}html.nav-collapsed .nav-tray{padding:.3rem}html.nav-collapsed .nav-streaks{flex-direction:column;flex-wrap:nowrap;gap:.25rem}html.nav-collapsed .nav-streaks-more{display:none}html.nav-collapsed .nav-streaks.is-loading{min-height:2.25rem}html.nav-collapsed .nav-streak{flex-direction:column;gap:.125rem;padding:.375rem 0 .3rem;font-size:.95rem}html.nav-collapsed .nav-streak .streak-icon{width:1.375rem;height:1.375rem}html.nav-collapsed .nav-item{justify-content:center;padding-inline:0}html.nav-collapsed .nav-scrim{display:none}@media (max-width:72rem){.site-shell{--nav-w:3.75rem}.site-nav{position:fixed;left:0;top:0;width:13.5rem;box-shadow:var(--shadow-raised)}html.nav-collapsed .site-nav{width:var(--nav-w);box-shadow:none}html:not(.nav-collapsed) .site-nav{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.nav-scrim{display:block;position:fixed;inset:0;z-index:35;border:0;background:var(--scrim);cursor:pointer}}.nav-learn-slot{position:relative}.learn-nudge{left:calc(100% + 1.5rem);top:0;bottom:0;height:fit-content;margin-block:auto;z-index:1;display:flex;align-items:center;gap:.4rem;padding:.4rem;border:1.5px solid var(--accent-text);border-radius:var(--radius);box-shadow:var(--shadow-raised);white-space:nowrap;animation:learn-nudge-in .5s ease-out both,learn-nudge-sway 2.8s ease-in-out .5s infinite}.learn-nudge,.learn-nudge:before{position:absolute;background:var(--panel)}.learn-nudge:before{content:"";left:-.4rem;top:50%;width:.7rem;height:.7rem;border-left:1.5px solid var(--accent-text);border-bottom:1.5px solid var(--accent-text);border-radius:0 0 0 2px;transform:translateY(-50%) rotate(45deg)}.learn-nudge-call{padding:.35rem .8rem;font-size:var(--step--1)}.learn-nudge-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:2rem;height:2rem;padding:0}.review-ready-text{margin:0;padding:.35rem 0 .35rem .6rem;font-size:var(--step--1);font-weight:600;color:var(--ink)}@keyframes learn-nudge-in{0%{opacity:0}}@keyframes learn-nudge-sway{0%,to{transform:translateX(.28rem)}50%{transform:translateX(-.28rem)}}@media (max-width:72rem){html:not(.nav-collapsed) .learn-nudge{display:none}}@media (prefers-reduced-motion:reduce){.learn-nudge{animation:none}}.game-meta{font-size:var(--step--1);color:var(--ink-soft)}.home-banner .logo-lockup-name{text-shadow:0 .037em 0 var(--accent-deep)}.home-banner .logo-lockup-o{box-shadow:0 .037em 0 var(--accent-deep)}.home-banner .logo-lockup-mark{filter:drop-shadow(0 .13em .13em rgba(54,5,12,.55))}.home-banner h1{margin:0;font-size:clamp(1.75rem,15cqi,3rem);line-height:1}@container content (min-width: 36rem){.home-banner h1{font-size:clamp(2rem,7.5cqi,3.5rem)}}.home-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;max-width:34rem;margin:0 auto;padding-block:2.5rem 4rem;padding-inline:1.25rem}.home-rail{gap:2.5rem}.home-rail,.senseis-card{display:flex;flex-direction:column}.senseis-card{--track:var(--track-tutorial);--track-text:var(--track-tutorial-text);gap:.5rem;height:23.25rem;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem 1.1rem;container:senseis-card/inline-size}.senseis-card-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:.5rem}.senseis-card h2{margin:0;font-size:var(--step-1);font-weight:600;color:var(--track-text)}.senseis-card-words{display:flex;flex-direction:column;gap:.15rem;min-width:0;line-height:1.3}.senseis-card-key{display:inline-flex;flex:none;align-items:center;justify-content:center;text-decoration:none}.climb-snapshot{--track:var(--track-tutorial);--track-text:var(--track-tutorial-text);position:relative;flex:none;align-self:center;width:min(100%,332px);height:200px;overflow:hidden;border-radius:12px}.climb-snapshot-land{position:absolute;top:0;left:50%;width:332px;height:200px;margin-left:-166px;overflow:hidden}.climb-snapshot-step{position:absolute;z-index:1;display:grid;place-items:center;width:28px;height:28px;margin:-14px 0 0 -14px;border:2px solid var(--ink);border-radius:50%;background:var(--panel);color:var(--ink);font-family:var(--font-display-stack);font-size:.7rem;font-weight:700;line-height:1}.climb-snapshot-step.is-done svg{width:14px;height:14px}.climb-snapshot-lock{position:absolute;right:-4px;bottom:-4px;display:grid;place-items:center;width:13px;height:13px;border:1.5px solid var(--bg);border-radius:50%;background:var(--locked);color:var(--accent-ink)}.climb-snapshot .climb-oggo{top:-12px;width:22px;margin:0}.climb-snapshot .climb-oggo.is-left{left:-30px;margin:0}.climb-snapshot .climb-oggo.is-right{left:32px;margin:0}@container content (min-width: 64rem){.home-grid{grid-template-columns:minmax(0,34rem) minmax(0,24rem);max-width:62rem}}.daily-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.1rem 1.1rem 1.2rem;min-height:12rem}.daily-panel-top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.daily-panel h2{margin:0;font-size:var(--step-1);font-weight:600}.daily-panel-streak{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;white-space:nowrap}.daily-panel-streak .streak-icon{width:1.5rem;height:1.5rem}.daily-panel-streak.is-todo .streak-icon{filter:grayscale(1);opacity:.45}.daily-panel-body{display:grid;grid-template-columns:9.5rem minmax(0,1fr);gap:.9rem;align-items:start;margin-top:.6rem}.climb-rail .daily-panel-body,.home-rail .daily-panel-body{grid-template-columns:7.5rem minmax(0,1fr)}.daily-panel-board{position:relative}.daily-panel-board .problem-thumb{aspect-ratio:auto;border-radius:.6rem}.daily-panel-stamp{position:absolute;top:.5rem;left:.4rem;transform:rotate(-8deg);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text);border:3px solid var(--accent-text);border-radius:.6rem;padding:2px 7px;background:var(--glass);font-size:var(--step--1)}.daily-panel-task{margin:0 0 .15rem;font-weight:700}.daily-panel-src{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.daily-panel-key{display:flex;align-items:center;justify-content:center;text-decoration:none}.daily-panel-keys{grid-column:1/-1;display:flex;gap:.6rem}.daily-panel-keys>*{flex:1 1;white-space:nowrap}.daily-panel .section-hint{grid-column:1/-1;margin:0}@container content (max-width: 25rem){.daily-panel-body{grid-template-columns:7rem minmax(0,1fr)}}.daily-panel-rail{display:none}@container content (min-width: 64rem){.daily-panel-rail{display:block}.daily-panel-play{display:none}}.due-card{display:flex;flex-direction:column;gap:.35rem;height:12rem;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem 1.1rem}.due-card h2{margin:0;font-size:var(--step-1);font-weight:600}.due-card-count{margin:0;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.due-card-words{margin:0;font-size:var(--step--1);line-height:1.35;color:var(--ink-soft);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.due-card-foot{margin-top:auto;display:flex;justify-content:flex-end;min-height:2.75rem}.deck-page{max-width:64rem;margin:0 auto;padding-block:1.5rem;padding-inline:1rem}.deck-card{display:grid;grid-template-columns:minmax(0,40rem) minmax(16rem,22rem);gap:1.25rem;align-items:start;justify-content:center}.deck-board{width:min(100%,calc(100dvh - 5rem),40rem);aspect-ratio:1}.deck-board-empty{width:100%;height:100%;border-radius:var(--radius);background:var(--board)}.deck-side{display:flex;flex-direction:column;gap:.75rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-ambient);padding:.85rem}.deck-to-play{display:flex;align-items:center;gap:.6rem;margin:0;font-family:var(--font-display-stack);font-size:var(--step-4);font-weight:600;line-height:1.1}.deck-to-play .deck-stone{width:1.6rem;height:1.6rem}.deck-verdict{display:flex;align-items:baseline;gap:.6rem;margin:0;font-family:var(--font-display-stack);font-weight:600}.deck-from{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0;color:var(--ink-soft);font-size:var(--step-0)}.deck-stone{display:inline-block;flex:none;width:1.1rem;height:1.1rem;border-radius:50%}.deck-stone-black{background:radial-gradient(circle at 35% 30%,#5a5a5a 0,var(--stone-black) 60%)}.deck-stone-white{background:radial-gradient(circle at 35% 30%,#fff 0,var(--stone-white) 55%,#d8d4cc 100%);box-shadow:inset 0 0 0 1px rgba(0,0,0,.35)}.deck-move,.deck-moves-head{display:grid;grid-template-columns:1.4rem 1fr 3.5rem 4.5rem;align-items:center;gap:.5rem}.deck-moves-head>:first-child{grid-column:1/3}.deck-moves-head>:last-child{grid-column:3/5;text-align:right}.deck-move{min-height:3rem;padding:.45rem .75rem;text-align:left;font-size:var(--step-1)}.deck-move-loss{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.deck-step{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem}.deck-step-count{min-width:3.5rem;text-align:center;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.deck-keys{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.5rem}.deck-keys>*{justify-content:center;text-align:center}.deck-status{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;max-width:34rem;margin:2rem auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem 1.1rem}@media (max-width:48rem){.deck-card{grid-template-columns:minmax(0,1fr);justify-items:center}.deck-board{width:min(100%,calc(100dvh - 25rem))}.deck-side{width:100%;gap:.5rem;padding:.6rem}}.tour-section h2,.tour-upcoming h2{margin:0 0 .25rem;font-size:var(--step-1);font-weight:600}.tour-list,.tour-mini-list{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.tour-mini-row,.tour-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;padding:.6rem .9rem}.tour-mini-name,.tour-row-name{font-weight:600;flex:1 1 auto}.tour-mini-meta,.tour-mini-when,.tour-row-meta,.tour-row-status,.tour-row-when{font-size:var(--step--1);color:var(--ink-soft)}.tour-mini-meta{flex-basis:100%}.landing{max-width:34rem;margin:0 auto;padding:4rem 1.25rem}.landing h1{font-size:var(--step-4);font-weight:600;margin:0 0 .5rem}.landing .tagline{margin:0 0 2rem;max-width:65ch}.landing .hint,.landing .tagline{color:var(--ink-soft)}.landing .page-error-detail{color:var(--ink-soft);font-size:var(--step--1);margin:-1.25rem 0 2rem;overflow-wrap:anywhere}.size-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--choice-min,4rem)),1fr));grid-auto-rows:1fr;gap:.5rem;margin-bottom:1rem}.size-choice{min-height:2.75rem;padding:.5rem .75rem;justify-content:center;text-align:center}.size-row:has(>.bot-choice){grid-template-columns:repeat(2,minmax(0,1fr))}.bot-choice>.size-choice{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding-inline:.5rem}.unlock-tooltip{position:absolute;top:calc(100% + .4rem);left:50%;transform:translateX(-50%);z-index:2;width:max-content;max-width:min(15rem,70vw);padding:.35rem .6rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--panel-high);box-shadow:var(--shadow-raised);font-size:var(--step--1);color:var(--ink);text-align:center;opacity:0;pointer-events:none;transition:opacity .12s ease-out}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.play-button{display:inline-block;padding:.65rem 1.75rem;font-size:var(--step-1)}.seat-cards{margin-top:2rem;display:grid;gap:.75rem}.seat-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.seat-card-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.link-fallback{width:100%;padding:.4rem .6rem;border-radius:var(--radius);color:var(--ink);font:inherit;font-size:var(--step--1)}.link-fallback:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.seat-card .seat-name{font-weight:600}.seat-card .hint{font-size:var(--step--1);color:var(--ink-soft)}.copy-button,.enter-link{white-space:nowrap}.form-error{margin-top:1rem;color:var(--accent-text)}.tour-room{max-width:64rem}.tour-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;align-items:stretch}.tour-card h2{margin:0 0 .75rem;font-size:var(--step-1);font-weight:600}.tour-hero{grid-column:span 8}.tour-field{grid-column:span 4;display:flex;flex-direction:column}.tour-fact{grid-column:span 3}.tour-chat,.tour-schedule{grid-column:span 6}@container content (max-width: 47.99rem){.tour-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.tour-chat,.tour-field,.tour-hero,.tour-schedule{grid-column:1/-1}.tour-fact{grid-column:span 1}}@container content (max-width: 20.99rem){.tour-fact{grid-column:1/-1}}.tour-hero h1{margin:0;font-family:var(--font-display-stack);font-size:clamp(2rem,6cqi,3.2rem);line-height:1.05;text-wrap:balance;color:var(--accent-ink)}.tour-eyebrow{margin:0;font-size:var(--step--1);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.tour-hero :is(.section-hint,.form-error,.tour-status){margin:0;color:var(--accent-ink)}.tour-countdown-cell{display:flex;flex-direction:column;align-items:center;min-width:4.25rem;padding:.55rem .8rem;border-radius:var(--radius);background:rgba(0,0,0,.22)}.tour-hero .tour-entry .section-hint{flex-basis:100%}.tour-entry-key{min-height:3.25rem;padding-inline:1.75rem;font-size:var(--step-1)}.tour-fact-icon{width:3.25rem;height:3.25rem;margin-bottom:.25rem}.tour-seats-bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent-text)}.tour-timeline li:last-child{padding-bottom:0}.tour-timeline-dot{width:.8rem;height:.8rem;margin-top:.35rem;border:2px solid var(--accent-text);border-radius:50%;background:var(--panel)}.tour-schedule-day{margin:-.5rem 0 1rem}.tour-play-link{text-decoration:none}.tour-bracket-section h2,.tour-chat h2,.tour-field h2,.tour-ranks h2,.tour-standings h2{margin:0 0 .75rem;font-size:var(--step-1);font-weight:600}.bracket{container-type:inline-size;container-name:bracket}.bracket-check{width:1ch;color:var(--ink-soft)}.bracket-note{font-size:var(--step--1);color:var(--ink-soft)}.tour-ranks li[data-mine]{font-weight:600}.swiss-table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.swiss-table td,.swiss-table th{padding:.4rem .6rem;text-align:left;border-bottom:1px solid var(--line)}.swiss-table td:not(:nth-child(2)),.swiss-table th:not(:nth-child(2)){text-align:right;width:1%;white-space:nowrap}.swiss-table th{font-size:var(--step--1);font-weight:600;color:var(--ink-soft)}:is(.tour-arena-table,.points-table) tbody th{font-size:inherit;font-weight:400;color:var(--ink)}:is(.tour-arena-table,.points-table) tr[data-mine]{background:var(--panel-high)}.tour-arena-sub,.tour-upcoming-more{margin:1.25rem 0 .25rem;font-size:var(--step-0);font-weight:600}.tour-week-slot{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;padding:.6rem .9rem;border:1px dashed var(--line);border-radius:var(--radius)}.tour-points-link{display:inline-block;margin-top:1rem}.points-table{margin-top:1.5rem}.points-me{margin-top:1rem}.points-me,.tour-place,.tour-seed{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tour-place,.tour-seed{min-width:2.5ch;color:var(--ink-soft)}.tour-chat-form input{flex:1 1 12rem;min-width:0;padding:.5rem .75rem;border-radius:var(--radius);color:var(--ink)}.mode-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.mode-choice{flex:1 1;min-width:max-content;min-height:2.75rem;padding:.65rem .75rem}.field-group{margin-bottom:.25rem}.field-label{margin:0 0 .4rem;font-size:var(--step--1);font-weight:600;color:var(--ink-soft);letter-spacing:.02em}.queue-headline{margin:0;font-size:var(--step-1);font-weight:600}.queue-detail{margin:.35rem 0 1rem;font-size:var(--step--1);color:var(--ink-soft)}.queue-elapsed{color:var(--ink);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.corr-chip{display:inline-block;padding:0 .45em;border:1px solid var(--line-strong);border-radius:999px;font-size:var(--step--1);line-height:1.5;color:var(--ink);white-space:nowrap}.corr-chips{margin:0 0 .6rem}.corr-chips-hint{font-size:var(--step--1);color:var(--ink-soft)}.custom-game{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.custom-game h2{margin:0 0 .25rem;font-size:var(--step-1);font-weight:600}.field-check,.section-hint{margin:0 0 1rem;font-size:var(--step--1);color:var(--ink-soft)}.field-check{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer}.field-check input{margin-top:.2rem}.form-notice{margin:0 0 1rem;padding:.6rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);font-size:var(--step--1);color:var(--ink-soft)}.games-page{max-width:60rem}.games-list{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,12rem),1fr));gap:1rem}@media (min-width:64rem){.games-list{grid-template-columns:repeat(4,minmax(0,1fr))}}.games-now{display:grid;gap:1rem;min-width:0;margin:1.5rem 0 0}.games-all-heading{margin:2rem 0 0;font-size:var(--step-1)}.game-row{display:flex;align-items:baseline;gap:.75rem;padding:.65rem .9rem}.game-row-date,.game-row-rated,.game-row-status{font-size:var(--step--1);color:var(--ink-soft);white-space:nowrap}.game-row-rated{flex:none;padding:0 .35rem;border:1px solid var(--line);border-radius:var(--radius)}.games-list>li{display:flex;flex-direction:column;gap:.5rem}.game-card{flex:1 1;flex-direction:column;align-items:stretch;gap:.7rem;padding:.7rem}.game-card .board-thumb{width:70%;align-self:center}.game-card-body{display:flex;flex-direction:column;gap:.5rem;min-width:0}@media (max-width:29.99rem){.game-card{flex-direction:row;align-items:center}.game-card .board-thumb{flex:none;width:5.5rem}.game-card-body{flex:1 1}}.game-card-players{display:flex;flex-direction:column;gap:.2rem}.game-card-player{display:flex;align-items:center;gap:.45rem;min-width:0}.game-card-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card-player[data-subject] .game-card-name{font-weight:700}.game-card-stone{flex:none;width:.8em;height:.8em;border-radius:50%}.game-card-stone.is-black{background:var(--stone-black)}.game-card-stone.is-white{background:var(--stone-white);box-shadow:inset 0 0 0 1px rgba(20,20,20,.45)}.game-card-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem}.game-card-placeholder{display:flex;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.game-card-bar{display:block;height:.8em;width:70%;border-radius:.4em;background:var(--line)}.game-card-bar.is-short{width:45%}.frame-placeholder{display:contents}body :is(.frame-placeholder,[data-frame]:not(.board-frame)) :is(.size-choice,.mode-choice,.play-button,.action-primary,.action-quiet,.action-go,.action-club,.enter-link,.quiet-link,.blitz-tab,.blitz-key,.collections-tab){color:transparent;border-color:var(--line);background:var(--line);box-shadow:none;transform:none;cursor:default;pointer-events:none}body .row-placeholder{border-color:var(--line);background:var(--panel);box-shadow:none;transform:none;cursor:default;pointer-events:none}.text-bar{color:transparent;border-radius:.4em;background:var(--line)}.slot-retry{flex-wrap:wrap;gap:.35rem .75rem;margin:.75rem 0 0;font-size:var(--step--1);color:var(--ink-soft)}.games-pager,.slot-retry{display:flex;align-items:center}.games-pager{justify-content:space-between;gap:1rem;margin-top:1.5rem}.games-pager-page{font-size:var(--step--1);color:var(--ink-soft)}.board-thumb{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:calc(var(--radius) - 2px);box-shadow:inset 0 0 0 1px rgba(60,35,10,.2)}.board-thumb-wood{fill:var(--board)}.board-thumb-lines line{stroke:rgba(60,35,10,.55);stroke-width:1;vector-effect:non-scaling-stroke}.board-thumb-star{fill:rgba(60,35,10,.7)}.board-thumb-black{fill:var(--stone-black)}.board-thumb-white{fill:var(--stone-white);stroke:rgba(20,20,20,.45);stroke-width:.75;vector-effect:non-scaling-stroke}.board-thumb-last-on-black{stroke:var(--stone-white)}.board-thumb-last-on-white{stroke:var(--stone-black)}.section-heading{margin:1.5rem 0 .25rem}.featured-game h2,.section-heading{font-size:var(--step-1);font-weight:600}.featured-game h2{margin:0 0 .75rem}.featured-card,.featured-empty{display:flex;flex-direction:column;align-items:stretch;gap:.7rem;padding:.7rem}.featured-empty .section-hint{margin:0;text-align:center}.featured-board{display:block;align-self:center;width:min(100%,280px);aspect-ratio:1}.live-list{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.live-row{gap:.75rem;padding:.6rem .9rem}.live-row,.live-row-players{display:flex;align-items:baseline}.live-row-players{flex:1 1;min-width:0;gap:.35rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.bot-badge,.live-row-meta,.live-row-started{flex:none;font-size:var(--step--1);color:var(--ink-soft);white-space:nowrap}.bot-badge{padding:0 .35rem;border:1px solid var(--line);border-radius:var(--radius);font-weight:700;letter-spacing:.02em}.signin-page{max-width:26rem}.signin-overlay{width:min(26rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);overflow:hidden;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-raised)}.signin-overlay::backdrop{background:var(--scrim)}.signin-overlay:not(:modal){position:fixed;inset:0;z-index:55;box-shadow:var(--shadow-raised),0 0 0 100vmax var(--scrim)}.signin-overlay-card h2{margin:0 0 1rem;padding-right:3rem;font-size:var(--step-1)}.signin-overlay-close{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:0;font-size:1.25rem;line-height:1}.mode-row{margin-bottom:1.5rem}.signin-form{gap:.9rem}.form-field,.signin-form{display:flex;flex-direction:column}.form-field{gap:.3rem;font-size:var(--step--1);color:var(--ink-soft)}.form-field input{font:inherit;font-size:var(--step-0);color:var(--ink);padding:.5rem .7rem;border-radius:var(--radius)}.form-field input:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.signin-form .play-button{align-self:flex-start}.provider-block{gap:1rem;margin-bottom:1rem}.provider-block,.provider-buttons{display:flex;flex-direction:column}.provider-buttons{gap:.75rem;max-width:400px}.provider-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 12px;border-radius:22px;font-size:16px;line-height:20px;letter-spacing:.25px;cursor:pointer}.provider-button:disabled{cursor:default;opacity:.6}.provider-button:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.provider-logo{flex:none}.provider-apple{background:var(--apple-fill);color:var(--apple-ink);border:1px solid var(--apple-fill);font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:500}.provider-google{background:var(--google-fill);color:var(--google-ink);border:1px solid var(--google-edge);font-family:var(--font-google),Arial,sans-serif;font-weight:500}.provider-button:not(:disabled):hover{box-shadow:inset 0 0 0 100px color-mix(in srgb,currentColor 8%,transparent)}.provider-or{display:flex;align-items:center;gap:.75rem;max-width:400px;margin:0;color:var(--ink-soft);font-size:var(--step--1)}.provider-or:after,.provider-or:before{content:"";flex:1 1;border-top:1px solid var(--line)}.signin-aside{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.signin-terms{margin:1.25rem 0 0;font-size:var(--step--1);color:var(--ink-soft)}.signin-terms a{color:var(--accent-text)}.check-inbox{display:flex;flex-direction:column;gap:.75rem}.check-inbox h2,.check-inbox p{margin:0}.check-inbox-spam{font-size:var(--step-0);color:var(--ink)}.profile-page{max-width:56rem;margin:0 auto;padding:2rem 16px 3rem}.profile-tiles{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}@media (min-width:40rem){.profile-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-tile-wide{grid-column:1/-1}}.profile-tile{display:flex;flex-direction:column;gap:.6rem;min-width:0;padding:1.25rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-ambient)}.profile-tile h1,.profile-tile h2,.profile-tile p{margin:0}.profile-tile h2{font-size:var(--step-1)}.profile-tile section[aria-labelledby]>h2{margin-bottom:.4rem}.profile-tile .section-hint{margin:0}.profile-tile-foot{margin-top:auto;padding-top:.25rem}.account-delete-confirm{display:flex;flex-direction:column;gap:.5rem}.account-delete-confirm p,.account-delete-confirm ul{margin:0}.account-delete-confirm ul{padding-left:1.25rem}.account-delete-keys{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.25rem}.account-delete-here{margin-top:2rem}.friend-search{display:grid;gap:.5rem;min-width:0}.friend-search .field-label{margin:0}.friend-search input{width:100%;max-width:30rem;min-width:0;appearance:none;font:inherit;font-size:var(--step-0);color:var(--ink);padding:.5rem .7rem;border-radius:var(--radius)}.friend-search input:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.friends-hint{margin:0;color:var(--ink-soft)}.friend-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.friend-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;min-width:0}.friend-row-placeholder{min-height:2rem}.friend-key:focus-visible,.friends-page h2[tabindex="-1"]:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.friend-key{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.friend-row>.friend-key{margin-inline-start:auto}.friend-key .form-error,.player-safety>[role=status]{flex-basis:100%;margin:0}.player-safety>[role=status]:empty{display:none}.friend-status{color:var(--ink-soft)}.friend-status+.quiet-link{margin-inline-start:auto}.friend-more[open]{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.friend-more>.disclosure-key{min-height:2.75rem;padding:.5rem 1.1rem;font-size:var(--step-0)}.profile-page h1{overflow-wrap:anywhere}.player-page{max-width:60rem}.player-games{margin-top:2rem}.club-page{max-width:62rem;margin:0 auto;padding:2rem 16px 3rem}.club-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;align-items:center;margin-bottom:1.5rem}.club-hero h1{margin:.6rem 0;font-size:var(--step-4);line-height:1.1}.club-promise{max-width:46ch;margin:0;font-size:var(--step-1);color:var(--ink-soft)}.club-chip .nav-icon{width:1.1rem;height:1.1rem;color:#5a0b13}.club-oggo{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem .5rem}.club-oggo-bubble{max-width:22rem;padding-right:1rem}.club-oggo-figure{display:block;width:6rem;overflow:visible}.club-oggo-figure .oggo-drawing-winged{display:block;width:100%;height:auto;overflow:visible}@media (min-width:52rem){.club-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:2.5rem;margin-bottom:2rem}.club-oggo-figure{width:11rem}}.club-plans .size-row{--choice-min:11.5rem;gap:1rem .75rem}.club-plans .choice-field .size-choice{flex-direction:column;align-items:flex-start;gap:.15rem;min-width:11.5rem;padding:.9rem 1.15rem}.club-subscribe .action-primary{min-width:14rem;min-height:3rem;font-size:var(--step-1)}.club-trust{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;width:100%;margin:0;padding:1rem 0 0;border-top:1px solid var(--line);list-style:none}.club-compare-section h2{margin:0 0 .75rem;font-size:var(--step-2)}.club-compare{width:100%;overflow:hidden;border:1px solid var(--line);border-collapse:separate;border-spacing:0;border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-ambient)}.club-compare .club-compare-club .nav-icon{display:inline-block;width:1rem;height:1rem;margin-right:.35rem;vertical-align:-.15rem;color:#5a0b13}.club-restore{max-width:34rem}.player-games>h2{margin:0}.profile-tile .form-field select{font:inherit;font-size:var(--step-0);color:var(--ink);padding:.5rem .7rem;border-radius:var(--radius)}.profile-tile .form-field select:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.profile-figure{display:flex;align-items:baseline;flex-wrap:wrap;gap:.6rem;margin:0;font-size:var(--step-4);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.elo-chart svg,.insights-trend svg{display:block;width:100%;height:auto;overflow:visible}.insights-results,.insights-table table{margin-top:.5rem;width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.insights-list>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:.3rem}.profile-chapters{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.3rem 2rem;margin:.25rem 0 0;padding:0;list-style:none}.profile-chapters li[data-complete]{font-weight:600}.form-saved{margin:0;color:var(--ink-soft)}.profile-readonly{font-size:var(--step-0);color:var(--ink);overflow-wrap:anywhere}.streak-tile-count .streak-icon{width:2.1rem;height:2.1rem;flex:none}.streak-tile-day{display:flex;flex-direction:column;align-items:center;gap:.125rem;width:1.5rem;font-size:.68rem;color:var(--ink-soft)}.streak-tile-day .streak-icon{width:1.25rem;height:1.25rem}.streak-tile-day:not(.is-lit) .streak-icon{filter:grayscale(1);opacity:.3}.streak-medal{position:relative;display:grid;place-items:center;width:var(--s);height:var(--s);border-radius:50%;background:conic-gradient(from 210deg,var(--m1),var(--m2),var(--m1),var(--m2),var(--m1));box-shadow:0 3px 0 var(--m3),0 6px 14px rgb(var(--shade-rgb)/.18)}.streak-medal .streak-icon{position:relative;width:42%;height:42%;margin-top:-14%}.game-page{--board-chrome:10.25rem;--board-side:max(17rem,min(46rem,calc(100svh - var(--review-board-chrome, var(--board-chrome)))));display:grid;grid-template-columns:17rem minmax(0,1fr) 21rem;align-items:start;gap:1.5rem;padding:1.5rem 1.25rem;max-width:100rem;margin:0 auto}html:has(.game-page){scrollbar-gutter:stable}.tutor-bots{grid-template-columns:minmax(0,1fr)}.game-page.is-tutor .clock-block{display:none}.tutor-panel,.tutor-sheet{display:flex;flex-direction:column;gap:.75rem}.game-page .board-verdict{max-width:var(--board-side);margin:0 auto}@media (prefers-reduced-motion:no-preference){.game-page .board-verdict{transition:outline-color .2s ease}}@media (min-width:60.01rem) and (max-width:94rem){.game-page{grid-template-columns:minmax(0,1fr) clamp(15rem,34%,21rem);grid-template-rows:auto minmax(10rem,1fr);grid-template-areas:"board left" "board right"}.game-page>.board-wrap{grid-area:board}.game-page>.game-left{grid-area:left}.game-page>.game-right{grid-area:right}.game-page:not(.is-tutor){row-gap:.75rem}.game-page:not(.is-tutor,.is-review)>.game-right{align-self:stretch;contain:size}.game-page:not(.is-tutor,.is-review)>.game-right>.chat{position:static;flex:1 1 auto;min-height:0;max-height:none}.game-page:not(.is-tutor,.is-review)>.game-right .chat-log{min-height:0}}@media (max-width:60rem){.game-page{grid-template-columns:minmax(0,1fr)}.board-wrap{order:-1}.game-right{grid-column:auto}.game-page:not(.is-tutor){--board-chrome:22.5rem;--flash-gap:0.5rem;gap:.5rem;padding:.5rem}.game-page:not(.is-tutor) .game-left{gap:.5rem}.game-page:not(.is-tutor) .territory-scaffold{flex-wrap:nowrap;margin-top:.5rem}.game-page:not(.is-tutor) .territory-meter{flex-basis:6rem}.game-page:not(.is-tutor) .player-card{gap:.25rem;padding:.4rem .75rem}.game-page:not(.is-tutor) .player-card .panel-actions{margin-top:0}.game-page:not(.is-tutor) .clock-block{flex-direction:row;align-items:baseline;justify-content:space-between;gap:.75rem;padding-top:.3rem}.game-page:not(.is-tutor) .clock{display:flex;align-items:baseline;gap:.4rem}.game-page:not(.is-tutor) .clock-main{font-size:var(--step-2)}.game-page:not(.is-tutor,.is-review)>.game-right{display:contents}.game-page:not(.is-tutor,.is-review)>.game-right>.chat:not([data-open]){display:none}.game-page:not(.is-tutor,.is-review)>.game-right>.chat[data-open]{position:fixed;top:auto;left:var(--nav-w,3.75rem);right:0;bottom:0;z-index:30;max-height:min(30rem,60svh);padding-bottom:calc(.9rem + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-raised)}.game-page:not(.is-tutor,.is-review)>.game-right>.chat[data-open] .chat-log{min-height:6rem}.game-page:not(.is-tutor,.is-review) .board-wrap>.chat-key,.game-page:not(.is-tutor,.is-review) .chat-head>.chat-close{display:inline-flex}.game-page:not(.is-tutor,.is-review) .board-wrap>.chat-key{position:absolute;top:var(--flash-gap);right:0;z-index:1}.game-page:not(.is-tutor,.is-review) .board-wrap:has(>.chat-key)>.reject-flash{padding-right:7.5rem}}.board-wrap>.chat-key,.chat-head>.chat-close{display:none}@media (min-width:46.01rem) and (max-width:94rem){.game-page.is-tutor{grid-template-columns:minmax(0,1fr) clamp(15rem,34%,21rem);grid-template-rows:auto 1fr;grid-template-areas:"board left" "board right"}.game-page.is-tutor .board-wrap{grid-area:board}.game-page.is-tutor .game-left{grid-area:left}.game-page.is-tutor .game-right{grid-area:right}}.board-wrap{align-self:start;position:relative}.board-wrap:before{content:"";position:absolute;inset:12% 6% -2%;background:radial-gradient(closest-side,rgba(140,106,83,.28),transparent 72%);filter:blur(28px);pointer-events:none}.board-svg{position:relative;display:block;width:100%;height:auto;max-width:46rem;margin:0 auto;border-radius:var(--radius);box-shadow:0 24px 48px -16px rgba(60,16,20,.35),0 4px 12px rgb(var(--shade-rgb)/.12);touch-action:manipulation}.game-page .board-svg{max-width:var(--board-side)}.board-svg .coord-label{font-family:var(--font-stack);fill:var(--ink-soft)}.board-svg[data-interactive]{cursor:pointer}.board-svg .hit-target{outline:none}.board-svg .hit-target:focus-visible{fill:rgba(125,42,53,.15);stroke:var(--accent);stroke-width:.05}.game-left,.game-right{display:flex;flex-direction:column;gap:1rem;min-width:0}.player-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem;display:flex;flex-direction:column;gap:.6rem;box-shadow:var(--shadow-ambient);transition:box-shadow .2s ease}.player-card.is-you{background:var(--panel-high)}.player-card-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.player-actions{display:flex;justify-content:flex-end}.player-id{display:flex;align-items:center;gap:.5rem;min-width:0}.player-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-id .player-name-link{min-width:0;max-width:100%;font-size:inherit}.player-rank{color:var(--ink-soft)}.player-rank,.rank-chip{flex:none;font-size:var(--step--1);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rank-chip{display:inline-block;padding:0 .4em;border:1px solid var(--line-strong);border-radius:999px;line-height:1.5;color:var(--ink);white-space:nowrap}.pn{display:inline-flex;align-items:center;gap:.4rem;max-width:100%}.pn,.pn>.player-name-link,.pn>[class$=-name]{min-width:0}.pn>.player-name-link{font-size:inherit}.pn-card{gap:.5rem}.pn-lines{flex-direction:column}.pn-line,.pn-lines{display:flex;min-width:0}.pn-line{align-items:center;gap:.4rem}.pn-line+.pn-line{flex-wrap:wrap;align-content:flex-start;height:calc(var(--step--1) * 1.5 + 2px);overflow:hidden}.pn-line+.pn-line>.flag{order:1}.player-card:not(.is-you) .pn-line:first-child{min-height:2rem}@media (max-height:41.99rem),(max-width:60rem){.pn-card,.pn-card .pn-line,.pn-card .pn-lines{display:contents}.pn-card .flag,.pn-card>.avatar{display:none}}@media (max-height:50.99rem){.is-review .pn-card,.is-review .pn-card .pn-line,.is-review .pn-card .pn-lines{display:contents}.is-review .pn-card .flag,.is-review .pn-card>.avatar{display:none}}@media (max-height:51.99rem),(max-width:94rem) and (max-height:63.99rem){.has-coach .pn-card,.has-coach .pn-card .pn-line,.has-coach .pn-card .pn-lines{display:contents}}.bracket-seat>.pn,.live-row-players>.pn,.tour-field-list .pn,.tour-standings-list .pn{align-items:baseline}.bracket-seat>.pn>:is(.avatar,.flag),.live-row-players>.pn>:is(.avatar,.flag),.tour-field-list .pn>:is(.avatar,.flag),.tour-standings-list .pn>:is(.avatar,.flag){align-self:center}.avatar{flex:none;display:inline-grid;place-items:center;border-radius:50%;object-fit:cover;background:var(--panel-high);border:1px solid var(--line-strong);color:var(--ink);font-family:var(--font-display-stack);font-weight:600;line-height:1}.avatar-sm{width:24px;height:24px;font-size:.8rem}.avatar-md{width:40px;height:40px;font-size:var(--step-1)}.avatar-lg{width:96px;height:96px;font-size:var(--step-4)}.avatar-pending{background:var(--line);border-color:var(--line)}.flag{flex:none;width:20px;height:15px;border-radius:2px;box-shadow:0 0 0 1px var(--line-strong);object-fit:cover}.seat-dot{flex:none;font-size:var(--step-1);line-height:1}.stone-text-drawn{display:none}.clock-block{display:flex;flex-direction:column;gap:.1rem;padding-top:.6rem;border-top:1px solid var(--line)}.clock-label{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.clock{text-align:left}.clock-main{font-size:var(--step-4);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.1}.player-card.to-move .clock-main{color:var(--accent-text)}.clock-sub{font-size:var(--step--1);color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.clock-block:has(.clock.urgent) .clock-label{color:var(--flare-text)}.clock.urgent .clock-main{color:var(--flare-text);font-weight:700;animation:clock-pulse 1s ease-in-out infinite}@keyframes clock-pulse{50%{transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.clock.urgent .clock-main{animation:none}}.clock .flag-label{color:var(--flare-text);font-weight:700}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:.9rem 1rem;box-shadow:var(--shadow-ambient)}.panel h2{font-size:var(--step-0);margin:0 0 .5rem}.status-line{font-size:var(--step--1);color:var(--ink-soft)}.panel-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.action-primary,.action-quiet{min-height:2.75rem;padding:.5rem 1.1rem}.rating-lines{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.25rem}.rating-who{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rating-line>.pn{flex:1 1}.rating-change{flex:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.reject-flash{color:var(--accent-text);font-size:var(--step--1);line-height:1.4;min-height:1.4em}.board-wrap>.reject-flash{display:flex;flex-wrap:wrap;align-items:center;align-content:flex-end;gap:.25rem .75rem;height:2rem;margin:var(--flash-gap,.875rem) 0}.engine-badge{margin:-.25rem 0 0}.engine-badge-error{color:var(--accent-text)}.game-page.is-review{grid-template-rows:auto minmax(0,1fr);grid-template-areas:"left board rail" "score board rail"}.game-page.is-review.has-coach{grid-template-rows:auto auto minmax(0,1fr);grid-template-areas:"left board rail" "score board rail" "moment board rail"}.game-page.is-review>.game-left{grid-area:left}.game-page.is-review>.board-wrap{grid-area:board}.game-page.is-review>.review-score{grid-area:score}.game-page.is-review>.review-moment{grid-area:moment}.game-page.is-review>.review-rail{grid-area:rail}.game-page.is-review>.review-tabs{display:none}.review-players{flex-direction:row}.review-players>.player-card{flex:1 1;min-width:0;padding:.5rem .625rem;gap:.25rem}.review-players .player-id{flex-wrap:wrap;row-gap:.125rem}@container review-seat (max-width: 9.5rem){.pn-card>.avatar{display:none}}.review-score{display:flex;flex-direction:column;gap:.6rem;min-width:0}.review-score>.result-banner{flex:none}.game-page.is-review:not(.has-coach)>.review-score,.game-page.is-review>:is(.review-moment,.review-rail){align-self:stretch;contain:size;min-height:0}.review-moment{overflow-y:auto;overscroll-behavior:contain;min-width:0}.review-rail{gap:.75rem;min-width:0}.review-rail,.review-rail-tree{display:flex;flex-direction:column}.review-rail-tree{flex:1 1 8rem;min-block-size:8rem}.review-rail-tree>.line-tree{flex:1 1 auto;background:var(--plot);border:1px solid var(--line);border-radius:var(--radius)}.review-rail-card{display:flex;flex-direction:column;flex:0 1 auto;max-block-size:65%;min-block-size:0}.review-rail-card>.position-card{flex:1 1 auto;overflow-y:auto}.review-tabs>[role=tab][aria-selected=true]{border-color:var(--key-cream-edge);background:linear-gradient(180deg,var(--key-cream-pressed) 0,var(--panel-high) 100%);color:var(--accent-text);transform:none;box-shadow:inset 0 1px 3px rgb(var(--shade-rgb)/.18),inset 0 -1px 0 rgb(var(--glint-rgb)/.6)}@media (min-width:60.01rem) and (max-width:94rem){.game-page.is-review,.game-page.is-review.has-coach{block-size:calc(var(--board-side) + var(--board-chrome));grid-template-rows:auto minmax(0,auto) auto minmax(6rem,1fr);grid-template-areas:"board left" "board score" "board tabs" "board tray"}.game-page.is-review>.review-tabs[data-tabs=mid]{display:flex;grid-area:tabs}.game-page.is-review>:is(.review-moment,.review-rail){grid-area:tray}.game-page.is-review>:is(.review-moment,.review-rail)[data-mid=off]{display:none}.game-page.is-review>.review-score{align-self:stretch;min-height:0;overflow-y:auto;overscroll-behavior:contain}.review-rail-tree{min-block-size:6rem}.game-page.is-review>.review-rail{overflow-y:auto;overscroll-behavior:contain}}@media (max-width:60rem){.game-page.is-review,.game-page.is-review.has-coach{--review-board-chrome:23.25rem;block-size:100svh;grid-template-rows:auto auto auto minmax(7.5rem,1fr);grid-template-areas:"board" "left" "tabs" "tray"}.game-page.is-review>.review-tabs[data-tabs=narrow]{display:flex;grid-area:tabs}.game-page.is-review>:is(.review-score,.review-moment,.review-rail){grid-area:tray;align-self:stretch;contain:none;min-height:0;overflow-y:auto;overscroll-behavior:contain}.game-page.is-review>:is(.review-score,.review-moment,.review-rail)[data-narrow=off],.review-rail>[data-narrow=off]{display:none}.review-rail-tree{flex:1 1;gap:.5rem;min-block-size:0}.review-rail-card{flex:1 1 auto;block-size:auto;max-block-size:none;min-block-size:0}.review-players>.player-card{padding:.35rem .6rem}.review-players .player-id{display:flex;flex-wrap:nowrap;align-items:baseline;gap:.4rem;min-width:0;overflow:hidden;white-space:nowrap}}.review-wrap{display:flex;flex-direction:column}.review-wrap .board-verdict{width:100%;max-width:var(--board-side);margin:0 auto}.score-graph{--graph-h:140px;display:flex;flex-direction:column;gap:.35rem;flex:1 1 auto;min-height:0}.score-graph .coach-graph-plot{flex:none;height:var(--graph-h);min-height:0;max-height:none}.score-graph-status{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;pointer-events:none}.score-graph-status>.coach-progress{width:6rem;flex:none}.review-transport{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.review-transport .action-quiet{padding:.4rem .7rem}.chat{display:flex;flex-direction:column;gap:.75rem;min-height:8rem}.game-right .chat{position:sticky;top:1.5rem;background:var(--chat-well);max-height:calc(100dvh - 8rem)}.chat-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.6rem;border-bottom:1px solid var(--line)}.chat-head h2{margin:0}.chat-log{flex:1 1;overflow-y:auto;max-height:22rem;display:flex;flex-direction:column;gap:.6rem;font-size:var(--step--1)}.game-right .chat-log{max-height:none;min-height:10rem}.chat-line{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;max-width:100%}.chat-line .chat-from{font-size:.72rem;font-weight:600;letter-spacing:.02em;color:var(--accent-soft);padding:0 .35rem}.chat-bubble{background:var(--panel-high);border:1px solid var(--line);border-radius:14px 14px 14px 4px;padding:.45rem .7rem;max-width:100%;overflow-wrap:break-word}.report-dialog{margin-top:.4rem;border:1px solid var(--line);border-radius:var(--radius);padding:.6rem .75rem;background:var(--bg)}.report-form{display:flex;flex-direction:column;gap:.5rem}.report-form select{font:inherit;padding:.4rem .6rem;border-radius:var(--radius);color:var(--ink)}.chat-form{display:flex;gap:.5rem}.chat-input{flex:1 1;min-width:0;padding:.5rem .75rem;border-radius:12px;font:inherit;font-size:var(--step--1);color:var(--ink)}.chat-input:focus-visible{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--focus-glow)}.admin-reports-page{max-width:46rem}.logo-lockup{display:inline-flex;align-items:center;gap:.444em;font-family:var(--font-display-stack);line-height:1;letter-spacing:normal}.logo-lockup-mark{flex:0 0 auto;width:1.852em;height:1.852em;transform:rotate(-6deg);filter:drop-shadow(0 .13em .13em rgba(90,55,20,.22))}.logo-lockup-words{display:flex;flex-direction:column;align-items:flex-start;gap:.204em}.logo-lockup-name{font-weight:800;letter-spacing:-.0185em;white-space:nowrap;color:var(--logo-navy);text-shadow:0 .037em 0 var(--logo-gold)}.logo-lockup-o{display:inline-block;width:.685em;height:.685em;margin:0 .037em -.009em;border-radius:50%;vertical-align:baseline;background:radial-gradient(circle at 34% 28%,#77758a 0,#2c2a3a 38%,#121118 100%);box-shadow:0 .037em 0 var(--logo-gold)}.logo-lockup-tagline{display:inline-flex;align-items:center;gap:.842em;font-size:max(.625rem,.176em);font-weight:600;letter-spacing:.21em;white-space:nowrap;color:#5a4a36}.logo-lockup-rule{flex:0 0 auto;width:2.526em;height:max(1px,.105em);background:var(--logo-gold-deep)}.logo-lockup-dot{flex:0 0 auto;width:.368em;height:.368em;border-radius:50%;background:var(--logo-flame)}.logo-lockup-dark .logo-lockup-mark{filter:drop-shadow(0 .13em .13em rgba(0,0,0,.4))}.logo-lockup-dark .logo-lockup-name{color:var(--logo-cream);text-shadow:0 .037em 0 var(--logo-navy-deep)}.logo-lockup-dark .logo-lockup-o{background:radial-gradient(circle at 34% 28%,#ffffff 0,#f6f1e8 45%,#d6cdbe 100%);box-shadow:0 .037em 0 var(--logo-navy-deep)}.logo-lockup-dark .logo-lockup-tagline{color:#e6d6b8}.logo-lockup-dark .logo-lockup-rule{background:var(--logo-gold)}.logo-lockup-dark .logo-lockup-dot{background:var(--logo-flame-lit)}.logo-badge-rim{font-family:var(--font-display-stack)}.site-footer{position:sticky;top:100dvh;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 1.25rem;border-top:1px solid var(--line)}@media (min-width:48rem){.site-footer{padding-right:calc(1.25rem + 4.25rem + 1.25rem)}}.site-footer-start{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;min-width:0}.site-footer-links{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.4rem}.site-footer-link{display:flex;align-items:center;justify-content:center;min-height:2rem;padding:.2rem .6rem;font-size:var(--step--1);text-align:center}.site-footer-badge{flex:0 0 auto;width:5rem;height:auto}.site-footer-copy{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.site-footer-theme .choice-field{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.site-footer-theme .field-label{float:left;margin:0}.site-footer-theme .size-row{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:1fr;width:fit-content;max-width:100%;gap:.3rem}.site-footer-theme .choice-field .size-choice{gap:.35rem;min-height:2rem;padding:.2rem .6rem;font-size:var(--step--1)}.theme-icon{flex:0 0 auto}@media (max-width:46rem){.site-footer{flex-wrap:wrap}.site-footer-start{flex:1 1}.site-footer-theme{flex-basis:100%;order:1}}.site-main:has(>.collections-problem)>.site-footer,.site-main:has(>.deck-page)>.site-footer,.site-main:has(>.game-page)>.site-footer,.site-main:has(>.learn-map-page)>.site-footer,.site-main:has(>.learn-page)>.site-footer,.site-main:has(>.sprint-run:not(.sprint-end))>.site-footer{display:none}.site-main:has(>.pending-game)>:not(.pending-game){display:none}.about-page{max-width:40rem;margin:0 auto;padding:2rem 1.25rem 3rem;line-height:1.6}.about-page h1{margin:0 0 .5rem;font-size:var(--step-3)}.about-page h2{margin:2rem 0 .5rem;font-size:var(--step-1)}.about-page p{margin:0 0 1rem}.about-lede{font-size:var(--step-1)}.about-page :where(a){color:var(--accent-text)}.about-start{margin-top:2rem}.about-licence{margin:0 0 1rem;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--step--1);line-height:1.5}.learn-page{max-width:56rem;margin:0 auto;padding:1.5rem 1.25rem 3rem}.learn-progress{height:.25rem;margin:.75rem 0 1.25rem;border-radius:var(--radius);background:var(--line);overflow:hidden}.learn-lesson{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,22rem);gap:1.5rem;align-items:start}@media (max-width:46rem){.learn-lesson{grid-template-columns:minmax(0,1fr);padding-top:var(--oggo-reserve,0)}@media (prefers-reduced-motion:no-preference){.learn-lesson{transition:padding-top .18s ease-out}}}.learn-lesson-solo{grid-template-columns:minmax(0,1fr)}.learn-board{display:flex;flex-direction:column;gap:.5rem;transform-origin:center}.learn-board .board-svg,.learn-visual{max-width:32rem}.learn-visual{display:block;width:100%;font-family:var(--font-stack);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-ambient)}.learn-prose{display:flex;flex-direction:column;gap:.75rem;max-width:70ch}.learn-text{margin:0;font-size:var(--step-0);line-height:1.6}.learn-hint,.learn-success{margin:0;font-size:var(--step--1);font-weight:600;color:var(--ink)}.learn-choices{gap:.6rem}.learn-choice-row,.learn-choices{display:flex;flex-direction:column}.learn-choice-row{gap:.3rem}.learn-choice{text-align:left}.learn-choice.is-correct{border-color:var(--ink);font-weight:700}.learn-choice.is-incorrect{border-style:dashed}.learn-prose[data-advance=true]{cursor:pointer}.learn-prose:focus{outline:none}.learn-complete-actions a{text-decoration:none;display:inline-block}.learn-map-page{flex:1 1 auto;min-height:0;position:relative;display:flex;flex-direction:column;--track:var(--accent);--track-text:var(--accent-text)}[data-track=spine]{--track:var(--track-tutorial);--track-text:var(--track-tutorial-text)}[data-track=life-and-death]{--track:var(--track-lad);--track-text:var(--track-lad-text)}[data-track=corner-patterns]{--track:var(--track-openings);--track-text:var(--track-openings-text)}.learn-strip{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"title tabs action" "bar bar bar";align-items:center;column-gap:1rem;padding:.6rem 1rem 0;background:var(--panel);border-bottom:1px solid var(--line)}.learn-strip-title{grid-area:title;margin:0;font-size:var(--step-3)}.learn-tabs{grid-area:tabs;display:flex;gap:.25rem;min-width:0;overflow-x:auto;scrollbar-width:none}.learn-tab{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.4rem .7rem .5rem;white-space:nowrap}.learn-tab-title{font-size:var(--step-0);font-weight:600}.learn-tab[aria-selected=true] .learn-tab-title{color:var(--track-text)}.learn-tab-meta{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem}.learn-tab.is-complete .learn-tab-meta{color:var(--done-text);font-weight:600}.learn-strip-action{grid-area:action}.learn-strip-action .action-primary{display:inline-block;text-decoration:none}.learn-strip-progress{grid-area:bar;margin:.5rem -1rem 0;border-radius:0}.learn-map-body{flex:1 1 auto;min-height:0;position:relative}.learn-map-page.status-line{padding:1.5rem 1.25rem}.learn-water{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.learn-world{position:absolute;top:0;left:0;width:0;height:0;transform-origin:0 0;will-change:transform}.learn-track-title{position:absolute;transform:translate(-50%,-50%);text-align:center;white-space:nowrap;pointer-events:none}.learn-track-title h2{margin:0;font-size:var(--step-4);font-weight:700;line-height:1.1;color:var(--track-text)}.learn-map-foot{position:absolute;left:1rem;right:1rem;bottom:1rem;display:flex;align-items:flex-end;gap:.75rem;pointer-events:none}.learn-map-foot>*{pointer-events:auto}.learn-nudge-bar{display:flex;align-items:center;gap:.75rem;min-width:0;max-width:28rem;padding:.5rem .5rem .5rem .9rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--glass-strong);box-shadow:var(--shadow-raised)}.learn-nudge-bar .action-primary{padding:.35rem .8rem;text-decoration:none;white-space:nowrap}@media (max-width:640px){.learn-strip{grid-template-columns:1fr auto;grid-template-areas:"title action" "tabs tabs" "bar bar";column-gap:.6rem;padding:.5rem .8rem 0}.learn-tabs{margin:.25rem -.8rem 0;padding:0 .8rem}.learn-strip-action .action-primary{padding:.35rem .8rem}.learn-nudge-bar{max-width:none;flex-wrap:wrap}.learn-map-dock{align-self:flex-end;margin-left:0}}.learn-map-dock{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:.6rem;pointer-events:none}.learn-map-dock>*{pointer-events:auto}.learn-map-button{min-width:2.5rem;height:2.5rem;padding:0 .8rem;font-size:var(--step-1)}.learn-map-locate{font-size:var(--step--1)}.learn-milestone{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:.4rem .6rem;border:1px solid var(--line-strong);border-radius:12px;background:var(--bg);text-align:center;pointer-events:none;border-color:var(--track)}.learn-milestone.is-done{border-color:var(--done-text)}.learn-node-slot{position:absolute;width:56px;height:56px}.learn-node{position:absolute;top:0;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;width:7rem;text-decoration:none;text-align:center;border-radius:var(--radius)}.learn-node,.learn-node-disc{align-items:center;color:var(--ink)}.learn-node-disc{display:inline-flex;justify-content:center;width:56px;height:56px;border-radius:50%;border:3px solid var(--line-strong);background-color:var(--panel);--disc-lip:inset 0 2px 0 rgba(255,255,255,0.55),inset 0 -2px 0 rgba(60,16,20,0.14);background-image:linear-gradient(180deg,rgba(255,255,255,.4),rgba(255,255,255,0) 65%);font-family:var(--font-display-stack);font-size:var(--step-2);font-weight:700;box-shadow:var(--disc-lip),var(--key-shadow);transition:transform .12s ease,border-color .15s ease,box-shadow .12s ease}.learn-node.is-available .learn-node-disc{border-color:var(--track)}.learn-node.is-current .learn-node-disc{border-color:var(--accent-text);color:var(--accent-text);box-shadow:var(--disc-lip),0 0 0 0 rgb(var(--tint-rgb)/.35);animation:learn-node-breathe 2.4s ease-in-out infinite}.learn-node.is-done .learn-node-disc{border-color:var(--done);background-color:var(--done);color:#fff;--disc-lip:inset 0 2px 0 rgba(255,255,255,0.25),inset 0 -2px 0 rgba(0,30,8,0.3)}.learn-node.is-locked{color:var(--ink-soft);cursor:default}.learn-node.is-locked .learn-node-disc{position:relative;background:color-mix(in srgb,var(--track) 12%,var(--bg));border-style:dashed;border-color:var(--track);color:var(--ink-soft);box-shadow:none}.learn-node-badge{position:absolute;right:-7px;bottom:-7px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--bg);background:var(--locked);color:#fff}.learn-node.is-side .learn-node-disc{width:46px;height:46px;margin-top:5px;border-radius:12px;transform:rotate(45deg);font-size:var(--step-1)}.learn-node.is-side .learn-node-disc>*{display:inline-block;transform:rotate(-45deg)}@keyframes learn-node-breathe{0%,to{box-shadow:var(--disc-lip),0 0 0 0 rgb(var(--tint-rgb)/.35)}50%{box-shadow:var(--disc-lip),0 0 0 8px rgb(var(--tint-rgb)/0)}}.senseis-callout{position:absolute;display:flex;align-items:center;gap:.7rem;width:15rem;padding:.6rem;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-raised);transform:translate(-50%,3.9rem)}.senseis-callout-board{flex:none;width:6rem;height:6rem;display:flex;align-items:center;justify-content:center}.senseis-callout-placeholder{display:block;width:100%;height:100%;border-radius:.5rem;background:var(--panel-high)}.senseis-callout-body{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;min-width:0}.senseis-callout-task{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.senseis-lock{box-sizing:border-box;width:min(100%,24rem);margin:.5rem auto;padding:1.25rem 1.25rem 1.4rem;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.senseis-lock-glyph{display:inline-flex;color:var(--ink-soft)}.senseis-lock h2{margin:.25rem 0 0;font-size:var(--step-1)}.territory-scaffold{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:.75rem}.territory-meter{display:flex;flex-direction:column;gap:.35rem;flex:1 1 14rem;min-width:0}.territory-bar{height:.5rem;border-radius:var(--radius);border:1px solid var(--grid);background:var(--stone-white);overflow:hidden}.territory-bar-black{display:block;height:100%;background:var(--stone-black);transition:width .2s ease-out}.territory-text{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.territory-meter.is-held,.territory-scaffold.is-held{visibility:hidden}@media (prefers-reduced-motion:reduce){.territory-bar-black{transition:none}}.admin-problems-page{max-width:64rem}.admin-problems-hint{color:var(--ink-soft);font-size:var(--step--1)}.problem-builder{display:grid;grid-template-columns:minmax(0,32rem) minmax(16rem,1fr);gap:1.5rem;align-items:start}@media (max-width:52rem){.problem-builder{grid-template-columns:1fr}}.sprint-run{max-width:34rem;margin:0 auto;padding:1rem 16px 2rem}.site-main:has(>.sprint-run:not(.sprint-end)){height:100dvh;overflow:hidden}.sprint-run:not(.sprint-end){box-sizing:border-box;height:100%;overflow-y:auto;display:grid;grid-template-rows:auto auto minmax(12rem,1fr) auto;padding-bottom:1rem}.sprint-board{width:min(100cqw - 1.5rem,100cqh - 1.5rem);margin:.75rem auto;border-radius:var(--radius);outline:4px solid transparent;outline-offset:4px}.sprint-board-ok{outline-color:var(--flash-right);box-shadow:0 0 0 10px color-mix(in srgb,var(--flash-right) 28%,transparent)}.sprint-board-wrong{outline-color:var(--flash-wrong);outline-style:dashed;box-shadow:0 0 0 10px color-mix(in srgb,var(--flash-wrong) 28%,transparent)}.sprint-status{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.75rem}.sprint-end h1{margin-top:0}.sprint-review-list{list-style:none;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.sprint-missed p{margin:.35rem 0 0;font-size:.9rem}.blitz{max-width:40rem;margin:0 auto;padding-block:2.5rem 4rem;padding-inline:1.25rem}.blitz h1{margin:0;font-size:var(--step-3)}.blitz-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;max-width:24rem}.blitz-play{display:flex;align-items:center;justify-content:center;min-height:3rem;padding:.5rem 1.1rem;font-size:var(--step-1);text-decoration:none}.blitz-board-list{margin:0;padding-left:1.75rem;display:grid;gap:.3rem}.blitz-board-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blitz-board-score{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.blitz-key{display:flex;align-items:center;gap:.85rem;min-height:4rem;padding:.5rem 1.25rem;font-size:var(--step-2)}.blitz-key-icon{flex:none;width:1.75rem;height:1.75rem}.site-main:has(>.collections-problem){height:100dvh;overflow:hidden}.collections-problem{--solver-pad:1.5rem;--solver-tray:4.75rem;--solver-inset:1rem;--solver-board-h:calc(100dvh - 2 * var(--solver-pad) - var(--solver-tray) - 2 * var(--solver-inset));--solver-board-w:calc(var(--solver-board-h) * var(--board-aspect, 1) + 2 * var(--solver-inset));box-sizing:border-box;height:100%;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"problem" "task" "board" "solution" "discussion";align-content:start;gap:.75rem;padding:.75rem 16px 1.5rem}.collections-problem>.collections-head,.solver-problem-card{grid-area:problem}.solver-task-card{grid-area:task}.collections-problem>.collections-board-area,.solver-board-card{grid-area:board}.collections-head h1{margin:0;font-size:var(--step-2);line-height:1.15}.collections-credit,.collections-title{margin:.15rem 0 0;color:var(--ink-soft)}.collections-credit{font-size:var(--step--1)}.collections-credit :where(a){color:var(--accent-text)}.collections-back{margin-top:.75rem}.collections-stats{margin:.15rem 0 0;font-size:var(--step--1);color:var(--ink-soft)}.collections-board{width:100%}.collections-board :is(.board-frame,.board-svg){max-width:none}@container content (min-width: 52rem){.collections-problem{grid-template-columns:minmax(0,var(--solver-board-w)) 22.5rem;grid-template-rows:auto auto auto minmax(6rem,1fr);grid-template-areas:"board problem" "board task" "board solution" "board discussion";justify-content:center;align-content:stretch;column-gap:1.5rem;row-gap:.875rem;padding:var(--solver-pad)}.solver-board-card{align-self:start;width:100%}}.board-verdict{border-radius:var(--radius);outline:4px solid transparent;outline-offset:4px}.board-verdict[data-verdict=right]{outline-color:var(--flash-right)}.board-verdict[data-verdict=wrong]{outline-color:var(--flash-wrong);outline-style:dashed}.collections-discussion{margin-top:1.25rem;padding-top:.75rem;border-top:1px solid var(--line)}.disclosure-key{gap:.4rem;list-style:none}.disclosure-key::-webkit-details-marker{display:none}.disclosure-key:before{content:"\25B8";transition:transform .12s ease}details[open]>.disclosure-key:before{transform:rotate(90deg)}.collections-comment-input{width:100%;box-sizing:border-box;resize:vertical;padding:.5rem .75rem;border-radius:var(--radius);font:inherit;color:var(--ink)}.solver-card{box-sizing:border-box;min-width:0;padding:1rem 1.25rem;background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-ambient)}.get-the-app{box-shadow:inset 6px 0 0 var(--ink),var(--shadow-ambient);padding-left:calc(1.25rem + 6px)}.get-the-app-title{display:inline-flex;align-items:center;gap:.5rem}.phone-glyph{position:relative;display:inline-block;flex:none;width:.7rem;height:1.1rem;border:2px solid;border-radius:3px}.phone-glyph:after{content:"";position:absolute;left:50%;bottom:2px;width:3px;height:3px;margin-left:-1.5px;border-radius:50%;background:currentColor}.get-the-app-line{margin:0;font-family:var(--font-display-stack);font-size:var(--step-0);font-weight:600;color:var(--ink)}.get-the-app-soon{display:inline-block;margin:.6rem 0 0;padding:.35rem .7rem;border:1px solid var(--line-strong);border-radius:.6rem;background:var(--panel-high);font-size:var(--step--1);font-weight:600;color:var(--ink-soft)}.get-the-app-key{display:flex;width:100%;margin-top:.75rem}.solver-card-label{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .6rem;font-family:var(--font-display-stack);font-size:var(--step--1);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.solver-card-keys .action-quiet{min-height:2.25rem;min-width:2.75rem;padding:.2rem .6rem;font-size:var(--step-0);letter-spacing:0}.solver-unfold{width:100%}.solver-lock{position:relative;display:inline-block;flex:none;box-sizing:border-box;width:.75rem;height:.625rem;margin-top:.4rem;border:2px solid;border-radius:2px}.solver-tray-row{display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"prev keys next";align-items:center;gap:.6rem}.solver-tray-prev{grid-area:prev;justify-self:start}.solver-tray-keys{grid-area:keys;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}.solver-tray-next{grid-area:next;justify-self:end}.solver-tray :is(.action-primary,.action-quiet){display:inline-flex;align-items:center;justify-content:center;gap:.45rem;white-space:nowrap}@container solver-tray (max-width: 32rem){.solver-tray-row{grid-template-columns:1fr 1fr;grid-template-areas:"prev next" "keys keys"}}.action-quiet.is-locked[aria-disabled=true]{opacity:1;cursor:not-allowed;transform:none;border-color:var(--line-strong);background:var(--tray);color:var(--ink-soft);box-shadow:inset 0 2px 4px rgb(var(--shade-rgb)/.14)}.solution-legend-you{display:inline-block;width:1.1rem;height:3px;margin-right:.35rem;vertical-align:middle;border-radius:2px;background:var(--line-you)}.collections-page{max-width:64rem;margin:0 auto;padding:1rem 16px 2.5rem}.collections-intro{max-width:42rem;margin:.35rem 0 1rem;color:var(--ink-soft)}.collections-tab-title{font-weight:600}.collections-tab-meta{font-size:.75rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.collections-panel h2{margin:0;font-size:var(--step-1);font-weight:600}.collections-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.6rem}.collections-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;min-height:5.5rem;padding:.5rem .25rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.collections-cell-n{font-size:var(--step-1);font-weight:600;line-height:1}@media (max-width:480px){.collections-grid{grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.45rem}}.puzzle-collections-card{display:grid;gap:.5rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:.9rem 1rem;box-shadow:var(--shadow-ambient)}.puzzle-collections-card h2{margin:0;font-size:var(--step-1);font-weight:600}.puzzle-collections-card-counts,.puzzle-collections-card-tagline{margin:0}.puzzle-collections-card-tagline{color:var(--ink-soft);font-size:.9rem}.puzzle-collections-card-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.puzzle-collections-card-actions a{text-decoration:none}.puzzle-collections-card-sub{margin:.5rem 0 0;font-size:1rem;font-weight:600}.collection-cards{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.collection-card{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem .75rem;padding:.6rem .9rem}.collection-card-name{font-weight:600}.collection-card-meta{color:var(--ink-soft);font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.inbox-bell-wrap{position:relative}.inbox-count{margin-left:auto;min-width:1.5rem;padding:0 .4rem;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:var(--step--1);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}html.nav-collapsed .inbox-count{position:absolute;top:.1rem;right:.1rem;min-width:1.1rem;margin:0;padding:0 .25rem;font-size:.7rem;line-height:1.1rem}.inbox-panel{position:fixed;left:calc(var(--nav-w) + .5rem);bottom:1rem;z-index:45;width:min(24rem,calc(100vw - var(--nav-w) - 1.5rem));max-height:min(32rem,calc(100dvh - 2rem));overflow-y:auto;overscroll-behavior:contain;padding:.75rem;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-raised)}.inbox-panel h2{margin:0 0 .4rem;font-size:var(--step-0)}.inbox-list{display:grid;gap:.4rem;margin:0 0 .6rem;padding:0;list-style:none}.inbox-item{display:flex;align-items:center;gap:.6rem;min-height:2.75rem;padding:.5rem .75rem}.inbox-text{flex:1 1;min-width:0;overflow-wrap:anywhere}.inbox-when{color:var(--ink-soft);white-space:nowrap}.inbox-new,.inbox-when{font-size:var(--step--1)}.inbox-new{flex:none;color:var(--ink);font-weight:700}.inbox-empty{color:var(--ink-soft)}.inbox-panel-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin:0}.notifications-actions{display:flex;flex-wrap:wrap;gap:1.25rem}.challenge-popup{position:fixed;right:1rem;bottom:1rem;z-index:50;width:min(22rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto;padding:1rem;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-raised)}.challenge-popup-keys{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width:72rem){html:not(.nav-collapsed) .inbox-panel{left:14rem;width:min(24rem,calc(100vw - 15rem))}}@media (max-width:40rem){.inbox-panel{right:.5rem;width:auto;max-width:calc(100vw - 2rem)}html:not(.nav-collapsed) .inbox-panel{left:1rem;right:1rem;width:auto}.challenge-popup{left:calc(var(--nav-w, 3.75rem) + .5rem);right:.5rem;width:auto}}.challenge-dialog{width:min(28rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain;padding:1.25rem;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-raised)}.challenge-dialog::backdrop{background:var(--scrim)}.challenge-form{display:grid;gap:.75rem}.challenge-form-head{display:flex;align-items:center;gap:.6rem}.challenge-form-head h2{margin:0;font-size:var(--step-1);overflow-wrap:anywhere}.choice-field{min-width:0;margin:0;padding:0;border:0}.choice-field .field-label{padding:0}.choice-field .size-row{margin-bottom:0}.choice-field-hint{margin:.4rem 0 0;font-size:var(--step--1);color:var(--ink-soft)}.choice-field .size-choice{position:relative;display:inline-flex;align-items:center}.choice-field .size-choice:has(>:focus-visible){outline:2px solid var(--accent-text);outline-offset:2px}.challenge-form .field-check:has(>:disabled),.choice-field .size-choice:has(>:disabled){opacity:.55;cursor:default;pointer-events:none}.challenge-form .field-check{margin:0}.challenge-form-keys{display:flex;flex-wrap:wrap;gap:.5rem;margin:0}.coach-panel{display:flex;flex-direction:column;gap:.75rem}.coach-note{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.review-progress{display:flex;align-items:center;gap:.75rem}.coach-progress,.review-progress-bar{appearance:none;flex:1 1;width:100%;height:.75rem;border:0;border-radius:999px;background:var(--panel-high);box-shadow:inset 0 1px 2px rgb(var(--shade-rgb)/.18);color:var(--ink);overflow:hidden}.coach-progress{height:.375rem}.coach-progress::-webkit-progress-bar,.review-progress-bar::-webkit-progress-bar{background:var(--panel-high);border-radius:999px;box-shadow:inset 0 1px 2px rgb(var(--shade-rgb)/.18)}.coach-progress::-webkit-progress-value,.review-progress-bar::-webkit-progress-value{background:linear-gradient(180deg,var(--ink-soft) 0,var(--ink) 100%);border-radius:999px}.coach-progress::-moz-progress-bar,.review-progress-bar::-moz-progress-bar{background:linear-gradient(180deg,var(--ink-soft) 0,var(--ink) 100%);border-radius:999px}.review-progress-pct{min-width:4ch;font-size:var(--step--1);font-weight:600;text-align:right;color:var(--ink)}.coach-graph{margin:0;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.coach-graph-plot>svg{position:absolute;inset:0;display:block;width:100%;height:100%}.coach-graph-hover{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 3;vector-effect:non-scaling-stroke;pointer-events:none}.coach-graph-tag{bottom:.25rem;padding:.15rem .4rem;border-radius:.3rem;font:600 var(--step--1) /1.1 var(--font-display-stack);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;z-index:1}.coach-graph-pin,.coach-graph-tag{position:absolute;transform:translateX(-50%);background:var(--ink);color:var(--bg)}.coach-graph-pin{top:0;width:24px;height:1.15rem;padding:0;border:0;border-radius:.3rem;font:inherit;font-size:.7rem;font-weight:700;line-height:1.15rem;cursor:pointer}.coach-graph-corner{position:absolute;top:.25rem;right:.35rem;display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;pointer-events:none}.coach-counts{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.coach-glyph{min-width:2ch;text-align:center}.game-page.is-review .coach-moves{flex:1 1 auto;min-height:4rem;max-height:none;overflow-y:auto;overscroll-behavior:contain}@container moment-card (max-width: 15rem){.moment-card .coach-move{grid-template-columns:3.6ch 1rem 2rem minmax(0,1fr);gap:.25rem;padding-inline:.25rem}.coach-side-word{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.coach-move{display:grid;grid-template-columns:4ch 2.75rem 2.25rem minmax(0,1fr);align-items:baseline;gap:.375rem;position:relative;width:100%;padding:.35rem .375rem;border:none;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:inherit;font-size:var(--step--1);text-align:left;cursor:pointer}.coach-move-note{grid-column:1/-1;color:var(--ink-soft);font-size:var(--step--1)}.stone-number{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none}.coach-moment{display:flex;flex-direction:column;gap:.6rem}.coach-moment-actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-bench-page{max-width:64rem}.admin-bench-hint{color:var(--ink-soft);font-size:var(--step--1)}.admin-bench-table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-bench-text{width:100%;overflow-x:auto;font-size:var(--step--1)}.coach-bench-page{max-width:40rem;display:flex;flex-direction:column;gap:1rem}.coach-bench-hint{color:var(--ink-soft);font-size:var(--step--1);margin:.25rem 0}.oggo{--side:1;position:fixed;right:1.25rem;bottom:.75rem;z-index:30}.oggo[data-side="-1"]{--side:-1}.site-shell:has(.game-page,.learn-map-page,.sprint-run:not(.sprint-end),.collections-problem,.learn-page,.club-page)>.oggo:not(.oggo-teacher){display:none}@media (max-width:47.99rem){.oggo{display:none}}@media print{.oggo{display:none}}.oggo-button{display:block;padding:0;border:0;border-radius:50% 50% 1rem 1rem;background:none;cursor:pointer;transition:transform .08s ease}.oggo-button:hover{transform:translateY(var(--key-rise))}.oggo-button:active{transform:translateY(var(--key-sink))}.oggo-button:focus-visible{outline:2px solid var(--accent-text);outline-offset:4px}.oggo-figure{display:block;width:4.25rem}.oggo-drawing{display:block;width:100%;height:auto;overflow:visible}.oggo-drawing :is(.oggo-shadow,.oggo-legs,.oggo-thigh,.oggo-shin,.oggo-foot,.oggo-body,.oggo-tilt,.oggo-iris-pose,.oggo-look,.oggo-follow,.oggo-pupil,.oggo-lid-low,.oggo-lid-top,.oggo-blink,.oggo-bang){transform-box:view-box;transition:transform .32s cubic-bezier(.34,1.4,.5,1),opacity .2s ease}.oggo-shadow{transform-origin:120px 326px;opacity:.3}.oggo-legs{transform-origin:120px 322px}.oggo-thigh-l{transform-origin:96px 200px}.oggo-thigh-r{transform-origin:144px 200px}.oggo-shin-l{transform-origin:96px 257px}.oggo-shin-r{transform-origin:144px 257px}.oggo-foot-l{transform-origin:96px 318px}.oggo-foot-r{transform-origin:144px 318px}.oggo-tilt{transform-origin:120px 205px}.oggo-pupil{transform-origin:120px 111px}.oggo-bang{transform-origin:225px 30px;opacity:0;transform:scale(.6)}.oggo-lid-low{transform:translateY(130px)}.oggo-lid-top{transform:translateY(-75px)}.oggo-blink{transform-origin:120px 6px;transform:scaleY(0);animation:oggo-blink 5s linear infinite}.oggo-look{animation:oggo-look 8s ease-in-out infinite}.oggo-follow{transform:translate(var(--follow-x,0),var(--follow-y,0));transition:transform .12s ease-out}.oggo[data-following] .oggo-look{animation:none}@keyframes oggo-blink{0%,30%{transform:scaleY(0)}32%{transform:scaleY(1)}34%,80%{transform:scaleY(0)}82%{transform:scaleY(1)}84%,to{transform:scaleY(0)}}@keyframes oggo-look{0%,15%{transform:translate(0)}20%,40%{transform:translate(16px,10px)}45%,65%{transform:translate(-14px,-10px)}70%,to{transform:translate(0)}}.oggo[data-pose=bend] :is(.oggo-body,.oggo-legs){animation:oggo-bend-squat 2.8s ease-in-out}.oggo[data-pose=bend] .oggo-tilt{animation:oggo-bend-lean 2.8s ease-in-out}.oggo[data-pose=bend] :is(.oggo-thigh-r,.oggo-shin-r,.oggo-foot-r){--knee:-1}.oggo[data-pose=bend] :is(.oggo-thigh,.oggo-foot){animation:oggo-bend-thigh 2.8s ease-in-out}.oggo[data-pose=bend] .oggo-shin{animation:oggo-bend-shin 2.8s ease-in-out}@keyframes oggo-bend-squat{0%{transform:translateY(0)}22%,38%{transform:translateY(12px)}60%,to{transform:translateY(0)}}@keyframes oggo-bend-thigh{0%{transform:rotate(0deg)}22%,38%{transform:rotate(calc(var(--knee, 1) * 25deg))}60%,to{transform:rotate(0deg)}}@keyframes oggo-bend-shin{0%{transform:rotate(0deg)}22%,38%{transform:rotate(calc(var(--knee, 1) * -50deg))}60%,to{transform:rotate(0deg)}}@keyframes oggo-bend-lean{0%,38%{transform:translateX(0) rotate(0deg)}60%{transform:translateX(calc(var(--side) * 8px)) rotate(calc(var(--side) * 6deg))}82%{transform:translateX(calc(var(--side) * 6.6px)) rotate(calc(var(--side) * 5deg))}to{transform:translateX(0) rotate(0deg)}}.oggo[data-pose=jump] :is(.oggo-body,.oggo-legs){animation:oggo-jump 1.1s ease-in-out}.oggo[data-pose=jump] .oggo-shadow{animation:oggo-jump-shadow 1.1s ease-in-out}.oggo[data-pose=jump] :is(.oggo-thigh-r,.oggo-shin-r,.oggo-foot-r){--knee:-1}.oggo[data-pose=jump] .oggo-thigh{animation:oggo-jump-thigh 1.1s ease-in-out}.oggo[data-pose=jump] .oggo-shin{animation:oggo-jump-shin 1.1s ease-in-out}.oggo[data-pose=jump] .oggo-foot{animation:oggo-jump-foot 1.1s ease-in-out}.oggo[data-pose=jump] .oggo-tilt{transform:rotate(calc(var(--side) * -8deg))}.oggo[data-pose=jump] .oggo-lid-low{transform:translateY(25px)}@keyframes oggo-jump{0%{transform:translateY(0)}18%{transform:translateY(8px)}45%{transform:translateY(-34px)}68%{transform:translateY(0)}80%{transform:translateY(4px)}to{transform:translateY(0)}}@keyframes oggo-jump-thigh{0%,68%,to{transform:rotate(0deg)}18%{transform:rotate(calc(var(--knee, 1) * 20deg))}45%{transform:rotate(calc(var(--knee, 1) * 38deg))}80%{transform:rotate(calc(var(--knee, 1) * 10deg))}}@keyframes oggo-jump-shin{0%,68%,to{transform:rotate(0deg)}18%{transform:rotate(calc(var(--knee, 1) * -40deg))}45%{transform:rotate(calc(var(--knee, 1) * -20deg))}80%{transform:rotate(calc(var(--knee, 1) * -20deg))}}@keyframes oggo-jump-foot{0%,68%,to{transform:rotate(0deg)}18%{transform:rotate(calc(var(--knee, 1) * 20deg))}45%{transform:rotate(calc(var(--knee, 1) * -18deg))}80%{transform:rotate(calc(var(--knee, 1) * 10deg))}}@keyframes oggo-jump-shadow{0%,68%,to{transform:scale(1);opacity:.3}45%{transform:scale(.65);opacity:.15}}.oggo[data-pose=surprised] .oggo-body{transform:translateY(-12px)}.oggo[data-pose=surprised] .oggo-legs{transform:scaleY(1.1)}.oggo[data-pose=surprised] .oggo-thigh-l{transform:rotate(8deg)}.oggo[data-pose=surprised] .oggo-foot-l,.oggo[data-pose=surprised] .oggo-thigh-r{transform:rotate(-8deg)}.oggo[data-pose=surprised] .oggo-foot-r{transform:rotate(8deg)}.oggo[data-pose=surprised] .oggo-pupil{transform:scale(.57)}.oggo[data-pose=surprised] .oggo-bang{opacity:1;transform:scale(1)}.oggo[data-pose=surprised] .oggo-shadow{transform:scaleX(.85)}.oggo[data-pose=happy] .oggo-lid-low{transform:translateY(0)}.oggo[data-pose=happy] .oggo-body{animation:oggo-hop .5s ease-out}.oggo[data-pose=happy] .oggo-tilt{transform:rotate(calc(var(--side) * 4deg))}.oggo[data-pose=happy][data-side="-1"] .oggo-thigh-l{transform:rotate(40deg)}.oggo[data-pose=happy][data-side="-1"] .oggo-foot-l{transform:rotate(-25deg)}.oggo[data-pose=happy][data-side="1"] .oggo-thigh-r{transform:rotate(-40deg)}.oggo[data-pose=happy][data-side="1"] .oggo-foot-r{transform:rotate(25deg)}@keyframes oggo-hop{0%,to{transform:translateY(0)}40%{transform:translateY(-8px)}}.oggo[data-pose=curious] .oggo-tilt{transform:rotate(calc(var(--side) * 8deg))}.oggo[data-pose=curious] .oggo-lid-top{transform:translateY(0)}.oggo[data-pose=curious] .oggo-iris-pose{transform:translate(calc(var(--side) * -22px),-17px)}.oggo[data-pose=curious] .oggo-look{animation:none}.oggo[data-pose=blink] .oggo-blink{animation:none;transform:scaleY(1)}.oggo-voice{position:absolute;right:3.25rem;bottom:4.75rem;width:max-content;max-width:min(18rem,calc(100vw - 7rem))}.oggo-bubble{position:relative;display:flex;align-items:flex-start;gap:.5rem;padding:.7rem .6rem .75rem 1rem;border:2px solid var(--logo-navy);border-radius:1rem;background:var(--logo-cream);color:var(--logo-navy);box-shadow:0 3px 0 var(--logo-gold-deep),var(--shadow-raised);animation:oggo-bubble-in .22s ease-out}.oggo-bubble:after{content:"";position:absolute;right:-9px;bottom:14px;width:14px;height:14px;border-right:2px solid var(--logo-navy);border-bottom:2px solid var(--logo-navy);background:var(--logo-cream);transform:rotate(-45deg)}.oggo-line{margin:0;padding-top:.2rem;font-size:1rem;line-height:1.4}.oggo-note{margin:.2rem 0 0;font-size:var(--step--1);color:color-mix(in srgb,var(--logo-navy) 70%,var(--logo-cream))}.oggo-note:empty{display:none}.oggo-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:2rem;height:2rem;padding:0}.oggo-close svg{width:.85rem;height:.85rem}@keyframes oggo-bubble-in{0%{opacity:0;transform:translateY(6px) scale(.96)}}.oggo-drawing-winged :is(.oggo-wing,.oggo-wing-bob,.oggo-wing-drift){transform-box:view-box}.oggo-drawing-winged .oggo-wing-drift{transform-origin:120px 111px;animation:oggo-wing-drift 5s ease-in-out infinite}.oggo-drawing-winged .oggo-wing-bob{animation:oggo-wing-bob 1.95s linear .12s infinite}.oggo-drawing-winged .oggo-wing-r{transform-origin:201.67px 99.33px;animation:oggo-flap-r 1.95s linear infinite}.oggo-drawing-winged .oggo-wing-l{transform-origin:38.33px 99.33px;animation:oggo-flap-l 1.95s linear infinite}.oggo-drawing-winged .oggo-shadow{transform-origin:120px 326px;opacity:.22;animation:oggo-wing-shadow 5s ease-in-out infinite}@keyframes oggo-wing-drift{0%,to{transform:translate(0) rotate(0deg)}25%{transform:translate(30.33px,-9.33px) rotate(3deg)}50%{transform:translateY(-18.67px) rotate(0deg)}75%{transform:translate(-30.33px,-9.33px) rotate(-3deg)}}@keyframes oggo-wing-bob{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.25,.7,.4,1)}21.5%{transform:translateY(-18.67px);animation-timing-function:linear}30%{transform:translateY(-18.08px);animation-timing-function:cubic-bezier(.5,0,.9,.7)}to{transform:translateY(0)}}@keyframes oggo-flap-r{0%{transform:rotate(-30deg);animation-timing-function:cubic-bezier(.5,0,.9,.6)}15.7%{transform:rotate(36deg);animation-timing-function:cubic-bezier(.3,0,.5,1)}to{transform:rotate(-30deg)}}@keyframes oggo-flap-l{0%{transform:rotate(30deg);animation-timing-function:cubic-bezier(.5,0,.9,.6)}15.7%{transform:rotate(-36deg);animation-timing-function:cubic-bezier(.3,0,.5,1)}to{transform:rotate(30deg)}}@keyframes oggo-wing-shadow{0%,to{transform:translateX(0) scaleX(1);opacity:.22}25%{transform:translateX(30.33px) scaleX(.9);opacity:.17}50%{transform:translateX(0) scaleX(.8);opacity:.12}75%{transform:translateX(-30.33px) scaleX(.9);opacity:.17}}.oggo[data-pose=surprised] .oggo-drawing-winged .oggo-wing-r{animation:oggo-flap-r .5s linear infinite}.oggo[data-pose=surprised] .oggo-drawing-winged .oggo-wing-l{animation:oggo-flap-l .5s linear infinite}.oggo[data-pose=happy] .oggo-drawing-winged .oggo-wing-r{animation:oggo-flap-r .32s linear infinite}.oggo[data-pose=happy] .oggo-drawing-winged .oggo-wing-l{animation:oggo-flap-l .32s linear infinite}.oggo[data-pose=jump] .oggo-drawing-winged .oggo-wing-bob{animation:oggo-wing-bob-resume 1.95s linear 1.1s infinite}.oggo[data-pose=jump] .oggo-drawing-winged .oggo-wing-drift{animation:oggo-wing-swoop-body 1.1s ease-in-out,oggo-wing-drift-resume 5s ease-in-out 1.1s infinite}.oggo[data-pose=jump] .oggo-drawing-winged .oggo-wing-r{animation:oggo-wing-swoop-r 1.1s ease-in-out,oggo-flap-r-resume 1.95s linear 1.1s infinite}.oggo[data-pose=jump] .oggo-drawing-winged .oggo-wing-l{animation:oggo-wing-swoop-l 1.1s ease-in-out,oggo-flap-l-resume 1.95s linear 1.1s infinite}.oggo[data-pose=jump] .oggo-drawing-winged .oggo-shadow{animation:oggo-wing-jump-shadow 1.1s ease-in-out,oggo-wing-shadow-resume 5s ease-in-out 1.1s infinite}@keyframes oggo-wing-swoop-body{0%,to{transform:rotate(0deg)}45%{transform:rotate(6deg)}}@keyframes oggo-wing-swoop-r{0%,to{transform:rotate(-30deg)}45%{transform:rotate(18deg)}}@keyframes oggo-wing-swoop-l{0%,to{transform:rotate(30deg)}45%{transform:rotate(-18deg)}}@keyframes oggo-wing-jump-shadow{0%,to{transform:scale(1);opacity:.22}45%{transform:scale(.65);opacity:.1}}@keyframes oggo-wing-bob-resume{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.25,.7,.4,1)}21.5%{transform:translateY(-18.67px);animation-timing-function:linear}30%{transform:translateY(-18.08px);animation-timing-function:cubic-bezier(.5,0,.9,.7)}to{transform:translateY(0)}}@keyframes oggo-wing-drift-resume{0%,to{transform:translate(0) rotate(0deg)}25%{transform:translate(30.33px,-9.33px) rotate(3deg)}50%{transform:translateY(-18.67px) rotate(0deg)}75%{transform:translate(-30.33px,-9.33px) rotate(-3deg)}}@keyframes oggo-flap-r-resume{0%{transform:rotate(-30deg);animation-timing-function:cubic-bezier(.5,0,.9,.6)}15.7%{transform:rotate(36deg);animation-timing-function:cubic-bezier(.3,0,.5,1)}to{transform:rotate(-30deg)}}@keyframes oggo-flap-l-resume{0%{transform:rotate(30deg);animation-timing-function:cubic-bezier(.5,0,.9,.6)}15.7%{transform:rotate(-36deg);animation-timing-function:cubic-bezier(.3,0,.5,1)}to{transform:rotate(30deg)}}@keyframes oggo-wing-shadow-resume{0%,to{transform:translateX(0) scaleX(1);opacity:.22}25%{transform:translateX(30.33px) scaleX(.9);opacity:.17}50%{transform:translateX(0) scaleX(.8);opacity:.12}75%{transform:translateX(-30.33px) scaleX(.9);opacity:.17}}.oggo.oggo-teacher{display:block!important}.oggo-teacher{position:fixed;top:.75rem;right:1rem;bottom:auto;left:auto;z-index:30;width:auto}.oggo-teacher .oggo-teacher-stand{display:block;position:relative}.oggo-teacher .oggo-teacher-figure{display:block;width:auto;height:3.5rem;overflow:visible}.oggo-teacher .oggo-teacher-figure .oggo-drawing-winged{width:auto;height:100%;overflow:visible}.oggo-teacher .oggo-voice{position:absolute;top:100%;right:0;bottom:auto;left:auto;width:max-content;max-width:min(20rem,calc(100vw - 2rem - var(--nav-w, 3.75rem)));margin-top:.5rem}.oggo-teacher .oggo-bubble:after,.oggo-teacher .oggo-bubble:before{content:"";position:absolute;top:-14px;right:calc(3.5rem * 470 / 340 / 2 - 11px);bottom:auto;left:auto;width:22px;height:14px;border:0;background:var(--logo-navy);clip-path:polygon(50% 0,100% 100%,0 100%);transform:none}.oggo-teacher .oggo-bubble:after{top:-11px;background:var(--logo-cream)}.oggo-teacher-body{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;flex:1 1 auto;min-width:0}.oggo-teacher-next{align-self:flex-start}.oggo-teacher .oggo-bubble{padding-right:1rem}.oggo-teacher-text{display:grid;width:100%}.oggo-teacher-text>*{grid-area:1/1;min-width:0}.oggo-teacher-next.is-idle,.oggo-teacher-sizer{visibility:hidden}@media (min-width:46.01rem){.oggo-teacher{position:static;margin:0 0 .75rem}.oggo-teacher .oggo-teacher-stand{width:fit-content;margin-inline:auto}.oggo-teacher .oggo-teacher-figure{height:5rem}.oggo-teacher .oggo-voice{position:static;width:100%;max-width:none;margin-top:.75rem}.oggo-teacher .oggo-bubble{width:100%;box-sizing:border-box}.oggo-teacher .oggo-bubble:after,.oggo-teacher .oggo-bubble:before{right:auto;left:calc(50% - 11px)}}@media (prefers-reduced-motion:reduce){.oggo-drawing :not(.oggo-blink){animation:none!important;transition:none!important}.oggo-drawing-winged .oggo-wing-r{transform:rotate(-30deg)!important}.oggo-drawing-winged .oggo-wing-l{transform:rotate(30deg)!important}.oggo-bubble{animation:none}}@media (max-width:46rem){.game-page.is-tutor .game-right{display:contents}.is-tutor .tutor-oggo[data-collapsed=true] .oggo-bubble{display:none}.is-tutor .tutor-panel .tutor-collapse{display:inline-flex;position:fixed;top:.75rem;right:calc(1rem + 3.5rem * 470 / 340 + .25rem);z-index:31;min-width:2.75rem;min-height:2.75rem}.is-tutor .tutor-sheet{position:fixed;left:var(--nav-w,3.75rem);right:0;bottom:0;z-index:30;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line-strong);box-shadow:0 -4px 12px rgba(0,0,0,.15)}.is-tutor .tutor-sheet:empty{display:none}}.streak-card{position:fixed;top:1rem;left:calc(var(--nav-w) + 1rem);right:1rem;z-index:40;max-width:26rem;margin-inline:auto;padding:.875rem 1rem;border:2px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-raised);color:var(--ink);cursor:pointer;animation:streak-drop .55s cubic-bezier(.2,1.3,.4,1) both}.streak-card.is-leaving{animation:streak-leave .3s ease-in both}@keyframes streak-drop{0%{transform:translateY(-140%);opacity:0}to{transform:none;opacity:1}}@keyframes streak-leave{0%{transform:none;opacity:1}to{transform:translateY(-140%);opacity:0}}.streak-card-top{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.streak-card-top>.streak-icon{flex:none;width:2.875rem;height:2.875rem}.streak-card-words{flex:1 1;min-width:0;margin:0}.streak-card-words p{margin:0}.streak-card-title{font-family:var(--font-display-stack);font-size:1.5rem;font-weight:800;line-height:1}.streak-card-words .streak-card-kicker{margin-bottom:.25rem;color:var(--ink-soft);font-size:.88rem;font-weight:600}.streak-card-best{margin-top:.25rem;color:var(--ink-soft);font-size:.88rem}.streak-card-roll{display:inline-block;height:1em;overflow:hidden;line-height:1;vertical-align:bottom}.streak-card-roll span{display:block;animation:streak-roll .7s cubic-bezier(.2,1.4,.4,1) 1.1s both}@keyframes streak-roll{to{transform:translateY(-100%)}}.streak-card-close{display:inline-flex;flex:none;align-self:flex-start;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:0;font-size:1.25rem;line-height:1}.streak-card-games,.streak-card-share{display:flex;align-items:center;justify-content:center}.streak-card-share{margin-top:.75rem}.streak-card-week{display:flex;justify-content:center;gap:.5rem;margin:0;padding:0;list-style:none}.streak-card-day{display:flex;flex-direction:column;align-items:center;gap:.25rem;width:2.125rem;color:var(--ink-soft);font-size:.75rem}.streak-card-day .streak-icon{width:1.875rem;height:1.875rem}.streak-card-day:not(.is-lit) .streak-icon{filter:grayscale(1);opacity:.3}.streak-card-day.is-today{color:var(--ink);font-weight:700}.streak-card .is-today>.streak-icon{animation:streak-pop .5s cubic-bezier(.2,1.6,.4,1) 1.4s both}@keyframes streak-pop{0%{transform:scale(0)}to{transform:scale(1)}}.streak-card-bar{height:4px;margin-top:.75rem;overflow:hidden;border-radius:2px;background:var(--panel-high)}.streak-card-bar i{display:block;height:100%;background:var(--accent-soft);transform-origin:left;animation:streak-drain 7s linear both}.is-paused .streak-card-bar i{animation-play-state:paused}@keyframes streak-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.streak-card.is-milestone .is-lit>.streak-icon{animation:streak-wave .5s cubic-bezier(.2,1.6,.4,1) both;animation-delay:calc(1s + var(--i) * .09s)}@keyframes streak-wave{0%{transform:none}45%{transform:translateY(-10px) scale(1.35);filter:drop-shadow(0 0 6px #f6c344)}to{transform:none}}.streak-card-tag{position:absolute;top:-.85rem;right:3.5rem;padding:5px 12px 6px;border-radius:8px;background:linear-gradient(180deg,#9a5a12,#8a4f0c);box-shadow:0 2px 0 #6e3e08;color:var(--accent-ink);font-family:var(--font-display-stack);font-size:.85rem;font-weight:800;transform:rotate(6deg);animation:streak-stamp .45s cubic-bezier(.2,1.5,.4,1) 1.9s both}@keyframes streak-stamp{0%{transform:rotate(6deg) scale(2.4);opacity:0}to{transform:rotate(6deg) scale(1);opacity:1}}.streak-card-burst{pointer-events:none}.streak-card-burst i{position:absolute;left:50%;top:40%;width:16px;height:16px;opacity:0;animation:streak-burst 1.1s cubic-bezier(.1,.7,.3,1) 1.75s both}.streak-card-burst .streak-icon{display:block;width:100%;height:100%}@keyframes streak-burst{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}70%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1) rotate(var(--r))}}@media (max-width:47.99rem){.streak-card{left:.75rem;right:.75rem}}@media (prefers-reduced-motion:reduce){.streak-card.streak-drop,.streak-card.streak-drop .streak-card-day>.streak-icon,.streak-card.streak-drop .streak-card-tag,.streak-card.streak-drop :is(.streak-card-roll span,.streak-card-bar i){animation:none}.streak-card.streak-drop :is(.streak-card-roll span:first-child,.streak-card-burst){display:none}}.streak-card.is-still,.streak-card.is-still .streak-card-day>.streak-icon,.streak-card.is-still .streak-card-tag,.streak-card.is-still :is(.streak-card-roll span,.streak-card-bar i){animation:none}.streak-card.is-still .streak-card-roll span:first-child{display:none}.streak-flight{--T:6.8s;--D:0.5s;position:fixed;inset:0;z-index:41;pointer-events:none}.streak-flyer{position:absolute;left:0;top:0;width:128px;height:92px;offset-rotate:0deg;offset-anchor:50% 70%}.streak-flight-phone .streak-flyer{width:108px;height:78px}.streak-flight-desk .streak-flyer{animation:streak-fly-d var(--T) linear var(--D) both}.streak-flight-phone .streak-flyer{animation:streak-fly-p var(--T) linear var(--D) both}html[data-oggo-flying] .site-shell>.oggo:not(.oggo-teacher) .oggo-button{visibility:hidden}@keyframes streak-fly-d{0%,5.6%{offset-distance:0;animation-timing-function:cubic-bezier(.2,.44,.6,.8)}14.5%{offset-distance:var(--fly-1,9.54%);animation-timing-function:cubic-bezier(.32,.09,.4,1)}30%{offset-distance:var(--fly-2,39.68%);animation-timing-function:ease-in-out}52%{offset-distance:var(--fly-3,56.98%);animation-timing-function:ease-in-out}80%,86.5%{offset-distance:var(--fly-4,92.8%);animation-timing-function:cubic-bezier(.55,0,1,.55)}90%,to{offset-distance:100%}}@keyframes streak-fly-p{0%,5.6%{offset-distance:0;animation-timing-function:cubic-bezier(.2,.44,.6,.8)}14.5%{offset-distance:var(--fly-1,11.91%);animation-timing-function:cubic-bezier(.3,.11,.4,1)}30%{offset-distance:var(--fly-2,39.67%);animation-timing-function:ease-in-out}52%{offset-distance:var(--fly-3,63.27%);animation-timing-function:ease-in-out}80%,86.5%{offset-distance:var(--fly-4,89.73%);animation-timing-function:cubic-bezier(.55,0,1,.55)}90%,to{offset-distance:100%}}.oggo-flyer-drawing{position:absolute;left:50%;bottom:0;height:100%;transform:translateX(-50%);overflow:visible}.oggo-flyer-drawing :is(.flyer-whole,.flyer-legs,.flyer-retract,.flyer-bodydrop,.oggo-thigh,.oggo-shin,.oggo-foot,.flyer-sprout,.oggo-wing-r,.oggo-wing-l){transform-box:view-box}.oggo-flyer-drawing .flyer-whole{transform-origin:120px 330px}.oggo-flyer-drawing .flyer-retract{transform-origin:120px 200px}.oggo-flyer-drawing .oggo-thigh-l{transform-origin:96px 200px}.oggo-flyer-drawing .oggo-thigh-r{transform-origin:144px 200px;--knee:-1}.oggo-flyer-drawing .oggo-shin-l{transform-origin:96px 257px}.oggo-flyer-drawing .oggo-shin-r{transform-origin:144px 257px;--knee:-1}.oggo-flyer-drawing .oggo-foot-l{transform-origin:96px 318px}.oggo-flyer-drawing .oggo-foot-r{transform-origin:144px 318px;--knee:-1}.oggo-flyer-drawing .flyer-sprout-r{transform-origin:201.67px 99.33px;--wing:1}.oggo-flyer-drawing .flyer-sprout-l{transform-origin:38.33px 99.33px;--wing:-1}.oggo-flyer-drawing .flyer-sprout{transform:scale(0)}.streak-flight .oggo-flyer-drawing .flyer-whole{animation:streak-stretch var(--T) linear var(--D) both}.streak-flight .oggo-flyer-drawing :is(.flyer-legs,.flyer-bodydrop){animation:streak-drop-hips var(--T) linear var(--D) both}.streak-flight .oggo-flyer-drawing .flyer-retract{animation:streak-retract var(--T) linear var(--D) both}.streak-flight .oggo-flyer-drawing .oggo-thigh{animation:streak-thigh var(--T) linear var(--D) both}.streak-flight .oggo-flyer-drawing .oggo-shin{animation:streak-shin var(--T) linear var(--D) both}.streak-flight .oggo-flyer-drawing .oggo-foot{animation:streak-foot var(--T) linear var(--D) both}.streak-flight .oggo-flyer-drawing .flyer-sprout{animation:streak-sprout var(--T) linear var(--D) both}.oggo-flyer-drawing .oggo-wing-r{transform-origin:201.67px 99.33px;animation:oggo-flap-r .32s linear infinite}.oggo-flyer-drawing .oggo-wing-l{transform-origin:38.33px 99.33px;animation:oggo-flap-l .32s linear infinite}@keyframes streak-stretch{0%{transform:none;animation-timing-function:ease-out}4.4%,5.6%{transform:scale(1.07,.9)}6.6%{transform:scale(.88,1.16)}9%{transform:scale(.95,1.06)}12%,86.5%{transform:none}89%{transform:scale(.96,1.05)}90%{transform:scale(.97,1.04)}91.5%{transform:scale(1.09,.86)}94%{transform:scale(.98,1.03)}96%,to{transform:none}}@keyframes streak-drop-hips{0%{transform:none;animation-timing-function:ease-out}4.4%,5.6%{transform:translateY(36px)}6.6%,90%{transform:none}91.5%{transform:translateY(36px)}96%,to{transform:none}}@keyframes streak-thigh{0%{transform:none;animation-timing-function:ease-out}4.4%,5.6%{transform:rotate(calc(var(--knee, 1) * 45deg))}6.6%,90%{transform:none}91.5%{transform:rotate(calc(var(--knee, 1) * 45deg))}96%,to{transform:none}}@keyframes streak-shin{0%{transform:none;animation-timing-function:ease-out}4.4%,5.6%{transform:rotate(calc(var(--knee, 1) * -90deg))}6.6%,90%{transform:none}91.5%{transform:rotate(calc(var(--knee, 1) * -90deg))}96%,to{transform:none}}@keyframes streak-foot{0%{transform:none;animation-timing-function:ease-out}4.4%,5.6%{transform:rotate(calc(var(--knee, 1) * 45deg))}7%{transform:rotate(calc(var(--knee, 1) * -22deg))}80%{transform:rotate(calc(var(--knee, 1) * -30deg))}88%{transform:rotate(calc(var(--knee, 1) * -16deg))}90%{transform:none}91.5%{transform:rotate(calc(var(--knee, 1) * 45deg))}96%,to{transform:none}}@keyframes streak-retract{0%,6.4%{transform:none;opacity:1;animation-timing-function:cubic-bezier(.45,0,.55,1)}9%{transform:scale(.8,.45);opacity:1;animation-timing-function:ease-in}10.6%{transform:scale(.6,.02);opacity:0}80%{transform:scale(.6,.02);opacity:0;animation-timing-function:ease-out}81.5%{transform:scale(.8,.4);opacity:1;animation-timing-function:cubic-bezier(.3,1.5,.5,1)}84%,to{transform:none;opacity:1}}@keyframes streak-sprout{0%,10%{transform:scale(0) rotate(calc(var(--wing) * 80deg));animation-timing-function:ease-out}11.8%{transform:scale(.55) rotate(calc(var(--wing) * 55deg));animation-timing-function:cubic-bezier(.3,1.4,.5,1)}13.3%{transform:scale(1.15) rotate(calc(var(--wing) * -14deg));animation-timing-function:ease-in-out}14.5%,84%{transform:none;animation-timing-function:ease-in}86%{transform:scale(.55) rotate(calc(var(--wing) * 60deg));animation-timing-function:ease-in}87.5%,to{transform:scale(0) rotate(calc(var(--wing) * 80deg))}}@media (prefers-reduced-motion:reduce){.streak-flight{display:none}}:root{--key-rise:-1px;--key-sink:1px}@media (prefers-reduced-motion:reduce){:root{--key-rise:0px;--key-sink:0px}}:is(.action-primary,.action-go,.action-club,.blitz-key,.play-button,.learn-nudge-call,.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab,.game-row,.review-row,.live-row,.tour-row,.tour-mini-row,.blitz-board-row,.collections-cell,.collection-card,.inbox-item,.featured-card,.first-week-row,.climb-collections-item){border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;text-decoration:none;transition:transform .08s ease,box-shadow .08s ease,border-color .15s ease,color .15s ease}:is(.action-primary,.action-go,.action-club,.blitz-key,.play-button,.learn-nudge-call,.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab){font-family:var(--font-display-stack);font-weight:600;line-height:1.2}:is(.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.copy-button,.enter-link,.disclosure-key){display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.2rem .75rem;font-size:var(--step--1)}:is(.action-primary,.play-button,.learn-nudge-call){border-color:var(--accent-deep);background:linear-gradient(180deg,var(--accent-lit) 0,var(--accent) 100%);color:var(--accent-ink);box-shadow:inset 0 1px 0 rgba(255,248,247,.22),inset 0 calc(-1 * var(--key-lip)) 0 var(--accent-deep),0 1px 2px rgba(54,5,12,.2)}:is(.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab,.game-row,.review-row,.live-row,.tour-row,.tour-mini-row,.blitz-board-row,.collections-cell,.collection-card,.inbox-item,.featured-card,.first-week-row,.climb-collections-item){background:linear-gradient(180deg,var(--key-cream-top) 0,var(--panel-high) 100%);color:var(--ink);box-shadow:inset 0 1px 0 var(--key-cream-shine),inset 0 calc(-1 * var(--key-lip)) 0 var(--key-cream-lip),var(--key-shadow)}:is(.enter-link){color:var(--accent-text)}:is(.action-primary,.play-button,.learn-nudge-call):hover{background:linear-gradient(180deg,var(--accent-hover-top) 0,var(--accent-hover) 100%);transform:translateY(var(--key-rise));box-shadow:inset 0 1px 0 rgba(255,248,247,.26),inset 0 calc(-1 * var(--key-lip)) 0 var(--accent-deep),0 2px 6px rgba(54,5,12,.22)}:is(.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab,.game-row,.review-row,.live-row,.tour-row,.tour-mini-row,.blitz-board-row,.collections-cell,.collection-card,.inbox-item,.featured-card,.first-week-row,.climb-collections-item):hover{border-color:var(--key-cream-edge);background:linear-gradient(180deg,var(--key-cream-shine) 0,var(--key-cream-hover) 100%);transform:translateY(var(--key-rise));box-shadow:inset 0 1px 0 var(--key-cream-shine),inset 0 calc(-1 * var(--key-lip)) 0 var(--key-cream-lip),var(--key-shadow-hover)}.chat-key[aria-expanded=true],.climb-collections-key[aria-expanded=true],.inbox-bell[aria-expanded=true],.nav-item[aria-current=page],.size-choice:has(>:checked),:is(.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab)[aria-selected=true],:is(.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab,.action-quiet)[aria-pressed=true]{border-color:var(--key-cream-edge);background:linear-gradient(180deg,var(--key-cream-pressed) 0,var(--panel-high) 100%);color:var(--accent-text);transform:none;box-shadow:inset 0 1px 3px rgb(var(--shade-rgb)/.18),inset 0 -1px 0 rgb(var(--glint-rgb)/.6)}:is(.action-primary,.play-button,.learn-nudge-call):active{background:linear-gradient(180deg,var(--accent-deep) 0,var(--accent) 100%);transform:translateY(var(--key-sink));box-shadow:inset 0 2px 5px rgba(20,0,4,.55),inset 0 -1px 0 rgba(255,248,247,.12)}.nav-item:has(>.nav-pending[data-pending=true]),:is(.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab,.game-row,.review-row,.live-row,.tour-row,.tour-mini-row,.blitz-board-row,.collections-cell,.collection-card,.inbox-item,.featured-card,.first-week-row,.climb-collections-item):active{border-color:var(--key-cream-edge);background:linear-gradient(180deg,var(--key-cream-pressed) 0,var(--panel-high) 100%);transform:translateY(var(--key-sink));box-shadow:inset 0 2px 4px rgb(var(--shade-rgb)/.22),inset 0 -1px 0 rgb(var(--glint-rgb)/.6)}:is(.action-primary,.action-go,.action-club,.blitz-key,.play-button,.learn-nudge-call,.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab,.game-row,.review-row,.live-row,.tour-row,.tour-mini-row,.blitz-board-row,.collections-cell,.collection-card,.inbox-item,.featured-card,.first-week-row,.climb-collections-item):focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}:is(.action-primary,.play-button,.learn-nudge-call):is(:disabled,[aria-disabled=true]){opacity:.55;cursor:default;transform:none;background:linear-gradient(180deg,var(--accent-lit) 0,var(--accent) 100%);box-shadow:inset 0 calc(-1 * var(--key-lip)) 0 var(--accent-deep)}:is(.action-quiet,.copy-button,.enter-link,.nav-item,.nav-toggle,.learn-map-button,.quiet-link,.review-row-key,.collections-back,.tour-back,.report-game-link,.bracket-link,.learn-nudge-close,.oggo-close,.disclosure-key,.size-choice,.mode-choice,.deck-move,.learn-tab,.blitz-tab,.collections-tab):is(:disabled,[aria-disabled=true]){opacity:.55;cursor:default;transform:none;border-color:var(--line-strong);background:linear-gradient(180deg,var(--key-cream-top) 0,var(--panel-high) 100%);box-shadow:inset 0 calc(-1 * var(--key-lip)) 0 var(--key-cream-lip)}.size-choice[aria-disabled=true]{border-style:dashed;cursor:not-allowed}:is(.size-row,.mode-row,.deck-moves,.blitz-tabs,.collections-tabs,.learn-tabs,.bracket-round-nav,.review-tray,.review-tabs,.review-lines-foot){padding:.3rem;border:0;border-radius:var(--radius-lg);background:var(--tray);box-shadow:inset 0 2px 4px rgb(var(--shade-rgb)/.1),inset 0 -1px 0 rgb(var(--glint-rgb)/.7)}.action-go:not(.nav-item){min-height:2.75rem;padding:.5rem 1.1rem}.action-go:not(.nav-item):hover{transform:translateY(var(--key-rise))}.action-go:not(.nav-item):active{transform:translateY(var(--key-sink))}.action-go,.action-go:has(>.nav-pending[data-pending=true]),.action-go:is(:hover,:active,[aria-current=page]){color:#fff;border-color:#0f4d1f}.action-go{background:linear-gradient(180deg,#22803a 0,var(--done) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),inset 0 calc(-1 * var(--key-lip)) 0 #0f4d1f,var(--key-shadow)}.action-go:hover{background:linear-gradient(180deg,#23843b,#1d8036);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),inset 0 calc(-1 * var(--key-lip)) 0 #0f4d1f,var(--key-shadow-hover)}.action-go:active,.action-go:has(>.nav-pending[data-pending=true]),.action-go[aria-current=page]{background:linear-gradient(180deg,#125a24 0,var(--done) 100%);box-shadow:inset 0 2px 5px rgba(0,20,5,.5)}.action-go .nav-icon{color:#fff}.action-club,.action-club:has(>.nav-pending[data-pending=true]),.action-club:is(:hover,:active,[aria-current=page]){color:var(--grid);border-color:#8a5f14}.action-club{background:linear-gradient(180deg,#f2d68a 0,var(--club-gold) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 calc(-1 * var(--key-lip)) 0 #a8802c,var(--key-shadow)}.action-club:hover{background:linear-gradient(180deg,#f8e09c,#e3bd69);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 calc(-1 * var(--key-lip)) 0 #a8802c,var(--key-shadow-hover)}.action-club:active,.action-club:has(>.nav-pending[data-pending=true]),.action-club[aria-current=page]{background:linear-gradient(180deg,#c99d48 0,var(--club-gold) 100%);box-shadow:inset 0 2px 5px rgba(60,35,0,.45)}.action-club .nav-icon{color:#5a0b13}.blitz-key,.blitz-key:is(:hover,:active){color:#1f0d06;border-color:#a3462a}.blitz-key{background:linear-gradient(180deg,#f2936e,#e2683f);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 calc(-1 * var(--key-lip)) 0 #a3462a,var(--key-shadow)}.blitz-key:hover{background:linear-gradient(180deg,#f59d7a,#e8744c);transform:translateY(var(--key-rise));box-shadow:inset 0 1px 0 rgba(255,255,255,.4),inset 0 calc(-1 * var(--key-lip)) 0 #a3462a,var(--key-shadow-hover)}.blitz-key:active{background:linear-gradient(180deg,#cd5a33,#e2683f);transform:translateY(var(--key-sink));box-shadow:inset 0 2px 5px rgba(70,20,0,.45)}.key-best{min-height:3rem;padding:.4rem 1.1rem .4rem .85rem;font-size:var(--step-1)}.key-coach,.key-home,.key-kata,.key-you{min-height:2.75rem;padding:.4rem .85rem;font-size:var(--step-0)}:is(.key-best,.key-kata,.key-you,.key-coach,.key-home){display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:2.75rem;border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;text-decoration:none;white-space:nowrap;font-family:var(--font-display-stack);font-weight:600;line-height:1.2;transition:transform .08s ease,box-shadow .08s ease,border-color .15s ease,color .15s ease}.key-best>[data-icon]{flex:none;width:1.5rem;height:1.5rem}:is(.key-kata,.key-you,.key-coach,.key-home)>svg{flex:none;width:1.125rem;height:1.125rem}.key-best:hover{transform:translateY(var(--key-rise));box-shadow:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -3px 0 var(--kata-deep),0 3px 8px rgb(var(--shade-rgb)/.24)}.key-best:active{background:linear-gradient(180deg,var(--kata-deep) 0,var(--kata) 100%);transform:translateY(var(--key-sink));box-shadow:inset 0 2px 5px rgba(0,20,5,.5)}:is(.key-kata,.key-you,.key-coach){background:linear-gradient(180deg,var(--key-cream-top) 0,var(--panel-high) 100%);box-shadow:inset 0 1px 0 var(--key-cream-shine),inset 0 calc(-1 * var(--key-lip)) 0 var(--key-cream-lip),var(--key-shadow)}:is(.key-kata,.key-you,.key-coach):hover{background:linear-gradient(180deg,var(--key-cream-shine) 0,var(--key-cream-hover) 100%);transform:translateY(var(--key-rise));box-shadow:inset 0 1px 0 var(--key-cream-shine),inset 0 calc(-1 * var(--key-lip)) 0 var(--key-cream-lip),var(--key-shadow-hover)}:is(.key-kata,.key-you,.key-coach):active{background:linear-gradient(180deg,var(--key-cream-pressed) 0,var(--panel-high) 100%);transform:translateY(var(--key-sink));box-shadow:inset 0 2px 4px rgb(var(--shade-rgb)/.22),inset 0 -1px 0 rgb(var(--glint-rgb)/.6)}.key-you[aria-pressed=true]{background:var(--line-you);color:#fff;transform:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.35)}.key-mark{position:relative;width:100%;min-width:0;padding-inline:0}.key-mark-tool{position:relative;min-width:2.75rem}:is(.key-mark,.key-mark-tool)>kbd{display:none;position:absolute;right:-.3rem;bottom:-.35rem;min-width:1rem;padding:.05rem .2rem;border:solid var(--line-strong);border-width:1px 1px 2px;border-radius:.25rem;background:var(--panel-high);color:var(--ink-soft);font:600 .625rem/1 var(--font-display-stack);pointer-events:none}@media (hover:hover) and (pointer:fine){:is(.key-mark,.key-mark-tool)>kbd{display:block}}.key-stone{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;font:900 .75rem/1 var(--font-display-stack)}.key-disc{display:block;width:1rem;height:1rem;border-radius:50%;box-shadow:0 0 0 1.5px currentColor}.key-coach[aria-pressed=true]{background:var(--line-coach);color:#fff;transform:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.35)}.key-home:hover{background:linear-gradient(180deg,#46405a,#29263a);transform:translateY(var(--key-rise));box-shadow:inset 0 1px 0 rgba(255,255,255,.2),inset 0 calc(-1 * var(--key-lip)) 0 var(--logo-navy-deep),var(--key-shadow-hover)}.key-home:active{background:linear-gradient(180deg,var(--logo-navy-deep) 0,var(--logo-navy) 100%);transform:translateY(var(--key-sink));box-shadow:inset 0 2px 5px rgba(0,0,0,.55)}:is(.key-best,.key-kata,.key-you,.key-coach,.key-home):focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}:is(.key-best,.key-kata,.key-you,.key-coach,.key-home):is(:disabled,[aria-disabled=true]){opacity:.55;cursor:default;transform:none}:is(.key-kata,.key-you,.key-coach):is(:disabled,[aria-disabled=true]){background:linear-gradient(180deg,var(--key-cream-top) 0,var(--panel-high) 100%);box-shadow:inset 0 calc(-1 * var(--key-lip)) 0 var(--key-cream-lip)}.review-dock{container:review-dock/inline-size;display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;block-size:3.5rem;min-width:0}.review-tray{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem;min-width:0}.review-tray>:not(.review-tray-sep){min-width:2.75rem;min-height:2.5rem;padding-inline:.6rem}.review-tray-sep{align-self:stretch;flex:none;inline-size:1px;margin:.375rem .125rem;background:var(--line-strong)}.review-kata{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.position-card-grade,.review-chip-kata,.review-kata-text,.review-lines-foot{display:none}.board-wrap>.reject-flash>.review-chip-kata{display:block;flex:1 1;min-width:0;overflow:hidden;color:var(--ink);white-space:nowrap;text-overflow:ellipsis}.review-playback{display:flex;flex:none;align-items:center;gap:.25rem;margin-inline-start:auto;color:var(--ink)}.review-playback>.action-quiet{min-height:1.875rem;padding:.125rem .625rem;font-size:var(--step--1);line-height:1}.review-playback>.review-playback-step{min-width:1.875rem;padding-inline:0}.review-playback-rate{min-width:4.75rem;text-align:center;white-space:nowrap}.review-playback-rate,.review-playback>.review-playback-cycle{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.review-playback>.review-playback-cycle{display:none;min-width:2.5rem}@media (max-width:60rem){.review-playback-rate,.review-playback>.review-playback-step{display:none}.review-playback>.review-playback-cycle{display:inline-flex}}@container review-dock (max-width: 41rem){.review-tray{gap:.125rem}.review-tray>:not(.review-tray-sep){min-width:2.25rem;padding-inline:.4rem}.review-kata{gap:.25rem}}@container review-dock (max-width: 31rem){.review-dock .key-kata{padding-inline:.5rem}.review-dock .key-best{flex-direction:column;gap:.0625rem;min-width:2.25rem;padding:.2rem .375rem;font-size:.75rem;line-height:1}.review-dock .key-best>[data-icon]{width:1.25rem;height:1.25rem}}@container review-dock (max-width: 22rem){.review-tray{flex:1 1 auto;overflow-x:auto}.review-tray>:not(.review-tray-sep){flex:1 1 auto;min-width:2rem;padding-inline:.25rem}}@media (max-width:60rem){.review-dock{display:flex;gap:.125rem;block-size:3.5rem}.review-dock .key-kata,.review-dock .review-play,.review-tray-sep{display:none}.review-tray{flex:1 1 auto;gap:.125rem;padding:.25rem;overflow-x:visible}.review-tray>:not(.review-tray-sep){flex:1 1;min-width:2.25rem;padding-inline:0}.review-kata{flex:none}.review-dock .key-best>[data-icon]{width:1.25rem;height:1.25rem}.review-lines-foot{display:flex;flex:none;align-self:start;gap:.25rem;padding:.25rem}}.review-chip{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;min-height:1.875rem;padding:.15rem .75rem;overflow:hidden;border:1.5px solid var(--ink);border-radius:999px;background:var(--panel);color:var(--ink);font-family:var(--font-display-stack);font-size:var(--step--1);font-weight:600;line-height:1.2;white-space:nowrap;text-overflow:ellipsis}.board-frame{position:relative;max-width:46rem;margin-inline:auto;border-radius:var(--radius);outline-offset:3px}.game-page .board-frame{max-width:var(--board-side)}.board-frame[data-frame=mine],.board-frame[data-frame=shared]{outline:5px solid var(--line-you)}.board-frame[data-frame=shared]{outline-style:dashed}.board-frame[data-frame=coach]{outline:5px solid var(--line-coach)}.game-page.is-review>.review-moment{display:flex;flex-direction:column;overflow:hidden;container:review-moment/size}.moment-card-foot{display:flex;flex-direction:column;gap:.5rem;flex:none;margin-top:auto}.review-tabs{display:flex;gap:.25rem;padding:.25rem;min-width:0}.review-tabs>*{flex:1 1;min-width:0}.tour-form-text{display:grid;min-width:0}.tour-form-text .field-label{margin:0 0 .4rem}.tour-form-text input{width:100%;min-height:2.75rem;padding:.5rem .75rem}.tour-form-text input:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.site-main:has(>.climb){height:100dvh;display:flex;flex-direction:column;overflow:hidden}.site-main:has(>.climb)>.site-footer{display:none}.site-shell:has(.climb)>.oggo:not(.oggo-teacher){display:none}.climb{--track:var(--track-tutorial);--track-text:var(--track-tutorial-text);flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.climb [data-track=medium],.climb[data-track=medium]{--track:var(--track-lad);--track-text:var(--track-lad-text)}.climb [data-track=hard],.climb[data-track=hard]{--track:var(--track-openings);--track-text:var(--track-openings-text)}.climb [data-track=easy]{--track:var(--track-tutorial);--track-text:var(--track-tutorial-text)}.climb-bar{position:relative;z-index:4;flex:none;display:flex;flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem 16px .6rem;border-bottom:1px solid var(--line);background:var(--bg)}.climb-bar,.climb-menu{min-width:0}.climb-tab{flex:none;min-width:6rem;align-items:center;text-align:center}.climb-collections{flex:none;display:flex}.climb-collections-caret{flex:none}.climb-collections-menu{position:absolute;top:calc(100% + .5rem);right:0;z-index:5;width:min(20.5rem,calc(100vw - 32px));display:flex;flex-direction:column;gap:.25rem;padding:.375rem;background:var(--panel);border:1px solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-ambient)}.climb-collections-words{display:flex;flex-direction:column;gap:.1rem;min-width:0}.climb-collections-count{flex:none;font-size:var(--step--1);font-weight:600;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.climb-body{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr)}.climb-tile{position:absolute;display:block;max-width:none;opacity:0;transition:opacity .2s ease;pointer-events:none;-webkit-user-select:none;user-select:none}.climb-tile.is-loaded{opacity:1}.climb-trail-ahead{fill:none;stroke:var(--ink);stroke-width:2.5;stroke-dasharray:1 9;stroke-linecap:round;opacity:.75}.climb-trail-walked{fill:none;stroke:var(--track);stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.climb-step{position:absolute;z-index:1;display:grid;place-items:center;width:52px;height:52px;margin:-26px 0 0 -26px;padding:0;border:2px solid var(--ink);border-radius:50%;background:var(--panel);color:var(--ink);font-family:var(--font-display-stack);font-size:1.05rem;font-weight:700;cursor:pointer;box-shadow:var(--key-shadow);transition:transform .08s ease}.climb-oggo{position:absolute;z-index:1;width:34px;margin-top:-32px;pointer-events:none}.climb-oggo.is-left{margin-left:-82px}.climb-oggo.is-right{margin-left:48px}.climb-oggo.is-under-seal{margin-top:24px}.climb-oggo.is-left.is-under-seal{margin-left:-71px}.climb-oggo.is-right.is-under-seal{margin-left:37px}.climb-path-box-hearts{display:flex;align-items:center;gap:.5rem;flex:none}.hearts-row{display:inline-flex;align-items:center;gap:3px;flex:none}.heart-glyph{display:block;overflow:visible}.heart-glyph .heart-shape{stroke-width:1.6;stroke-linejoin:round}.heart-glyph.is-full .heart-shape{fill:var(--heart);stroke:var(--heart-edge)}.heart-glyph.is-empty .heart-shape{fill:none;stroke:var(--ink-soft);stroke-dasharray:3 2.4}.heart-glyph .heart-shine{fill:none;stroke:var(--heart-shine);stroke-width:1.6;stroke-linecap:round}.climb-hearts-card{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0}.climb-hearts-signup h2{margin:0 0 .6rem;font-size:var(--step-1)}.climb-rail{display:none;flex-direction:column;gap:1rem;min-height:0;padding:1rem;border-left:1px solid var(--line);background:var(--bg);overflow-y:auto}.climb-rail>*{flex-shrink:0}.redrill-list{display:flex;flex-direction:column;gap:.5rem;width:100%;text-align:left}.redrill-list h2{margin:0;font-size:var(--step-0)}.redrill-list ul{display:flex;flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none}.redrill-row{display:flex}.redrill-more ul{margin-top:.4rem}@media (prefers-reduced-motion:reduce){.climb-step,.climb-tile{transition:none}}.placement-note{margin:0;font-size:var(--step-1);font-weight:400;color:var(--ink-soft)}.placement-keys>:is(a,button){display:inline-flex;flex:1 1;align-items:center;justify-content:center;text-align:center;white-space:nowrap}@media (min-width:40rem){.profile-tiles>:is(.placement-tile,.get-the-app)+.profile-tile{grid-column:1/-1}}.placement-reminder{width:min(26rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);overflow:hidden;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-raised)}.placement-reminder::backdrop{background:var(--scrim)}.placement-reminder-oggo{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem}.placement-reminder-face{width:4.5rem}.placement-reminder-keys{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:1.25rem}.placement-reminder-yes{display:grid;grid-column:1/-1}@media (max-width:23rem){.placement-reminder-keys{grid-template-columns:minmax(0,1fr)}}.promotion-toast{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));z-index:45;width:min(22rem,calc(100vw - var(--nav-w, 3.75rem) - 2rem));padding:1rem 1.1rem;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-raised)}.promotion-toast-title{margin:0;font-size:var(--step-1);font-weight:600}.promotion-toast-words{margin:.2rem 0 0;font-size:var(--step--1);color:var(--ink-soft)}.promotion-toast-keys{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.9rem}.promotion-toast-keys :is(a,button){justify-content:center;text-align:center}.open-challenges{container:open-challenges/inline-size}.open-challenges-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem}.open-challenges-head :is(h1,h2){margin:0}.open-challenges-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin:1rem 0}.open-challenges-tools .choice-field{flex:1 1 18rem;margin:0;padding:0;border:0}.open-challenges-tools>.action-quiet{display:inline-flex;align-items:center}.open-challenges-empty{color:var(--ink-soft)}.open-challenges-table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.open-challenges-table td,.open-challenges-table th{padding:.45rem .6rem;text-align:left;border-bottom:1px solid var(--line)}.open-challenges-table th{font-size:var(--step--1);font-weight:600;color:var(--ink-soft)}.open-challenges-table .open-challenges-line{display:none}.open-challenges-table .open-challenges-key{text-align:right;white-space:nowrap;color:var(--ink-soft);font-size:var(--step--1)}.open-challenges-table .open-challenges-key>:is(.action-primary,.action-quiet){min-height:2.25rem;padding:.3rem .9rem;font-size:var(--step--1)}@container open-challenges (max-width: 40rem){.open-challenges-table .open-challenges-setting,.open-challenges-table thead{display:none}.open-challenges-table tbody{display:grid;gap:.6rem}.open-challenges-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"who elo key" "line line key";align-items:center;column-gap:.75rem;padding:.6rem .75rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel)}.open-challenges-table td{padding:0;border:0}.open-challenges-table .open-challenges-player{grid-area:who;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.open-challenges-table .open-challenges-elo{grid-area:elo}.open-challenges-table .open-challenges-line{display:block;grid-area:line;font-size:var(--step--1);color:var(--ink-soft)}.open-challenges-table .open-challenges-key{grid-area:key}}@container open-challenges (max-width: 26rem){.open-challenges-table tr{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who elo" "line line" "key key";row-gap:.4rem}.open-challenges-table .open-challenges-key{text-align:left}}