:root{--paper:#ffffff;--ink:#1c1e24;--muted:#596574;--line:#dce2ea;--accent:#4b3595;--highlight:#ddd5f3;--white:#ffffff;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--sans:"Avenir Next",Avenir,"Segoe UI",sans-serif;--body-muted:#4d596a;--shadow:#e3e9f2;--on-dark-muted:#cbd5e4;--dark-line:#435066;--nav-text:#4d596a;--nav-number:#657183;--active-bg:#f1eef9;--body-text:#354152;--surface:#f0f3f8;--code-text:#e1eafa;--code-bg:#202a3b;--callout-bg:#f5f2fa;--callout-line:#ded6ed;--callout-accent:#4b3595;--warning-bg:#fff8e8;--warning-line:#ead7ad;--warning-accent:#946416;--video-bg:#151c29;--note-bg:#f5f7fa;--note-line:#dce2ea}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--accent);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,input{font:inherit}button,summary{cursor:pointer}button,a,input,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}::selection{background:var(--highlight);color:var(--ink)}.skip{position:fixed;left:20px;top:-100px;padding:12px;background:var(--white);z-index:100}.skip:focus{top:12px}.reading-progress{position:fixed;top:0;left:0;right:0;height:4px;background:transparent;z-index:40}#progress-bar{height:100%;width:0;background:var(--accent)}.topbar{height:80px;position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:0 max(28px,calc((100vw - 1380px)/2));border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.7px;text-decoration:none;color:var(--ink);white-space:nowrap}.brand-mark{display:grid;place-items:center;background:var(--ink);color:var(--highlight);width:34px;height:34px;border-radius:8px;font-size:17px}.brand-sub{font-size:13px;font-weight:400;color:var(--muted);letter-spacing:0}.topbar nav{display:flex;gap:28px}.topbar nav a{font-size:13px;text-decoration:none;color:var(--ink);font-weight:600}.page-shell{max-width:1380px;margin:auto;padding:0 32px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding:80px 0 64px}.eyebrow{font:11px/1.5 var(--mono);font-weight:600;text-transform:uppercase;letter-spacing:1.6px;color:var(--accent)}h1{font-size:clamp(40px,4.5vw,67px);line-height:1.08;letter-spacing:-3px;margin:22px 0 26px;font-weight:650}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.hero-description{max-width:570px;font-size:17px;line-height:1.8;color:var(--body-muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 22px}.button{display:inline-flex;gap:25px;align-items:center;padding:11px 17px;border:1px solid var(--line);border-radius:7px;color:var(--ink);text-decoration:none;font-size:12px;font-weight:600;background:var(--white)}.button.primary{background:var(--ink);color:var(--white);border-color:var(--ink)}.button:hover{box-shadow:0 3px 0 var(--line)}.hero-meta{font:11px/1.6 var(--mono);color:var(--muted)}.hero-meta span{padding:0 8px}.hero-screen{background:var(--ink);border-radius:16px;overflow:hidden;box-shadow:8px 12px 0 var(--shadow);transform:rotate(1deg);color:var(--white)}.screen-label{display:flex;align-items:center;gap:8px;padding:17px 20px;font:9px var(--mono);letter-spacing:1.1px}.screen-label>span:last-child{margin-left:auto;font-size:17px;color:var(--highlight)}.status-dot{width:6px;height:6px;background:var(--highlight);border-radius:50%}.hero-screen .film{margin:0;padding:0 14px}.hero-screen video{border:0;border-radius:7px;max-height:345px}.hero-screen figcaption{padding:16px 8px;color:var(--on-dark-muted);font-size:12px}.hero-screen figcaption strong{color:white;font-size:14px}.screen-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--dark-line);padding:17px 22px;gap:12px}.screen-stats b{display:block;font:18px var(--mono);color:var(--highlight)}.screen-stats span{display:block;font-size:9px;margin-top:7px;color:var(--on-dark-muted)}.welcome{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;border-top:1px solid var(--line);padding:46px 0 22px}.welcome h2{font-size:30px;letter-spacing:-1px;line-height:1.2;margin:12px 0}.welcome p{margin-top:0;font-size:15px}.small{font-size:12px!important;color:var(--muted)}.quick-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:16px 0 65px}.quick-paths a{padding:22px;border:1px solid var(--line);border-radius:8px;background:var(--white);text-decoration:none;color:var(--ink)}.quick-paths a:hover{border-color:var(--accent)}.quick-paths span{display:block;font:9px var(--mono);letter-spacing:1.5px;color:var(--accent)}.quick-paths strong{display:block;font-size:16px;margin:9px 0 5px}.quick-paths small{font-size:11px;color:var(--muted)}.guide-layout{display:grid;grid-template-columns:258px minmax(0,1fr);gap:68px;align-items:start;border-top:1px solid var(--line)}.sidebar{position:sticky;top:99px;max-height:calc(100vh - 115px);overflow-y:auto;padding:27px 20px 24px 0;scrollbar-width:thin;font-size:12px}.sidebar details>summary{font-weight:750;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:12px}.sidebar-intro{font-size:10px;color:var(--muted)}.search-label{display:block;font:10px var(--mono);margin:24px 0 7px}.sidebar input{width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--white);font-size:12px;color:var(--ink)}.sidebar ul{list-style:none;margin:0;padding:0}.nav-group{font:9px var(--mono);text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin:25px 0 9px}.chapter-link a{display:flex;gap:10px;text-decoration:none;color:var(--nav-text);font-size:11px;line-height:1.5;padding:7px 9px;border-radius:5px;margin-left:-9px}.chapter-link a span{font:10px/1.65 var(--mono);color:var(--nav-number);min-width:17px}.chapter-link a:hover,.chapter-link a[aria-current=true]{background:var(--active-bg);color:var(--ink)}.chapter-link a[aria-current=true]{font-weight:700;border-left:3px solid var(--accent);padding-left:6px}.pdf-link{display:block;font-size:11px;margin-top:25px}.sidebar button{padding:0;background:none;border:0;color:var(--muted);font-size:11px;margin-top:12px;text-decoration:underline}main{min-width:0;max-width:950px;padding-bottom:60px}.mobile-intro{padding-top:32px;font:10px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:1px}.chapter{padding:20px 0 46px;border-bottom:1px solid var(--line)}.chapter h2{font-size:34px;line-height:1.23;letter-spacing:-1.1px;margin:18px 0 27px;font-weight:650;max-width:820px}.chapter h3{font-size:23px;line-height:1.4;letter-spacing:-.35px;margin:35px 0 15px}.chapter h4{font-size:18px;margin:30px 0 12px}.chapter p,.chapter li{color:var(--body-text)}.chapter p{margin:18px 0}.chapter ul,.chapter ol{padding-left:26px}.chapter li{padding-left:4px;margin:8px 0}.chapter code{font: .84em var(--mono);background:var(--surface);padding:2px 5px;border-radius:3px;overflow-wrap:anywhere}.chapter pre{padding:24px;border-radius:8px;overflow:auto;font:12px/1.8 var(--mono);color:var(--code-text);background:var(--code-bg);tab-size:4}.chapter pre code{background:transparent;padding:0;color:inherit}.chapter img{display:block;max-width:100%;height:auto;margin:24px auto 12px;border-radius:8px}.chapter>p>img{width:100%;border:1px solid var(--line);background:white}.chapter figure{margin:28px 0}.chapter figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:13px}.chapter .caption{font-size:12px;color:var(--muted);margin-top:10px}.chapter .callout{background:var(--callout-bg);border:1px solid var(--callout-line);border-left:4px solid var(--callout-accent);border-radius:0 8px 8px 0;padding:22px 25px;margin:30px 0}.chapter .callout strong{font-size:18px;display:block}.chapter .callout p{font-size:15px;margin:8px 0 0}.chapter .callout.warning{background:var(--warning-bg);border-color:var(--warning-line);border-left-color:var(--warning-accent)}.table-scroll,.scroll{overflow:auto;max-width:100%;border:1px solid var(--line);border-radius:8px;margin:24px 0;scrollbar-width:thin}.chapter table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.6;background:var(--white)}.chapter th,.chapter td{text-align:left;vertical-align:top;padding:13px 15px;border-bottom:1px solid var(--line);min-width:110px}.chapter th{background:var(--surface);color:var(--ink);font-weight:650}.chapter tr:last-child td{border-bottom:0}.chapter td code,.chapter th code{font-size:10px}.watch-break{display:grid;grid-template-columns:1fr 1fr;gap:24px;background:var(--surface);border-radius:12px;padding:28px;margin:35px 0 0}.watch-break h3{margin:12px 0;font-size:26px}.watch-break p{font-size:14px}.watch-break .film{margin:0;align-self:center}.film video{display:block;width:100%;height:auto;background:var(--video-bg);border-radius:8px}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.image-pair figure{min-width:0}.image-pair img{height:210px;width:100%;object-fit:contain;background:var(--surface);margin:0}.image-pair figcaption strong{display:block;color:var(--ink);margin-bottom:5px}.field-note{background:var(--note-bg);border:1px solid var(--note-line);border-radius:8px;margin:22px 0}.field-note>summary{list-style:none;padding:20px 23px;font-size:14px;line-height:1.6;font-weight:650;position:relative;padding-right:50px}.field-note>summary::after{content:'+';position:absolute;right:22px;font:24px var(--mono);top:17px;color:var(--accent)}.field-note[open]>summary::after{content:'−'}.field-note[open]>summary{border-bottom:1px solid var(--line)}.field-note-body{padding:8px 24px 22px;font-size:15px}.field-note-body .evidence-note{font-size:11px;background:var(--white);padding:12px;border-left:2px solid var(--accent)}.field-note-body table{font-size:11px}.field-note-body .scroll{background:var(--white)}.field-note-body .chart img{background:white;width:100%}.field-note-body .loop{width:100%;height:auto;fill:none;stroke:var(--ink);stroke-width:1.5px}.field-note-body .loop text{fill:var(--ink);stroke:none;font:13px var(--sans)}.field-note-body .loop .sub{font-size:10px}.field-note-body .loop .lab{font-size:10px}.field-note-body .obs{display:flex;gap:15px;flex-wrap:wrap}.field-note-body .obs .src{flex:1;min-width:180px}.field-note-body .obs .stack{flex:1;min-width:180px}.field-note-body .obs img{max-width:100%;object-fit:contain}.field-note-body .obs figcaption{flex-basis:100%}.actions{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.actions li{font:10px var(--mono);background:var(--white);padding:8px!important;display:flex;gap:8px;align-items:center}.actions .i{color:var(--accent)}.actions .b{margin-left:auto;color:var(--muted)}.end-note{text-align:center;padding:70px 25px 10px}.end-note>span{font:38px var(--mono);letter-spacing:17px;color:var(--accent)}.end-note h2{font-size:28px;line-height:1.3;letter-spacing:-1px}.end-note p{font-size:14px;color:var(--muted)}.end-note a{display:inline-block;font-size:12px;margin:10px 12px}footer{border-top:1px solid var(--line);padding:30px 0 40px;color:var(--muted);font-size:11px}footer p{margin:8px 0}footer a{font-size:11px}
@media(min-width:1500px){.hero{gap:90px}.hero-screen video{max-height:370px}}
@media(max-width:1100px){.hero{gap:30px}.guide-layout{grid-template-columns:210px minmax(0,1fr);gap:35px}.hero h1{font-size:48px}.hero-screen{transform:none}.watch-break{grid-template-columns:1fr}.watch-break .film{max-width:400px}.actions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){html{scroll-padding-top:80px}.topbar{height:65px;padding:0 20px}.brand-sub{display:none}.topbar nav{gap:16px}.topbar nav a{font-size:11px}.page-shell{padding:0 22px}.hero{grid-template-columns:1fr;padding:42px 0;gap:30px}.hero h1{font-size:clamp(42px,8vw,60px);letter-spacing:-2px}.hero-description{font-size:16px}.hero-screen{max-width:530px;width:100%;margin:auto}.hero-screen video{max-height:360px}.welcome{grid-template-columns:1fr;gap:15px;padding-top:32px}.welcome h2{font-size:28px}.quick-paths{grid-template-columns:1fr;gap:10px;margin-bottom:35px}.quick-paths a{padding:18px 20px}.guide-layout{display:block}.sidebar{position:static;max-height:none;padding:20px 0;border-bottom:1px solid var(--line)}.chapter-menu{max-height:60vh;overflow:auto;padding:0 5px 12px}.chapter-link a{font-size:13px;margin-left:0;padding:10px}.nav-group{font-size:10px}.sidebar-intro{font-size:12px}.sidebar input{font-size:16px}.mobile-intro{font-size:9px}.chapter{padding:15px 0 30px}.chapter h2{font-size:29px;letter-spacing:-.8px}.chapter h3{font-size:22px}.chapter p,.chapter li{font-size:16px}.chapter .callout{padding:19px}.chapter th,.chapter td{min-width:125px}.chapter pre{padding:17px;font-size:11px}.chapter .watch-break{padding:22px}.image-pair{grid-template-columns:1fr}.image-pair img{height:auto;max-height:360px}.field-note>summary{padding:17px 42px 17px 17px;font-size:13px}.field-note-body{padding:6px 15px 20px}.field-note-body p,.field-note-body li{font-size:14px}.field-note-body .evidence-note{font-size:11px}.end-note{padding:45px 0 0}.hero-actions .button{font-size:12px}.screen-stats{gap:8px}}
@media(max-width:380px){.topbar nav{gap:10px}.topbar nav a{font-size:10px}.brand{font-size:16px}.brand-mark{height:28px;width:28px;font-size:14px}.page-shell{padding:0 16px}.hero h1{font-size:39px}.hero-meta{font-size:9px}.actions{grid-template-columns:1fr}.screen-stats b{font-size:16px}.screen-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@media print{body{background:white;font-size:10pt;color:#111}.topbar,.sidebar,.reading-progress,.hero-actions,.quick-paths,.skip,.end-note,video,.screen-label,.screen-stats,.mobile-intro{display:none!important}.page-shell{padding:0;max-width:none}.hero{display:block;padding:0}.hero h1{font-size:30pt;letter-spacing:-1px}.hero-screen{transform:none;box-shadow:none;background:white;color:#111}.hero-screen figcaption{color:#333}.welcome{display:block;padding:15px 0}.guide-layout{display:block;border:0}main{max-width:none}.chapter{padding:12px 0;break-before:auto}.chapter h2{font-size:21pt}.chapter h3{font-size:15pt}.chapter p,.chapter li{font-size:10pt}.chapter pre{white-space:pre-wrap;background:#eee;color:#111;font-size:8pt}.chapter table{font-size:8pt}.chapter td,.chapter th{min-width:0;padding:5px}.table-scroll,.scroll{overflow:visible}.chapter img{max-height:180mm;object-fit:contain}.chapter h2,.chapter h3,summary{break-after:avoid}figure,.callout{break-inside:avoid}.field-note-body{padding:5px}.watch-break{display:block}.image-pair{display:block}a{color:inherit}footer{font-size:8pt}}

video{max-width:100%;height:auto}main{overflow-wrap:anywhere}.actions li{font-size:10px!important}
@media(max-width:600px){.actions{grid-template-columns:1fr}.actions li{font-size:11px!important}}

/* Public guide and live workbench share a calm violet identity. */
.hero{gap:48px;padding:56px 0 44px}.hero h1{font-size:clamp(38px,4vw,58px);letter-spacing:-2px}.hero h1 em{font-family:inherit;font-style:normal;font-weight:650}.hero-screen{transform:none;box-shadow:none;border:1px solid var(--line)}.hero-actions{gap:10px;margin-bottom:16px}.button{font-size:13px;min-height:44px}.button.primary{background:var(--accent);border-color:var(--accent)}.app-note{font-size:13px;line-height:1.6;color:var(--muted);max-width:520px}.welcome{gap:40px;padding-top:32px}.quick-paths{margin-bottom:44px}.topbar nav a{padding:10px 0}.sidebar{scrollbar-gutter:stable}.hero-meta{font-family:var(--sans);font-size:12px}
@media(max-width:800px){.hero{padding:34px 0;gap:24px}.hero h1{font-size:clamp(36px,8vw,52px)}.topbar{height:auto;min-height:68px;flex-wrap:wrap;padding:12px 20px;gap:5px 18px}.topbar nav{flex-wrap:wrap;gap:18px}.topbar nav a{font-size:12px}.welcome{gap:12px}.hero-actions .button{font-size:13px}.hero-meta{font-size:11px}}
@media print{.app-note{display:none}}
