:root{--bg:#f3f7f7;--surface:#fff;--border:#d9e2e2;--border-strong:#b9c7c8;--text:#3c4b4d;--text-strong:#1c2a2c;--muted:#66777a;--accent:#007e87;--accent-strong:#005f66;--accent-soft:#dceeee;--nav:#1c2a2c;--success:#107c41;--success-soft:#e3f4ea;--danger:#b42318;--danger-soft:#fdecea;--warning:#8a5a00;--warning-soft:#fff4dc;--radius:10px;--container:1240px;--shadow:0 1px 2px #1c2a2c0f, 0 4px 14px #1c2a2c0f;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Inter,Segoe UI,ui-sans-serif,system-ui,sans-serif;font-size:15px;line-height:1.55}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);flex-direction:column;min-height:100vh;margin:0;display:flex}main{flex:1}h1,h2,h3,h4{color:var(--text-strong);margin:1.6em 0 .6em;line-height:1.2}h1{letter-spacing:-.01em;margin-top:0;font-size:clamp(1.45rem,2.2vw,1.7rem)}h2{font-size:1.25rem}h3{font-size:1.05rem}p,ul,ol{margin:0 0 1em}a{color:var(--accent);text-underline-offset:2px}a:hover{color:var(--accent-strong)}img,svg{max-width:100%}code{background:#eef3f3;border-radius:4px;padding:.1em .35em;font-family:Cascadia Mono,Consolas,ui-monospace,monospace;font-size:.9em}pre code{background:0 0;padding:0}pre{border-radius:var(--radius);border:1px solid var(--border);padding:1rem;overflow-x:auto}kbd{border:1px solid var(--border-strong);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:.05em .4em;font-family:inherit;font-size:.85em}hr{border:0;border-top:1px solid var(--border);margin:2rem 0}@media (width<=767px){input,select,textarea{font-size:16px!important}}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 16px}@media (width>=720px){.container{padding:0 32px}}.site-header{background:var(--nav);color:#fff;z-index:20;position:sticky;top:0}.site-header .container{align-items:center;gap:24px;height:56px;display:flex}.brand{color:#fff;white-space:nowrap;align-items:center;gap:10px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.brand:hover{color:#fff}.brand img{width:26px;height:26px}.site-nav{flex:1;gap:4px;display:flex}.header-menu{position:relative}.header-menu-button{color:#dfe8e8;max-width:16rem;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:.95rem;display:flex}.header-menu-button:hover,.header-menu-button.current,.header-menu-button[aria-expanded=true]{color:#fff;background:#ffffff1a}.header-menu .menu{z-index:30;background:#fff;border:1px solid #00000014;border-radius:6px;width:16rem;max-width:calc(100vw - 1.5rem);padding:4px 0;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.header-menu .menu[hidden]{display:none}.header-menu .menu-right{left:auto;right:0}.header-menu .menu a{color:#141414;border-radius:6px;align-items:center;gap:8px;margin:0 4px;padding:8px 10px;font-size:.9rem;text-decoration:none;display:flex}.header-menu .menu a:hover{background:#0000000f}.header-menu .menu a[aria-current=page]{color:var(--accent-strong);font-weight:600}.header-menu .menu a svg{color:#0006;flex-shrink:0}.header-menu .menu-who{border-bottom:1px solid #0000000f;margin-bottom:4px;padding:8px 12px}.header-menu .menu-who p{text-overflow:ellipsis;white-space:nowrap;color:#000;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.header-menu .menu-who .email{color:#3a3a3a;font-size:.85rem;font-weight:400}.header-search{display:flex}.header-search input{color:#fff;width:220px;font:inherit;background:#ffffff14 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dfe8e8' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") 9px/16px no-repeat;border:1px solid #ffffff40;border-radius:6px;padding:6px 10px 6px 32px;font-size:.9rem}@media (width<=720px){.header-search{display:none}.site-header .container{gap:12px}}@media (width<=767px){.brand{font-size:15px}}@media (width<=480px){.brand .brand-name{display:none}}.site-footer{border-top:1px solid var(--border);background:var(--surface);color:var(--muted);margin-top:64px;padding:28px 0;font-size:.9rem}.site-footer .container{flex-wrap:wrap;justify-content:space-between;gap:12px 32px;display:flex}.site-footer a{color:var(--muted)}.hero{border-bottom:1px solid var(--border);background:linear-gradient(135deg,#e2f1f1 0%,#f3f7f7 60%);padding:48px 0 40px}.hero p.lead{max-width:760px;color:var(--text);font-size:1.05rem}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-strong);margin-bottom:8px;font-size:.78rem;font-weight:600}.section{padding:40px 0 0}.section>.container>h2:first-child{margin-top:0}.button{background:var(--accent);color:#fff;border:1px solid var(--accent);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:9px 18px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{background:var(--accent-strong);color:#fff}.button.secondary{background:var(--surface);color:var(--accent-strong);border-color:var(--border-strong)}.button.secondary:hover{background:var(--accent-soft)}.actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:inherit;flex-direction:column;gap:10px;padding:20px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}a.card:hover{border-color:var(--accent);color:inherit;transform:translateY(-1px)}.card h3{margin:0;font-size:1rem}.card p{color:var(--text);margin:0;font-size:.95rem}.card .meta{margin-top:auto}.card-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-strong);border-radius:10px;place-items:center;display:grid}.card-icon svg{width:24px;height:24px}.meta{color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:.85rem;display:flex}.meta span{align-items:center;gap:4px;display:inline-flex}.tag{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:600;display:inline-block}.kind{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.78rem;font-weight:600}.progress{background:#e3ebeb;border-radius:999px;height:6px;overflow:hidden}.progress>div{background:var(--success);width:0;height:100%;transition:width .3s}.progress-label{color:var(--muted);font-size:.82rem}.breadcrumbs{color:var(--muted);flex-wrap:wrap;gap:6px;margin:0 0 16px;font-size:.88rem;display:flex}.breadcrumbs a{color:var(--muted)}.breadcrumbs span[aria-hidden]{opacity:.6}.outline{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:0;list-style:none;overflow:hidden}.outline li+li{border-top:1px solid var(--border)}.outline a{color:inherit;align-items:center;gap:14px;padding:14px 18px;text-decoration:none;display:flex}.outline a:hover{background:#f6fafa}.outline .title{color:var(--text-strong);font-weight:600}.outline .grow{flex:1;min-width:0}.check{border:2px solid var(--border-strong);color:#0000;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.check svg{width:13px;height:13px}[data-done=true] .check,.check[data-done=true]{background:var(--success);border-color:var(--success);color:#fff}.layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:28px;display:grid}@media (width>=980px){.layout{grid-template-columns:280px minmax(0,1fr)}}.sidebar{font-size:.92rem}@media (width>=980px){.sidebar{align-self:start;max-height:calc(100vh - 96px);position:sticky;top:76px;overflow-y:auto}}.sidebar h2{margin:0 0 10px;font-size:.95rem}.sidebar ol{margin:0;padding:0;list-style:none}.sidebar li a{color:var(--text);border-radius:6px;align-items:flex-start;gap:10px;padding:7px 10px;text-decoration:none;display:flex}.sidebar li a:hover{background:var(--accent-soft)}.sidebar li a[aria-current=page]{background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.sidebar .check{width:18px;height:18px;margin-top:2px}.sidebar .check svg{width:10px;height:10px}.prose{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px 22px}@media (width>=720px){.prose{padding:36px 44px}}.prose>:first-child{margin-top:0}.prose li{margin-bottom:.35em}.prose table{border-collapse:collapse;width:100%;margin:0 0 1.2em;font-size:.94rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 10px}.prose th{color:var(--text-strong);background:#f2f7f7}.prose img{border:1px solid var(--border);max-width:100%;height:auto;box-shadow:var(--shadow);border-radius:8px;margin:20px 0 24px;display:block}.prose ol>li::marker{color:var(--accent-strong);font-weight:600}.callout{border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:0 8px 8px 0;margin:0 0 1.2em;padding:12px 16px}.callout>:last-child{margin-bottom:0}.callout-title{color:var(--accent-strong);margin-bottom:4px;font-weight:700}.callout-tip{border-color:var(--success);background:var(--success-soft)}.callout-tip .callout-title{color:var(--success)}.callout-warning,.callout-caution{border-color:var(--danger);background:var(--danger-soft)}.callout-warning .callout-title,.callout-caution .callout-title{color:var(--danger)}.callout-important{border-color:var(--warning);background:var(--warning-soft)}.callout-important .callout-title{color:var(--warning)}blockquote{border-left:4px solid var(--border-strong);color:var(--muted);margin:0 0 1.2em;padding:4px 16px}.unit-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;display:flex}.question{border:1px solid var(--border);border-radius:var(--radius);margin:0 0 16px;padding:18px 20px}.question legend{color:var(--text-strong);padding:0 6px;font-weight:600}.choice{cursor:pointer;border-radius:6px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.choice:hover{background:#f4f8f8}.choice input{accent-color:var(--accent);margin-top:5px}.explanation{border-radius:6px;margin:2px 0 6px 34px;padding:6px 10px;font-size:.92rem;display:none}.choice[data-result]+.explanation{display:block}.choice[data-result=right]{background:var(--success-soft)}.choice[data-result=right]+.explanation{background:var(--success-soft);color:var(--success)}.choice[data-result=wrong]{background:var(--danger-soft)}.choice[data-result=wrong]+.explanation{background:var(--danger-soft);color:var(--danger)}.check-result{font-weight:600}.check-result[data-passed=true]{color:var(--success)}.check-result[data-passed=false]{color:var(--danger)}.exercise-banner{border-radius:var(--radius);background:#fffaf0;border:1px solid #f0dcb0;align-items:flex-start;gap:14px;margin-bottom:20px;padding:14px 18px;display:flex}.exercise-banner svg{width:24px;height:24px;color:var(--warning);flex:none;margin-top:2px}.exercise-banner p{margin:0}.search-box{width:100%;font:inherit;border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;padding:12px 14px;font-size:1rem}.results{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.results a{background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:8px;padding:12px 16px;text-decoration:none;display:block}.results a:hover{border-color:var(--accent)}.results .title{color:var(--accent-strong);font-weight:600}.results .summary{font-size:.92rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-locked=true]>a{opacity:.5}.sidebar [data-locked=true]>a,.outline li[data-unit][data-locked=true]>a{pointer-events:none}.card[data-locked=true]{opacity:.6}.button[aria-disabled=true]{opacity:.45;cursor:not-allowed}.locked-note{color:var(--muted);font-size:.9rem;display:none}[data-locked=true] .locked-note,[data-locked=true]+.locked-note{display:block}[data-locked=true] .when-open{display:none}.check-status{color:var(--text-strong);font-weight:600}.knowledge-check[data-passed=true] .check-status{color:var(--success)}.knowledge-check[data-passed=false] .check-status{color:var(--danger)}.check-passed{align-items:center;gap:18px;display:flex}.check-passed p{margin:0}.passed-title{color:var(--text-strong);font-size:1.2rem;font-weight:700;animation:.4s ease-out .35s both passed-rise}.passed-badge{flex:none;width:64px;height:64px;position:relative}.passed-badge svg{width:64px;height:64px;animation:.5s cubic-bezier(.34,1.56,.64,1) both passed-pop;display:block}.passed-badge circle{fill:var(--success-soft);stroke:var(--success);stroke-width:3px}.passed-badge path{fill:none;stroke:var(--success);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40px;animation:.4s ease-out .3s forwards passed-draw}.confetti{pointer-events:none;position:absolute;top:50%;left:50%}.confetti i{opacity:0;width:8px;height:12px;animation:confetti 1.8s var(--delay) cubic-bezier(.2, .7, .4, 1) forwards;border-radius:2px;margin:-6px 0 0 -4px;position:absolute}@keyframes passed-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes passed-draw{to{stroke-dashoffset:0}}@keyframes passed-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes confetti{0%{opacity:1;transform:translate(0)rotate(0)}35%{transform:translate(var(--x), var(--y)) rotate(calc(var(--r) / 3));opacity:1}to{transform:translate(calc(var(--x) * 1.3), calc(var(--y) + 160px)) rotate(var(--r));opacity:0}}.exercise-done{align-items:center;gap:18px;display:flex}.exercise-done p{margin:0}.exercise-badge{flex:none;width:64px;height:64px;position:relative}.exercise-badge svg{width:64px;height:64px;animation:.55s cubic-bezier(.5,0,.6,1.4) both stamp;display:block}.exercise-badge circle{fill:#fff6dc;stroke:#d99a00;stroke-width:3px}.exercise-badge path{fill:#f5b301;stroke:#d99a00;stroke-width:2px;stroke-linejoin:round}.sparkles{pointer-events:none;position:absolute;top:50%;left:50%}.sparkles .shockwave{opacity:0;border:3px solid #f5b301;border-radius:50%;width:64px;height:64px;margin:-32px 0 0 -32px;animation:.7s ease-out .4s shockwave;position:absolute}.sparkles i{width:var(--size);height:var(--size);margin:calc(var(--size) / -2) 0 0 calc(var(--size) / -2);transform:translate(var(--x), var(--y)) scale(0);animation:twinkle .9s var(--delay) ease-in-out 2;position:absolute}.sparkles svg{fill:#f5b301;width:100%;height:100%;display:block}@keyframes stamp{0%{opacity:0;transform:scale(2.6)rotate(-25deg)}70%{opacity:1;transform:scale(.92)rotate(3deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes shockwave{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(2.4)}}@keyframes twinkle{0%,to{transform:translate(var(--x), var(--y)) scale(0) rotate(0)}50%{transform:translate(var(--x), var(--y)) scale(1) rotate(90deg)}}.milestone{background:linear-gradient(135deg, #fffaf0 0%, var(--surface) 55%);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #f0dcb0;align-items:flex-start;gap:24px;margin-top:24px;padding:24px 22px;display:flex}.milestone[hidden]{display:none}.milestone h2{margin:0 0 10px;font-size:1.35rem;animation:.4s ease-out .5s both passed-rise}.milestone-kind{text-transform:uppercase;letter-spacing:.08em;color:var(--warning);margin:0 0 2px;font-size:.78rem;font-weight:700}.milestone[data-level=module] .for-path,.milestone[data-level=path] .for-module{display:none}.milestone-badge{flex:none;justify-content:center;width:84px;display:flex;position:relative}.milestone[data-level=module] .trophy,.milestone[data-level=path] .medal{display:none}.medal{transform-origin:50% 0;width:64px;height:84px;animation:1.6s ease-out both medal-swing}.medal .ribbon:first-child{fill:var(--accent)}.medal .ribbon:nth-child(2){fill:var(--accent-strong)}.medal circle{fill:#f5b301;stroke:#d99a00;stroke-width:3px}.medal circle.inner{fill:#ffd54a;stroke:#e0a800;stroke-width:2px}.medal .tick{fill:none;stroke:#8a5a00;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:30;stroke-dashoffset:30px;animation:.4s ease-out .9s forwards passed-draw}.trophy{place-items:center;width:84px;height:84px;display:grid;position:relative}.trophy svg{width:76px;height:76px;animation:.9s cubic-bezier(.34,1.56,.64,1) both trophy-rise;position:relative}.trophy .cup{fill:#f5b301;stroke:#c98a00;stroke-width:2px;stroke-linejoin:round}.trophy .handles{fill:none;stroke:#c98a00;stroke-width:3.5px;stroke-linecap:round}.trophy .shine{fill:none;stroke:#fff3c4;stroke-width:3px;stroke-linecap:round}.trophy .rays{background:repeating-conic-gradient(#f5b30159 0 12deg, transparent 12deg 30deg);border-radius:50%;animation:.8s ease-out .3s both rays-in,8s linear 3 rays-turn;position:absolute;inset:-22px;-webkit-mask:radial-gradient(circle,#000 35%,#0000 70%);mask:radial-gradient(circle,#000 35%,#0000 70%)}.ticks{margin:0;padding:0;list-style:none}.ticks li{animation:passed-rise .35s calc(.7s + var(--i,0) * .15s) ease-out both;margin:8px 0;padding-left:32px;position:relative}.ticks li:before{content:"";background:var(--success) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 14px no-repeat;border-radius:50%;width:22px;height:22px;position:absolute;top:.12em;left:0}@media (width<=560px){.milestone{text-align:left;flex-direction:column;align-items:center}}@keyframes medal-swing{0%{opacity:0;transform:translateY(-70px)rotate(-30deg)}30%{opacity:1;transform:translateY(0)rotate(18deg)}50%{transform:rotate(-10deg)}68%{transform:rotate(6deg)}84%{transform:rotate(-2deg)}to{transform:rotate(0)}}@keyframes trophy-rise{0%{opacity:0;transform:translateY(40px)scale(.5)}to{opacity:1;transform:none}}@keyframes rays-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes rays-turn{to{rotate:360deg}}.confetti-rain,.fireworks{z-index:50;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti-rain i{top:-20px;left:var(--left);width:9px;height:14px;animation:rain-fall var(--fall) var(--delay) linear both;border-radius:2px;position:absolute}@keyframes rain-fall{0%{transform:translate(0)rotate3d(1,1,0,0)}to{transform:translate(var(--drift), calc(100vh + 40px)) rotate3d(1, 1, 0, var(--r))}}.firework{left:var(--fx);top:var(--fy);position:absolute}.firework b{background:var(--c);opacity:0;width:4px;height:14px;animation:rocket .6s var(--launch) ease-out both;border-radius:2px;margin:-7px 0 0 -2px;position:absolute}.firework i{background:var(--c);width:6px;height:6px;box-shadow:0 0 8px var(--c);opacity:0;animation:spark 1.4s calc(var(--launch) + .6s) cubic-bezier(.1, .7, .3, 1) both;border-radius:50%;margin:-3px 0 0 -3px;position:absolute}@keyframes rocket{0%{transform:translateY(var(--rise));opacity:1}95%{opacity:1}to{opacity:0;transform:translateY(0)}}@keyframes spark{0%{opacity:1;transform:translate(0)scale(1.2)}70%{opacity:1}to{transform:translate(var(--x), calc(var(--y) + 50px)) scale(.3);opacity:0}}@media (prefers-reduced-motion:reduce){.passed-title,.passed-badge svg,.passed-badge path,.exercise-badge svg,.milestone h2,.medal,.medal .tick,.trophy svg,.trophy .rays,.ticks li{stroke-dashoffset:0;animation:none}}.check-clock{z-index:5;background:var(--accent-soft);width:fit-content;color:var(--accent-strong);font-variant-numeric:tabular-nums;border-radius:999px;margin:0 0 16px auto;padding:6px 14px;font-weight:700;position:sticky;top:64px}.header-user .header-menu-button{gap:8px;padding:4px 6px;font-size:.85rem}.header-user .initials{background:#ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;font-weight:600;display:flex}.header-user .name{text-overflow:ellipsis;overflow:hidden}@media (width<=720px){.header-user .name{display:none}}.login-page{background:var(--nav)}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login-box{background:var(--surface);border-radius:var(--radius);width:100%;max-width:400px;box-shadow:var(--shadow);text-align:center;padding:32px 28px}.login-box .brand{color:var(--text-strong);justify-content:center;margin-bottom:12px;font-size:1.05rem}.login-button{justify-content:center;width:100%;margin-top:20px;display:flex}.login-error{color:var(--danger);background:var(--danger-soft);border-radius:6px;padding:8px 10px;font-size:.92rem}.quick-question{border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);background:#f8fbfb;margin:24px 0;padding:16px 18px}.quick-question-label{text-transform:uppercase;letter-spacing:.06em;color:var(--accent-strong);margin:0 0 4px;font-size:.78rem;font-weight:700}.quick-question-text{color:var(--text-strong);margin:0 0 12px;font-weight:600}.quick-question-choices{gap:8px;display:grid}.quick-question-choice{text-align:left;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);cursor:pointer;border-radius:6px;padding:8px 12px}.quick-question-choice:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.quick-question-choice:disabled{cursor:default}.quick-question-choice[data-picked][data-right]{background:var(--success-soft);border-color:var(--success);color:var(--success);font-weight:600}.quick-question-choice[data-picked]:not([data-right]){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.quick-question-result{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;font-weight:600;display:flex}.quick-question-result:empty{display:none}.quick-question[data-state=right] .quick-question-result{color:var(--success)}.quick-question[data-state=wrong] .quick-question-result{color:var(--danger)}.graded-exercise{border:1px solid var(--border);border-radius:var(--radius);background:#f8fbfb;margin-top:28px;padding:18px 20px}.graded-exercise h2{margin-top:0}.exercise-tasks li{margin:6px 0}.exercise-tasks li[data-done=true]{color:var(--success)}.exercise-tasks li[data-done=true]::marker{content:"✓  "}.exercise-tasks li[data-done=false]{color:var(--danger)}.task-note{color:var(--muted);font-size:.9rem;display:block}.exercise-panel{margin-top:12px}.exercise-panel label{margin-bottom:4px;font-weight:600;display:block}.exercise-input{width:100%;max-width:480px;font:inherit;border:1px solid var(--border-strong);border-radius:6px;padding:8px 10px}.exercise-help{color:var(--muted);font-size:.88rem}.exercise-error{color:var(--danger);font-weight:600}.exercise-passed{color:var(--success);font-weight:600}
