:root{--bg:#11141a;--bg-2:#181c24;--bg-3:#212733;--line:#2c3442;--text:#e8ebf0;--muted:#9aa4b5;--accent:#ffd500;--accent-ink:#1b1600;--ok:#2fbf71;--ko:#ef4f4f;--info:#4c8dff;--locked:#555e6e;--radius:10px;--shadow:0 8px 24px #00000059;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root{--bg:#f6f7f9;--bg-2:#fff;--bg-3:#eceff3;--line:#d7dce4;--text:#161a21;--muted:#5d6676;--accent:#f2c200;--accent-ink:#1b1600;--locked:#a3abb8;--shadow:0 8px 24px #141e321f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--info)}h1{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.6rem}h2{margin:1.4rem 0 .5rem;font-size:1.15rem}h3{margin:1rem 0 .4rem;font-size:1rem}p{margin:.4rem 0 .8rem}.muted{color:var(--muted)}.small{font-size:.85rem}.big{font-size:1.4rem}.mono{font-family:var(--mono)}.center{text-align:center}.error{color:var(--ko)}.print-only{display:none}.shell{min-height:100vh;flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:20;padding:.6rem 1rem;padding-top:max(.6rem, env(safe-area-inset-top));background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:1rem;display:flex;position:sticky;top:0}.brand{color:var(--text);align-items:center;gap:.5rem;font-weight:700;text-decoration:none;display:flex}.brand__cube{background:conic-gradient(var(--accent) 0 25%, #009b48 0 50%, #ff5800 0 75%, #0046ad 0);border-radius:5px;width:22px;height:22px}.nav{flex:1;gap:.25rem;display:flex}.nav a{color:var(--muted);border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .75rem;font-weight:500;text-decoration:none;display:flex}.nav a:hover{color:var(--text);background:var(--bg-3)}.nav a.active{color:var(--accent-ink);background:var(--accent)}.nav__icon{text-align:center;width:1em;font-size:.9rem}.topbar__right{align-items:center;gap:.75rem;display:flex}.streak{font-weight:600}.account{color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.3rem .6rem;font-size:.9rem;text-decoration:none}.account--ok:before{content:"● ";color:var(--ok)}.account--offline:before,.account--error:before{content:"● ";color:var(--ko)}.account--syncing:before{content:"● ";color:var(--accent)}.page{width:100%;max-width:920px;margin:0 auto;padding:1.25rem 16px 6rem}.page--wide{max-width:1280px}.page--tree{max-width:none}.page__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}@media (max-width:720px){.topbar{gap:.5rem}.nav{z-index:30;padding:.35rem .25rem;padding-bottom:max(.35rem, env(safe-area-inset-bottom));background:var(--bg-2);border-top:1px solid var(--line);justify-content:space-around;gap:0;position:fixed;bottom:0;left:0;right:0}.nav a{border-radius:8px;flex-direction:column;gap:0;padding:.3rem .5rem;font-size:.72rem}.nav__icon{font-size:1.1rem}.brand{flex:1}}.btn{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-3);min-height:40px;color:var(--text);font:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.4rem;padding:.45rem .95rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--muted)}.btn:disabled{opacity:.45;cursor:default}.btn--primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn--ok{background:var(--ok);color:#04170c;border-color:var(--ok)}.btn--ko{background:var(--ko);color:#1d0505;border-color:var(--ko)}.btn--danger{color:var(--ko)}.btn--small{min-height:32px;padding:.25rem .65rem;font-size:.88rem}.linklike{color:var(--info);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.row{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.row--center{justify-content:center}.row--tight{gap:.25rem;margin:.25rem 0 0}input,select,textarea{font:inherit;color:var(--text);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);min-height:40px;padding:.45rem .65rem;font-size:max(16px,1rem)}input[type=checkbox]{width:1.1rem;height:1.1rem;min-height:0;accent-color:var(--accent);vertical-align:-.15rem}textarea{resize:vertical;width:100%}.callout{background:var(--bg-2);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);margin:1rem 0;padding:.8rem 1rem}.pill{background:var(--bg-3);color:var(--muted);border-radius:999px;padding:.05rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.pill--known,.pill--acquired{background:color-mix(in srgb, var(--ok) 22%, transparent);color:var(--ok)}.pill--learning,.pill--progress{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--accent)}.pill--available{background:color-mix(in srgb, var(--info) 22%, transparent);color:var(--info)}.tag{background:var(--bg-3);border-radius:4px;margin-left:.3rem;padding:0 .35rem;font-size:.75rem}.tabs{border-bottom:1px solid var(--line);gap:.25rem;margin:.5rem 0 1rem;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:.55rem .9rem;text-decoration:none}.tabs a.active{color:var(--text);border-bottom-color:var(--accent)}.form{gap:.75rem;max-width:360px;display:grid}.form label{gap:.25rem;display:grid}details summary{cursor:pointer}.twisty{aspect-ratio:1;width:100%}.tree-graph{margin:1rem 0;position:relative;overflow:visible}.tree-scroll{margin:0 -16px;padding:0 16px;overflow-x:auto}.tree-graph__edges{pointer-events:none;position:absolute;inset:0}.band-title{fill:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.edge{fill:none;stroke:var(--line);stroke-width:2px}.edge--acquired{stroke:var(--ok)}.edge--progress,.edge--available{stroke:color-mix(in srgb, var(--info) 60%, var(--line))}.tree-graph__slot{position:absolute}.node{text-align:left;border:2px solid var(--line);background:var(--bg-2);width:100%;height:100%;color:var(--text);font:inherit;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;padding:.5rem .7rem;display:flex;position:relative;overflow:hidden}.node__title{font-size:.92rem;font-weight:600;line-height:1.2}.node__meta{color:var(--muted);font-size:.75rem}.node__bar{background:var(--accent);height:4px;position:absolute;bottom:0;left:0}.node--locked{opacity:.55;border-style:dashed}.node--soon{opacity:.4;border-style:dotted}.node--available{border-color:var(--info)}.node--progress{border-color:var(--accent)}.node--acquired{border-color:var(--ok);background:color-mix(in srgb, var(--ok) 12%, var(--bg-2))}.node--acquired .node__bar{background:var(--ok)}.node--optional .node__title:after{content:" ◇";color:var(--muted)}.node--selected{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 55%, transparent)}.tree-list{display:none}@media (max-width:860px){.tree-scroll{display:none}.tree-list{display:block}.tree-list__nodes{gap:.5rem;display:grid}.tree-list .node{min-height:60px}}.detail{z-index:40;background:var(--bg-2);border:1px solid var(--line);width:min(380px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;padding:1rem 1.1rem;position:fixed;top:76px;bottom:16px;right:16px;overflow-y:auto}.detail h2{margin-top:.3rem}.detail__close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.6rem;position:absolute;top:.5rem;right:.6rem}@media (max-width:720px){.detail{max-height:70vh;top:auto;bottom:72px}}.criteria{gap:.5rem;padding:0;list-style:none;display:grid}.criteria li{background:var(--bg-3);border-radius:8px;padding:.45rem .6rem;font-size:.92rem}.criteria li.done{outline:1px solid color-mix(in srgb, var(--ok) 50%, transparent)}.criteria__check{font-weight:700}.criteria__bar{background:var(--line);border-radius:2px;height:4px;margin-top:.35rem;display:block}.criteria__bar span{background:var(--accent);border-radius:2px;height:100%;display:block}.chrono__scramble{text-align:center}.scramble{word-spacing:.15em;max-width:760px;margin:.5rem auto;font-size:clamp(1.05rem,2.6vw,1.45rem);line-height:1.6}.chrono__preview{width:280px;height:200px;margin:0 auto}.chrono__preview .twisty{aspect-ratio:auto;height:100%}.timer{background:var(--bg-2);border:1px solid var(--line);-webkit-user-select:none;user-select:none;touch-action:none;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:220px;margin:1rem 0;padding:2rem 1rem;display:flex}.timer__time{font:700 clamp(3.5rem, 14vw, 7rem) / 1 var(--mono);font-variant-numeric:tabular-nums}.timer__phase{color:var(--muted);text-align:center;min-height:1.5em;margin-top:.75rem}.timer--holding .timer__time{color:var(--ko)}.timer--ready .timer__time{color:var(--ok)}.timer--inspecting .timer__time{color:var(--accent)}.timer--disabled{opacity:.5}.timer__splits{flex-wrap:wrap;justify-content:center;gap:1rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.timer__splits span{color:var(--muted);font-size:.85rem}.chrono--running .chrono__scramble,.chrono--running .chrono__stats,.chrono--running .chrono__settings{visibility:hidden}.chrono--running .timer{min-height:60vh}.last-solve{gap:.75rem}.stats__table{border-collapse:collapse;min-width:260px}.stats__table th,.stats__table td{text-align:right;font-variant-numeric:tabular-nums;padding:.3rem .8rem}.stats__table th:first-child{text-align:left;color:var(--muted);font-weight:500}.stats__table thead th{color:var(--muted);font-size:.85rem;font-weight:500}.phasebar{border-radius:8px;gap:2px;font-size:.8rem;display:flex;overflow:hidden}.phasebar__seg{white-space:nowrap;color:#111;min-width:4.5rem;padding:.35rem .5rem;font-weight:600}.phasebar__seg--0{background:#e8ebf0}.phasebar__seg--1{color:#fff;background:#009b48}.phasebar__seg--2{background:#ffd500}.phasebar__seg--3{background:#ff5800}.spark svg{width:100%;height:80px;display:block}.spark__line{fill:none;stroke:var(--muted);stroke-width:1.2px;vector-effect:non-scaling-stroke}.spark__avg{fill:none;stroke:var(--accent);stroke-width:2.5px;vector-effect:non-scaling-stroke}.solve{border-bottom:1px solid var(--line);padding:.4rem 0}.solve summary{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.solve__n{color:var(--muted);font-variant-numeric:tabular-nums;width:2.5rem}.solve__splits{font-variant-numeric:tabular-nums;font-size:.85rem}.filters input[type=search]{flex:1;min-width:200px}.alg-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.6rem;display:grid}.alg-card{background:var(--bg-2);border:1px solid var(--line);color:var(--text);border-radius:12px;align-items:center;gap:.75rem;padding:.6rem;text-decoration:none;display:flex}.alg-card:hover{border-color:var(--muted)}.alg-card svg{flex-shrink:0}.ll-arrow{stroke:#161616;stroke-width:1.8px;stroke-linecap:round}.alg-card--known{border-left:4px solid var(--ok)}.alg-card--learning{border-left:4px solid var(--accent)}.alg-card__body{flex-direction:column;gap:.2rem;min-width:0;display:flex}.alg-card__name{font-weight:600}.alg-card__alg{color:var(--muted);overflow-wrap:anywhere;font-size:.85rem}.case-layout{grid-template-columns:minmax(260px,380px) 1fr;gap:1.5rem;display:grid}@media (max-width:720px){.case-layout{grid-template-columns:1fr}}.case-player .twisty{max-width:380px}.case-diagram{align-items:center;gap:1rem;display:flex}.variants{gap:.4rem;padding:0;list-style:none;display:grid}.variants li{background:var(--bg-2);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.45rem .6rem;display:flex}.variants .mono{flex:1;min-width:12rem}.variants__mine{border-color:var(--ok)!important}.notation-explorer{grid-template-columns:minmax(260px,360px) 1fr;gap:1.5rem;display:grid}@media (max-width:720px){.notation-explorer{grid-template-columns:1fr}}.notation-explorer__player .twisty{max-width:360px}.move-grid{flex-wrap:wrap;gap:.4rem;display:flex}.move-grid .btn{min-width:3rem}.move-grid--quiz{justify-content:center;margin:1rem 0}.move-grid--quiz .btn{min-width:5rem;min-height:56px}.sandbox__player{max-width:420px;margin:0 auto}.quiz{text-align:center;max-width:560px;margin:0 auto}.quiz__player{max-width:300px;margin:0 auto}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem;margin:1rem 0;display:grid}.choice{background:var(--bg-2);border:1px solid var(--line);color:var(--text);border-radius:12px;flex-direction:column;gap:.25rem;padding:.9rem;text-decoration:none;display:flex}.choice:hover{border-color:var(--accent)}.trainer__scramble{text-align:center}.trainer__case{justify-content:center;margin:.5rem 0;display:flex}.trainer__result{text-align:center}.trainer__result .row{text-align:left;gap:1.25rem}.steps{gap:.75rem;padding:0;list-style:none;display:grid}.steps li{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.steps li h2{margin:0 0 .25rem}.steps li p{margin:0}.steps li.done{opacity:.7;border-color:color-mix(in srgb, var(--ok) 50%, var(--line))}@media (max-width:560px){.steps li{flex-direction:column;align-items:stretch}}.placement-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.5rem;display:grid}.placement-case{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;align-items:center;gap:.6rem;padding:.5rem;display:flex}.placement-case--known{border-color:var(--ok)}.placement-case--learning{border-color:var(--accent)}.checklist{gap:.4rem;padding:0;list-style:none;display:grid}@media print{:root{--bg:#fff;--bg-2:#fff;--text:#000;--muted:#444;--line:#bbb}.topbar,.nav,.tabs,.filters,.page__head,.pill{display:none!important}.print-only{display:block}.alg-grid{grid-template-columns:repeat(3,1fr)}.alg-card{break-inside:avoid}.alg-card__alg{color:#000;font-size:10pt}}
/*$vite$:1*/