:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--page-bg:#fff8ee;--bg:#fff;--card:#fff;--card-alt:#fbf6ee;--fg:#2a2e45;--muted:#626679;--border:#eee5d7;--accent:#1a69cf;--accent-fill:#1d6fd8;--accent-dark:#1554a8;--accent-ink:#1958b7;--good:#1c7430;--good-fill:#2f9e44;--bad:#bf2a2a;--progress:#a64b06;--progress-fill:#e8590c;--sun:#ffc21a;--sun-ink:#8a5300;--sun-icon:#b47c00;--violet:#6741d9;--teal:#0b7285;--border-strong:#80869b;--question-bg:#f1f6ff;--pen-ink:#2a2e45;--pen-blue:#228be6;--pen-pink:#e64980;--chart-bar:#1d6fd8;--score-fill:linear-gradient(90deg, #6cb6ff, #2f80ed);--shadow:0 1px 2px #5a46280f, 0 8px 24px #5a462812;--radius:18px;--page:1232px;--reading:792px;--gutter:16px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--page-bg:#12162a;--bg:#171c33;--card:#1b2038;--card-alt:#232946;--fg:#eef1fb;--muted:#a7adc6;--border:#2f3656;--accent:#7cb0ff;--accent-fill:#2f6fd6;--accent-dark:#1f4fa3;--accent-ink:#7cb0ff;--good:#5fd47a;--good-fill:#2f9e44;--bad:#ff8787;--progress:#ffa94d;--progress-fill:#e8590c;--sun:#ffc93d;--sun-ink:#ffd66b;--sun-icon:#ffc93d;--violet:#b197fc;--teal:#66d9e8;--border-strong:#6a73a0;--question-bg:#1f2744;--pen-ink:#e9ecf8;--pen-blue:#4dabf7;--pen-pink:#f783ac;--chart-bar:#5b9cf5;--score-fill:linear-gradient(90deg, #3a7be0, #6aa8ff);--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040}}.theme-rp{--dc:#f76707;--dc-ink:#c2410c}.theme-ns{--dc:#1c7ed6;--dc-ink:#1864ab}.theme-ee{--dc:#7950f2;--dc-ink:#6741d9}.theme-f{--dc:#0c8599;--dc-ink:#0b7285}.theme-g{--dc:#2f9e44;--dc-ink:#237a36}.theme-sp{--dc:#e64980;--dc-ink:#c2255c}@media (prefers-color-scheme:dark){.theme-rp{--dc-ink:#ffa94d}.theme-ns{--dc-ink:#74c0fc}.theme-ee{--dc-ink:#b197fc}.theme-f{--dc-ink:#66d9e8}.theme-g{--dc-ink:#8ce99a}.theme-sp{--dc-ink:#faa2c1}}*{box-sizing:border-box}body{background:var(--page-bg);color:var(--fg);font:17px/1.6 var(--font-body,system-ui), system-ui, -apple-system, "Segoe UI", sans-serif;-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100dvh;margin:0;display:flex}#main{flex:1 0 auto}a{color:var(--accent);text-underline-offset:3px;font-weight:700}h1,h2,h3{font-weight:800;line-height:1.25}h1{margin:8px 0 20px;font-size:clamp(26px,4vw,34px)}h2{margin:0 0 14px;font-size:21px}h3{margin:0;font-size:17px}p{margin:0 0 12px}.icon{vertical-align:middle;flex:none}.icon .tint{fill:currentColor;opacity:.18;stroke:none}main{max-width:var(--page);padding:28px var(--gutter) 72px;margin:0 auto}main.reading{max-width:var(--reading)}main.narrow{max-width:452px}.site-header{padding:12px max(var(--gutter), calc((100% - var(--page)) / 2 + var(--gutter)));background:var(--bg);box-shadow:var(--shadow);z-index:10;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.brand{color:var(--fg);align-items:center;gap:8px;font-size:20px;font-weight:900;text-decoration:none;display:inline-flex}.logo{flex:none}.logo-cloud{fill:#fff}@media (prefers-color-scheme:dark){.logo-cloud{fill:#eef4ff}}.nav-link{color:var(--fg);border-radius:999px;align-items:center;gap:6px;padding:8px 14px;text-decoration:none;display:inline-flex}.nav-link:hover{background:var(--card-alt)}.nav-auth{align-items:center;gap:4px;display:flex}.nav-auth .nav-link{font-weight:700}.button.nav-signup{padding:8px 18px}.muted{color:var(--muted)}.back-link{align-items:center;gap:6px;margin-bottom:4px;text-decoration:none;display:inline-flex}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:20px 0;padding:24px}.card>:first-child{margin-top:0}.card>:last-child{margin-bottom:0}.card-title{align-items:center;gap:10px;display:flex}.card-title .icon{color:var(--accent)}input,select,button{font:inherit}button,.button{background:var(--accent-fill);color:#fff;cursor:pointer;box-shadow:0 4px 0 var(--accent-dark);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 22px;font-weight:800;text-decoration:none;transition:transform 80ms,box-shadow 80ms,filter .15s;display:inline-flex}button:hover:not(:disabled),.button:hover{filter:brightness(1.06)}button:active:not(:disabled),.button:active{box-shadow:0 1px 0 var(--accent-dark);transform:translateY(3px)}button.secondary,.button.secondary{background:var(--bg);color:var(--accent);box-shadow:0 0 0 2px var(--border) inset, 0 3px 0 var(--border)}button.secondary:active:not(:disabled){box-shadow:0 0 0 2px var(--border) inset, 0 0 0 var(--border)}button:disabled{opacity:.55;cursor:default}.icon-btn{background:color-mix(in srgb, var(--accent) 14%, var(--card));width:42px;height:42px;color:var(--accent-ink);box-shadow:0 3px 0 color-mix(in srgb, var(--accent) 28%, var(--card));border-radius:50%;flex:none;place-items:center;transition:transform 80ms,box-shadow 80ms,background .15s;display:inline-grid}.icon-btn:hover{background:color-mix(in srgb, var(--accent) 22%, var(--card));transform:translateY(-1px)}.icon-btn:active{box-shadow:0 1px 0 color-mix(in srgb, var(--accent) 28%, var(--card));transform:translateY(2px)}.icon-btn.soft{background:var(--card-alt);color:var(--accent);box-shadow:0 0 0 2px var(--border) inset}.start-btn{background:color-mix(in srgb, var(--accent) 14%, var(--card));min-height:40px;color:var(--accent-ink);box-shadow:0 3px 0 color-mix(in srgb, var(--accent) 28%, var(--card));border-radius:999px;flex:none;align-items:center;gap:4px;padding:0 14px 0 16px;font-size:15px;font-weight:800;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background .15s;display:inline-flex}.start-btn:hover{background:color-mix(in srgb, var(--accent) 22%, var(--card));transform:translateY(-1px)}.start-btn:hover .icon{transform:translate(2px)}.start-btn .icon{transition:transform .15s}.start-btn:active{box-shadow:0 1px 0 color-mix(in srgb, var(--accent) 28%, var(--card));transform:translateY(2px)}input,select{border:2px solid var(--border-strong);background:var(--bg);color:var(--fg);border-radius:14px;padding:12px 14px}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}input:focus,select:focus{border-color:var(--accent)}select{appearance:none;font:inherit;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23626679' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px;padding-right:40px;font-weight:600}@media (prefers-color-scheme:dark){select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a7adc6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}}form{flex-direction:column;gap:14px;display:flex}label{flex-direction:column;gap:6px;font-weight:700;display:flex}.domains{grid-template-columns:repeat(auto-fill,minmax(min(100%,480px),1fr));align-items:start;gap:12px 32px;display:grid}.domain{min-width:0;margin-top:12px}.domain-header{background:color-mix(in srgb, var(--dc) 12%, var(--card));border:1px solid color-mix(in srgb, var(--dc) 22%, var(--card));border-radius:14px;align-items:center;gap:12px;margin-bottom:6px;padding:10px 14px;display:flex}.domain-icon{background:var(--dc);color:#fff;width:40px;height:40px;box-shadow:0 3px 0 color-mix(in srgb, var(--dc) 70%, #000);border-radius:12px;flex:none;place-items:center;display:inline-grid}.domain-header h3{flex:1}.domain-letter{color:var(--dc-ink);margin-right:4px}.domain-progress{color:var(--dc-ink);background:var(--card);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:14px;font-weight:700}.skill-row{border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.skill-row+.skill-row{border-top:1px solid var(--border)}.skill-row:hover{background:var(--card-alt)}.skill-row .title{flex:1;min-width:0}.skill-num{min-width:3.4ch;color:var(--dc-ink,var(--accent));font-variant-numeric:tabular-nums;font-weight:800}.skill-code{color:var(--muted);font-size:14px;font-weight:600}.score{font-variant-numeric:tabular-nums;text-align:right;min-width:3ch;font-weight:800}.score.mastered{color:var(--good)}.score.badge{text-align:center;border-radius:999px;min-width:5ch;padding:3px 10px;font-size:14px}.score.badge.new{color:var(--muted);font-weight:600}.score.badge.progress{color:var(--sun-ink);background:color-mix(in srgb, var(--sun) 28%, var(--card))}.score.badge.mastered{color:var(--good);background:color-mix(in srgb, var(--good) 14%, transparent)}.learner-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:start;gap:20px;margin-top:8px;display:grid}.learner-grid>.card{margin:0}.learner-card{text-align:center;flex-direction:column;align-items:center;padding-top:0;display:flex;overflow:hidden}.learner-banner{background:color-mix(in srgb, var(--av) 85%, var(--card));justify-content:center;align-self:stretch;height:76px;margin:0 -24px 12px;padding:22px 0 0;display:flex}.learner-banner .avatar{box-shadow:0 0 0 5px var(--card);background:var(--card)}.learner-card h2{overflow-wrap:anywhere;margin:30px 0 2px;font-size:22px}.learner-meta{margin:0 0 18px;font-size:15px;font-weight:700}.learner-actions{justify-content:center;align-self:stretch;align-items:center;gap:10px;display:flex}.learner-actions .start-btn{flex:1;justify-content:center;max-width:180px}.add-learner{border:2px dashed var(--border-strong);min-height:220px;box-shadow:none;background:color-mix(in srgb, var(--card) 60%, transparent);color:var(--fg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.add-learner:hover{border-color:var(--accent);background:var(--card)}.add-learner strong{font-size:19px}.add-learner .muted{align-items:center;gap:4px;display:inline-flex}.add-learner-icon{background:color-mix(in srgb, var(--accent) 14%, var(--card));width:60px;height:60px;color:var(--accent-ink);border-radius:50%;place-items:center;display:grid}@media (prefers-color-scheme:dark){.learner-banner{background:color-mix(in srgb, var(--av) 22%, var(--card))}}.prompt{margin:4px 0 18px;font-size:21px;font-weight:600}.feedback{flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:relative}.feedback.correct{color:var(--good);font-weight:800}.feedback.incorrect{color:var(--bad);font-weight:800}.choices{border:none;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.choices legend{margin-bottom:6px;font-weight:700}.choice{border:2px solid var(--border-strong);background:var(--bg);cursor:pointer;border-radius:14px;flex-direction:row;align-items:center;gap:12px;padding:14px 16px;font-weight:600;transition:border-color .15s,background .15s}.choice:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--border-strong))}.choice:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg))}.choice input{width:20px;height:20px;accent-color:var(--accent);padding:0}.math-block{background:var(--card-alt);border:1px solid var(--border);border-radius:14px;width:fit-content;max-width:100%;margin:14px 0;padding:10px 18px;display:block;overflow-x:auto}.math-block .katex-display{margin:0}.prompt,.choice,.hint,.result{line-height:1.75}@media (max-width:600px){body{font-size:16px}.card{border-radius:16px;padding:16px}.hero{padding:20px}.prompt{font-size:18px}.domain-header{padding:8px 10px}.domain-icon{width:34px;height:34px}.skill-row{gap:10px;padding:10px 6px}.skill-row .skill-code{display:block}.nav-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.figure{width:100%;max-width:380px;height:auto;margin:4px 0 16px;display:block}.figure text{font:12px system-ui,sans-serif}@media (max-width:600px){.figure text{font-size:15px}}.figure-grid line{stroke:var(--border);stroke-width:1px}.figure-axis line{stroke:var(--fg);stroke-width:1.5px}.figure-axis-fill{fill:var(--fg)}.figure-tick-label text{fill:var(--muted);paint-order:stroke;stroke:var(--card);stroke-width:3px}.figure-axis-label text{fill:var(--fg);font-size:14px;font-style:italic}.figure-point circle{fill:var(--accent)}.figure-point text{fill:var(--accent);paint-order:stroke;stroke:var(--card);stroke-width:4px;font-size:15px;font-weight:700}.figure-shape{fill:color-mix(in srgb, var(--accent) 15%, transparent);stroke:var(--accent);stroke-width:2px}.figure-shape-diagram{max-width:420px}.figure-guide{fill:none;stroke:var(--muted);stroke-width:1.5px}.figure-guide.dashed,.figure-guide.dashed line{stroke-dasharray:5 4}.figure-solid{fill:color-mix(in srgb, var(--accent) 12%, var(--card));stroke:var(--accent);stroke-width:2px;stroke-linejoin:round}.figure-solid.top{fill:color-mix(in srgb, var(--accent) 22%, var(--card))}.figure-solid.side{fill:color-mix(in srgb, var(--accent) 32%, var(--card))}.figure-dim text{fill:var(--fg);font-size:14px;font-weight:600}.suggestion{border-left:5px solid var(--progress);background:color-mix(in srgb, var(--progress) 10%, var(--card));border-radius:14px;margin:12px 0 16px;padding:14px 16px}.suggestion ul{margin:6px 0;padding-left:20px}.suggestion li{margin:4px 0}.up-next ol{margin:0;padding:0;list-style:none}.up-next li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.up-next li:last-child{border-bottom:none}.up-next .title{flex:1}.up-next .reason{color:var(--muted);font-size:14px}.figure-measure{stroke:var(--fg);stroke-width:2px}.figure-center{fill:var(--fg)}.figure-ray{stroke:var(--fg);stroke-width:2px;stroke-linecap:round}.figure-arc{fill:none;stroke:var(--accent);stroke-width:2px}.figure-angle-label{fill:var(--accent);paint-order:stroke;stroke:var(--card);stroke-width:4px;font-size:15px;font-weight:700}.figure-line{stroke:var(--accent);stroke-width:2.5px}.figure-path{fill:none;stroke-linejoin:round}.figure-axis-title text{fill:var(--fg);font-size:13px;font-weight:600}.figure-solid-edge{fill:none;stroke:var(--accent);stroke-width:2px}.figure-dim-text{fill:var(--fg);font-size:14px;font-weight:600}.figure-solid-fill{fill:color-mix(in srgb, var(--accent) 12%, var(--card));stroke:none}.figure-small{max-width:240px}.figure-part{fill:var(--card);stroke:var(--accent);stroke-width:2px;stroke-linejoin:round}.figure-part.shaded{fill:color-mix(in srgb, var(--accent) 55%, var(--card))}.figure-frac-bar{stroke:var(--muted);stroke-width:1.2px}.figure-xmark path{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round}.figure-group{fill:color-mix(in srgb, var(--accent) 6%, transparent);stroke:var(--muted);stroke-width:1.5px}.figure-cell{fill:none;stroke:color-mix(in srgb, var(--accent) 60%, var(--card));stroke-width:1px}.figure-outline{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linejoin:round}.figure-clock-face{fill:var(--card);stroke:var(--fg);stroke-width:3px}.figure-clock-tick line{stroke:var(--muted);stroke-width:1.2px}.figure-clock-tick line.major{stroke:var(--fg);stroke-width:2.2px}.figure-clock-number text{fill:var(--fg);font-size:19px;font-weight:700}.figure-hand{stroke-linecap:round}.figure-hand.hour{stroke:var(--fg);stroke-width:6px}.figure-hand.minute{stroke:var(--accent);stroke-width:3.5px}.figure-bar{fill:var(--chart-bar)}.figure-symbol{fill:var(--sun);stroke:var(--sun-icon);stroke-width:1.2px;stroke-linejoin:round}.figure-row-label{fill:var(--fg);font-size:14px;font-weight:600}.figure-row-rule{stroke:var(--border);stroke-width:1px}.figure-symmetry{stroke:var(--progress);stroke-width:2.5px;stroke-dasharray:8 6}.figure-protractor{fill:color-mix(in srgb, var(--accent) 8%, var(--card));stroke:var(--accent);stroke-width:1.5px}.figure-protractor-number text{fill:var(--fg);paint-order:stroke;stroke:color-mix(in srgb, var(--accent) 8%, var(--card));stroke-width:3px;font-size:13px}.figure-shape.image{fill:none;stroke-dasharray:6 4}.figure text.figure-vertex-label{fill:var(--fg);font-style:italic;font-weight:700}.figure text.figure-side-label,.figure .figure-side-label{fill:var(--fg);paint-order:stroke;stroke:var(--card);stroke-width:4px;font-weight:600}.figure-tick line{stroke:var(--fg);stroke-width:1.5px}.figure-extension{stroke:var(--accent);stroke-width:2px;stroke-linecap:round}.figure-segment{stroke:var(--accent);stroke-width:2px}.figure-circle{fill:color-mix(in srgb, var(--accent) 8%, transparent);stroke:var(--accent);stroke-width:2px}.figure-sector{fill:color-mix(in srgb, var(--accent) 22%, transparent);stroke:none}.figure-arc-highlight{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round}.mastery{margin-bottom:16px}.mastery-label{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:6px;display:flex}.mastered-text{color:var(--good)}.session{font-size:14px}.mastery-bar{background:var(--card-alt);height:14px;box-shadow:0 0 0 1px var(--border) inset;border-radius:999px;overflow:hidden}.mastery-fill{background:var(--score-fill);border-radius:999px;height:100%;transition:width .5s}.mastery-fill.done{background:var(--good-fill)}.delta{margin-left:8px;font-size:14px;font-weight:700;animation:.9s both rise}.delta.up{color:var(--good)}.delta.down{color:var(--muted)}.math-keys{flex-direction:column;gap:6px;display:flex}.math-key-row{flex-wrap:wrap;gap:6px;display:flex}.math-key-row.digits{grid-template-columns:repeat(11,minmax(0,1fr));max-width:560px;display:grid}@media (max-width:600px){.math-key-row.digits{grid-template-columns:repeat(6,minmax(0,1fr))}}.math-key.digit{font-variant-numeric:tabular-nums}.math-key.backspace{color:var(--muted)}.math-key{background:var(--bg);min-width:44px;min-height:44px;color:var(--fg);box-shadow:0 0 0 2px var(--border) inset, 0 3px 0 var(--border);border-radius:12px;padding:6px 10px;font-size:18px;font-weight:800}.math-key:active:not(:disabled){box-shadow:0 0 0 2px var(--border) inset, 0 1px 0 var(--border);transform:translateY(2px)}.result.is-correct .feedback{animation:.35s pop}.result.is-incorrect .feedback{animation:.4s shake}.next-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.key-hint{font-size:14px}.celebrate{border:1px solid color-mix(in srgb, var(--good) 40%, transparent);background:color-mix(in srgb, var(--good) 12%, var(--card));border-radius:12px;align-items:flex-start;gap:14px;margin:0 0 16px;padding:14px 16px;animation:.4s pop;display:flex}.celebrate p{margin:4px 0 8px}.celebrate-icon{color:var(--sun-icon);animation:1s 2 bounce}.celebrate-icon .tint,.card-title.reward .icon .tint,.summary-badge .icon .tint,.empty-state .icon .tint,.reward-icon .tint{fill:var(--sun);opacity:1}.celebrate.goal-met{border-color:color-mix(in srgb, var(--progress-fill) 40%, transparent);background:color-mix(in srgb, var(--progress-fill) 10%, var(--card));align-items:center}.celebrate-badge,.summary-badge{place-items:center;display:inline-grid;position:relative}.celebrate-icon.flame{color:var(--progress-fill)}.celebrate-icon.flame .flame-core{fill:var(--sun)}.burst{pointer-events:none;z-index:1;width:0;height:0;position:absolute;top:50%;left:14px}.celebrate-badge .burst,.summary-badge .burst{left:50%}.burst i{background:var(--c);animation:.85s cubic-bezier(.2,.7,.3,1) both burst;position:absolute}.burst i.dot{border-radius:50%;width:8px;height:8px;top:-4px;left:-4px}.burst i.star{clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:13px;height:13px;top:-6.5px;left:-6.5px}@keyframes burst{0%{transform:rotate(var(--a)) translateX(0) scale(.3);opacity:1}70%{opacity:1}to{transform:rotate(var(--a)) translateX(var(--d)) scale(1);opacity:0}}@keyframes pop{0%{opacity:.4;transform:scale(.92)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}30%{opacity:1;transform:translateY(0)}to{opacity:1}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.burst{display:none}}.stat-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 20px;display:grid}.report-cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:0 20px;display:grid}.report-col{min-width:0}.report-col>.card:first-child{margin-top:0}@media (max-width:900px){.report-cols{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat-tile{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:2px;padding:16px 18px;display:flex}.stat-tile .icon{color:var(--tile,var(--accent));margin-bottom:4px}.stat-value{font-variant-numeric:tabular-nums;font-size:32px;font-weight:800}.stat-label{color:var(--fg);font-size:17px;font-weight:700}@media (max-width:600px){.stat-tile{padding:12px 14px}.stat-value{font-size:26px}.day-chart{height:130px}.report-table th,.report-table td{padding:8px 4px}}.day-chart{align-items:stretch;gap:2px;height:160px;margin:12px 0 4px;display:flex}.day-col{flex-direction:column;flex:1;min-width:0;display:flex}.day-plot{border-bottom:1px solid var(--border);flex:1;justify-content:center;align-items:flex-end;display:flex}.day-bar{background:var(--chart-bar);outline-offset:2px;border-radius:4px 4px 0 0;width:min(36px,70%);min-height:3px;position:relative}.day-bar:hover{filter:brightness(1.1)}.day-label{text-align:center;color:var(--muted);padding-top:6px;font-size:15px;font-weight:700}.day-tip{background:var(--fg);width:max-content;max-width:200px;color:var(--bg);z-index:2;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:15px;line-height:1.4;display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.day-bar:hover .day-tip{display:block}.day-col:first-child .day-tip{left:0;transform:none}.day-col:last-child .day-tip{left:auto;right:0;transform:none}.table-view summary{cursor:pointer;color:var(--accent);margin-top:8px;font-size:15px;font-weight:700}.table-view table,.report-table{border-collapse:collapse;width:100%;margin-top:8px;font-size:16px}.table-view th,.report-table th{color:var(--fg);background:var(--card-alt);font-size:15px;font-weight:800}.report-table .skill-name{color:var(--fg);font-weight:700;display:block}.report-table .skill-code{margin-top:2px;display:block}.report-table td{color:var(--fg);vertical-align:top;font-weight:600}.report-table .skill-code,.report-list .skill-code{font-size:15px}.table-view th,.table-view td,.report-table th,.report-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 6px}.report-table td:not(:first-child),.report-table th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto}.report-list{margin:0;padding:0;list-style:none}.report-list li{border-bottom:1px solid var(--border);padding:8px 0}.report-list li:last-child{border-bottom:none}.page-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:4px;display:flex}.page-title h1{margin-bottom:0}.hint{background:color-mix(in srgb, var(--sun) 14%, var(--card));border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.hint .icon{color:var(--sun-icon);margin-top:2px}.practice .result{border-top:2px dashed var(--border);margin-top:20px;padding-top:16px}.card-title.reward .icon{color:var(--sun-icon)}.card-title.attention .icon{color:var(--progress)}.login-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.login-head h1{margin:0}.avatar{object-fit:cover;border-radius:50%;flex:none;display:block}.learner-name{align-items:center;gap:14px;display:flex}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.small{font-size:14px;font-weight:600}.optional{font-weight:600}.edit-learner{gap:20px}.avatar-preview{justify-content:center;display:flex}.avatar-picker{border:none;flex-direction:column;gap:12px;min-width:0;margin:0;padding:0;display:flex}.avatar-picker legend{margin-bottom:8px;padding:0;font-weight:700}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));justify-items:center;gap:10px;display:grid}.avatar-option{cursor:pointer;border-radius:50%;padding:3px;transition:transform .1s,box-shadow .1s;display:block;position:relative;box-shadow:0 0 0 3px #0000}.avatar-option input{opacity:0;pointer-events:none;position:absolute}.avatar-option:hover{transform:translateY(-2px)}.avatar-option:has(input:checked){box-shadow:0 0 0 3px var(--accent)}.avatar-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.button.disabled{opacity:.6;pointer-events:none}.form-actions{gap:12px;display:flex}.birthday{border:none;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.birthday legend{margin-bottom:6px;padding:0;font-weight:700}.birthday-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.3fr);gap:10px;display:grid}.birthday-note{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}button.link-btn{box-shadow:none;color:var(--accent);text-underline-offset:3px;background:0 0;padding:4px 0;font-size:14px;font-weight:700;text-decoration:underline}button.link-btn:active:not(:disabled){box-shadow:none;transform:none}@media (max-width:600px){.birthday-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.birthday-row select:first-of-type{grid-column:1/-1}}.skill-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin:4px 0 20px;display:flex}.grade-picker select{background-color:var(--card);min-width:190px;font-weight:800}.search-box{flex:280px;align-items:center;display:flex;position:relative}.search-box input{background:var(--card);width:100%;padding-left:44px;padding-right:44px}.search-box input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}.search-box .search-icon{color:var(--muted);pointer-events:none;position:absolute;left:14px}button.search-clear{background:var(--card-alt);width:36px;height:36px;color:var(--muted);box-shadow:none;border-radius:50%;padding:0;position:absolute;right:6px}button.search-clear:hover:not(:disabled){background:var(--border);color:var(--fg);filter:none}button.search-clear:active:not(:disabled){box-shadow:none;transform:none}.result-group+.result-group{margin-top:16px}.result-grade{background:var(--card-alt);border-radius:10px;margin:8px 0 4px;padding:6px 12px;font-size:15px}.result-domain{color:var(--dc-ink,var(--muted));font-size:14px;font-weight:700;display:block}@media (max-width:600px){.grade-picker,.grade-picker select{width:100%}.start-btn.compact{justify-content:center;width:40px;padding:0}.start-btn.compact .start-label{display:none}}.daily-goal{flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:700;display:inline-flex}.daily-goal>span{border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:4px 12px 4px 7px;display:inline-flex}.daily-goal strong{font-variant-numeric:tabular-nums;font-weight:900}.streak{color:var(--progress);background:color-mix(in srgb, var(--progress-fill) 12%, var(--card))}.streak .icon{color:var(--progress-fill)}.streak .flame-core{fill:var(--sun)}.streak.none{color:var(--muted);background:var(--card-alt)}.streak.none .icon{color:color-mix(in srgb, var(--muted) 45%, var(--card))}.streak.none .flame-core{fill:var(--card-alt)}.goal{color:var(--fg);background:var(--card-alt)}.goal-ring .track{fill:none;stroke:color-mix(in srgb, var(--border-strong) 55%, var(--card));stroke-width:3.5px}.goal-ring .fill{fill:none;stroke:var(--good-fill);stroke-width:3.5px;stroke-linecap:round;transition:stroke-dashoffset .5s}.daily-goal.done .goal{color:var(--good);background:color-mix(in srgb, var(--good) 12%, var(--card))}.goal-check{color:var(--good-fill)}.card-goal{justify-content:center;margin:-6px 0 18px}.title-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.practice-title{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.standard-chip{color:var(--muted);background:var(--card);border:1px solid var(--border);border-radius:999px;padding:2px 12px;font-size:14px;font-weight:700}.practice-layout{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:24px;display:grid}.practice-layout>.card,.scratch-col>.card{margin:0}.practice.card{overflow-clip-margin:6px;padding:28px 32px;overflow-x:clip}.practice-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.practice-top-actions{align-items:center;gap:10px;margin-left:auto;display:flex;position:relative}.session-summary{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:4px 0 8px;animation:.4s pop;display:flex;container-type:inline-size}.summary-head h2{margin:6px 0 4px;font-size:26px}.round-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin-top:4px;font-size:14px;font-weight:800;display:block}.summary-head p{margin:0}.summary-badge{color:var(--sun-icon)}.summary-tiles{text-align:left;align-self:stretch;margin:4px 0}@container (max-width:600px){.summary-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.summary-tiles .stat-tile{background:var(--card-alt);box-shadow:none}.summary-tiles .delta{font-size:15px}.summary-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.question{--card:var(--question-bg);background:var(--card);border:1px solid color-mix(in srgb, var(--accent) 16%, var(--card));border-radius:16px;margin:8px 0 28px;padding:20px 24px 24px}.question-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);font-size:14px;font-weight:800}.question .prompt{margin:6px 0 0;font-size:21px;line-height:1.5}.question .figure{margin:16px 0 0}.answer-area{gap:16px}.answer-area input:not([type=radio]){max-width:460px;font-size:20px;font-weight:700}.answer-field{flex-direction:column;gap:6px;display:flex}.answer-field>label{display:block}.answer-box{align-items:center;gap:8px;max-width:560px;display:flex}.answer-box input{flex:auto;min-width:0}.answer-box .clear-btn{flex:none;min-height:44px;padding:8px 14px;font-size:15px}.answer-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.answer-actions button[type=submit]{min-width:160px}.practice .hint{margin-top:16px}.scratch-col{position:sticky;top:84px}.scratchpad{flex-direction:column;gap:12px;height:calc(100vh - 120px);min-height:420px;max-height:900px;padding:16px;display:flex}.scratch-head{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.scratch-head .card-title{margin:0;font-size:18px}.scratch-tools{flex-wrap:wrap;align-items:center;gap:2px;display:flex}button.scratch-tool{width:36px;height:40px;color:var(--muted);box-shadow:none;background:0 0;border-radius:10px;padding:0}button.scratch-tool:hover:not(:disabled){background:var(--card-alt);color:var(--fg);filter:none}button.scratch-tool:active:not(:disabled){box-shadow:none;transform:none}button.scratch-tool.active{background:color-mix(in srgb, var(--accent) 14%, var(--card));color:var(--accent-ink)}.scratch-tool .swatch{background:var(--pen);border-radius:50%;width:18px;height:18px;box-shadow:inset 0 -2px #00000026}.scratch-tool.active .swatch{box-shadow:0 0 0 2px var(--card), 0 0 0 4px var(--pen)}button.scratch-tool.pen.active{background:0 0}.scratch-sep{background:var(--border);width:1px;height:22px;margin:0 3px}.scratch-canvas{border:1px solid var(--border);background-color:var(--card-alt);background-image:radial-gradient(circle, color-mix(in srgb, var(--muted) 35%, transparent) 1px, transparent 1.4px);touch-action:none;cursor:crosshair;background-size:22px 22px;border-radius:12px;flex:1;width:100%;min-height:0}.scratch-canvas.erasing{cursor:cell}@media (max-width:860px){.practice-layout{grid-template-columns:minmax(0,1fr);gap:16px}.practice.card{padding:20px}.scratch-col{flex-direction:column;gap:12px;display:flex;position:static}.scratchpad{height:420px}}@media (max-width:600px){.practice.card,.question{padding:16px}.question .prompt{font-size:18px}.answer-actions button{flex:1 1 0;min-width:0;padding-left:12px;padding-right:12px}}.page-heading{align-items:center;gap:12px;display:flex}.page-heading .icon{color:var(--accent)}.count-badge{background:var(--accent-fill);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 7px;font-size:14px;font-weight:900;display:inline-grid}.empty-state{text-align:center;padding:40px 24px}.empty-state .icon{color:var(--sun-icon)}.empty-state h2{margin:12px 0 6px}.empty-state .form-actions{flex-wrap:wrap;justify-content:center}.mistake-group{border-top:6px solid var(--dc)}.mistake-group-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.mistake-group-head h2{flex:1;min-width:0;margin:0;font-size:20px}.mistake-group-head .learn-btn{padding:6px 14px;font-size:15px}.mistake{flex-direction:column;gap:12px;padding:18px 0 6px;display:flex}.mistake+.mistake{border-top:2px dashed var(--border);margin-top:12px}.mistake .question{margin:0}.mistake .answer-actions{margin-top:0}.your-answer{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.your-answer .icon{color:var(--bad)}.your-answer .typed{color:var(--fg);background:var(--card-alt);border:1px solid var(--border);border-radius:8px;padding:0 8px}.mistake-solution{background:color-mix(in srgb, var(--sun) 14%, var(--card));border-radius:14px;padding:12px 16px}.mistake-solution p:last-child{margin-bottom:0}.mistake-solution.missed{background:color-mix(in srgb, var(--bad) 7%, var(--card))}.mistake.fixed{gap:4px}.mistake.fixed .feedback{margin:0;animation:.35s pop}.review-due ol{margin:0;padding:0;list-style:none}.review-due li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.review-due li:last-child{border-bottom:none}.review-due .title{flex:1}.review-due .card-title .icon{color:var(--good-fill)}.start-btn.review-btn{background:color-mix(in srgb, var(--good) 14%, var(--card));color:var(--good);box-shadow:0 3px 0 color-mix(in srgb, var(--good) 28%, var(--card))}.start-btn.review-btn:hover{background:color-mix(in srgb, var(--good) 18%, var(--card))}.review-chip{color:var(--good);background:color-mix(in srgb, var(--good) 14%, var(--card));border-radius:999px;padding:2px 12px;font-size:14px;font-weight:800}.review-progress{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:16px;display:flex}.review-tag{color:var(--good);align-items:center;gap:6px;font-weight:800;display:inline-flex}.review-progress .muted{flex:1;min-width:200px;font-size:14px}.review-dots{gap:8px;margin:0;padding:0;list-style:none;display:flex}.review-dots li{background:var(--card-alt);width:18px;height:18px;box-shadow:inset 0 0 0 2px var(--border-strong);color:#fff;border-radius:50%;place-items:center;font-size:12px;font-weight:900;line-height:1;display:grid}.review-dots li.right{background:var(--good-fill);box-shadow:none}.review-dots li.wrong{background:var(--muted);box-shadow:none}.review-dots li.right:after{content:"✓"}.review-dots li.wrong:after{content:"✕";color:var(--card)}.review-outcome{margin:16px 0 0}.review-outcome .answer-actions{margin-top:4px}.celebrate.rusty{border-color:color-mix(in srgb, var(--sun) 50%, transparent);background:color-mix(in srgb, var(--sun) 12%, var(--card))}.celebrate.rusty .celebrate-icon{color:var(--sun-ink);animation:none}.icon-btn.soft.active{background:color-mix(in srgb, var(--accent) 14%, var(--card));color:var(--accent-ink)}.calc-anchor{height:0}.calculator{z-index:50;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:272px;padding:12px 14px 14px;animation:.2s pop;position:fixed;box-shadow:0 12px 32px #281e142e}.calculator:focus{outline:none}.calculator:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.calc-head{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;margin:-12px -14px 8px;padding:12px 14px 0;display:flex}.calc-head:active{cursor:grabbing}.calc-title{color:var(--muted);flex:1;font-size:15px;font-weight:800}button.calc-copy{background:color-mix(in srgb, var(--accent) 10%, var(--card));color:var(--accent-ink);box-shadow:none;border-radius:999px;gap:4px;margin-right:4px;padding:4px 10px;font-size:14px}button.calc-copy:active:not(:disabled){box-shadow:none;transform:none}button.calc-copy.copied{background:color-mix(in srgb, var(--good) 14%, var(--card));color:var(--good)}button.calc-close{width:40px;height:40px;color:var(--muted);box-shadow:none;background:0 0;border-radius:50%;padding:0}button.calc-close:hover:not(:disabled){background:var(--card-alt);filter:none}.calc-display{border:1px solid color-mix(in srgb, var(--accent) 16%, var(--card));background:var(--question-bg);text-align:right;border-radius:12px;margin-bottom:12px;padding:8px 12px}.calc-sub{min-height:21px;color:var(--muted);overflow-wrap:anywhere;font-size:14px}.calc-main{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:28px;font-weight:800;line-height:1.25}.calc-keys{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}button.calc-key{background:var(--bg);height:48px;color:var(--fg);box-shadow:0 0 0 2px var(--border) inset, 0 3px 0 var(--border);border-radius:12px;padding:0;font-size:20px}button.calc-key:active:not(:disabled){box-shadow:0 0 0 2px var(--border) inset, 0 1px 0 var(--border);transform:translateY(2px)}button.calc-key.op{color:var(--accent-ink);background:color-mix(in srgb, var(--accent) 10%, var(--card))}button.calc-key.fn{color:var(--sun-ink);background:color-mix(in srgb, var(--sun) 16%, var(--card))}button.calc-key.eq{color:#fff;background:var(--accent-fill);box-shadow:0 3px 0 var(--accent-dark)}button.calc-key.eq:active:not(:disabled){box-shadow:0 1px 0 var(--accent-dark)}label.toggle-row{cursor:pointer;flex-direction:row;justify-content:space-between;align-items:center;gap:16px}.toggle-text{flex-direction:column;gap:2px;display:flex}.switch{background:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;width:72px;height:34px;font-size:13px;font-weight:900;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:28px;height:28px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch-on,.switch-off{position:absolute;top:50%;transform:translateY(-50%)}.switch-on{color:#fff;visibility:hidden;left:11px}.switch-off{color:var(--card);right:9px}.toggle-row input:checked+.switch{background:var(--accent-fill)}.toggle-row input:checked+.switch:after{transform:translate(38px)}.toggle-row input:checked+.switch .switch-on{visibility:visible}.toggle-row input:checked+.switch .switch-off{visibility:hidden}.toggle-row input:focus-visible+.switch{outline:3px solid var(--accent);outline-offset:3px}.goal-input{align-items:center;gap:10px;font-weight:600;display:flex}.goal-input input{text-align:center;width:96px;font-weight:800}.auth-card{flex-direction:column;gap:16px;margin-top:16px;display:flex}.auth-card form{gap:14px}.auth-card form>button[type=submit]{width:100%}.button.google-btn{background:var(--bg);width:100%;color:var(--fg);box-shadow:0 0 0 2px var(--border) inset, 0 3px 0 var(--border)}.button.google-btn:active{box-shadow:0 0 0 2px var(--border) inset, 0 1px 0 var(--border)}.or-divider{color:var(--muted);align-items:center;gap:12px;font-size:14px;font-weight:700;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--border);flex:1;height:1px}.password-field{display:block;position:relative}.password-field input{width:100%;padding-right:52px}button.password-toggle{width:40px;height:40px;color:var(--muted);box-shadow:none;background:0 0;border-radius:10px;padding:0;position:absolute;top:50%;right:6px;transform:translateY(-50%)}button.password-toggle:active:not(:disabled){box-shadow:none;transform:translateY(-50%)}button.password-toggle:hover:not(:disabled){background:var(--card-alt);filter:none}.auth-row{justify-content:flex-end;margin-top:-6px;display:flex}.auth-card button.link-btn{align-self:center}label.check-row{flex-direction:row;align-items:flex-start;gap:10px;font-weight:600}.check-row input{width:20px;height:20px;accent-color:var(--accent-fill);flex:none;margin:3px 0 0}.form-message{background:color-mix(in srgb, var(--good) 12%, var(--card));color:var(--good);border-radius:12px;margin:0;padding:10px 14px;font-weight:700}.form-message.error{background:color-mix(in srgb, var(--bad) 8%, var(--card));color:var(--bad)}.auth-switch{text-align:center;margin-top:8px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.gmail-hint{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--card));background:var(--question-bg);border-radius:14px;flex-direction:column;gap:10px;padding:12px 14px;animation:.25s pop;display:flex}.gmail-hint p{margin:0;font-weight:600}input[aria-invalid=true]:not([type=checkbox]){border-color:var(--bad)}.check-row:has(input[aria-invalid=true]){color:var(--bad)}.check-row input[aria-invalid=true]{outline:2px solid var(--bad);outline-offset:2px}.danger-zone{border-color:color-mix(in srgb, var(--bad) 30%, var(--border))}.danger-zone .card-title .icon{color:var(--bad)}.danger-form{gap:12px}.danger-form ul{margin:0;padding-left:22px}.danger-form p{margin:0}.danger-form label>span{font-weight:600}.confirm-word{background:var(--card-alt);border:1px solid var(--border);border-radius:6px;padding:0 6px}button.danger{color:#fff;background:#c92a2a;box-shadow:0 4px #8f1d1d}button.danger:active:not(:disabled){box-shadow:0 1px #8f1d1d}button.danger-outline{background:var(--bg);color:var(--bad);box-shadow:0 0 0 2px color-mix(in srgb, var(--bad) 35%, var(--border)) inset;align-self:flex-start}button.danger-outline:active:not(:disabled){transform:none}.account-info dl{grid-template-columns:max-content 1fr;gap:10px 20px;margin:0 0 20px;display:grid}.account-info dt{color:var(--muted);font-weight:700}.account-info dd{overflow-wrap:anywhere;margin:0;font-weight:700}.sign-in-methods{flex-wrap:wrap;gap:8px 16px;display:flex}.sign-in-methods span{align-items:center;gap:6px;display:inline-flex}.account-info form{display:contents}.load-error{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:16px;display:flex}.load-error .feedback{margin:0}button.link-btn,button.calc-copy{position:relative}button.link-btn:after,button.calc-copy:after,button.search-clear:after{content:"";position:absolute;inset:max(-8px,50% - 20px) -4px}.site-footer{padding:8px var(--gutter) 40px;justify-content:center;gap:24px;font-size:15px;display:flex}.site-footer a{color:var(--muted)}.legal h2{margin-top:32px}.legal h3{margin:16px 0 6px}.legal li{margin-bottom:6px}.pin-setup{border:0;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.pin-setup legend{align-items:center;gap:8px;margin-bottom:4px;padding:0;font-weight:800;display:flex}.pin-setup legend .icon{color:var(--accent)}.pin-setup p{margin:0}.pin-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pin-input{letter-spacing:.4em;text-align:center;width:100%;font-size:24px;font-weight:800}.lock-head{color:var(--accent)}.forgot-pin{margin-top:16px}.forgot-pin summary{cursor:pointer;color:var(--accent);font-weight:700}.forgot-pin form{flex-direction:column;align-items:flex-start;gap:12px;margin-top:8px;display:flex}.change-pin{flex-direction:column;gap:12px;max-width:420px;display:flex}.password-link{flex-direction:column;gap:8px;display:flex}.timer-chip{background:var(--card-alt);color:var(--fg);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-weight:700;display:inline-flex}button.praise{z-index:50;box-shadow:none;background:color-mix(in srgb, var(--bg) 40%, transparent);color:var(--fg);cursor:pointer;filter:none;border:0;border-radius:0;margin:0;padding:0;display:block;position:fixed;inset:0;transform:none}.praise-pop{left:50%;top:var(--praise-y,50%);flex-direction:column;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:absolute;transform:translate(-50%,-50%)}.praise-word{background:var(--card);border:4px solid var(--praise);box-shadow:var(--shadow);color:var(--praise);text-align:center;border-radius:28px;padding:18px 36px;font-size:clamp(40px,11vw,72px);font-weight:900;line-height:1.1;animation:.55s cubic-bezier(.2,1.5,.4,1) both praise-pop;position:relative}.praise-star{color:var(--sun-ink);align-items:center;gap:4px;font-size:18px;font-weight:800;display:inline-flex}.praise-star .icon{color:var(--sun-icon)}.praise-streak{background:var(--card);box-shadow:var(--shadow);border-radius:999px;padding:6px 16px;font-size:18px;font-weight:800;animation:.5s .2s both rise}.praise .burst{top:40%;left:50%}@keyframes praise-pop{0%{opacity:0;transform:scale(.3)rotate(-8deg)}60%{opacity:1;transform:scale(1.12)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}.practice-title .learn-btn{margin-left:auto;padding:8px 16px;font-size:16px}.learn-steps{flex-direction:column;gap:8px;padding-left:24px;display:flex}.learn-choices{flex-direction:column;gap:6px;padding-left:24px;display:flex}.learn-solution{margin-top:12px}.learn-solution summary{cursor:pointer;color:var(--accent);align-items:center;min-height:44px;font-weight:700;display:flex}.learn>.button{margin:8px 0 24px}.diagnosis{background:var(--card-alt);border-left:4px solid var(--sun-icon);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.diagnosis svg{color:var(--sun-icon);flex:none;margin-top:2px}.solution-label{margin:12px 0 4px;font-weight:800}.report-row{border-top:1px solid var(--border);margin-top:20px;padding-top:12px}button.link-btn.report-link{color:var(--muted);align-items:center;gap:6px;font-weight:600;display:inline-flex}.report-form{border:1px solid var(--border-strong);background:var(--card-alt);border-radius:14px;flex-direction:column;gap:12px;padding:16px;display:flex}.report-form h3{margin:0;font-size:17px}.report-form p{margin:0}.report-form fieldset{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.report-form legend{margin-bottom:6px;padding:0;font-weight:700}.report-form textarea,.contact-form textarea{border:2px solid var(--border-strong);background:var(--bg);color:var(--fg);font:inherit;resize:vertical;border-radius:12px;padding:10px 12px;font-weight:400}.report-form textarea:focus,.contact-form textarea:focus{border-color:var(--accent);outline:none}.report-form textarea:focus-visible,.contact-form textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.contact-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-form>button[type=submit]{width:100%}.contact-sent{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:16px;display:flex}.contact-sent>.icon{color:var(--good)}.contact-sent h2,.contact-sent p{margin:0}.report-actions{flex-wrap:wrap;gap:12px;display:flex}.report-sent{margin:0}main.admin{max-width:none;padding:16px 24px 48px;font-size:14px;line-height:1.45}main.admin h1{margin:4px 0 12px;font-size:20px}main.admin h2{margin:16px 0 8px;font-size:15px}main.admin .card{box-shadow:none;border-radius:6px;margin:0 0 12px;padding:12px 14px}main.admin button,main.admin .button{box-shadow:none;border-radius:4px;padding:5px 12px;font-weight:600}main.admin button:active:not(:disabled),main.admin .button:active{box-shadow:none;transform:none}main.admin button.secondary,main.admin .button.secondary{box-shadow:inset 0 0 0 1px var(--border-strong)}main.admin input,main.admin select,main.admin button,main.admin .button{box-sizing:border-box;height:32px;font-size:14px;line-height:1}main.admin input,main.admin select{background:var(--card);border-width:1px;border-radius:4px;padding:0 10px}main.admin input[type=search]{appearance:none}main.admin a{font-weight:600}main.admin .muted.small,main.admin .small{font-size:12px;font-weight:400}main.admin code{font-size:12px}.admin-nav,.admin-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:2px;margin-bottom:12px;display:flex}.admin-nav a,.admin-tabs a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:6px 12px;text-decoration:none}.admin-nav a[aria-current=page],.admin-tabs a[aria-current=page]{color:var(--fg);border-bottom-color:var(--accent)}.admin-stats{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:12px;display:grid}main.admin .admin-stat{color:var(--fg);flex-direction:column;gap:0;margin:0;text-decoration:none;display:flex}.admin-stat-value{font-size:22px;font-weight:700}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));align-items:start;gap:12px;display:grid}.admin-grid>.card{margin:0}.admin-report{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:8px 16px;display:grid}.admin-report-head{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.admin-count{color:var(--bad);font-weight:700}.admin-question{background:var(--question-bg);border-radius:4px;padding:8px 10px}.admin-question p{margin:4px 0}.admin-question .figure,.admin-question svg{max-width:360px}.admin-report-side{flex-direction:column;gap:8px;display:flex}.admin-report-list{flex-direction:column;gap:6px;margin:0;padding-left:16px;display:flex}.admin-reason{font-weight:700}.admin-note{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 0}.admin-resolve{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-message{flex-direction:column;gap:8px;display:flex}.admin-message .admin-note{margin:0}.admin-filters span{white-space:nowrap}main.admin button.admin-delete{color:var(--bad)}main.admin form.admin-search{flex-flow:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.admin-search input{flex:0 320px;min-width:0}.admin-table-wrap{overflow-x:auto}main.admin table{border-collapse:collapse;width:100%;font-size:13px}main.admin th,main.admin td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;vertical-align:top;padding:4px 8px;font-weight:400}main.admin th{color:var(--muted);background:var(--card-alt);font-weight:600;position:sticky;top:0}main.admin td.wrap{white-space:normal;overflow-wrap:anywhere}main.admin tbody tr:hover{background:var(--card-alt)}main.admin td.num,main.admin th.num{text-align:right;font-variant-numeric:tabular-nums}main.admin dl{grid-template-columns:max-content 1fr;gap:2px 16px;margin:0;display:grid}main.admin dt{color:var(--muted)}main.admin dt,main.admin dd{font-weight:400}main.admin dd{overflow-wrap:anywhere;margin:0}.admin-actions,main.admin form.admin-actions{flex-flow:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.admin-actions p{flex-basis:100%;margin:0}.admin-actions input{width:320px;max-width:100%}main.admin .form-message{border-radius:4px;padding:6px 10px;font-size:13px}.admin-danger{margin-top:8px}.admin-danger summary{cursor:pointer;color:var(--bad);margin-bottom:8px;font-weight:600}main.admin button.danger{background:var(--bad);color:#fff}.admin-warn{color:var(--bad);font-weight:600}.admin-filters{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:6px;display:flex}.admin-filters a{font-weight:400;text-decoration:none}.admin-filters a[aria-current]{font-weight:700;text-decoration:underline}.admin-scroll{max-height:70vh;overflow-y:auto}.admin-bar{background:var(--accent);opacity:.7;border-radius:2px;min-width:1px;height:8px;display:block}main.admin td:has(.admin-bar){width:120px}.admin-pages{align-items:center;gap:16px;margin-top:8px;display:flex}@media (max-width:700px){main.admin{padding:12px var(--gutter) 40px}.admin-report,.admin-grid{grid-template-columns:minmax(0,1fr)}}.admin-bar-top{color:#e5e7eb;background:#1f2937;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 12px;padding:8px 14px;font-size:13px;display:flex}.admin-bar-top a{color:#93c5fd}.admin-bar-top>a:last-child{margin-left:auto}.admin-bar-top a.admin-brand{color:#fff;align-items:center;gap:6px;font-size:15px;font-weight:800;text-decoration:none;display:inline-flex}:is(body:has(main.admin) .site-header,body:has(main.admin) .site-footer){display:none}.admin-badge{color:#fff;letter-spacing:.02em;text-transform:uppercase;background:#dc2626;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:700}.admin-who strong{color:#fff;font-weight:600}body:has(main.admin){--page-bg:#f3f4f6;--bg:#fff;--card:#fff;--card-alt:#f9fafb;--fg:#111827;--muted:#6b7280;--border:#e5e7eb;--border-strong:#9ca3af;--accent:#2563eb;--accent-fill:#2563eb;--accent-dark:#1d4ed8;--accent-ink:#1d4ed8;--question-bg:#f8fafc;--bad:#dc2626;--good:#15803d;--shadow:none}@media (prefers-color-scheme:dark){body:has(main.admin){--page-bg:#0b0f17;--bg:#111827;--card:#111827;--card-alt:#1f2937;--fg:#f3f4f6;--muted:#9ca3af;--border:#1f2937;--border-strong:#4b5563;--accent:#60a5fa;--accent-fill:#2563eb;--accent-dark:#1d4ed8;--accent-ink:#93c5fd;--question-bg:#0f172a;--bad:#f87171;--good:#4ade80}}main.admin th{text-transform:uppercase;letter-spacing:.04em;font-size:11px}.admin-bar-top{background:#111827;border-radius:0;margin:-16px -24px 12px;padding:10px 24px}@media (max-width:700px){.admin-bar-top{margin:-12px calc(-1 * var(--gutter)) 12px;padding:10px var(--gutter)}}.level-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.level-grid .card{margin:0}.level-card{color:var(--fg);flex-direction:column;gap:6px;text-decoration:none;transition:transform .12s,border-color .12s;display:flex}.level-card:hover{border-color:var(--accent);transform:translateY(-2px)}.level-card strong{font-size:21px}.level-domains{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.level-domains .domain-icon{width:32px;height:32px;box-shadow:none;border-radius:9px}.level-see{color:var(--accent);align-items:center;gap:4px;margin-top:auto;font-weight:700;display:inline-flex}@media (prefers-reduced-motion:reduce){.level-card{transition:none}.level-card:hover{transform:none}}.star-btn .icon{color:var(--sun-icon)}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:0 0 20px;padding:0;list-style:none;display:grid}.badge-tile{--bc:var(--border-strong);border-radius:var(--radius);border:1px solid var(--border);background:var(--card);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;display:flex}.badge-tile:not(.earned) .badge-art{filter:grayscale();opacity:.35}.badge-tile.earned{border-color:color-mix(in srgb, var(--bc) 40%, var(--border))}.badge-art{flex:none;margin-bottom:2px}.badge-tile:not(.earned) strong{color:var(--muted)}.badge-state{color:var(--good);margin-top:auto;font-size:14px;font-weight:800}.badge-progress{background:var(--border);border-radius:999px;width:100%;height:8px;margin-top:auto;display:block;overflow:hidden}.badge-progress span{border-radius:inherit;background:var(--bc);height:100%;display:block}.star-ways{margin:0;padding:0;list-style:none}.star-ways li{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.star-ways li:last-child{border-bottom:0}.star-ways strong{color:var(--sun-ink);align-items:center;gap:4px;display:inline-flex}.star-ways .icon{color:var(--sun-icon)}.new-badges{border-color:color-mix(in srgb, var(--sun) 60%, var(--border));background:color-mix(in srgb, var(--sun) 14%, var(--card));flex-wrap:wrap;align-items:center;gap:12px;animation:.3s pop;display:flex}.new-badges>.icon{color:var(--sun-icon)}.new-badges>div{flex:1;min-width:180px}main.lp{max-width:1180px}.reveal{transition:opacity .6s,transform .6s}.reveal.waiting{opacity:0;transform:translateY(24px)}.reveal.in{opacity:1;transform:none}.lp-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:32px;padding:24px 0 40px;display:grid}.lp-kicker{background:color-mix(in srgb, var(--accent) 12%, var(--card));color:var(--accent-ink);border-radius:999px;padding:4px 12px;font-size:14px;font-weight:800;display:inline-block}.lp-hero h1{letter-spacing:-.01em;margin:14px 0 16px;font-size:clamp(34px,5.2vw,56px);line-height:1.08}.lp-highlight{background:linear-gradient(90deg, var(--accent), var(--violet));color:#0000;-webkit-background-clip:text;background-clip:text}.lp-lead{color:var(--muted);max-width:34em;font-size:19px}.lp-hero .hero-actions{margin:20px 0 12px}.button.lp-cta{padding:14px 26px;font-size:18px}.lp-scene{min-height:440px;position:relative}.lp-sun-glow{background:radial-gradient(circle, color-mix(in srgb, var(--sun) 45%, transparent), transparent 65%);filter:blur(8px);border-radius:50%;position:absolute;inset:8% 10%}.lp-mascot{animation:5s ease-in-out infinite lp-float;position:absolute;top:4%;left:6%}.lp-symbol{background:var(--card);width:48px;height:48px;box-shadow:var(--shadow);border-radius:14px;place-items:center;font-size:24px;font-weight:800;animation:6s ease-in-out infinite lp-bob;display:grid;position:absolute}.lp-twinkle{color:var(--sun-icon);animation:2.4s ease-in-out infinite lp-twinkle;position:absolute}.lp-mock{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);padding:18px 20px;box-shadow:0 2px 4px #2828500f,0 18px 40px #2828501f}.lp-practice{width:min(340px,86%);animation:6s ease-in-out infinite reverse lp-float;position:absolute;bottom:0;right:0}.lp-mock-top{justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.lp-chip{background:var(--question-bg);color:var(--accent-ink);border-radius:999px;padding:2px 10px;font-weight:700}.lp-score strong{color:var(--accent-ink)}.lp-bar{background:var(--border);border-radius:999px;height:10px;margin:10px 0 6px;overflow:hidden}.lp-bar span{border-radius:inherit;background:var(--score-fill);height:100%;animation:6s ease-in-out infinite lp-fill;display:block}.lp-q{margin:10px 0;font-size:22px}.lp-answer{border:2px solid var(--accent);border-radius:14px;align-items:center;height:46px;padding:0 14px;font-size:20px;font-weight:700;display:flex}.lp-typed{white-space:nowrap;width:0;animation:6s steps(3,end) infinite lp-type;display:inline-block;overflow:hidden}.lp-caret{background:var(--fg);width:2px;height:24px;margin-left:2px;animation:1s step-end infinite lp-blink}.lp-praise{text-align:center;color:var(--accent);opacity:0;margin-top:10px;font-size:26px;font-weight:800;animation:6s infinite lp-praise}.lp-praise span{color:var(--sun-ink);align-items:center;gap:2px;font-size:16px;display:inline-flex}.lp-praise .icon{color:var(--sun-icon)}.lp-section{padding:40px 0}.lp-title{text-align:center;margin:0 0 18px;font-size:clamp(26px,3.4vw,36px)}.lp-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid;position:relative}.lp-step{text-align:center;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);padding:28px 20px 20px;position:relative}.lp-step h3{margin:10px 0 6px;font-size:21px}.lp-step p{margin:0}.lp-step-num{background:var(--accent-fill);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:800;display:grid;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.lp-step-icon{background:color-mix(in srgb, var(--accent) 12%, var(--card));width:64px;height:64px;color:var(--accent-ink);border-radius:20px;place-items:center;display:inline-grid}.lp-step:nth-child(2) .lp-step-icon{background:color-mix(in srgb, var(--violet) 14%, var(--card));color:var(--violet)}.lp-step:nth-child(3) .lp-step-icon{background:color-mix(in srgb, var(--sun) 24%, var(--card));color:var(--sun-icon)}.lp-showcase{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;display:grid}.lp-flip>:first-child{order:2}.lp-show-text .lp-title{text-align:left}.lp-feedback{max-width:440px;margin:0 auto}.lp-wrong{color:var(--bad);font-weight:700}.lp-why{background:color-mix(in srgb, var(--sun) 16%, var(--card));border:1px solid color-mix(in srgb, var(--sun) 45%, var(--border));border-radius:14px;gap:10px;padding:12px 14px;animation:4s ease-in-out infinite lp-nudge;display:flex}.lp-why .icon{color:var(--sun-icon);flex:none}.lp-solution{color:var(--good);align-items:center;gap:8px;margin:12px 0 0;font-weight:700;display:flex}.lp-badges{text-align:center;max-width:440px;margin:0 auto}.lp-stars{align-items:center;gap:8px;margin-bottom:14px;font-size:18px;display:inline-flex}.lp-stars strong{font-size:30px}.lp-stars .icon{color:var(--sun-icon);animation:6s linear infinite lp-spin}.lp-xp{margin:-4px 0 16px}.lp-xp span{width:64%;animation:5s ease-in-out infinite lp-xp}@keyframes lp-xp{0%,20%{width:40%}60%,to{width:64%}}.lp-medals{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.lp-medal{flex-direction:column;align-items:center;gap:6px;animation:2.4s ease-in-out infinite lp-hop;display:flex}.lp-medal small{color:var(--muted);font-size:12px;font-weight:700}.lp-report{max-width:440px;margin:0 auto}.lp-report-stats{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:14px;display:flex}.lp-report-stats strong{color:var(--fg);font-size:18px}.lp-chart{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:8px;height:160px;margin-top:16px;display:grid}.lp-col{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.lp-col small{color:var(--muted);font-size:12px}.lp-col-bar{background:var(--chart-bar);transform-origin:bottom;border-radius:6px 6px 2px 2px;width:100%;animation:5s ease-in-out infinite lp-grow}.lp-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lp-feature{border-radius:var(--radius);background:var(--card);border:1px solid var(--border);padding:20px;transition:transform .15s,box-shadow .15s}.lp-feature h3{margin:10px 0 4px}.lp-feature p{margin:0}.lp-feature-icon{background:color-mix(in srgb, var(--accent) 12%, var(--card));width:46px;height:46px;color:var(--accent-ink);border-radius:14px;place-items:center;display:grid}.lp-feature:nth-child(3n+2) .lp-feature-icon{background:color-mix(in srgb, var(--violet) 14%, var(--card));color:var(--violet)}.lp-feature:nth-child(3n) .lp-feature-icon{background:color-mix(in srgb, var(--teal) 14%, var(--card));color:var(--teal)}.lp-final{text-align:center;color:#fff;background:linear-gradient(135deg,#1d6fd8,#6741d9);border-radius:28px;margin:40px 0 0;padding:56px 24px;position:relative;overflow:hidden}.lp-final h2{margin:0 0 8px;font-size:clamp(28px,4vw,40px)}.lp-final p{opacity:.92;font-size:18px}.lp-final .hero-actions{justify-content:center}.lp-final .button:not(.secondary){color:#1d4ed8;background:#fff;box-shadow:0 4px #0000002e}.lp-final .button.secondary{color:#fff;background:0 0;box-shadow:inset 0 0 0 2px #ffffffb3}.lp-cloud{background:#ffffff1f;border-radius:999px;width:180px;height:60px;animation:18s linear infinite lp-drift;position:absolute}.lp-cloud:before{content:"";background:inherit;border-radius:50%;width:80px;height:80px;position:absolute;top:-30px;left:40px}.lp-cloud-a{top:20px;left:-200px}.lp-cloud-b{animation-delay:-9s;bottom:24px;left:-200px;transform:scale(.7)}@keyframes lp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes lp-bob{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-14px)rotate(4deg)}}@keyframes lp-twinkle{0%,to{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}@keyframes lp-fill{0%,45%{width:62%}70%,to{width:78%}}@keyframes lp-type{0%,10%{width:0}35%,to{width:3ch}}@keyframes lp-blink{50%{opacity:0}}@keyframes lp-praise{0%,42%{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(1.12)}56%,88%{opacity:1;transform:scale(1)}to{opacity:0}}@keyframes lp-nudge{0%,to{transform:translate(0)}50%{transform:translate(4px)}}@keyframes lp-spin{to{transform:rotate(360deg)}}@keyframes lp-hop{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}@keyframes lp-grow{0%{transform:scaleY(.15)}30%,85%{transform:scaleY(1)}to{transform:scaleY(.15)}}@keyframes lp-drift{to{transform:translate(calc(100vw + 400px))}}@media (max-width:860px){.lp-hero,.lp-showcase{grid-template-columns:minmax(0,1fr)}.lp-flip>:first-child{order:0}.lp-show-text .lp-title,.lp-show-text{text-align:center}.lp-lead{margin-left:auto;margin-right:auto}.lp-scene{min-height:400px}.lp-steps,.lp-features{grid-template-columns:minmax(0,1fr);gap:24px}}@media (min-width:600px) and (max-width:860px){.lp-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.lp-mascot svg{width:140px;height:140px}.lp-symbol{width:40px;height:40px;font-size:20px}.lp-medal .badge-art{width:52px;height:52px}}@media (prefers-reduced-motion:reduce){.lp *,.lp :before{transition:none!important;animation:none!important}.lp-typed{width:3ch}.lp-praise{opacity:1}.lp-bar span{width:78%}}html{scroll-padding-top:84px}.skip-link{z-index:100;background:var(--accent-fill);color:#fff;border-radius:999px;padding:8px 16px;position:absolute;top:-60px;left:12px}.skip-link:focus{top:10px}.reveal.waiting:focus-within{opacity:1;transform:none}.lp-feature:hover{box-shadow:none;transform:none}.lp-hero{position:relative}@media (max-width:860px){.lp-scene{flex-direction:column;align-items:center;min-height:0;padding-top:8px;display:flex}.lp-mascot{position:relative;top:auto;left:auto}.lp-mascot svg{width:150px;height:150px}.lp-practice{width:min(360px,100%);margin-top:-12px;position:relative;bottom:auto;right:auto}.lp-symbol{display:none}.lp-sun-glow{inset:0 10% 40%}}.skill-list-public .skill-row:hover{background:0 0}.level-intro{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.level-intro p{margin:0}.auth-row a{padding:6px 0;display:inline-block}.field{flex-direction:column;gap:6px;display:flex}.field>label{font-weight:700}body:has([data-learner-theme]){background-attachment:fixed}@media (prefers-color-scheme:light){body:has([data-learner-theme]){--accent:#1554a8;--muted:#4f5368}}body:has([data-learner-theme=sky]){--page-bg:#e7f5ff;background-image:radial-gradient(60% 18% at 20% 12%,#fffc,#0000 70%),radial-gradient(50% 14% at 80% 30%,#fffa,#0000 70%),linear-gradient(#d0ebff,#f1f8ff)}body:has([data-learner-theme=forest]){--page-bg:#ebfbee;background-image:radial-gradient(circle at 10% 100%,#b2f2bb 0 18%,#0000 18.5%),radial-gradient(circle at 90% 100%,#b2f2bb 0 22%,#0000 22.5%),linear-gradient(#f4fce3,#ebfbee)}body:has([data-learner-theme=ocean]){--page-bg:#e3fafc;background-image:repeating-radial-gradient(circle at 50% 120%,#c5f6fa 0 24px,#e3fafc 24px 48px)}body:has([data-learner-theme=candy]){--page-bg:#fff0f6;background-image:repeating-linear-gradient(45deg,#fff0f6 0 22px,#ffdeeb 22px 44px)}body:has([data-learner-theme=space]){--page-bg:#edeaff;background-image:radial-gradient(#7048e866 1px,#0000 1.5px),radial-gradient(#fab00599 1.2px,#0000 1.7px),linear-gradient(#ece5ff,#f3f0ff);background-position:0 0,30px 40px,0 0;background-size:60px 60px,90px 90px,auto}@media (prefers-color-scheme:dark){body:has([data-learner-theme=sky]){--page-bg:#0f2742;background-image:linear-gradient(#0b1f38,#12305a)}body:has([data-learner-theme=forest]){--page-bg:#0f2a1a;background-image:linear-gradient(#0d2416,#143823)}body:has([data-learner-theme=ocean]){--page-bg:#062c33;background-image:repeating-radial-gradient(circle at 50% 120%,#0a3a44 0 24px,#062c33 24px 48px)}body:has([data-learner-theme=candy]){--page-bg:#2d1022;background-image:repeating-linear-gradient(45deg,#2d1022 0 22px,#3a1430 22px 44px)}body:has([data-learner-theme=space]){--page-bg:#0b0a1f;background-image:radial-gradient(#fffa 1px,#0000 1.5px),radial-gradient(#fab005 1.2px,#0000 1.7px),linear-gradient(#0b0a1f,#1a1440)}}.level-card-big{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.level-card-big>.button{margin-left:auto}.notice{background:var(--card-alt);border:1px solid var(--border);border-radius:12px;margin:0 0 12px;padding:10px 14px;font-weight:600}.level-info{flex-direction:column;flex:1;gap:6px;min-width:200px;display:flex}.level-line{align-items:baseline;gap:10px;display:flex}.level-badge{color:#fff;background:linear-gradient(90deg,#0b7285,#6741d9);border-radius:999px;padding:2px 12px;font-size:18px;font-weight:800;display:inline-block}.xp-bar{background:var(--border);height:14px;box-shadow:inset 0 0 0 1px var(--border-strong);border-radius:999px;overflow:hidden}.xp-bar span{border-radius:inherit;background:linear-gradient(90deg,#22b8cf,#7950f2);height:100%;transition:width .6s;display:block}.look-picker fieldset{border:0;min-width:0;margin:0 0 16px;padding:0}.look-picker legend{align-items:center;gap:8px;margin-bottom:8px;padding:0;font-weight:800;display:flex}.look-picker fieldset:disabled .look-swatches,.look-picker fieldset:disabled .look-chips{opacity:.45}.look-preview{align-items:center;gap:16px;margin-bottom:12px;display:flex}.look-preview p{margin:0}.look-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.look-option{cursor:pointer;border:2px solid #0000;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;font-weight:600;display:flex;position:relative}.look-option input{opacity:0;pointer-events:none;position:absolute}.look-option:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--card))}.look-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.look-option.locked{cursor:default}.look-option.locked .avatar{opacity:.5}.look-lock{color:var(--muted);align-items:center;gap:3px;font-size:12px;font-weight:700;display:inline-flex}.look-swatches,.look-chips,.look-themes{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}button.look-swatch{border-radius:50%;width:36px;height:36px;padding:0;box-shadow:inset 0 0 0 1px #00000026}button.look-swatch.default{background:conic-gradient(#ffe8cc 0 25%, #e5e9ff 0 50%, #d3f9d8 0 75%, #ffdeeb 0)}button.look-swatch[aria-checked=true]{box-shadow:0 0 0 3px var(--card), 0 0 0 5px var(--accent)}button.look-chip,button.look-theme{background:var(--card);color:var(--fg);box-shadow:inset 0 0 0 2px var(--border);align-items:center;gap:6px;padding:6px 14px;font-weight:700;display:inline-flex}button.look-chip[aria-checked=true],button.look-theme[aria-checked=true]{box-shadow:inset 0 0 0 3px var(--accent)}button.look-chip:active:not(:disabled),button.look-theme:active:not(:disabled){transform:none}.look-theme-art{border-radius:6px;width:22px;height:22px;box-shadow:inset 0 0 0 1px #00000026}.theme-swatch-sunny .look-theme-art{background:#fff8ee}.theme-swatch-sky .look-theme-art{background:linear-gradient(#d0ebff,#f1f8ff)}.theme-swatch-forest .look-theme-art{background:linear-gradient(#f4fce3,#b2f2bb)}.theme-swatch-ocean .look-theme-art{background:repeating-radial-gradient(circle at 50% 120%,#c5f6fa 0 4px,#e3fafc 4px 8px)}.theme-swatch-candy .look-theme-art{background:repeating-linear-gradient(45deg,#fff0f6 0 4px,#ffdeeb 4px 8px)}.theme-swatch-space .look-theme-art{background:radial-gradient(#7048e8 1px,#0000 1.5px) 0 0/6px 6px,#e5dbff}@media (prefers-color-scheme:dark){.theme-swatch-sunny .look-theme-art{background:#12162a}.theme-swatch-sky .look-theme-art{background:linear-gradient(#0b1f38,#12305a)}.theme-swatch-forest .look-theme-art{background:linear-gradient(#0d2416,#143823)}.theme-swatch-ocean .look-theme-art{background:repeating-radial-gradient(circle at 50% 120%,#0a3a44 0 4px,#062c33 4px 8px)}.theme-swatch-candy .look-theme-art{background:repeating-linear-gradient(45deg,#2d1022 0 4px,#3a1430 4px 8px)}.theme-swatch-space .look-theme-art{background:radial-gradient(#fffa 1px,#0000 1.5px) 0 0/6px 6px,#0b0a1f}}.look-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}ol.leaderboard{padding:8px 16px;list-style:none}.leaderboard li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:8px 0;display:flex}.leaderboard li:last-child{border-bottom:0}.leaderboard li.me{background:color-mix(in srgb, var(--accent) 10%, var(--card));border-radius:12px;margin:0 -8px;padding:8px}.leaderboard li.gap{border-top:2px dashed var(--border);margin-top:12px}.lb-rank{text-align:center;font-variant-numeric:tabular-nums;width:36px;color:var(--muted);font-weight:800}.lb-top{color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;margin:0 2px;display:inline-grid}.lb-1{background:#b35c00}.lb-2{background:#5f666d}.lb-3{background:#9c4f1a}.lb-name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:700}.lb-you{color:var(--accent)}.lb-level{background:color-mix(in srgb, #7950f2 14%, var(--card));color:var(--violet);border-radius:999px;padding:2px 10px;font-size:14px;font-weight:800}@media (max-width:480px){.lb-answered{display:none}}.avatar-option.locked{cursor:default}.avatar-option.locked .avatar{opacity:.5}.avatar-lock{color:var(--muted);text-align:center;font-size:12px;font-weight:700}button.look-swatch:disabled{opacity:.35}main.with-side{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:0 32px;max-width:1120px;display:grid}.side-main{min-width:0}.side-col{flex-direction:column;gap:16px;padding-top:44px;display:flex;position:sticky;top:88px}.side-col .card{margin:0}@media (max-width:959px){main.with-side{max-width:var(--reading);grid-template-columns:minmax(0,1fr)}.side-col{padding-top:8px;position:static}}.side-card{padding:18px}.side-card h2{margin:0 0 10px;font-size:17px}.side-links{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.side-links a{color:var(--fg);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.side-links a:hover{background:var(--card-alt)}.side-links a[aria-current=page]{background:color-mix(in srgb, var(--accent) 10%, var(--card));color:var(--accent)}.side-links a>.icon{color:var(--muted);margin-left:auto}.side-icon{background:color-mix(in srgb, var(--accent) 10%, var(--card));width:34px;height:34px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid}.side-text{flex-direction:column;line-height:1.3;display:flex}.side-text .small{font-weight:500}.side-note p,.side-note ul{margin:0 0 8px;font-size:15px}.side-note ul{padding-left:20px}.side-note>:last-child{margin-bottom:0}.side-learner{align-items:center;gap:12px;display:flex}.side-learner strong{font-size:18px}.field-title{align-items:center;gap:8px;display:inline-flex}.field-title .icon{color:var(--accent);flex:none}.avatar-grid{align-items:start}.avatar-option .avatar-lock{background:var(--card);white-space:nowrap;border-radius:999px;padding:0 6px;line-height:1.5;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}:is(body:has(main.narrow) #main,body:has(main.reading) #main){background-position:max(16px,50% - 620px) 40px,right max(16px,50% - 620px) top 120px;background-repeat:no-repeat;background-size:200px}@media (min-width:960px){body:has(main.narrow) #main{background-image:url(/doodles-left.svg),url(/doodles-right.svg)}}@media (min-width:1280px){body:has(main.reading) #main{background-image:url(/doodles-left.svg),url(/doodles-right.svg)}}.side-rank{align-items:center;gap:12px;display:flex}.side-rank strong{color:var(--accent);font-size:22px}.toc{flex-direction:column;gap:6px;margin:0;padding-left:22px;font-size:15px;display:flex}.toc a{font-weight:600;text-decoration:none}.toc a:hover{text-decoration:underline}@media (max-width:959px){.side-toc{display:none}}.avatar-grid{row-gap:16px;margin-bottom:6px}.pin-fields{border:none;flex-direction:column;gap:20px;min-width:0;margin:0;padding:0;display:flex}.pin-fields:disabled label,.pin-fields:disabled legend,.pin-fields:disabled .switch{opacity:.6}.pin-fields:disabled .toggle-row{cursor:default}.field-title .icon.pin-lock{color:var(--muted)}.pin-notice{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.pin-notice .icon{color:var(--muted);flex:none}.admin-learner-link{align-items:center;gap:6px;display:inline-flex}main.admin .admin-search select{padding:6px 36px 6px 10px}.admin-learner-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}main.admin .admin-learner-head h1{margin:0}.admin-learner-head p{margin:2px 0 0}main.admin form.admin-settings{grid-template-columns:130px minmax(0,1fr);align-items:center;gap:8px 12px;display:grid}main.admin .admin-settings>label,.admin-settings-label{color:var(--muted);font-size:13px;font-weight:600}main.admin .admin-settings>input,main.admin .admin-settings>select{width:100%;max-width:280px}.admin-with-unit{align-items:center;gap:8px;display:flex}main.admin .admin-with-unit input{width:80px}.admin-switches{flex-wrap:wrap;gap:16px;display:flex}main.admin .admin-switches label{flex-direction:row;align-items:center;gap:6px;font-weight:400}main.admin .admin-switches input{width:16px;height:16px}.admin-settings .admin-actions{margin:4px 0 0}.admin-level{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}main.admin .admin-level input{width:72px}details.card.admin-danger{margin-top:12px}details.card.admin-danger summary{margin:0}details.card.admin-danger[open] summary{margin-bottom:8px}main:has(>.practice-layout.solo){max-width:calc(940px + 2 * var(--gutter))}.practice-layout.solo{grid-template-columns:minmax(0,1fr)}.practice-layout.solo .question .prompt{font-size:23px}.practice-layout.solo .practice.card{padding:32px 40px}.scratch-title{justify-content:space-between;align-self:stretch;align-items:center;gap:8px;display:flex}@media (max-width:860px){.practice-layout.solo .practice.card{padding:20px}.practice-layout.solo .question .prompt{font-size:21px}}@media (max-width:600px){.practice-layout.solo .practice.card{padding:16px}}.practice-tools{gap:8px;margin-left:auto;display:flex}.hint-btn .icon{color:var(--sun-icon)}.scratch-resize{cursor:ns-resize;touch-action:none;border-radius:8px;flex:none;place-items:center;height:14px;margin:-6px 0 -8px;display:grid}.scratch-resize span{background:var(--border-strong);border-radius:999px;width:48px;height:5px}.scratch-resize:hover span,.scratch-resize:focus-visible span{background:var(--accent)}.header-slot{flex:auto;justify-content:center;align-items:center;gap:10px;min-width:0;display:none}.header-slot:has(>:not(:empty)){display:flex}.header-grade:empty,.header-search-slot:empty{display:none}.header-search-slot{flex:0 440px;min-width:0;display:flex}form.header-search{flex-direction:row;flex:auto;gap:0;min-width:0}.header-grade .grade-picker select{min-width:0;padding-top:9px;padding-bottom:9px}.header-search input{padding-top:9px;padding-bottom:9px}@media (max-width:700px){.site-header:has(.header-slot>:not(:empty)){flex-wrap:wrap;row-gap:8px}.header-slot{flex-basis:100%;order:3}.header-search-slot{flex:auto}.header-search input{padding-left:38px;font-size:16px}.header-search .search-icon{left:11px}.header-grade .grade-picker select{max-width:150px}}.learner-link{color:inherit;border-radius:20px;align-items:center;gap:14px;margin-left:-4px;padding:4px 14px 4px 4px;text-decoration:none;display:inline-flex}.learner-link:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.learner-link-text{flex-direction:column;gap:4px;display:flex}.learner-level{align-items:center;gap:10px;font-size:15px;display:flex}.learner-level .level-badge{background:color-mix(in srgb, var(--violet) 14%, var(--card));color:var(--violet);align-items:center;gap:4px;padding:1px 10px;font-size:15px;display:inline-flex}.learner-level .level-badge .icon{color:var(--sun-icon)}.learner-level .xp-bar{background:color-mix(in srgb, var(--violet) 10%, var(--card));width:110px;height:8px;box-shadow:none}.learner-level .xp-bar span{background:linear-gradient(90deg,#66d9e8,#b197fc)}@media (min-width:1100px){.page-title:has(.learner-link){flex-wrap:nowrap}.page-title:has(.learner-link) .title-actions{flex-wrap:nowrap;gap:8px}.page-title:has(.learner-link) .title-actions .button{white-space:nowrap;padding-left:14px;padding-right:14px}}.header-grade .grade-picker select{font-weight:400}.pin-btn{position:relative}.pin-btn .pin-badge{box-sizing:content-box;background:var(--card);color:var(--muted);border-radius:50%;padding:2px;position:absolute;bottom:-3px;right:-3px}.stat-head{align-items:center;gap:10px;display:flex}.stat-head .icon{flex:none;margin-bottom:0}.stat-head .stat-value{line-height:1.1}@media (max-width:600px){.stat-head .icon{width:28px;height:28px}}.look-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:4px 6px}.look-option{padding:5px 4px}.look-picker>fieldset:first-of-type{margin-top:0}body:has([data-learner-theme=sunset]){--page-bg:#fff4e6;background-image:linear-gradient(#ffe3e3,#fff4e6 45%,#fff9db)}body:has([data-learner-theme=meadow]){--page-bg:#f4fce3;background-image:radial-gradient(circle,#ffd43b 0 3px,#0000 3.5px),radial-gradient(circle,#ff8fab 0 3px,#0000 3.5px),linear-gradient(#e7f5ff,#f4fce3 40%);background-position:20px 60px,80px 20px,0 0;background-size:140px 140px,110px 110px,auto}body:has([data-learner-theme=snow]){--page-bg:#f1f8ff;background-image:radial-gradient(circle,#fff 0 2.5px,#0000 3px),radial-gradient(circle,#d0ebff 0 2px,#0000 2.5px),linear-gradient(#e7f5ff,#f8f9fa);background-position:0 0,25px 35px,0 0;background-size:70px 70px,50px 50px,auto}body:has([data-learner-theme=rainbow]){--page-bg:#fff9f0;background-image:linear-gradient(135deg,#ffe3e3,#fff3bf 25%,#d3f9d8 50%,#d0ebff 75%,#e5dbff)}body:has([data-learner-theme=desert]){--page-bg:#fff4e0;background-image:radial-gradient(70% 20% at 20% 100%,#ffd8a8 0 60%,#0000 61%),radial-gradient(60% 16% at 85% 100%,#ffe8cc 0 60%,#0000 61%),linear-gradient(#fff3bf,#fff4e0)}body:has([data-learner-theme=jungle]){--page-bg:#ebfbee;background-image:radial-gradient(18% 30% at 0 10%,#8ce99a 0 60%,#0000 61%),radial-gradient(18% 30% at 100% 30%,#8ce99a 0 60%,#0000 61%),radial-gradient(14% 24% at 4% 70%,#b2f2bb 0 60%,#0000 61%),linear-gradient(#d3f9d8,#f4fce3)}body:has([data-learner-theme=aurora]){--page-bg:#eefaf6;background-image:radial-gradient(80% 30% at 30% 0,#c3fae8,#0000 70%),radial-gradient(60% 25% at 80% 10%,#e5dbff,#0000 70%),linear-gradient(#e6fcf5,#f3f0ff)}body:has([data-learner-theme=volcano]){--page-bg:#fff5f0;background-image:radial-gradient(40% 25% at 50% 100%,#ffc9c9 0 50%,#0000 51%),linear-gradient(#ffe8cc,#fff5f0 50%)}body:has([data-learner-theme=city]){--page-bg:#edf2ff;background-image:linear-gradient(#0000 70%,#dbe4ff 70%),linear-gradient(90deg,#0000 0 8%,#dbe4ff 8% 14%,#0000 14% 30%,#dbe4ff 30% 37%,#0000 37% 62%,#dbe4ff 62% 70%,#0000 70% 86%,#dbe4ff 86% 93%,#0000 93%),linear-gradient(#e5dbff,#edf2ff);background-position:0 0,0 100%,0 0;background-repeat:no-repeat;background-size:auto,100% 45%,auto}body:has([data-learner-theme=golden]){--page-bg:#fff9db;background-image:radial-gradient(circle,#fcc41966 0 2px,#0000 2.5px),linear-gradient(#fff3bf,#fff9db 50%,#ffec99);background-size:40px 40px,auto}@media (prefers-color-scheme:dark){body:has([data-learner-theme=sunset]){--page-bg:#2a1622;background-image:linear-gradient(#2a1230,#3a1a22 50%,#2a1e12)}body:has([data-learner-theme=meadow]){--page-bg:#122612;background-image:radial-gradient(circle,#fcc41988 0 3px,#0000 3.5px),radial-gradient(circle,#f0658988 0 3px,#0000 3.5px),linear-gradient(#0f1d2e,#122612 40%)}body:has([data-learner-theme=snow]){--page-bg:#131a26;background-image:radial-gradient(circle,#fff9 0 2px,#0000 2.5px),radial-gradient(circle,#a5d8ff66 0 1.5px,#0000 2px),linear-gradient(#0f1626,#1b2232)}body:has([data-learner-theme=rainbow]){--page-bg:#1a1626;background-image:linear-gradient(135deg,#2b1418,#2b2512 25%,#12261a 50%,#12203a 75%,#1f1636)}body:has([data-learner-theme=desert]){--page-bg:#2a2014;background-image:linear-gradient(#1c1a2e,#2a2014 60%)}body:has([data-learner-theme=jungle]){--page-bg:#0c2214;background-image:linear-gradient(#0a1c10,#12301c)}body:has([data-learner-theme=aurora]){--page-bg:#0b1622;background-image:radial-gradient(80% 30% at 30% 0,#0ca67855,#0000 70%),radial-gradient(60% 25% at 80% 10%,#7048e855,#0000 70%),linear-gradient(#08121e,#101a2c)}body:has([data-learner-theme=volcano]){--page-bg:#241010;background-image:radial-gradient(40% 25% at 50% 100%,#c92a2a55,#0000 70%),linear-gradient(#1a0d0d,#2a1410)}body:has([data-learner-theme=city]){--page-bg:#0d1026;background-image:radial-gradient(circle,#ffe06688 0 1px,#0000 1.5px),linear-gradient(#0b0e22,#171b3a);background-position:0 0,0 0;background-repeat:repeat;background-size:30px 30px,auto}body:has([data-learner-theme=golden]){--page-bg:#221c0a;background-image:radial-gradient(circle,#fcc41955 0 2px,#0000 2.5px),linear-gradient(#1e1808,#2a2210)}}.theme-swatch-sunset .look-theme-art{background:linear-gradient(#ffc9c9,#ffe8cc,#fff3bf)}.theme-swatch-meadow .look-theme-art{background:radial-gradient(circle,#ff8fab 0 1.5px,#0000 2px) 0 0/8px 8px,linear-gradient(#d0ebff,#d8f5a2)}.theme-swatch-snow .look-theme-art{background:radial-gradient(circle,#fff 0 1.5px,#0000 2px) 0 0/7px 7px,linear-gradient(#a5d8ff,#e7f5ff)}.theme-swatch-rainbow .look-theme-art{background:linear-gradient(135deg,#ffc9c9,#ffec99,#b2f2bb,#a5d8ff,#d0bfff)}.theme-swatch-desert .look-theme-art{background:linear-gradient(#fff3bf 50%,#ffd8a8 50%)}.theme-swatch-jungle .look-theme-art{background:radial-gradient(circle at 0 0,#69db7c 0 45%,#0000 46%),linear-gradient(#b2f2bb,#d3f9d8)}.theme-swatch-aurora .look-theme-art{background:linear-gradient(160deg,#96f2d7,#d0bfff)}.theme-swatch-volcano .look-theme-art{background:linear-gradient(#ffd8a8,#ff8787)}.theme-swatch-city .look-theme-art{background:linear-gradient(90deg,#91a7ff 0 25%,#dbe4ff 25% 45%,#91a7ff 45% 70%,#dbe4ff 70%)}.theme-swatch-golden .look-theme-art{background:linear-gradient(135deg,#fff3bf,#fcc419)}@media (prefers-color-scheme:dark){.theme-swatch-sunset .look-theme-art{background:linear-gradient(#2a1230,#3a1a22,#2a1e12)}.theme-swatch-meadow .look-theme-art{background:linear-gradient(#0f1d2e,#122612)}.theme-swatch-snow .look-theme-art{background:radial-gradient(circle,#fff 0 1px,#0000 1.5px) 0 0/7px 7px,#131a26}.theme-swatch-rainbow .look-theme-art{background:linear-gradient(135deg,#2b1418,#2b2512,#12261a,#12203a,#1f1636)}.theme-swatch-desert .look-theme-art{background:linear-gradient(#1c1a2e 50%,#2a2014 50%)}.theme-swatch-jungle .look-theme-art{background:linear-gradient(#0a1c10,#12301c)}.theme-swatch-aurora .look-theme-art{background:linear-gradient(160deg,#0ca67888,#7048e888),#08121e}.theme-swatch-volcano .look-theme-art{background:linear-gradient(#1a0d0d,#5c1a1a)}.theme-swatch-city .look-theme-art{background:radial-gradient(circle,#ffe066 0 1px,#0000 1.5px) 0 0/6px 6px,#0b0e22}.theme-swatch-golden .look-theme-art{background:linear-gradient(135deg,#2a2210,#6b5310)}}button.look-swatch.locked{color:var(--fg);place-items:center;display:grid}button.look-chip{padding-left:6px}button.look-chip .avatar{flex:none}.look-swatches,.look-chips,.look-themes{gap:4px}button.look-tile{min-width:52px;color:var(--fg);box-shadow:none;background:0 0;border-radius:12px;flex-direction:column;justify-content:flex-start;align-items:center;gap:3px;padding:5px;font-weight:700;display:inline-flex}button.look-tile:hover:not(:disabled){background:var(--card-alt);filter:none}button.look-tile:active:not(:disabled){box-shadow:none;transform:none}button.look-tile[aria-checked=true]{box-shadow:inset 0 0 0 3px var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--card))}button.look-tile:disabled{opacity:1}button.look-tile:disabled>:not(.look-lock):not(.sr-only){opacity:.5}.look-dot{border-radius:50%;width:36px;height:36px;display:block;box-shadow:inset 0 0 0 1px #00000026}.look-dot.default{background:conic-gradient(#ffe8cc 0 25%, #e5e9ff 0 50%, #d3f9d8 0 75%, #ffdeeb 0)}.look-tile .look-theme-art{border-radius:10px;width:40px;height:40px}.look-lock{white-space:nowrap;align-items:center;gap:2px;line-height:1;display:inline-flex}.look-lock .icon{flex:none;display:block}.look-lock>span{line-height:11px;display:block}.look-lock .icon,.avatar-lock .icon{position:relative;top:-1px}
