:root{--slate-1:#fcfcfd;--slate-2:#f9f9fb;--slate-3:#f0f0f3;--slate-4:#e8e8ec;--slate-5:#e0e1e6;--slate-6:#d9d9e0;--slate-7:#cdced6;--slate-8:#b9bbc6;--slate-9:#8b8d98;--slate-10:#80838d;--slate-11:#60646c;--slate-12:#1c2024;--sage-1:#fbfdfc;--sage-2:#f7f9f8;--sage-3:#eef1f0;--sage-4:#e6e9e8;--sage-5:#dfe2e0;--sage-6:#d7dad9;--sage-7:#cbcfcd;--sage-8:#b8bcba;--sage-9:#868e8b;--sage-10:#7c8481;--sage-11:#5f6563;--sage-12:#1a211e;--clay-1:#fcfcfb;--clay-2:#f9f2f0;--clay-3:#f2eae7;--clay-4:#eadfdb;--clay-5:#e1d3cf;--clay-6:#d8c4bf;--clay-7:#cab0a9;--clay-8:#b9958d;--clay-9:#956c63;--clay-10:#8c655d;--clay-11:#71514b;--clay-12:#3b2d2a;--jade-1:#fbfefd;--jade-2:#f4fbf7;--jade-3:#e6f7ed;--jade-4:#d6f1e3;--jade-5:#c3e9d7;--jade-6:#acdec8;--jade-7:#8bceb6;--jade-8:#56ba9f;--jade-9:#29a383;--jade-10:#26997b;--jade-11:#208368;--jade-12:#1d3b31;--cyan-1:#fafdfe;--cyan-2:#f2fafb;--cyan-3:#def7f9;--cyan-4:#caf1f6;--cyan-5:#b5e9f0;--cyan-6:#9ddde7;--cyan-7:#7dcedc;--cyan-8:#3db9cf;--cyan-9:#00a2c7;--cyan-10:#0797b9;--cyan-11:#107d98;--cyan-12:#0d3c48;--amber-1:#fefdfb;--amber-2:#fefbe9;--amber-3:#fff7c2;--amber-4:#ffee9c;--amber-5:#fbe577;--amber-6:#f3d673;--amber-7:#e9c162;--amber-8:#e2a336;--amber-9:#ffc53d;--amber-10:#ffba18;--amber-11:#ab6400;--amber-12:#4f3422;--red-1:#fffcfc;--red-2:#fff7f7;--red-3:#feebec;--red-4:#ffdbdc;--red-5:#ffcdce;--red-6:#fdbdbe;--red-7:#f4a9aa;--red-8:#eb8e90;--red-9:#e5484d;--red-10:#dc3e42;--red-11:#ce2c31;--red-12:#641723}.dark{--slate-1:#111113;--slate-2:#18191b;--slate-3:#212225;--slate-4:#272a2d;--slate-5:#2e3135;--slate-6:#363a3f;--slate-7:#43484e;--slate-8:#5a6169;--slate-9:#696e77;--slate-10:#777b84;--slate-11:#b0b4ba;--slate-12:#edeef0;--sage-1:#101211;--sage-2:#171918;--sage-3:#202221;--sage-4:#272a29;--sage-5:#2e3130;--sage-6:#373b39;--sage-7:#444947;--sage-8:#5b625f;--sage-9:#63706b;--sage-10:#717d79;--sage-11:#adb5b2;--sage-12:#eceeed;--clay-1:#161313;--clay-2:#1d1716;--clay-3:#2a1f1e;--clay-4:#382524;--clay-5:#452d2b;--clay-6:#533a36;--clay-7:#644944;--clay-8:#7d5b54;--clay-9:#af685a;--clay-10:#b9786a;--clay-11:#dba699;--clay-12:#eedbd8;--jade-1:#0d1512;--jade-2:#121c18;--jade-3:#0f2e22;--jade-4:#0b3b2c;--jade-5:#114837;--jade-6:#1b5745;--jade-7:#246854;--jade-8:#2a7e68;--jade-9:#29a383;--jade-10:#27b08b;--jade-11:#1fd8a4;--jade-12:#adf0d4;--cyan-1:#0b161a;--cyan-2:#101b20;--cyan-3:#082c36;--cyan-4:#003848;--cyan-5:#004558;--cyan-6:#045468;--cyan-7:#12677e;--cyan-8:#11809c;--cyan-9:#00a2c7;--cyan-10:#23afd0;--cyan-11:#4ccce6;--cyan-12:#b6ecf7;--amber-1:#16120c;--amber-2:#1d180f;--amber-3:#302008;--amber-4:#3f2700;--amber-5:#4d3000;--amber-6:#5c3d05;--amber-7:#714f19;--amber-8:#8f6424;--amber-9:#ffc53d;--amber-10:#ffd60a;--amber-11:#ffca16;--amber-12:#ffe7b3;--red-1:#191111;--red-2:#201314;--red-3:#3b1219;--red-4:#500f1c;--red-5:#611623;--red-6:#72232d;--red-7:#8c333a;--red-8:#b54548;--red-9:#e5484d;--red-10:#ec5d5e;--red-11:#ff9592;--red-12:#ffd1d9}:root{color-scheme:light;color:var(--ink);background:var(--paper-deep);font-synthesis:none;text-rendering:optimizelegibility;--ink:var(--slate-12);--muted:var(--slate-11);--paper:var(--sage-1);--paper-deep:var(--sage-2);--surface-muted:var(--sage-3);--line:var(--sage-7);--accent-surface:var(--jade-2);--accent:var(--jade-9);--accent-dark:var(--jade-11);--action:var(--jade-12);--on-action:var(--jade-1);--focus:var(--cyan-11);--warning:var(--amber-12);--warning-surface:var(--amber-2);--danger:var(--red-11);--danger-surface:var(--red-2);--danger-line:var(--red-7);--paper-study:var(--clay-3);--paper-study-deep:var(--clay-4);--paper-study-line:var(--clay-7);--shadow:color-mix(in srgb, var(--slate-12) 10%, transparent);--spring-ease:cubic-bezier(.34, 1.56, .64, 1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.dark{color-scheme:dark}*{box-sizing:border-box}html{background:var(--paper-deep);min-width:20rem}body{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 8%, transparent) 0 1px, transparent 1px 100%), var(--paper);background-size:3rem 3rem;min-height:100vh;margin:0}a{color:inherit}a:focus-visible{outline:.2rem solid var(--focus);outline-offset:.25rem}.skip-link{z-index:10;border:1px solid var(--ink);background:var(--paper);padding:.7rem 1rem;font-weight:700;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header,.site-footer,main{width:min(100% - 2rem,74rem);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;min-height:5rem;display:flex}.wordmark{align-items:center;gap:.65rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,3vw,1.25rem);font-weight:700;text-decoration:none;display:inline-flex}.wordmark-mark{color:var(--accent);font-size:1.65em;line-height:1}.header-actions{justify-content:flex-end;align-items:center;gap:1rem;display:flex}.migration-status{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;display:inline-flex}.status-dot{background:var(--accent);border-radius:50%;width:.6rem;height:.6rem}.theme-toggle{border:1px solid var(--muted);min-height:2.75rem;color:var(--ink);background:var(--paper);font:inherit;cursor:pointer;transition:transform .24s var(--spring-ease), border-color .16s ease, background-color .16s ease;align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.82rem;font-weight:750;display:inline-flex}.guide-toggle{border:1px solid var(--muted);min-height:2.75rem;color:var(--ink);background:var(--paper);font:inherit;cursor:pointer;padding:.55rem .75rem;font-size:.82rem;font-weight:750}.guide-toggle:hover{border-color:var(--accent-dark);background:var(--accent-surface)}.guide-toggle:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}.theme-toggle:hover{border-color:var(--accent-dark);background:var(--accent-surface);transform:translateY(-.1rem)}.theme-toggle:active{transform:scale(.96)}.theme-toggle:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}.theme-toggle-indicator{background:var(--accent);width:.72rem;height:.72rem;transition:transform .36s var(--spring-ease);transform:rotate(45deg)}.dark .theme-toggle-indicator{transform:rotate(225deg)scale(.82)}.theme-current{color:var(--muted)}.theme-current-dark,.dark .theme-current-light{display:none}.dark .theme-current-dark{display:inline}main:focus{outline:none}.hero{grid-template-columns:minmax(0,3fr) minmax(15rem,2fr);align-items:center;gap:clamp(2rem,7vw,6rem);min-height:35rem;padding-block:clamp(4rem,10vw,8rem);display:grid}.splash-voyage{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);align-items:center;gap:clamp(2rem,7vw,6rem);min-height:calc(100vh - 5rem);padding-block:clamp(3rem,8vw,7rem);display:grid}.splash-copy h1{max-width:10ch}.splash-copy button{border:1px solid var(--action);min-height:3rem;color:var(--on-action);background:var(--action);font:inherit;cursor:pointer;transition:transform .22s var(--spring-ease), color .16s ease, background-color .16s ease;margin-top:1.5rem;padding:.7rem 1rem;font-weight:800}.splash-copy button:hover{color:var(--action);background:var(--accent-surface);transform:translateY(-.1rem)}.splash-copy button:active{transform:scale(.97)}.splash-copy button:focus-visible,.lesson-copy [data-fold-title]:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}.splash-copy output{min-height:1.4rem;color:var(--accent-dark);margin-top:.75rem;font-size:.78rem;font-weight:750;display:block}.splash-stage{border:1px solid var(--paper-study-line);background:var(--paper-study);width:min(100%,34rem);box-shadow:1rem 1rem 0 var(--shadow);contain:layout paint;justify-self:end;margin:0;position:relative;overflow:hidden}.splash-stage svg{aspect-ratio:4/3;width:100%;display:block}.splash-stage figcaption{border-top:1px solid var(--paper-study-line);color:var(--muted);background:var(--paper-study-deep);letter-spacing:.04em;text-transform:uppercase;padding:.55rem .7rem;font-size:.7rem;font-weight:750}.splash-table,.splash-water,.splash-shadow{transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1)}.splash-table{opacity:0}.splash-table line{stroke:var(--paper-study-line);stroke-width:1px;vector-effect:non-scaling-stroke}.splash-water{fill:none;stroke:var(--focus);stroke-linecap:round;stroke-width:4px;opacity:.76;vector-effect:non-scaling-stroke;animation:2.4s ease-in-out 2 alternate splash-current}.splash-water path:nth-child(2){animation-delay:.12s}.splash-water path:nth-child(3){animation-delay:.24s}.splash-shadow{fill:var(--shadow)}.splash-paper{transform-box:fill-box;transform-origin:50%;animation:2.8s ease-in-out 2 splash-bob}.splash-facet{stroke:var(--ink);stroke-linejoin:round;stroke-width:1.5px;vector-effect:non-scaling-stroke}.splash-facet-0{fill:var(--paper)}.splash-facet-1{fill:var(--paper-deep)}.splash-facet-2{fill:var(--accent-surface)}.splash-facet-3{fill:var(--surface-muted)}.splash-voyage[data-splash-state=unfolding] .splash-table,.splash-voyage[data-splash-state=complete] .splash-table{opacity:1}.splash-voyage[data-splash-state=unfolding] .splash-water,.splash-voyage[data-splash-state=complete] .splash-water,.splash-voyage[data-splash-state=unfolding] .splash-shadow,.splash-voyage[data-splash-state=complete] .splash-shadow{opacity:0;transform:translateY(2rem)scaleY(.2)}.splash-voyage[data-splash-state=unfolding] .splash-paper,.splash-voyage[data-splash-state=complete] .splash-paper{animation:none}@keyframes splash-bob{0%,to{transform:translateY(0)rotate(-.6deg)}50%{transform:translateY(-.7rem)rotate(.8deg)}}@keyframes splash-current{0%{stroke-dasharray:4 12;stroke-dashoffset:0}to{stroke-dasharray:18 8;stroke-dashoffset:-36px}}.fold-lesson{grid-template-columns:minmax(18rem,4fr) minmax(20rem,6fr);align-items:start;gap:clamp(2rem,6vw,5rem);min-height:calc(100vh - 12rem);padding-block:clamp(2.5rem,7vw,6rem);display:grid}.lesson-copy{z-index:1;position:relative}.lesson-copy h2{max-width:11ch;font-size:clamp(2.9rem,6vw,5.8rem)}.model-catalog{border:0;min-width:0;margin:2rem 0 1rem;padding:0}.model-catalog legend,.schedule-control{color:var(--ink);font-weight:800}.model-catalog>p{margin:.35rem 0 .85rem;font-size:.85rem;line-height:1.45}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.model-option{border:1px solid var(--line);background:var(--paper);cursor:pointer;min-width:0;transition:transform .24s var(--spring-ease), border-color .16s ease, box-shadow .16s ease, background-color .16s ease;grid-template-columns:auto 3.25rem minmax(0,1fr);gap:.55rem;padding:.55rem;display:grid}.model-option:has(input:checked){border-color:var(--accent-dark);background:var(--accent-surface);box-shadow:inset 0 0 0 1px var(--accent-dark);transform:translateY(-.12rem)}.model-option:has(input:not(:disabled)):hover{border-color:var(--accent);transform:translateY(-.08rem)}.model-option:focus-within{outline:.2rem solid var(--focus);outline-offset:.15rem}.model-option.is-unavailable{color:var(--muted);background:var(--surface-muted);cursor:not-allowed}.model-option input{width:1rem;height:1rem;accent-color:var(--accent-dark);margin:.2rem 0 0}.model-option img{border:1px solid var(--line);object-fit:cover;width:3.25rem;height:3.25rem}.model-option-copy{gap:.12rem;min-width:0;font-size:.72rem;line-height:1.35;display:grid}.model-option-copy strong{color:var(--ink);font-size:.84rem}.model-option-copy small{color:var(--muted)}.model-option-copy em{color:var(--danger);font-style:normal;font-weight:750}.schedule-control{gap:.35rem;max-width:20rem;margin-top:1rem;display:grid}.schedule-control select{border:1px solid var(--ink);min-height:2.75rem;color:var(--ink);background:var(--paper);font:inherit;border-radius:0;padding:.5rem .7rem}.schedule-control select:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}.pacing-control{border:1px solid var(--line);background:var(--surface-muted);max-width:34rem;margin-top:1.25rem;padding:1rem}.pacing-control legend{padding-inline:.35rem;font-weight:800}.pacing-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.pacing-settings label{gap:.35rem;display:grid}.pacing-settings select{border:1px solid var(--ink);min-height:2.75rem;color:var(--ink);background:var(--paper);font:inherit;padding:.5rem .7rem}.pacing-settings select:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}.pacing-settings select:disabled{border-color:var(--line);color:var(--muted);opacity:.72}.pacing-control output{min-height:1.5rem;color:var(--accent-dark);margin-top:.9rem;font-weight:750;display:block}.pacing-control small{color:var(--muted);margin-top:.4rem;display:block}.gesture-control{border:1px solid var(--paper-study-line);background:var(--paper-study);max-width:34rem;margin-top:1.25rem;padding:1rem}.gesture-control>header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.gesture-control h2,.gesture-control .eyebrow,.gesture-control>p{margin:0}.gesture-control h2{font-size:1.45rem}.gesture-control .eyebrow{margin-bottom:.25rem;font-size:.66rem}.gesture-control>p{color:var(--muted);margin-top:.8rem;font-size:.82rem;line-height:1.5}.gesture-camera-indicator{border:1px solid var(--line);color:var(--muted);background:var(--surface-muted);letter-spacing:.08em;text-transform:uppercase;padding:.25rem .45rem;font-size:.66rem;font-weight:850}.gesture-control[data-gesture-state=active] .gesture-camera-indicator{border-color:var(--accent-dark);color:var(--accent-dark);background:var(--accent-surface)}.gesture-directions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;margin:.9rem 0;padding:0;list-style:none;display:grid}.gesture-directions li{border:1px solid var(--line);background:var(--paper);padding:.4rem .5rem;font-size:.72rem}.gesture-directions strong{min-width:1.35rem;color:var(--accent-dark);font-size:1rem;display:inline-block}.gesture-control button{border:1px solid var(--action);min-height:2.65rem;color:var(--on-action);background:var(--action);font:inherit;cursor:pointer;padding:.6rem .8rem;font-size:.78rem;font-weight:800}.gesture-control button:hover:not(:disabled){color:var(--action);background:var(--accent-surface)}.gesture-control button:focus-visible{outline:.2rem solid var(--focus);outline-offset:.15rem}.gesture-control button:disabled{border-color:var(--line);color:var(--muted);background:var(--surface-muted);cursor:not-allowed}.gesture-status{min-height:1.4rem;color:var(--accent-dark);margin-top:.7rem;font-size:.75rem;font-weight:750;display:block}.gesture-control[data-gesture-state=error] .gesture-status,.gesture-control[data-gesture-state=unavailable] .gesture-status{color:var(--danger)}.gesture-preview{border:1px solid var(--accent-dark);background:var(--ink);width:min(100%,22rem);margin:.85rem 0 0}.gesture-preview video{aspect-ratio:4/3;object-fit:cover;width:100%;display:block;transform:scaleX(-1)}.gesture-preview figcaption{color:var(--ink);background:var(--accent-surface);padding:.4rem .55rem;font-size:.68rem;font-weight:700}.studio-panel{border:1px solid var(--paper-study-line);background:var(--paper-study);margin-top:1.25rem}.studio-panel summary{min-height:3rem;color:var(--ink);background:var(--paper-study-deep);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;font-weight:800;display:flex}.studio-panel summary::marker{color:var(--accent-dark)}.studio-panel summary small{color:var(--muted);font-weight:650}.studio-panel summary:focus-visible{outline:.2rem solid var(--focus);outline-offset:.15rem}.studio-boundary{margin:0;padding:1rem 1rem 0;font-size:.82rem;line-height:1.5}.studio-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:1rem;display:grid}.studio-settings fieldset{border:1px solid var(--paper-study-line);background:var(--paper);gap:.75rem;min-width:0;padding:.9rem;display:grid}.studio-settings legend{color:var(--ink);padding-inline:.35rem;font-weight:800}.studio-settings label:not(.studio-check){color:var(--ink);gap:.3rem;font-size:.78rem;font-weight:700;display:grid}.studio-settings select{border:1px solid var(--ink);width:100%;min-height:2.55rem;color:var(--ink);background:var(--paper);font:inherit;padding:.45rem .55rem}.studio-check{min-height:2.55rem;color:var(--ink);align-items:center;gap:.55rem;font-size:.78rem;font-weight:700;display:flex}.studio-check input{width:1.1rem;height:1.1rem;accent-color:var(--accent-dark)}.studio-settings select:focus-visible,.studio-check input:focus-visible{outline:.2rem solid var(--focus);outline-offset:.15rem}.studio-settings :disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.68}.studio-output{overflow-wrap:anywhere;border-left:.2rem solid var(--accent);min-height:3rem;color:var(--ink);background:var(--accent-surface);margin:0 1rem 1rem;padding:.7rem .8rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;line-height:1.45;display:block}.lesson-status{border-left:.25rem solid var(--accent);background:var(--accent-surface);margin-block:2rem 1.25rem;padding:1.1rem 1.25rem}.lesson-status strong{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem;font-size:.78rem;display:block}.lesson-status p,.lesson-error{margin-bottom:0}.lesson-recovery{border:1px solid var(--danger-line);background:var(--danger-surface);margin-bottom:1rem;padding:1rem}.lesson-recovery p,.lesson-save-status{margin-bottom:0}.lesson-recovery button{border:1px solid var(--accent-dark);min-height:2.5rem;color:var(--accent-dark);background:var(--paper);font:inherit;margin-top:.75rem;padding:.55rem .8rem;font-weight:750}.lesson-save-status{min-height:1.5rem;margin-top:.75rem;font-size:.82rem}.lesson-controls{flex-wrap:wrap;gap:.65rem;display:flex}.lesson-controls button{border:1px solid var(--ink);min-height:2.8rem;color:var(--ink);background:var(--paper);font:inherit;cursor:pointer;transition:transform .22s var(--spring-ease), border-color .16s ease, color .16s ease, background-color .16s ease;border-radius:0;padding:.7rem 1rem;font-weight:750}.lesson-controls button:active:not(:disabled){transform:scale(.96)}.lesson-controls button:hover:not(:disabled){background:var(--paper-deep)}.lesson-controls button:focus-visible,.fold-viewport canvas:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}.lesson-controls button:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.62}.lesson-controls .primary-control{border-color:var(--action);color:var(--on-action);background:var(--action)}.lesson-controls .primary-control:hover:not(:disabled){border-color:var(--accent-dark);background:var(--accent-dark)}.lesson-error{color:var(--danger);margin-top:1rem;font-weight:700}.lesson-error.is-warning{color:var(--warning);background:var(--warning-surface)}.lesson-copy script{display:none}.fold-viewport{border:1px solid var(--paper-study-line);background:var(--paper-study);min-width:0;height:clamp(28rem,100vh - 2rem,46rem);box-shadow:clamp(.7rem, 2vw, 1.4rem) clamp(.7rem, 2vw, 1.4rem) 0 var(--shadow);position:sticky;top:1rem;overflow:hidden}.fold-viewport canvas{touch-action:none;width:100%;height:100%;display:block}.vertex-label-overlay{pointer-events:none;position:absolute;inset:0;overflow:hidden}.vertex-label{border:1px solid var(--accent-dark);color:var(--ink);background:color-mix(in srgb, var(--accent-surface) 92%, transparent);box-shadow:.2rem .2rem 0 var(--shadow);white-space:nowrap;will-change:transform;padding:.35rem .55rem;font-size:.75rem;font-weight:800;line-height:1;position:absolute;top:0;left:0}.fold-diagram{z-index:2;border:1px solid var(--paper-study-line);width:min(15rem,100% - 1.5rem);color:var(--ink);background:color-mix(in srgb, var(--paper) 94%, transparent);box-shadow:.45rem .45rem 0 var(--shadow);padding:.7rem;position:absolute;top:.75rem;right:.75rem}.fold-diagram[hidden]{display:none}.fold-diagram header{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.35rem;display:flex}.fold-diagram header strong{letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.fold-diagram header small{color:var(--muted);font-size:.66rem}.fold-diagram svg{aspect-ratio:1;border:1px solid var(--line);background:var(--surface-muted);touch-action:manipulation;width:100%;display:block}.diagram-edges line{stroke:var(--muted);stroke-width:1.5px;vector-effect:non-scaling-stroke}.diagram-nodes [data-studio-node]{color:var(--ink);cursor:pointer;pointer-events:bounding-box}.diagram-nodes circle{fill:var(--paper);stroke:var(--muted);stroke-width:2px;vector-effect:non-scaling-stroke}.diagram-nodes text{fill:currentColor;pointer-events:none;paint-order:stroke;stroke:var(--surface-muted);stroke-width:3px;font-size:13px;font-weight:800}.diagram-nodes .is-involved circle{fill:var(--accent);stroke:var(--accent-dark)}.diagram-nodes .is-selected circle{fill:var(--focus);stroke:var(--ink);stroke-width:4px}.diagram-nodes [data-studio-node]:focus{outline:none}.diagram-nodes [data-studio-node]:focus circle{stroke:var(--focus);stroke-width:5px}.fold-diagram p{margin:.45rem 0 0;font-size:.66rem;line-height:1.4}.tutorial-guide{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--ink);overscroll-behavior:contain;background:0 0;border:0;margin:0;padding:0;overflow:hidden}.tutorial-guide::backdrop{background:0 0}.tutorial-spotlight{z-index:1;border:.2rem solid var(--focus);box-shadow:0 0 0 100vmax color-mix(in srgb, var(--slate-12) 72%, transparent);pointer-events:none;background:0 0;position:fixed}.tutorial-arrow{z-index:2;pointer-events:none;width:100%;height:100%;position:fixed;inset:0;overflow:visible}.tutorial-arrow path[data-tutorial-arrow-path]{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:square;vector-effect:non-scaling-stroke}.tutorial-arrow marker path{fill:var(--accent)}.tutorial-card{z-index:3;border:1px solid var(--accent-dark);background:var(--paper);width:min(22rem,100vw - 2rem);max-height:calc(100dvh - 2rem);box-shadow:.65rem .65rem 0 var(--shadow);padding:1.2rem;position:fixed;overflow-y:auto}.tutorial-card h2{margin-bottom:.65rem;font-size:clamp(1.45rem,5vw,2rem)}.tutorial-card h2:focus{outline:none}.tutorial-card p:not(.eyebrow){color:var(--muted)}.tutorial-controls,.tutorial-step-controls{align-items:center;gap:.65rem;display:flex}.tutorial-controls{flex-wrap:wrap;justify-content:space-between;margin-top:1rem}.tutorial-controls button{border:1px solid var(--ink);min-height:2.65rem;color:var(--ink);background:var(--paper);font:inherit;cursor:pointer;padding:.55rem .75rem;font-weight:750}.tutorial-controls button:hover:not(:disabled){background:var(--paper-deep)}.tutorial-controls button:focus-visible{outline:.2rem solid var(--focus);outline-offset:.15rem}.tutorial-controls button:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.62}.tutorial-controls .primary-control{border-color:var(--action);color:var(--on-action);background:var(--action)}.canvas-instructions{max-width:calc(100% - 1.5rem);color:var(--ink);background:color-mix(in srgb, var(--paper) 88%, transparent);pointer-events:none;margin:0;padding:.45rem .7rem;font-size:.72rem;font-weight:750;line-height:1.35;position:absolute;bottom:.75rem;right:.75rem}.goal-assistant{border:1px solid var(--line);background:var(--paper-study);box-shadow:.6rem .6rem 0 var(--shadow);margin-block:3rem;padding:clamp(1rem,4vw,2rem)}.goal-assistant-header{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);align-items:end;gap:1rem 2rem;display:grid}.goal-assistant-header h2,.goal-assistant-header p{margin:0}.goal-status,.goal-reminders,.goal-empty{border-left:.22rem solid var(--accent);background:var(--accent-surface);margin-block:1rem 0;padding:.75rem .85rem;font-size:.86rem}.goal-status[data-goal-status=failure]{border-color:var(--danger);background:var(--danger-surface)}.goal-reminders{border-color:var(--warning);background:var(--warning-surface);font-weight:700}.goal-create{margin-top:1rem}.goal-create fieldset,.goal-snapshot-form fieldset{border:1px solid var(--paper-study-line);background:var(--paper);align-items:end;gap:.8rem;padding:1rem;display:grid}.goal-create fieldset{grid-template-columns:1.4fr 1fr .75fr 1fr auto}.goal-create legend,.goal-snapshot-form legend{color:var(--ink);padding-inline:.35rem;font-weight:800}.goal-create label,.goal-snapshot-form label,.goal-settings label{min-width:0;color:var(--ink);gap:.3rem;font-size:.75rem;font-weight:750;display:grid}.goal-create input,.goal-create select,.goal-snapshot-form input,.goal-settings input,.goal-settings select{border:1px solid var(--muted);width:100%;min-height:2.6rem;color:var(--ink);background:var(--paper);font:inherit;padding:.45rem .55rem}.goal-assistant button{border:1px solid var(--action);min-height:2.6rem;color:var(--on-action);background:var(--action);font:inherit;cursor:pointer;padding:.5rem .75rem;font-size:.76rem;font-weight:800}.goal-assistant button:hover:not(:disabled){color:var(--action);background:var(--accent-surface)}.goal-assistant button:focus-visible,.goal-assistant input:focus-visible,.goal-assistant select:focus-visible,.goal-settings summary:focus-visible{outline:.2rem solid var(--focus);outline-offset:.15rem}.goal-assistant :disabled{cursor:not-allowed;opacity:.62}.goal-list{gap:1.25rem;margin-top:1.25rem;display:grid}.goal-card{border:1px solid var(--paper-study-line);background:var(--paper);padding:clamp(1rem,3vw,1.5rem)}.goal-card>header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.goal-card h3,.goal-card-model{margin:0}.goal-card-model{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.goal-card-state{border:1px solid var(--accent-dark);color:var(--accent-dark);background:var(--accent-surface);white-space:nowrap;text-transform:uppercase;padding:.25rem .45rem;font-size:.68rem;font-weight:850}.goal-card progress{border:1px solid var(--line);width:100%;height:1rem;color:var(--accent);background:var(--surface-muted);margin-top:1rem}.goal-card progress::-webkit-progress-bar{background:var(--surface-muted)}.goal-card progress::-webkit-progress-value{background:var(--accent)}.goal-card progress::-moz-progress-bar{background:var(--accent)}.goal-progress-copy{color:var(--muted);margin:.35rem 0 0;font-size:.78rem;font-weight:700}.goal-inventory{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-block:1rem;display:grid}.goal-inventory div{border:1px solid var(--line);background:var(--surface-muted);padding:.75rem}.goal-inventory dt{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.goal-inventory dd{color:var(--ink);margin:.2rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.4rem,4vw,2rem);font-weight:800}.goal-card-reminder{border-left:.2rem solid var(--warning);background:var(--warning-surface);padding:.7rem;font-size:.8rem;font-weight:750}.goal-chart{margin:1rem 0}.goal-chart svg{border:1px solid var(--line);background:var(--surface-muted);width:100%;max-height:12rem;display:block}.goal-chart line{stroke:var(--line);stroke-width:1px}.goal-chart polyline{fill:none;stroke:var(--accent-dark);stroke-linecap:round;stroke-linejoin:round;stroke-width:4px;vector-effect:non-scaling-stroke}.goal-chart figcaption{color:var(--muted);margin-top:.35rem;font-size:.72rem}.goal-snapshot-form fieldset{grid-template-columns:1fr repeat(3,minmax(0,.8fr)) auto}.goal-ideas{border:1px solid var(--accent-dark);background:var(--accent-surface);margin-top:1rem;padding:1rem}.goal-ideas h4{margin:0}.goal-ideas ul{margin-bottom:0;padding-left:1.2rem}.goal-settings{border-top:1px solid var(--line);margin-top:1rem}.goal-settings summary{cursor:pointer;padding-block:.8rem;font-size:.78rem;font-weight:800}.goal-settings form{grid-template-columns:1.4fr .7fr 1fr auto;align-items:end;gap:.75rem;display:grid}.goal-settings .goal-archive{border-color:var(--danger);color:var(--danger);background:var(--danger-surface);margin-top:.75rem}.goal-card.is-archived{background:var(--surface-muted)}.lesson-foundation{border-top:1px solid var(--line);grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);align-items:end;gap:2rem 3rem;padding-block:clamp(4rem,9vw,7rem);display:grid}.lesson-foundation h2,.lesson-foundation p{margin-bottom:0}.lesson-foundation .text-link{grid-column:2}.hero-copy{max-width:44rem}.eyebrow{color:var(--accent-dark);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1rem;font-size:.78rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-weight:500}h1{max-width:12ch;margin-bottom:1.5rem;font-size:clamp(3.2rem,8vw,6.6rem);line-height:.93}h2{margin-bottom:1rem;font-size:clamp(2rem,5vw,3.5rem);line-height:1.05}h3{letter-spacing:.02em;margin-bottom:.5rem;font-size:1rem}p{color:var(--muted);line-height:1.65}.lede{max-width:38rem;color:var(--ink);margin-bottom:0;font-size:clamp(1.1rem,2.4vw,1.35rem)}.paper-study{aspect-ratio:1;border:1px solid var(--paper-study-line);background:var(--paper-study-deep);width:min(100%,26rem);box-shadow:1rem 1rem 0 var(--shadow);justify-self:end;position:relative;overflow:hidden;transform:rotate(4deg)}.paper-fold{border-left:1px solid color-mix(in srgb, var(--clay-12) 24%, transparent);background:color-mix(in srgb, var(--clay-1) 42%, transparent);transform-origin:100% 100%;position:absolute;inset:0}.paper-fold-one{clip-path:polygon(0 0,100% 0,100% 100%)}.paper-fold-two{clip-path:polygon(0 0,100% 100%,0 100%);transform:scale(.72)rotate(45deg)}.paper-fold-three{clip-path:polygon(50% 0,100% 100%,0 100%);transform:scale(.48)translate(-8%,-8%)}.foundation{border-block:1px solid var(--line);padding-block:clamp(4rem,9vw,7rem)}.section-heading{grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);align-items:end;gap:0 3rem;display:grid}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2,.section-heading>p:last-child{margin-bottom:0}.principles{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin:3.5rem 0 0;padding:1px;list-style:none;display:grid}.principles li{background:var(--paper);align-content:space-between;gap:2rem;min-height:15rem;padding:clamp(1.5rem,4vw,2.25rem);display:grid}.principles p{margin-bottom:0}.step-number{color:var(--accent-dark);font-family:Georgia,Times New Roman,serif;font-size:1.15rem}.migration-note{border:1px solid var(--line);background:var(--accent-surface);grid-template-columns:minmax(0,1fr) minmax(18rem,1fr);align-items:start;gap:1.5rem 3rem;margin-block:clamp(4rem,10vw,8rem);padding:clamp(1.75rem,5vw,3.5rem);display:grid}.migration-note h2{margin-bottom:0;font-size:clamp(1.7rem,4vw,2.5rem)}.migration-note>p{margin-bottom:0}.text-link{width:fit-content;color:var(--accent-dark);text-underline-offset:.2em;grid-column:2;font-weight:800}.site-footer{border-top:1px solid var(--line);min-height:7rem;padding-block:2rem}.site-footer p{margin-bottom:0;font-size:.9rem}@media (width<=48rem){.goal-assistant-header,.goal-create fieldset,.goal-snapshot-form fieldset,.goal-settings form{grid-template-columns:1fr}.goal-card>header{flex-direction:column;align-items:stretch}.goal-card-state{align-self:start}.site-header{flex-direction:column;justify-content:center;align-items:flex-start;padding-block:1rem}.header-actions{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;width:100%}.hero,.splash-voyage,.fold-lesson,.section-heading,.migration-note,.lesson-foundation{grid-template-columns:1fr}.hero,.splash-voyage{min-height:auto}.splash-stage{justify-self:start;width:min(92vw,34rem)}.paper-study{justify-self:start;width:min(82vw,22rem)}.principles{grid-template-columns:1fr}.principles li{min-height:auto}.text-link{grid-column:1}.fold-viewport{height:clamp(24rem,62vh,34rem);position:relative;top:auto}.model-grid,.pacing-settings,.studio-settings{grid-template-columns:1fr}.lesson-foundation .text-link{grid-column:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}}
