.learn-hero{align-items:center;justify-content:flex-start;flex-wrap:nowrap}.learn-hero p{max-width:64ch}.learn-mascot{display:inline-flex;flex:none}.learn-mascot .builder-mascot{height:var(--mascot-size,44px)}.learn-progress{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--card-pad)}.learn-progress>div:first-child{flex:1 1 260px;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.learn-progress-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.learn-bar{height:8px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);overflow:hidden}.learn-bar span{display:block;height:100%;background:var(--accent);border-radius:inherit;transition:width .4s var(--ease)}.learn-modules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.learn-module{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-5);height:100%;color:var(--text);text-decoration:none;transition:border-color .15s var(--ease),transform .15s var(--ease)}.learn-module:hover{border-color:var(--accent);text-decoration:none}.learn-n{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);font-weight:600}[data-done] .learn-n{background:var(--accent);color:var(--accent-ink)}.learn-module-body{flex:1 1;display:grid;grid-gap:4px;gap:4px;min-width:0}.learn-module-body>span{color:var(--muted)}.learn-module-body small{color:var(--muted);font-size:var(--fs-small)}.learn-layout{display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:var(--space-6);gap:var(--space-6);align-items:start}.learn-toc{position:-webkit-sticky;position:sticky;top:var(--space-6)}.learn-toc ol{margin:0;padding-left:1.3em;display:grid;grid-gap:var(--space-2);gap:var(--space-2);font-size:var(--fs-small)}.learn-toc a,.learn-toc ol{color:var(--muted)}.learn-toc a:hover{color:var(--text)}.learn-body{display:grid;grid-gap:var(--space-4);gap:var(--space-4);min-width:0;max-width:820px}.learn-section{padding:var(--card-pad);display:grid;grid-gap:var(--space-3);gap:var(--space-3);scroll-margin-top:var(--space-6)}.learn-section h2{font-size:18px}.learn-section h3{font-size:15px;margin-top:var(--space-2)}.learn-section li,.learn-section p{max-width:72ch}.learn-section ol,.learn-section ul{margin:0;padding-left:1.3em;display:grid;grid-gap:6px;gap:6px}.learn-note{border-left:3px solid var(--info);background:var(--info-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.learn-note,.learn-tip{color:var(--text);padding:var(--space-3) var(--space-4)}.learn-tip{display:flex;align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);background:var(--accent-soft)}.learn-tip p{margin:0}.learn-fig{margin:var(--space-2) 0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.learn-fig figcaption{color:var(--muted);font-size:var(--fs-small)}.learn-flow{list-style:none;margin:0;padding:0!important;display:flex!important;flex-wrap:wrap;align-items:stretch;gap:var(--space-5)!important}.learn-flow li{position:relative;flex:1 1 130px;max-width:none!important;display:grid;align-content:start;grid-gap:4px;gap:4px;padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface)}.learn-flow li span{color:var(--muted);font-size:var(--fs-small)}.learn-flow li+li:before{content:"→";position:absolute;left:calc(-1 * var(--space-5));top:50%;width:var(--space-5);text-align:center;transform:translateY(-50%);color:var(--muted)}.learn-flow li.strong{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--accent-glow)}.learn-code-mark{font-style:normal;font-size:var(--fs-xs);color:var(--accent-strong);font-weight:600}.learn-cards{list-style:none;margin:0;padding:0!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:var(--space-2)!important;gap:var(--space-2)!important}.learn-cards li{max-width:none!important;display:grid;grid-gap:2px;gap:2px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.learn-cards li span{color:var(--muted);font-size:var(--fs-small)}.learn-cards li.strong{border-color:var(--accent);background:var(--accent-soft)}.learn-compare{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3)}.learn-compare>div{display:grid;align-content:start;grid-gap:6px;gap:6px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border:1px solid transparent}.learn-compare .good{background:var(--ok-soft)}.learn-compare .good b{color:var(--ok)}.learn-compare .bad{background:var(--danger-soft)}.learn-compare .bad b{color:var(--danger)}.learn-compare p{margin:0;color:var(--text)}.learn-compare .why{grid-column:1/-1;color:var(--muted)}.learn-try{margin:0}.learn-try .btn{border-color:var(--accent);color:var(--accent-strong);height:auto;min-height:var(--btn-sm-h);padding-block:6px;white-space:normal;text-align:left}.learn-quiz{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.learn-q{margin:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);display:grid;grid-gap:var(--space-2);gap:var(--space-2);min-width:0}.learn-q legend{font-weight:600;padding:0 4px}.learn-q label{display:flex;align-items:flex-start;gap:var(--space-2);padding:8px var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer}.learn-q label:hover{background:var(--surface-2)}.learn-q input{margin-top:3px;accent-color:var(--accent)}.learn-q label.is-right{border-color:var(--ok);background:var(--ok-soft)}.learn-q label.is-wrong{border-color:var(--danger);background:var(--danger-soft)}.learn-q-why{margin:0;color:var(--text)}.learn-finish{padding:var(--card-pad);justify-content:space-between;gap:var(--space-4)}.learn-done,.learn-finish,.learn-pager{display:flex;align-items:center;flex-wrap:wrap}.learn-done,.learn-pager{gap:var(--space-2)}.learn-pager .btn{height:auto;min-height:var(--btn-h);white-space:normal}.learn-error{color:var(--danger)}@media (max-width:1099px){.learn-layout{grid-template-columns:minmax(0,1fr)}.learn-toc{display:none}}@media (max-width:639px){.learn-hero{flex-wrap:wrap}.learn-compare,.learn-modules{grid-template-columns:minmax(0,1fr)}.learn-flow{flex-direction:column}.learn-flow li+li:before{content:"↓";left:50%;top:calc(-1 * var(--space-5));width:auto;height:var(--space-5);line-height:var(--space-5);transform:translateX(-50%)}}.tour-layer{z-index:1000}.tour-dim,.tour-layer{position:fixed;inset:0}.tour-dim{background:var(--overlay)}.tour-spot{position:fixed;border-radius:var(--radius-sm);box-shadow:0 0 0 9999px var(--overlay);outline:2px solid var(--accent);outline-offset:0;pointer-events:none;transition:top .25s var(--ease),left .25s var(--ease),width .25s var(--ease),height .25s var(--ease)}.tour-card{position:fixed;display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-5);background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-pop)}.tour-head{display:flex;align-items:center;gap:var(--space-3)}.tour-count{color:var(--muted);font-size:var(--fs-small)}.tour-card h2{font-size:17px}.tour-card p{margin:0}.tour-dots{display:flex;gap:6px}.tour-dots span{width:6px;height:6px;border-radius:50%;background:var(--border-strong)}.tour-dots span.on{background:var(--accent)}.tour-actions{align-items:center;justify-content:space-between;flex-wrap:wrap}.tour-actions,.tour-nav{display:flex;gap:var(--space-2)}@media (prefers-reduced-motion:reduce){.learn-bar span,.tour-spot{transition:none}}.wiki-search{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.wiki-search input{width:100%}.wiki-hits ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.wiki-hits a{display:grid;grid-gap:2px;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);text-decoration:none}.wiki-hits a:hover{border-color:var(--accent);text-decoration:none}.wiki-hits small,.wiki-hits span,.wiki-none{color:var(--muted);font-size:var(--fs-small)}.wiki-none{margin:0}.wiki-h2{font-size:18px;margin-top:var(--space-2)}.wiki-az{display:flex;flex-wrap:wrap;gap:6px var(--space-4);padding:var(--space-4) var(--card-pad);font-size:var(--fs-small)}.wiki-glossary{margin:0;display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.wiki-glossary>div{padding:var(--space-4) var(--card-pad);display:grid;grid-gap:6px;gap:6px;scroll-margin-top:var(--space-6)}.wiki-glossary>div:target{border-color:var(--accent)}.wiki-glossary dt{font-weight:600}.wiki-glossary dd{margin:0;display:grid;grid-gap:6px;gap:6px}.wiki-glossary dd p{margin:0;max-width:72ch}.wiki-see{display:flex;flex-wrap:wrap;gap:4px var(--space-4);font-size:var(--fs-small)}