.progress{border-radius:var(--r-full);background:var(--surface-3);height:12px;display:block;overflow:hidden}.progress>span{border-radius:inherit;background:var(--action);transform-origin:0;height:100%;transition:transform .45s var(--spring);display:block}.progress-green>span{background:var(--green)}.progress-streak>span{background:var(--streak)}.progress[aria-valuenow="0"]>span{opacity:0}.stepper{grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;list-style:none;display:grid}.stepper span{border-radius:var(--r-full);background:var(--surface-3);height:8px;transition:background-color .3s var(--ease)}.stepper span.is-done{background:var(--action)}.choice{align-items:center;gap:var(--s-3);min-height:60px;padding:var(--s-3) var(--s-4);border:2px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:0 3px 0 var(--border);cursor:pointer;transition:border-color .15s, background-color .15s, transform .1s var(--ease), box-shadow .1s var(--ease);display:flex;position:relative}.choice:hover{border-color:var(--border-strong)}.choice:active{box-shadow:0 1px 0 var(--border);transform:translateY(2px)}.choice input{opacity:0;pointer-events:none;position:absolute}.choice:has(input:focus-visible){outline:3px solid var(--action);outline-offset:2px}.choice:has(input:checked){border-color:var(--brand);background:var(--brand-soft);box-shadow:0 3px 0 var(--brand)}.choice:has(input:disabled){cursor:default}.choice:has(input:disabled):active{box-shadow:0 3px 0 var(--border);transform:none}.choice-lead{border:2px solid var(--border);border-radius:var(--r-s);min-width:36px;height:36px;color:var(--ink-soft);background:var(--surface);flex:none;place-items:center;padding:0 6px;font-size:15px;font-weight:700;display:grid}.choice-lead .icon{width:22px;height:22px}.choice-lead:has(.icon-tile){background:0 0;border:0;min-width:0;height:auto;padding:0}.choice:has(input:checked) .choice-lead:has(.icon-tile){background:0 0;border:0;min-width:0;height:auto;padding:0}.choice:has(input:checked) .choice-lead{border-color:var(--brand);color:var(--brand-text)}.choice-text{flex:1;gap:2px;min-width:0;display:grid}.choice-title{font-weight:700;line-height:1.3}.choice-desc{color:var(--ink-mute);font-size:15px;line-height:1.35}.choice-box{border:2px solid var(--control-border);background:var(--surface);border-radius:7px;flex:none;width:24px;height:24px}.choice-box.is-radio{background:0 0;border-color:#0000;border-radius:50%}.choice.is-correct .choice-box,.choice.is-wrong .choice-box,.choice.is-missed .choice-box{display:none}.choice:has(input:checked) .choice-box{border-color:var(--action);background:var(--action) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center / 16px no-repeat}:is(.choice.is-correct,.choice.is-correct:has(input:checked)){border-color:var(--green);background:var(--green-soft);box-shadow:0 3px 0 var(--green)}:is(.choice.is-correct .choice-lead,.choice.is-correct:has(input:checked) .choice-lead){border-color:var(--green);color:var(--green-ink)}:is(.choice.is-wrong,.choice.is-wrong:has(input:checked)){border-color:var(--red);background:var(--red-soft);box-shadow:0 3px 0 var(--red)}:is(.choice.is-wrong .choice-lead,.choice.is-wrong:has(input:checked) .choice-lead){border-color:var(--red);color:var(--red-ink)}.choice.is-missed{border-style:dashed;border-color:var(--green)}.choices{gap:var(--s-3);display:grid}.sliding{font-variant-numeric:tabular-nums;display:inline-flex}.sliding-digits{display:inline-flex}.sliding-col{width:1ch;height:1.2em;line-height:1.2em;display:inline-block;overflow:hidden}.sliding-col>span{transition:transform .6s var(--spring);flex-direction:column;display:flex}.sliding-sep{height:1.2em;line-height:1.2em;display:inline-block}.badge{min-height:36px;padding:0 var(--s-3) 0 var(--s-2);border-radius:var(--r-full);font-family:var(--display);background:var(--surface);border:2px solid var(--border);align-items:center;gap:4px;font-size:17px;font-weight:700;display:inline-flex}.badge .icon{stroke-width:2px;width:22px;height:22px}.badge-streak,.badge-streak .icon{color:var(--ink-mute)}.badge-streak.is-active{color:#a35a00;background:var(--streak-soft);border-color:#ffdda8}.badge-streak.is-active .icon{color:var(--streak);fill:var(--streak)}.badge-points{color:var(--brand-text)}.badge-points .icon{color:var(--brand);fill:var(--brand)}.avatar{color:#fff;font-weight:700;font-family:var(--sans);border-radius:50%;flex:none;place-items:center;line-height:1;display:inline-grid}.empty{justify-items:center;gap:var(--s-2);padding:var(--s-7) var(--s-4);text-align:center;display:grid}.empty-mascot{width:104px;margin-bottom:var(--s-2)}.page .empty>h1{font-size:20px}.empty p{color:var(--ink-soft);max-width:40ch}.empty .btn{margin-top:var(--s-3)}.feedback{z-index:30;padding:var(--s-5) var(--s-4) calc(var(--s-4) + env(safe-area-inset-bottom));animation:feedback-in .25s var(--ease);border-top:2px solid;position:fixed;inset:auto 0 0}.feedback-inner{gap:var(--s-3);width:min(640px,100%);margin:0 auto;display:grid}.feedback.is-correct{background:var(--green-soft);color:var(--green-ink);border-color:#bfe3cd}.feedback.is-wrong{background:var(--red-soft);color:var(--red-ink);border-color:#f6c7c7}.feedback-title{align-items:center;gap:var(--s-3);font-family:var(--display);font-size:22px;font-weight:700;display:flex}.feedback-icon{background:var(--green);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.feedback.is-wrong .feedback-icon{background:var(--red)}.feedback-icon .icon{color:#fff;stroke-width:3px;width:22px;height:22px}.feedback-body{color:var(--ink);font-size:16px;line-height:1.45}.feedback-body strong{color:inherit}.feedback :focus-visible{outline-color:var(--ink)}@keyframes feedback-in{0%{transform:translateY(100%)}}.sheet{border-radius:var(--r-l) var(--r-l) 0 0;background:var(--surface);width:100%;max-width:100%;max-height:92svh;color:var(--ink);border:0;margin:auto 0 0;padding:0}.sheet[open]{animation:sheet-in .25s var(--ease)}.sheet::backdrop{background:#1c1a1773}.sheet-body{gap:var(--s-4);padding:var(--s-4) var(--s-4) calc(var(--s-5) + env(safe-area-inset-bottom));display:grid}.sheet-head{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.sheet-head h2{font-size:20px}@keyframes sheet-in{0%{opacity:0;transform:translateY(40px)}}@media (width>=720px){.sheet{border-radius:var(--r-l);width:min(520px,100% - 32px);margin:auto}}.feedback-body:empty{display:none}.feedback-body>*+*{margin-top:var(--s-2)}.feedback-explain{color:var(--ink-soft)}.report-flag{color:currentColor;opacity:.7;cursor:pointer;--icon-w:transparent;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;margin:-6px -8px -6px auto;display:grid}.report-flag:hover{opacity:1;background:#0000000f}.report-flag .icon{width:22px;height:22px}.report{gap:var(--s-4);display:grid}.report-reasons{gap:var(--s-2);border:0;min-width:0;margin:0;padding:0;display:grid}.field textarea{width:100%;min-height:96px;padding:var(--s-3) var(--s-4);border:2px solid var(--control-border);border-radius:var(--r);background:var(--surface);font:inherit;color:var(--ink);resize:vertical;font-size:17px;transition:border-color .15s,box-shadow .15s}.field textarea:hover{border-color:var(--ink-mute)}.field textarea:focus{border-color:var(--action)}.toast-region{z-index:60;inset:calc(var(--s-4) + env(safe-area-inset-top)) var(--s-4) auto;pointer-events:none;justify-items:center;display:grid;position:fixed}.toast{pointer-events:auto;align-items:center;gap:var(--s-2);max-width:480px;padding:var(--s-3) var(--s-4);border:2px solid var(--action);border-radius:var(--r);background:var(--surface);color:var(--ink);box-shadow:0 4px 0 var(--action-edge);animation:toast-in .25s var(--ease);font-weight:700;display:flex}.toast .icon{stroke-width:2.5px;width:20px;height:20px;color:var(--action);flex:none}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}}.switch{border-radius:var(--r-full);background:var(--ink-mute);width:52px;height:32px;transition:background-color .2s var(--ease);flex:none;position:relative}.switch:after{content:"";width:24px;height:24px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:4px;left:4px}[aria-checked=true]>.switch{background:var(--action)}[aria-checked=true]>.switch:after{transform:translate(20px)}.tiles{gap:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tile{align-content:center;justify-items:center;gap:var(--s-1);min-height:148px;padding:var(--s-5) var(--s-3);border:2px solid var(--border);border-radius:var(--r-l);background:var(--surface);box-shadow:0 4px 0 var(--border);text-align:center;cursor:pointer;transition:transform .1s var(--ease), box-shadow .1s var(--ease), border-color .15s, background-color .15s;display:grid;position:relative}.tile:hover{border-color:var(--border-strong)}.tile:active{box-shadow:0 0 0 var(--border);transform:translateY(4px)}.tile input{opacity:0;pointer-events:none;position:absolute}.tile:has(input:focus-visible){outline:3px solid var(--action);outline-offset:2px}.tile:has(input:checked){border-color:var(--brand);background:var(--brand-soft);box-shadow:0 4px 0 var(--brand)}.tile:has(input:checked):after{content:"";top:var(--s-2);right:var(--s-2);background:var(--action) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center / 14px no-repeat;border-radius:50%;width:22px;height:22px;position:absolute}.tile-art{width:56px;height:56px;margin-bottom:var(--s-2);border-radius:var(--r);color:var(--brand);background:var(--brand-soft);place-items:center;display:grid}.tile:has(input:checked) .tile-art{background:var(--surface)}.tile-art .icon{width:32px;height:32px}.tile-number{font:800 26px/1 var(--display);color:var(--brand-text)}.tile-title{font-weight:700;line-height:1.25}.tile-hint{color:var(--ink-mute);font-size:14px;line-height:1.35}.paywall-actions{gap:var(--s-2);width:min(100%,320px);display:grid}.spend{gap:var(--s-2);display:grid}.spend-note{color:var(--ink-mute);text-align:center;font-size:15px;line-height:1.4}.empty .spend .btn{margin-top:0}@media (forced-colors:active){:is(.choice:has(input:checked),.tile:has(input:checked)){border-color:highlight;outline:2px solid highlight}.choice:has(input:checked) .choice-box{forced-color-adjust:none;background-color:highlight;border-color:highlight}.switch{forced-color-adjust:none;background:canvas;border:2px solid canvastext}.switch:after{background:canvastext}[aria-checked=true]>.switch{background:highlight;border-color:highlight}[aria-checked=true]>.switch:after{background:highlighttext}.feedback,.toast{border:2px solid canvastext}}
