:root{--font-body:"Source Serif 4", Georgia, serif;--font-ui:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-heading:var(--font-ui);--text-size:1.125rem;--leading:1.7;--measure:68ch;--radius:6px;--gutter:16px;--bg:#fbfaf7;--bg-soft:#f1efe9;--fg:#1c1b19;--muted:#6b6963;--border:#e2dfd7;--accent:#2856c7;--accent-fg:#fff;--accent-soft:#e5ecfa;--success:#1f8a4c;--danger:#c2372d;--draft:#f4c430;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--bg:#151514;--bg-soft:#1f1f1d;--fg:#ecebe6;--muted:#9c9a92;--border:#33322e;--accent:#7ea2ff;--accent-fg:#0d1530;--accent-soft:#1d2a4d;--success:#4fc283;--danger:#ff7b70}}[data-theme=playful]{--font-body:"Nunito", system-ui, sans-serif;--font-ui:"Nunito", system-ui, sans-serif;--text-size:1.35rem;--leading:1.6;--measure:52ch;--radius:22px;--bg:#fff8ec;--bg-soft:#ffeccc;--fg:#2b2240;--muted:#6f6488;--border:#f3d9a9;--accent:#ff6b4a;--accent-fg:#fff;--accent-soft:#ffe1d6;--success:#2fae61}@media (prefers-color-scheme:dark){[data-theme=playful]{--bg:#1f1a2e;--bg-soft:#2b2440;--fg:#fbf3ff;--muted:#b8acd6;--border:#463b63;--accent:#ff8a6b;--accent-fg:#1f1a2e;--accent-soft:#4a2f3a}}[data-theme=neobrutalism]{--font-body:"Archivo", system-ui, sans-serif;--font-ui:"Archivo", system-ui, sans-serif;--font-heading:"Archivo", system-ui, sans-serif;--text-size:1.0625rem;--leading:1.6;--measure:70ch;--radius:12px;--ink:#000;--paper:#edeff7;--card:#fff;--on-accent:#000;--bw:3px;--shadow:5px 5px 0 var(--ink);--shadow-sm:3px 3px 0 var(--ink);--good:#2ed47a;--good-soft:#d5f7e4;--warn:#ffb020;--warn-soft:#ffefcc;--bad:#ff5c5c;--bad-soft:#ffdcdc;--info:#7aa7ff;--info-soft:#dfe9ff;--violet:#b79cff;--violet-soft:#ece4ff;--bg:var(--paper);--bg-soft:var(--card);--fg:#000;--muted:#474c59;--border:var(--ink);--accent:#ffd60a;--accent-fg:var(--on-accent);--success:#12924d;--danger:#c62828}@media (prefers-color-scheme:dark){[data-theme=neobrutalism]{--paper:#2a2c36;--card:#3a3c48;--fg:#f3f3ee;--muted:#c3c6d2;--good-soft:#1f4d36;--warn-soft:#5a4518;--bad-soft:#5c2a2e;--info-soft:#263a66;--violet-soft:#3f3470;--success:#5fdc97;--danger:#ff8a80}}[data-theme=neobrutalism],[data-theme=neobrutalism] .accent-scope{--accent-soft:color-mix(in srgb, var(--accent) 30%, var(--card))}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.5}a{color:var(--accent);text-underline-offset:.18em}img,svg,video,canvas{max-width:100%}code,pre,kbd{font-family:var(--font-mono);font-size:.88em}:not(pre)>code{background:var(--bg-soft);border:1px solid var(--border);border-radius:4px;padding:.08em .35em}pre{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-soft);padding:1rem 1.25rem;line-height:1.55;overflow-x:auto}.prose{font-family:var(--font-body);font-size:var(--text-size);line-height:var(--leading);max-width:var(--measure)}.prose>*+*{margin-top:1.1em}.prose :is(h2,h3,h4){font-family:var(--font-heading);letter-spacing:-.01em;margin-top:2em;margin-bottom:0;line-height:1.25}.prose h2{font-size:1.5em}.prose h3{font-size:1.2em}.prose p,.prose ul,.prose ol{margin-bottom:0}.prose blockquote{border-left:3px solid var(--border);color:var(--muted);margin-left:0;padding-left:1.1em}.prose>.wide{width:min(100%,960px);max-width:none}.button{border-radius:var(--radius);background:var(--accent);color:var(--accent-fg);font:600 1rem/1.2 var(--font-ui);cursor:pointer;border:1px solid #0000;align-items:center;gap:.5em;padding:.6em 1.1em;text-decoration:none;display:inline-flex}.button:hover{filter:brightness(1.05)}.button.secondary{color:var(--fg);border-color:var(--border);background:0 0}.button.danger{background:var(--danger);color:#fff}.button:disabled{opacity:.5;cursor:not-allowed}.muted{color:var(--muted)}.tag{font:500 .8rem/1 var(--font-ui);background:var(--bg-soft);color:var(--muted);border-radius:999px;padding:.3em .55em;text-decoration:none;display:inline-block}[data-step-key][data-done]:after,[data-step-keys][data-done]>.chapter-name:after,[data-step-keys][data-done]>summary>.chapter-name:after{content:"✓";color:var(--success);margin-left:.4em;font-weight:700}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-theme=neobrutalism] :focus-visible{outline-offset:2px;outline:3px solid #2f6bff}[data-theme=neobrutalism] a{color:var(--fg);text-decoration-color:var(--accent);text-decoration-thickness:3px}[data-theme=neobrutalism] a:hover{background:var(--accent-soft)}[data-theme=neobrutalism] :not(pre)>code{background:var(--paper);border:1.5px solid var(--ink);border-radius:5px}[data-theme=neobrutalism] pre{border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm)}[data-theme=neobrutalism] .prose :is(h2,h3,h4){letter-spacing:0;font-weight:800;font-stretch:125%}[data-theme=neobrutalism] .prose h2{font-size:1.3em}[data-theme=neobrutalism] .prose h3{font-size:1.1em}[data-theme=neobrutalism] .prose blockquote{border:var(--bw) solid var(--ink);border-radius:var(--radius);background:var(--accent-soft);color:var(--fg);padding:.8em 1em}[data-theme=neobrutalism] .prose blockquote>:first-child{margin-top:0}[data-theme=neobrutalism] .prose table{border-collapse:separate;border-spacing:0;border:var(--bw) solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-sm);font-family:var(--font-ui);font-size:.93em;line-height:1.45;display:block;overflow-x:auto}[data-theme=neobrutalism] .prose :is(th,td){border-bottom:2px solid var(--ink);text-align:left;vertical-align:top;padding:.55em .75em}[data-theme=neobrutalism] .prose th{background:var(--accent);color:var(--on-accent);font-weight:700}[data-theme=neobrutalism] .prose tr:last-child td{border-bottom:0}[data-theme=neobrutalism] .button{border:var(--bw) solid var(--ink);background:var(--accent);min-height:44px;color:var(--on-accent);box-shadow:var(--shadow-sm);border-radius:10px;padding:.55em 1.1em;font-weight:700}[data-theme=neobrutalism] .button:hover{filter:brightness(1.05);background:var(--accent)}[data-theme=neobrutalism] .button:active{box-shadow:none;transform:translate(3px,3px)}[data-theme=neobrutalism] .button.secondary{background:var(--card);color:var(--fg);border-color:var(--ink)}[data-theme=neobrutalism] .tag{border:2px solid var(--ink);background:var(--card);color:var(--fg);padding:.3em .65em;font-weight:600}[data-theme=neobrutalism] [data-step-key][data-done]:after,[data-theme=neobrutalism] [data-step-keys][data-done]>.chapter-name:after,[data-theme=neobrutalism] [data-step-keys][data-done]>summary>.chapter-name:after{content:"✓";border:2px solid var(--ink);background:var(--good);color:#000;vertical-align:.1em;border-radius:50%;place-items:center;width:1.25em;height:1.25em;margin-left:.45em;font-size:.75em;font-weight:800;display:inline-grid}:root[data-theme=neobrutalism] .gate-card{border:var(--bw) solid var(--ink);background:var(--card);box-shadow:var(--shadow);border-radius:14px}:root[data-theme=neobrutalism] .gate-title{font-weight:800;font-stretch:125%}:root[data-theme=neobrutalism] :is(.gate-input,.gate-button,#gate-lock-again){border:var(--bw) solid var(--ink);min-height:44px;box-shadow:var(--shadow-sm);border-radius:10px}:root[data-theme=neobrutalism] .gate-input{background:var(--paper)}:root[data-theme=neobrutalism] :is(.gate-button,#gate-lock-again){background:var(--accent);color:var(--on-accent);font-weight:700}@media (prefers-reduced-motion:reduce){[data-theme=neobrutalism] .button:active{transform:none}}.with-chrome[data-astro-cid-no36hfj6]{flex-direction:column;min-height:100dvh;display:flex}.site-main[data-astro-cid-no36hfj6]{flex:1}.site-header[data-astro-cid-no36hfj6]{width:100%;max-width:1200px;padding:1.25rem var(--gutter);align-items:center;gap:1.5rem;margin:0 auto;display:flex}.brand[data-astro-cid-no36hfj6]{color:var(--fg);letter-spacing:-.01em;font-weight:700;text-decoration:none}nav[data-astro-cid-no36hfj6]{gap:1.1rem;display:flex}nav[data-astro-cid-no36hfj6] a[data-astro-cid-no36hfj6]{color:var(--muted);font-weight:500;text-decoration:none}nav[data-astro-cid-no36hfj6] a[data-astro-cid-no36hfj6]:hover,nav[data-astro-cid-no36hfj6] a[data-astro-cid-no36hfj6][aria-current=page]{color:var(--fg)}.header-extra[data-astro-cid-no36hfj6]{margin-left:auto}.site-footer[data-astro-cid-no36hfj6]{width:100%;max-width:1200px;padding:2rem var(--gutter);border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:1rem;margin:4rem auto 0;font-size:.9rem;display:flex}.site-footer[data-astro-cid-no36hfj6] a[data-astro-cid-no36hfj6]{color:inherit}
