.app-hero{padding:54px 0 70px}:root[data-theme=dark] .hero.app-hero{background:radial-gradient(circle at 76% 25%, #2a2152 0, transparent 44%), var(--page)}.app-hero .orb--one{top:40px;right:4%}.app-hero__grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,5vw,70px);display:grid}.app-hero h1{font-size:clamp(2.5rem,5vw,4.4rem)}.app-hero .breadcrumbs{margin-bottom:26px}.app-hero .hero-actions{gap:18px 26px}.app-hero .hero-notes{margin-top:26px}.study__status{min-height:1.5em;color:var(--muted);margin:12px 0 0;font-weight:600}.study__noscript{background:var(--app-wrong-soft);color:var(--ink);border-radius:14px;padding:16px}.cta-big{background:var(--purple);box-shadow:0 6px 0 var(--purple-dark), 0 18px 34px #5c40df4d;color:#fff;font:inherit;text-align:left;cursor:pointer;border:0;border-radius:20px;align-items:center;gap:16px;padding:16px 26px 16px 16px;transition:transform .16s,box-shadow .16s;display:inline-flex}.cta-big:hover{box-shadow:0 9px 0 var(--purple-dark), 0 24px 40px #5c40df57;transform:translateY(-3px)}.cta-big:active{box-shadow:0 2px 0 var(--purple-dark), 0 8px 16px #5c40df40;transform:translateY(4px)}.cta-big__icon{background:#ffffff2e;border-radius:16px;place-items:center;width:52px;height:52px;transition:transform .2s;display:grid}.cta-big:hover .cta-big__icon{transform:rotate(-8deg)scale(1.06)}.cta-big__svg{fill:currentColor;width:26px;height:26px}.cta-big__text{gap:2px;display:grid}.cta-big__title{letter-spacing:-.01em;font-size:1.25rem;font-weight:800}.cta-big__sub{opacity:.88;font-size:.9rem}.progress-card{z-index:1;border:1px solid var(--line);background:var(--surface);max-width:470px;box-shadow:20px 24px 0 var(--violet-shadow), 0 24px 45px #2d1c7329;border-radius:28px;gap:16px;margin-left:auto;padding:26px;animation:7s ease-in-out infinite cardFloat;display:grid;position:relative;transform:rotate(1.5deg)}@keyframes cardFloat{50%{transform:rotate(1.5deg)translateY(-8px)}}.progress-card .eyebrow{margin:0}.progress-card__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.progress-card__pct{color:var(--muted);margin:0}.progress-card__pct b{color:var(--ink);letter-spacing:-.03em;font-size:2rem}.mini-map{grid-template-columns:repeat(30,1fr);gap:2px;display:grid}.mini-map i{aspect-ratio:1;background:var(--lilac);border-radius:2px}.mini-map i[data-state=mastered]{background:var(--app-correct)}.mini-map i[data-state=wrong]{background:var(--app-wrong)}.mini-map i[data-state=pending]{background:var(--purple);opacity:.55}.legend{color:var(--muted);grid-template-columns:1fr 1fr;gap:6px 18px;margin:0;padding:0;font-size:.86rem;list-style:none;display:grid}.legend li{align-items:center;gap:8px;display:flex}.legend b{color:var(--ink);margin-left:auto}.legend .state-dot{margin-top:0}.progress-card__today{border-top:1px solid var(--line);padding-top:14px}.progress-card__today-row{color:var(--muted);justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.progress-card__today-row b{color:var(--ink)}.progress-card__streak{background:var(--gold);color:#6b4300;border-radius:999px;padding:2px 10px;font-size:.85rem}.progress-card__streak b{color:inherit}:root[data-theme=dark] .progress-card__streak{color:#ffd27a}.progress-card__caption{color:var(--muted);margin:8px 0 0;font-size:.82rem}.meter{background:var(--lilac);border-radius:4px;height:8px;overflow:hidden}.meter span{background:var(--purple);border-radius:4px;width:0;height:100%;transition:width .5s;display:block}.meter span.is-reached{background:var(--app-correct)}.modes-section{background:var(--surface)}.mode-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mode-card{border:1px solid var(--line);background:var(--page);min-height:210px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:20px;flex-direction:column;align-items:flex-start;padding:26px 24px;text-decoration:none;transition:transform .18s,box-shadow .18s,background-color .18s,border-color .18s,color .18s;display:flex;position:relative}.mode-card .feature-icon{margin-bottom:30px;transition:transform .2s}.mode-card h3{margin-bottom:6px}.mode-card p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.55}.mode-card__go{background:var(--lilac);width:36px;height:36px;color:var(--purple-dark);border-radius:50%;place-items:center;font-weight:800;transition:transform .18s,background-color .18s,color .18s;display:grid;position:absolute;bottom:20px;right:22px}.mode-card__badge{background:var(--app-wrong);color:#fff;text-align:center;border-radius:999px;min-width:32px;padding:3px 10px;font-size:.85rem;font-weight:800;position:absolute;top:22px;right:22px}[data-start=bookmarks] .mode-card__badge{background:var(--purple)}@media (hover:hover){.mode-card:hover:not(:disabled){border-color:var(--purple);box-shadow:10px 12px 0 var(--violet-shadow);color:var(--ink);transform:translateY(-5px)}.mode-card:hover:not(:disabled) .feature-icon{transform:rotate(-8deg)scale(1.08)}.mode-card:hover:not(:disabled) .mode-card__go{background:var(--purple);color:#fff;transform:translate(4px)}}.mode-card:disabled{opacity:.55;cursor:default}.mode-card--featured{border-color:var(--purple);background:var(--purple);color:#fff;box-shadow:0 16px 30px #5c40df47}.mode-card--featured .feature-icon,.mode-card--featured h3,.mode-card--featured p{color:#fff}.mode-card--featured .mode-card__go{color:#fff;background:#fff3}.mode-card--featured:hover:not(:disabled){color:#fff;box-shadow:10px 12px 0 var(--violet-shadow), 0 20px 34px #5c40df4d}.modes-section__settings{margin:26px 0 0}.app-explainer{background:var(--lilac)}.app-explainer p:not(.eyebrow):not(.source-note){color:var(--muted);font-size:1.05rem;line-height:1.75}.app-explainer .source-note{margin-top:26px}.ring{flex:none;width:128px;height:128px;position:relative}.ring--large{width:176px;height:176px}.ring--side{width:112px;height:112px}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring__track{fill:none;stroke:var(--lilac);stroke-width:10px}.ring__fill{fill:none;stroke:var(--app-correct);stroke-width:10px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100px}.ring__value{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;place-items:center;font-size:1.55rem;font-weight:800;display:grid;position:absolute;inset:0}.ring--large .ring__value{font-size:2.3rem}html.runner-open{overflow:hidden}dialog.runner{background:radial-gradient(circle at 80% 10%, #ece6ff 0, #ece6ff66 22%, transparent 48%), linear-gradient(160deg, var(--page) 0%, #f4f0ff 100%);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--ink);border:0;margin:0;padding:0;overflow:hidden}:root[data-theme=dark] dialog.runner{background:radial-gradient(circle at 80% 10%, #2a2152 0, transparent 50%), var(--page)}dialog.runner::backdrop{background:var(--page)}dialog.runner[open]{animation:.32s cubic-bezier(.2,.8,.2,1) runnerIn}@keyframes runnerIn{0%{opacity:0;transform:scale(.985)}}.runner__bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.runner__bg .orb--one{opacity:.6;width:260px;height:260px;animation:14s ease-in-out infinite orbDrift;top:12%;right:-60px}.runner__bg .orb--two{opacity:.7;width:150px;height:150px;animation:11s ease-in-out infinite reverse orbDrift;bottom:8%;left:-40px}@keyframes orbDrift{50%{transform:translate(-30px,24px)}}.runner__shell{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid;position:relative}.runner__top{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:14px max(16px,50vw - 560px);display:grid}.runner__title{line-height:1.2;display:grid}.runner__mode{color:var(--purple-dark);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:800}.runner__count{font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:800}.runner__steps{gap:4px;min-width:0;display:flex}.runner__steps i{background:#6947ff24;border-radius:4px;flex:1;height:8px;transition:background-color .25s,transform .25s}.runner__steps i[data-s=current]{background:var(--purple);transform:scaleY(1.35)}.runner__steps i[data-s=ok]{background:var(--app-correct)}.runner__steps i[data-s=ko]{background:var(--app-wrong)}.runner__steps i[data-s=answered]{background:var(--purple);opacity:.55}.runner__steps i[data-s=flagged]{background:var(--gold);box-shadow:inset 0 0 0 2px #d9a441}.runner__bar{background:#6947ff24;border-radius:4px;width:100%;height:8px;overflow:hidden}.runner__bar span{background:var(--purple);border-radius:4px;width:0;height:100%;transition:width .3s;display:block}.runner__close{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-weight:700;transition:border-color .15s,transform .15s;display:inline-flex}.runner__close:hover{border-color:var(--purple);transform:translateY(-1px)}.runner__stage{overscroll-behavior:contain;padding:clamp(8px,2vh,26px) 16px 30px;overflow-y:auto}.runner__layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:28px;max-width:1120px;margin:0 auto;display:grid}.runner:not([data-view=session]) .runner__layout{grid-template-columns:minmax(0,1fr);max-width:820px}.runner:not([data-view=session]) .runner__side{display:none}.qpanel{border:1px solid var(--line);background:var(--surface);box-shadow:20px 24px 0 var(--violet-shadow), 0 24px 45px #2d1c7324;border-radius:28px;position:relative;overflow:clip}.qpanel__body{padding:clamp(22px,4vw,40px) clamp(20px,4vw,44px) 10px}.qpanel__eyebrow{color:var(--purple-dark);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;font-size:.78rem;font-weight:800;display:flex}.qpanel__eyebrow .q-chip{letter-spacing:0;text-transform:none}.qpanel__question{color:var(--ink);letter-spacing:-.02em;white-space:pre-line;margin:0 0 26px;font-size:clamp(1.3rem,2.6vw,1.75rem);font-weight:700;line-height:1.38}.qpanel__question:focus{outline:none}.qpanel__choices{gap:12px;display:grid}.qpanel__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;min-height:84px;padding:16px clamp(20px,4vw,44px) 24px;display:flex}.qpanel__feedback{flex:260px}.qpanel__feedback:empty{display:none}.qpanel__hint{color:var(--muted);margin:0;font-size:.92rem}.runner__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-left:auto;display:flex}.runner__btn{background:var(--purple);min-height:48px;box-shadow:0 4px 0 var(--purple-dark);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:14px;padding:12px 24px;font-weight:800;transition:transform .14s,box-shadow .14s}.runner__btn:hover{box-shadow:0 6px 0 var(--purple-dark);transform:translateY(-2px)}.runner__btn:active{box-shadow:0 1px 0 var(--purple-dark);transform:translateY(3px)}.runner__btn--ghost{background:var(--lilac);box-shadow:none;color:var(--purple-dark)}.runner__btn--ghost:hover,.runner__btn--ghost:active{box-shadow:none}.runner__btn--danger{background:var(--app-wrong);box-shadow:0 4px 0 var(--app-wrong-text)}.runner__btn--wide{width:100%}.runner__btn:disabled{opacity:.45;cursor:default;transform:none}:root[data-theme=dark] .runner__btn:not(.runner__btn--ghost){color:var(--app-on-accent)}.runner__side{gap:14px;display:grid;position:sticky;top:0}.side-card{border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:20px}.side-card--score{justify-items:center;gap:14px;display:grid}.side-stats{gap:8px;width:100%;margin:0;padding:0;font-weight:600;list-style:none;display:grid}.side-stats li{background:var(--page);color:var(--muted);border-radius:12px;align-items:center;gap:8px;padding:8px 12px;display:flex}.side-stats b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.1rem}.side-stats .is-ok b{color:var(--app-correct-text)}.side-stats .is-ko b{color:var(--app-wrong-text)}.side-stats .is-streak{background:var(--gold);color:#6b4300}.side-stats .is-streak b{color:inherit}.side-card__label{color:var(--muted);font-size:.8rem;font-weight:700;display:block}.side-card__sub{color:var(--muted);margin-top:4px;font-size:.86rem;font-weight:600;display:block}.runner__timer{background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:14px;justify-content:center;padding:10px 14px;font-weight:800;display:inline-flex}.runner__timer--big{letter-spacing:-.03em;background:0 0;border:0;padding:0;font-size:2.6rem;line-height:1.1;display:block}.runner__timer.is-low{border-color:var(--app-wrong);color:var(--app-wrong-text);animation:1s ease-in-out infinite timerPulse}.runner__timer--big.is-low{animation:none}@keyframes timerPulse{50%{transform:scale(1.04)}}.side-btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-weight:700;transition:border-color .15s,background-color .15s;display:inline-flex}.side-btn:hover{border-color:var(--purple)}.side-btn[aria-pressed=true]{border-color:var(--purple);background:var(--lilac);color:var(--purple-dark)}.side-btn__icon{width:20px;height:20px}.side-btn[aria-pressed=true] .side-btn__icon{fill:currentColor}.side-keys{color:var(--muted);text-align:center;margin:0;font-size:.8rem}kbd{border:1px solid var(--line);background:var(--surface);min-width:22px;color:var(--ink);font:inherit;text-align:center;border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-size:.75rem;font-weight:700;display:inline-block}.results{text-align:center;flex-direction:column;align-items:center;padding:6px 0 4px;display:flex}.results .eyebrow{margin-bottom:6px}.results__title{margin:0 0 18px;font-size:clamp(2rem,5vw,3rem)}.results__title em{color:var(--purple);font-style:normal}.results__score{color:var(--muted);margin:14px 0 6px;font-weight:700}.results__body{max-width:520px;color:var(--muted)}.results__note{max-width:520px;color:var(--app-wrong-text);font-weight:700}.results__stats{grid-template-columns:repeat(3,minmax(0,120px));justify-content:center;gap:12px;margin:14px 0 18px;display:grid}.stat-card{background:var(--page);border:1px solid var(--line);border-radius:16px;padding:14px 10px}.stat-card dt{color:var(--muted);font-size:.78rem;font-weight:700}.stat-card dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:1.6rem;font-weight:800}.stat-card.is-ok dd{color:var(--app-correct-text)}.stat-card.is-ko dd{color:var(--app-wrong-text)}.results__pill{background:var(--app-correct-soft);color:var(--app-correct-text);border-radius:999px;padding:9px 16px;font-weight:800}.results__pill.is-muted{background:var(--lilac);color:var(--muted)}.results__verdict{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;margin:0 0 10px;padding:7px 16px;font-size:.9rem;font-weight:800;display:inline-block}.results__verdict[data-passed=true]{background:var(--app-correct-soft);color:var(--app-correct-text)}.results__verdict[data-passed=false]{background:var(--app-wrong-soft);color:var(--app-wrong-text)}.ring--fail .ring__fill{stroke:var(--app-wrong)}.results__emoji{margin:0;font-size:3.5rem}.confetti{z-index:5;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti span{border-radius:2px;width:8px;height:12px;position:absolute;top:0}.review__title{margin-bottom:12px;font-size:1.8rem}.review-list{text-align:left;gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.review-card{border:1px solid var(--line);border-left:5px solid var(--app-correct);background:var(--page);border-radius:16px;padding:16px 18px}.review-card:is([data-outcome=wrong],[data-outcome=timedOut]){border-left-color:var(--app-wrong)}.review-card[data-outcome=unanswered]{border-left-color:var(--muted)}.review-card__head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.review-card__icon{color:var(--app-correct-text);font-weight:800}.review-card:is([data-outcome=wrong],[data-outcome=timedOut]) .review-card__icon{color:var(--app-wrong-text)}.review-card[data-outcome=unanswered] .review-card__icon{color:var(--muted)}.review-card__flag{color:var(--purple-dark);font-size:.8rem;font-weight:700}.review-card__text{white-space:pre-line;margin-bottom:8px;font-weight:700;line-height:1.45}.review-card__answer{margin:4px 0 0;line-height:1.5}.review-card__answer span{color:var(--muted);font-weight:600}.review-card__answer--right{color:var(--app-correct-text)}.review-empty{color:var(--muted)}dialog.sheet{background:var(--surface);width:min(460px,100vw - 32px);box-shadow:14px 16px 0 var(--violet-shadow), 0 30px 80px #140a3c4d;color:var(--ink);border:0;border-radius:24px;padding:28px}dialog.sheet::backdrop{backdrop-filter:blur(3px);background:#211c3966}dialog.sheet[open]{animation:.26s cubic-bezier(.2,.8,.2,1) sheetIn}@keyframes sheetIn{0%{opacity:0;transform:translateY(18px)scale(.97)}}.sheet h2{margin-bottom:8px;font-size:1.6rem}.sheet p{color:var(--muted)}.sheet__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.size-chips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.size-chip{border:2px solid var(--line);background:var(--surface);min-width:58px;color:var(--ink);font:inherit;cursor:pointer;border-radius:14px;padding:11px 16px;font-weight:800;transition:border-color .15s,transform .15s}.size-chip:hover{border-color:var(--purple);transform:translateY(-2px)}.size-chip[aria-checked=true]{border-color:var(--purple);background:var(--purple);color:#fff}dialog.sheet--wide{width:min(560px,100vw - 32px)}.exam-hero__card{border:1px solid var(--line);background:var(--surface);max-width:470px;box-shadow:20px 24px 0 var(--violet-shadow), 0 24px 45px #2d1c7329;border-radius:28px;margin-left:auto;padding:28px;animation:7s ease-in-out infinite examFloat;transform:rotate(-1.5deg)}@keyframes examFloat{50%{transform:rotate(-1.5deg)translateY(-8px)}}.exam-facts{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px;display:grid}.exam-facts div{background:var(--lilac);text-align:center;border-radius:16px;flex-direction:column-reverse;padding:14px 8px;display:flex}.exam-facts dd{color:var(--purple-dark);letter-spacing:-.03em;margin:0;font-size:2.1rem;font-weight:800;line-height:1.1}.exam-facts dt{color:var(--muted);font-size:.78rem;font-weight:600}.exam-rules{color:var(--muted);gap:9px;margin:0 0 20px;padding:0;list-style:none;display:grid}.exam-rules li{gap:10px;display:flex}.exam-rules li:before{content:"✓";color:var(--purple);font-weight:800}.exam-card__running{background:var(--gold);color:#6b4300;border-radius:12px;margin:0 0 12px;padding:10px 14px;font-weight:700}.exam-history-section{background:var(--surface)}.exam-history__list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.exam-history__item{border:1px solid var(--line);background:var(--page);border-radius:16px;grid-template-columns:140px 100px 1fr;align-items:center;gap:14px;padding:14px 18px;display:grid}.exam-history__verdict{color:var(--app-correct-text);font-weight:800}.exam-history__item[data-passed=false] .exam-history__verdict{color:var(--app-wrong-text)}.exam-history__score{font-variant-numeric:tabular-nums;font-weight:800}.exam-history__meta{color:var(--muted);font-size:.86rem}.grid-legend{flex-wrap:wrap;gap:6px 16px;font-size:.85rem;display:flex}.grid-legend span{align-items:center;gap:6px;display:inline-flex}.grid-swatch{border:1.5px solid var(--line);background:var(--surface);border-radius:4px;width:14px;height:14px;display:inline-block}.grid-swatch.is-answered{border-color:var(--purple);background:var(--purple)}.grid-swatch.is-flagged{box-shadow:inset 0 0 0 3px var(--gold);border-color:#d9a441}.qgrid{grid-template-columns:repeat(10,1fr);gap:5px;margin:14px 0 0;padding:0;list-style:none;display:grid}.qgrid--sheet{max-height:50vh;overflow-y:auto}.qgrid--side{grid-template-columns:repeat(6,1fr);margin:0}.qgrid__cell{aspect-ratio:1;border:1.5px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;font-size:.78rem;font-weight:700;transition:transform .12s,border-color .12s}.qgrid__cell:hover{border-color:var(--purple);transform:scale(1.1)}.qgrid__cell.is-answered{border-color:var(--purple);background:var(--purple);color:#fff}.qgrid__cell.is-flagged{box-shadow:inset 0 0 0 3px var(--gold)}.qgrid__cell[aria-current=true]{outline:3px solid var(--ink);outline-offset:1px}.runner__grid-btn{display:none}@media (width>=1001px) and (height<=900px){.runner__side{gap:10px}.side-card{padding:16px}.runner__timer--big{font-size:2.2rem}.qgrid--side{grid-template-columns:repeat(8,1fr);gap:4px}.qgrid--side .qgrid__cell{border-radius:6px;font-size:.72rem}}@media (prefers-reduced-motion:reduce){dialog.runner[open],dialog.sheet[open],.progress-card,.exam-hero__card,.runner__bg .orb{animation:none}}@media (width<=1000px){.runner__layout{grid-template-columns:minmax(0,1fr)}.runner__side{flex-wrap:wrap;grid-row:1;align-items:center;gap:8px;display:flex;position:static}.side-card{background:0 0;border:0;padding:0}.side-card--score{display:block}.side-card--score .ring,.side-keys,.side-card--grid,.side-card__label,[data-runner-submit]{display:none}.side-stats{gap:6px;display:flex}.side-stats li{padding:6px 10px}.side-card--clock{align-items:baseline;gap:10px;display:flex}.runner__timer--big{font-size:1.5rem}.side-card__sub{margin:0}.side-btn{margin-left:auto;padding:8px 12px}.runner__grid-btn{display:inline-flex}}@media (width<=900px){.app-hero__grid{grid-template-columns:1fr}.progress-card,.exam-hero__card{margin:10px auto 0;animation:none;transform:none}.mode-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.app-hero{padding:34px 0 50px}.cta-big{width:100%}.mode-grid{grid-template-columns:1fr}.mode-card{min-height:0}.mode-card .feature-icon{margin-bottom:18px}.runner__top{grid-template-columns:1fr auto;gap:10px 12px;padding:10px 14px}.runner__steps{grid-area:2/1/auto/-1}.runner__close-label{display:none}.runner__close{padding:9px 12px}.runner__stage{padding:4px 10px 0}.qpanel{box-shadow:8px 10px 0 var(--violet-shadow);border-radius:22px}.qpanel__body{padding:20px 16px 6px}.qpanel__foot{min-height:0;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);flex-direction:column;align-items:stretch;position:sticky;bottom:0}.qpanel__feedback{flex:none}.runner__actions{margin-left:0}.runner__actions .runner__btn{white-space:nowrap;flex:auto}.runner[data-kind=exam][data-view=session] .runner__actions{flex-wrap:nowrap}.runner[data-kind=exam][data-view=session] :is([data-runner-prev],.runner__grid-btn){flex:none;padding-inline:18px}.runner[data-kind=exam] .runner__btn-label{display:none}.results__stats{grid-template-columns:repeat(3,1fr)}.exam-facts dd{font-size:1.6rem}.qgrid--sheet{grid-template-columns:repeat(6,1fr)}.exam-history__item{grid-template-columns:1fr auto}.exam-history__meta{grid-column:1/-1}.legend{grid-template-columns:1fr 1fr}}.page-hero--app{background:radial-gradient(circle at 80% 20%, #ece6ff 0, #ece6ff66 22%, transparent 48%), linear-gradient(160deg, var(--page) 0%, #f7f5ff 100%);padding:46px 0 34px}:root[data-theme=dark] .page-hero--app{background:radial-gradient(circle at 80% 20%, #2a2152 0, transparent 50%), var(--page)}.page-hero--app h1{margin-bottom:12px;font-size:clamp(2.2rem,4.6vw,3.6rem)}.study-card{border:1px solid var(--line);background:var(--surface);box-shadow:10px 12px 0 var(--violet-shadow);color:var(--ink);border-radius:24px;padding:24px}.progress-page{gap:16px;padding:28px 0 70px;display:grid}.progress-page h2{margin-bottom:0;font-size:1.35rem}.progress-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:14px;display:flex}.progress-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px 40px;display:flex}.progress-hero__text{flex:520px}.progress-hero__text .page-lede{margin-bottom:0}.progress-hero__reset{justify-items:end;gap:8px;display:grid}.progress-hero__done{color:var(--app-correct-text);margin:0;font-size:.9rem;font-weight:700}.progress-hero__done:empty{display:none}.reset-btn{border:1.5px solid color-mix(in srgb, var(--app-wrong) 55%, transparent);background:var(--app-surface);color:var(--app-wrong-text);font:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:9px 15px;font-size:.9rem;font-weight:700;display:inline-flex}.reset-btn:hover{border-color:var(--app-wrong);background:var(--app-wrong-soft)}.reset-btn:focus-visible{outline:3px solid color-mix(in srgb, var(--app-wrong) 45%, transparent);outline-offset:2px}.reset-btn svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.overview{--km-pending:color-mix(in srgb, var(--app-accent) 55%, var(--app-surface))}.overview__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 28px;margin-bottom:22px;display:flex}.km-legend{color:var(--app-text2);flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;font-size:.88rem;list-style:none;display:flex}.km-legend li{align-items:center;gap:8px;display:flex}.km-legend b{color:var(--app-text);font-variant-numeric:tabular-nums}.km-key{background:var(--app-surface2);width:12px;height:12px;box-shadow:inset 0 0 0 1px var(--app-border);border-radius:3px;flex:none}.km-key[data-state=mastered]{background:var(--app-correct);box-shadow:none}.km-key[data-state=pending]{background:var(--km-pending);box-shadow:none}.km-key[data-state=wrong]{background:var(--app-wrong);box-shadow:none}.overview__body{grid-template-columns:minmax(200px,240px) minmax(0,1fr);align-items:start;gap:24px 40px;display:grid}.overview__pct{color:var(--app-text2);margin:0;font-weight:700}.overview__pct b{color:var(--app-text);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:clamp(2.6rem,5vw,3.3rem);line-height:1;display:block}.overview__sub{color:var(--app-text2);margin:2px 0 16px;font-size:.9rem}.share-bar{background:var(--app-surface2);border-radius:999px;height:10px;display:flex;overflow:hidden}.share-bar span{height:100%;display:block}.share-bar [data-share=mastered]{background:var(--app-correct)}.share-bar [data-share=pending]{background:var(--km-pending)}.share-bar [data-share=wrong]{background:var(--app-wrong)}.overview__go{margin-top:22px}.overview__hint{color:var(--app-text2);margin:12px 0 0 38px;font-size:.82rem}.knowledge-map{--km-gap:3px;max-width:calc(38px + 50 * 14px + 49 * var(--km-gap));gap:5px;display:grid}.km-row{grid-template-columns:30px minmax(0,1fr);gap:8px;display:grid}.km-row__label{color:var(--app-text2);text-align:right;font-variant-numeric:tabular-nums;font-size:.66rem;font-weight:700;line-height:1.1}.km-row__cells{gap:var(--km-gap);grid-template-columns:repeat(50,minmax(0,1fr));display:grid}.km-cell{aspect-ratio:1;background:var(--app-surface2);border-radius:2px}.km-cell[data-state=mastered]{background:var(--app-correct)}.km-cell[data-state=wrong]{background:var(--app-wrong)}.km-cell[data-state=pending]{background:var(--km-pending)}.km-cell:hover,.km-cell:focus-visible{z-index:1;outline:2px solid var(--app-text);outline-offset:1px;position:relative}.stat-strip{padding:18px 8px}.stat-strip dl{grid-template-columns:repeat(4,1fr);margin:0;display:grid}.stat-strip dl>div{border-left:1px solid var(--line);padding:2px 20px}.stat-strip dl>div:first-child{border-left:0}.stat-strip dt{color:var(--app-text2);font-size:.82rem}.stat-strip dd{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:1.6rem;font-weight:800}.progress-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.segmented{background:var(--app-surface2);border-radius:12px;flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.segmented button{color:var(--app-text2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:7px 12px;font-size:.85rem;font-weight:700}.segmented button[aria-pressed=true]{background:var(--app-surface);color:var(--app-text);box-shadow:0 1px 4px #140a3c26}.activity{flex-direction:column;display:flex}.bars{flex:1 0 150px;grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:4px;min-height:150px;max-height:260px;margin-bottom:18px;display:grid}.bars__col{text-align:center;grid-template-rows:auto 1fr auto;min-width:0;height:100%;display:grid}.bars__value{min-height:1.2em;color:var(--app-text2);font-size:.7rem;font-weight:700}.bars__track{align-items:flex-end;height:100%;display:flex}.bars__bar{background:var(--app-accent-soft);border-radius:4px 4px 0 0;width:100%;min-height:2px;display:block}.bars__col.is-today .bars__bar{background:var(--app-accent)}.bars__label{color:var(--app-text2);white-space:nowrap;font-size:.62rem;overflow:hidden}.stat-grid{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:14px;margin:0;padding-top:16px;display:grid}.stat-grid>div{flex-direction:column;justify-content:space-between;gap:2px;display:flex}.stat-grid dt{color:var(--app-text2);font-size:.8rem}.stat-grid dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.3rem;font-weight:800}.history-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.history-row{background:var(--app-surface2);border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:10px 14px;display:grid}.history-row__mode{font-weight:700}.history-row__pass{color:var(--app-correct-text)}.history-row__fail{color:var(--app-wrong-text)}.history-row__meta{color:var(--app-text2);font-size:.85rem}.history-row__score{font-variant-numeric:tabular-nums;font-weight:800}.history-more{border:1px solid var(--app-border);color:var(--app-accent-text);font:inherit;cursor:pointer;background:0 0;border-radius:10px;margin-top:12px;padding:8px 14px;font-size:.88rem;font-weight:700}.history-more:hover{background:var(--app-surface2)}.progress-empty{color:var(--app-text2);margin:0}@media (width<=1080px){.overview__body{grid-template-columns:1fr}.overview__summary{max-width:420px}.progress-grid{grid-template-columns:1fr}}@media (width<=640px){.progress-hero__reset{justify-items:start}.overview{flex-direction:column;gap:18px;display:flex}.overview__head,.overview__body{display:contents}.overview__summary{order:1;max-width:none}.km-legend{border-top:1px solid var(--line);order:2;grid-template-columns:1fr 1fr;gap:8px 18px;padding-top:16px;display:grid}.km-legend b{margin-left:auto}.overview__map{order:3}.overview__go{margin-top:16px}.overview__hint{margin-left:0}.knowledge-map{--km-gap:2px;gap:4px}.km-row{grid-template-columns:26px minmax(0,1fr);gap:6px}.km-row__cells{grid-template-columns:repeat(25,minmax(0,1fr))}.stat-strip{padding:4px 18px}.stat-strip dl{grid-template-columns:1fr 1fr}.stat-strip dl>div{border-left:0;padding:14px 0}.stat-strip dl>div:nth-child(2n){border-left:1px solid var(--line);padding-left:16px}.stat-strip dl>div:nth-child(n+3){border-top:1px solid var(--line)}.stat-strip dd{font-size:1.4rem}.history-row{grid-template-columns:1fr auto}.history-row__meta{grid-area:2/1/auto/-1}}.settings{gap:16px;padding:28px 0 70px;display:grid}.settings-group h2{margin-bottom:14px;font-size:1.3rem}.setting{border:0;margin:0 0 18px;padding:0}.setting legend,.setting__title{margin-bottom:8px;font-weight:700;display:block}.setting__hint{color:var(--app-text2);margin:6px 0 0;font-size:.86rem;display:block}.setting--switch{justify-content:space-between;align-items:center;gap:20px;display:flex}.setting--switch label{cursor:pointer}.setting--switch .setting__title{margin-bottom:0}.setting--switch input{background:var(--app-surface2);width:46px;height:26px;box-shadow:inset 0 0 0 1.5px var(--app-border);appearance:none;cursor:pointer;border-radius:999px;flex:none;margin:0;transition:background-color .15s;position:relative}.setting--switch input:after{content:"";background:var(--app-surface);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.setting--switch input:checked{background:var(--app-accent);box-shadow:none}.setting--switch input:checked:after{transform:translate(20px)}.settings__saved{min-height:1.4em;color:var(--app-correct-text);margin:0;font-weight:700}.settings-app{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.settings__reset{margin-top:14px}.bars[data-days="30"] .bars__value{visibility:hidden}.cta-big__svg--line{fill:none}
