:root{--bg:#f5f7fc;--surface:#fff;--surface-2:#f1f4f8;--text:#182033;--muted:#536078;--accent:#147a4b;--warm:#8a5b00;--border:rgba(41,57,84,.22);--shadow:0 18px 48px rgba(27,39,63,.10);font-family:Georgia,'Times New Roman',serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}body{margin:0;line-height:1.7;background:linear-gradient(var(--bg),#e8edf7);min-height:100vh}a{color:var(--accent);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 28px;background:var(--bg);border-bottom:1px solid var(--border);font-family:'Trebuchet MS',sans-serif}.topbar .brand{text-decoration:none;font-weight:800;color:var(--text)}.topbar .play{padding:9px 15px;border-radius:10px;text-decoration:none;background:var(--accent);color:white;font-weight:700}.course-home{max-width:1180px;width:calc(100% - 40px);margin:auto;padding:36px 0 60px}.breadcrumb{display:flex;gap:10px;color:var(--muted);font:13px 'Trebuchet MS',sans-serif;margin-bottom:22px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:30px;box-shadow:var(--shadow)}.course-intro{margin-bottom:24px;padding:38px}.eyebrow{font:700 .72rem 'Trebuchet MS',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--warm);margin:0 0 10px}.course-intro h1{max-width:18ch}.subtitle{font-size:1.15rem;color:var(--muted);max-width:60ch}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}.primary-link,.secondary-link{display:inline-flex;align-items:center;text-decoration:none;border-radius:10px;padding:11px 16px;font:600 14px/1.4 'Trebuchet MS',sans-serif}.primary-link{background:var(--accent);color:white;border:1px solid var(--accent)}.secondary-link{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.chapter-overview{padding:24px}.chapter-overview h2{margin:0 0 22px}.chapter-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chapter-link{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--border);border-radius:14px;padding:17px 16px;text-decoration:none;color:var(--text);background:var(--surface-2)}.chapter-link:hover{background:#e8edf7;border-color:var(--accent);text-decoration:none}.chapter-number{color:var(--warm);font:700 14px 'Trebuchet MS',sans-serif;flex:0 0 2.2ch;text-align:right;font-variant-numeric:tabular-nums}.chapter-link>span:nth-child(2){min-width:0;flex:1}.chapter-link strong{display:block;font-size:17px;font-weight:normal}.chapter-link small{display:block;font-size:14px;line-height:1.5;margin-top:4px;color:var(--muted)}.arrow{margin-left:auto;color:var(--accent);font:19px sans-serif}.course-details{margin-top:24px;box-shadow:none}.course-details h2:first-child{margin-top:0}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:28px;max-width:1180px;width:calc(100% - 40px);margin:auto;padding:36px 0 60px}.chapter-nav{display:flex;flex-direction:column;gap:3px;position:sticky;top:20px;font:14px/1.5 'Trebuchet MS',sans-serif}.chapter-nav a{padding:8px 10px;text-decoration:none;color:var(--muted);border-left:2px solid var(--border)}.chapter-nav a:hover{background:var(--surface-2);color:var(--accent)}.chapter-content{min-width:0;padding:34px 40px;background:var(--surface);border:1px solid var(--border);border-radius:20px}.chapter-content h1{margin-top:0}h1{font-size:clamp(2.3rem,4.5vw,3.65rem);line-height:1.18;letter-spacing:-.025em;margin:.4rem 0 1rem}h2{font-size:1.65rem;line-height:1.18;margin:2rem 0 1rem}h3{margin-top:1.8rem}p,li{max-width:75ch}pre{overflow:auto;background:#eef2f8;padding:18px;border-radius:8px;border:1px solid var(--border)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#285943}pre code{color:var(--text)}blockquote{margin:1.5em 0;padding:1px 18px;border-left:3px solid var(--accent);background:var(--surface-2)}table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}th,td{border:1px solid var(--border);padding:8px 12px;text-align:left}footer{display:flex;justify-content:space-between;margin-top:55px;padding-top:20px;border-top:1px solid var(--border)}.course-details,.chapter-content,.chapter-link{overflow-wrap:anywhere}
@media(max-width:760px){.course-home,.layout{width:calc(100% - 24px);padding-top:22px}.layout{display:block}.chapter-nav{position:static;flex-direction:row;overflow:auto;white-space:nowrap;padding-bottom:12px}.chapter-content{padding:24px}.chapter-grid{grid-template-columns:1fr}.course-intro,.panel{padding:24px}.hero-actions{flex-direction:column;align-items:stretch}.topbar{padding:12px 16px;font-size:.87rem}}
:root{--bg-end:#e8edf7;--code:#eef2f8}html[data-theme=dark]{color-scheme:dark;--bg:#101526;--bg-end:#151b30;--surface:#1b233a;--surface-2:#242e46;--text:#f4f7fb;--muted:#bbc5db;--accent:#8bdfaa;--warm:#f6c453;--border:rgba(185,199,223,.25);--code:#0c1221;--shadow:0 18px 48px #0003}body{background:linear-gradient(var(--bg),var(--bg-end))}.chapter-link:hover{background:var(--bg-end)}pre{background:var(--code)}code{color:var(--accent)}pre code{color:var(--text)}.topbar-actions{display:flex;align-items:center;gap:12px}.topbar #theme-toggle{width:42px;height:42px;flex-shrink:0;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:20px;cursor:pointer}.topbar #theme-toggle:hover{background:var(--surface-2)}html[data-theme=dark] .primary-link,html[data-theme=dark] .topbar .play{color:#10231b}
.chapter-nav{max-height:calc(100vh - 40px);overflow-y:auto;scrollbar-width:thin}.chapter-nav a{flex-shrink:0}@media(max-width:760px){.chapter-nav{max-height:none;overflow-y:hidden;overflow-x:auto}}
