:root{color:#172026;font-synthesis:none;letter-spacing:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#edf4f2;font-family:Segoe UI,Candara,Trebuchet MS,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}p,h1,h2,h3,li,code,pre{overflow-wrap:anywhere}.workbook{color:#182226;min-height:100vh}.workbook-header,.lesson-panel{max-width:900px;margin:0 auto}.workbook-header{justify-content:space-between;align-items:baseline;gap:20px;padding:26px 22px 18px;display:flex}.workbook-header p,.section-label{color:#1f6f68;letter-spacing:.08em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:800}.workbook-header strong{font-size:18px;line-height:1.35;display:block}.workbook-header nav{flex-wrap:wrap;gap:14px;display:flex}a{color:#0e6f68}.lesson-panel{background:#fbfdfb;border-top:5px solid #1f6f68;margin-bottom:36px}.lesson-map,.lesson-hero,.chapter,.lesson-nav{padding-left:38px;padding-right:38px}.lesson-map{border-bottom:1px solid #d8e2df;padding-top:22px;padding-bottom:18px}.lesson-map button{color:#243238;cursor:pointer;text-align:left;background:0 0;border:0;border-left:3px solid #0000;grid-template-columns:38px 1fr;align-items:baseline;gap:2px;width:100%;margin:4px 0;padding:8px 0 8px 12px;display:grid}.lesson-map button:hover,.lesson-map button.active{color:#0d4f49;border-left-color:#1f6f68}.lesson-map span{color:#1f6f68;font-size:12px;font-weight:800}.lesson-map strong{font-size:15px}.lesson-map small{color:#62727b;grid-column:2;line-height:1.35}.lesson-hero{padding-top:36px;padding-bottom:28px}.lesson-hero h1{letter-spacing:0;margin:0 0 16px;font-size:46px;line-height:1.05}.lesson-hero p:last-child{color:#41535a;margin:0;font-size:18px;line-height:1.65}.chapter{border-top:1px solid #dfe8e5;padding-top:28px;padding-bottom:30px}.chapter h2,.exercise-intro h2{letter-spacing:0;margin:0 0 14px;font-size:26px;line-height:1.2}.chapter h3{margin:24px 0 8px;font-size:17px}.chapter p,.chapter li,.demo-surface p,.reveal li{font-size:16px;line-height:1.7}.chapter ul,.chapter ol{padding-left:24px}.chapter li+li{margin-top:6px}.checklist{margin-bottom:24px;list-style:square}.example-card{border-left:3px solid #9bc9c3;margin:20px 0;padding-left:16px}.example-card figcaption,.note-box strong{color:#1f6f68;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:800;display:block}pre,code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}pre{color:#e1f5ef;white-space:pre-wrap;background:#12242b;padding:14px 16px;font-size:13px;overflow-x:auto}.setup-block pre{max-width:360px}.file-list,.reference-list{color:#53666d}.file-list code{color:#154f49;overflow-wrap:anywhere;font-size:13px}.note-box,.complexity-box,.test-targets,.demo-surface,.reveal{background:#f1f7f5;border-left:3px solid #9bc9c3;margin-top:18px;padding:16px 18px}.complexity-box dl{grid-template-columns:72px 1fr;gap:8px 14px;margin:0;display:grid}.complexity-box dt{color:#1f6f68;font-weight:800}.complexity-box dd{margin:0}.exercise-zone{background:#f8fbfa}.exercise-intro{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:18px;display:flex}.exercise-intro code{color:#154f49;white-space:nowrap}.test-targets h3,.demo-copy h3{margin-top:0}.demo-surface{gap:16px;display:grid}.inline-form{gap:10px;display:grid}.inline-form label{color:#1f6f68;font-weight:800}input{font:inherit;border:1px solid #9fb7b3;min-width:0;padding:10px 11px}button{font:inherit}.inline-form button,.lesson-nav button{color:#fff;cursor:pointer;background:#1f6f68;border:1px solid #1f6f68;padding:10px 13px;font-weight:800}.interactive-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.interactive-list li{background:#fbfdfb;border:1px solid #cfdbd8;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.interactive-list button{color:#9f1f14;cursor:pointer;background:0 0;border:1px solid #9f1f14;padding:7px 10px}.typewriter-output{background:#fbfdfb;border:1px dashed #8ebdb7;min-height:58px;padding:14px;display:block}.empty-state{color:#62727b}.reveal summary{color:#0e6f68;cursor:pointer;font-weight:900}.solution pre{color:#e5eef8;max-height:520px}.lesson-nav{border-top:1px solid #dfe8e5;justify-content:space-between;gap:12px;padding-top:28px;padding-bottom:34px;display:flex}.reference-list li{margin-bottom:8px}@media (width<=760px){.workbook-header,.exercise-intro,.lesson-nav{flex-direction:column;align-items:stretch}.workbook-header,.lesson-map,.lesson-hero,.chapter,.lesson-nav{padding-left:22px;padding-right:22px}.lesson-map button{grid-template-columns:32px 1fr}.lesson-hero h1{font-size:34px}}
