.study-app{min-height:100vh;background:radial-gradient(circle at 10% 0%,rgba(39,245,153,.14),transparent 32rem),radial-gradient(circle at 100% 10%,rgba(236,255,184,.09),transparent 28rem),#050807;color:#eef7ef;display:grid;grid-template-columns:280px minmax(0,1fr) 170px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.study-sidebar,.study-mini-toc{position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid rgba(255,255,255,.09);background:#050807d1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:24px}.study-mini-toc{border-right:0;border-left:1px solid rgba(255,255,255,.09)}.study-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;margin-bottom:28px}.study-brand span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#d8ff7d,#2cf39a);color:#06100b;font-weight:900}.study-sidebar nav,.study-mini-toc{display:flex;flex-direction:column;gap:8px}.study-sidebar a,.study-mini-toc a{color:#eef7efb3;text-decoration:none;border-radius:8px;padding:9px 10px;transition:.15s ease}.study-sidebar a:hover,.study-mini-toc a:hover,.study-sidebar a:focus-visible,.study-mini-toc a:focus-visible{color:#fff;background:#d8ff7d1f;outline:1px solid rgba(216,255,125,.32)}.study-mini-toc strong{font-size:12px;text-transform:uppercase;color:#d8ff7d;margin:4px 10px 8px}.study-main{min-width:0;padding:22px 34px 80px}.study-topbar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0 22px;background:linear-gradient(180deg,#050807 70%,#05080700)}.study-back,.study-ghost-button,.study-print-button,.chapter-link{border:1px solid rgba(255,255,255,.13);color:#eef7ef;background:#ffffff0d;border-radius:8px;padding:10px 14px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;min-height:40px;cursor:pointer}.study-print-button{background:#d8ff7d;color:#07100b;border-color:transparent;font-weight:800}.study-cover{min-height:72vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:28px;align-items:center;border-bottom:1px solid rgba(255,255,255,.09);padding:48px 0 64px}.study-eyebrow,.mini-label{display:inline-flex;color:#d8ff7d;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em;margin-bottom:12px}.study-cover h1{font-size:clamp(42px,6vw,82px);line-height:.95;max-width:900px;margin:0 0 24px;letter-spacing:0}.study-cover p{font-size:18px;line-height:1.7;color:#eef7efc2;max-width:780px}.cover-actions,.study-topbar div{display:flex;flex-wrap:wrap;gap:10px}.cover-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cover-panel div,.study-project-card,.chapter-section,.project-chapter,.study-callout,.flow-card,.code-explainer,.glossary-card{border:1px solid rgba(255,255,255,.1);background:#ffffff0e;box-shadow:0 24px 80px #00000042}.cover-panel div{min-height:130px;border-radius:8px;padding:20px}.cover-panel strong{display:block;font-size:42px;color:#d8ff7d}.cover-panel span{color:#eef7efa3}.study-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:34px 0}.study-project-card{min-height:220px;border-radius:8px;padding:22px;text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease,background .18s ease}.study-project-card:hover{transform:translateY(-3px);border-color:#d8ff7d5c;background:#d8ff7d12}.study-project-card span{color:#d8ff7d;font-weight:900}.study-project-card h2{margin:28px 0 10px;font-size:26px}.study-project-card p,.study-project-card i,.section-note{color:#eef7efad;line-height:1.6}.study-project-card i{display:block;margin-top:18px;font-style:normal}.project-chapter{border-radius:8px;margin:42px 0;padding:0;overflow:hidden}.chapter-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:34px;background:linear-gradient(135deg,rgba(216,255,125,.14),transparent 45%),#ffffff09;border-bottom:1px solid rgba(255,255,255,.1)}.chapter-hero h2{font-size:clamp(34px,5vw,58px);margin:12px 0;line-height:1}.chapter-hero p{max-width:860px;color:#eef7efba;font-size:17px;line-height:1.7}.status-pill{display:inline-flex;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;text-transform:uppercase}.status-documented{background:#2cf39a21;color:#74ffc0}.status-partial{background:#ffdb7024;color:#ffdf7a}.status-pending{background:#ff686826;color:#ff9c9c}.chapter-section{margin:22px 34px;border-radius:8px;padding:26px}.chapter-section h2,.chapter-section h3{display:flex;gap:10px;align-items:center;margin:0 0 18px;color:#fff}.summary-grid,.method-grid,.ops-grid,.script-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.summary-grid div{border-radius:8px;padding:18px;background:#0003;border:1px solid rgba(255,255,255,.08)}.summary-grid span{display:block;color:#d8ff7d;font-weight:800;margin-bottom:8px}.summary-grid p,.study-callout p,.flow-card p,.code-explainer p,.glossary-card p,.study-empty,.source-list,.study-check-list,.study-todo,.ops-grid li{color:#eef7efb8;line-height:1.65}.three-callouts,.two-callouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.two-callouts{grid-template-columns:repeat(2,minmax(0,1fr))}.study-callout{border-radius:8px;padding:18px}.study-callout strong{display:block;color:#fff;margin-bottom:8px}.study-callout-simple{border-color:#2cf39a3d;background:#2cf39a12}.study-callout-technical{border-color:#d8ff7d3d;background:#d8ff7d12}.study-callout-warning{border-color:#ffc46642;background:#ffc46614}.study-table-wrap{width:100%;overflow:auto}.study-table{width:100%;border-collapse:collapse;min-width:720px}.study-table th,.study-table td{padding:14px 12px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.08)}.study-table th{color:#d8ff7d;font-size:12px;text-transform:uppercase}.study-table td:first-child{color:#fff;font-weight:800}.study-table small{display:block;color:#eef7ef7a;margin-top:5px}.architecture-diagram{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch}.diagram-step{position:relative;min-height:120px;border-radius:8px;padding:18px;background:linear-gradient(180deg,#d8ff7d1f,#ffffff0a);border:1px solid rgba(216,255,125,.16)}.diagram-step span{display:block;color:#d8ff7d;font-weight:900;margin-bottom:20px}.diagram-step i{position:absolute;right:-15px;top:50%;transform:translateY(-50%);color:#d8ff7d;z-index:1}.flow-grid,.code-grid,.glossary-grid,.interview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.flow-card,.code-explainer,.glossary-card{border-radius:8px;padding:20px}.flow-card h4,.code-explainer h4,.glossary-card h3{color:#fff;margin:0 0 10px;font-size:21px}.flow-card ol{padding-left:22px;color:#eef7efc7;line-height:1.65}.flow-meta{font-size:13px;color:#eef7ef9e;margin:10px 0}.code-title{display:flex;align-items:center;gap:8px}.pseudo-code{display:grid;gap:8px;margin:18px 0;padding:14px;border-radius:8px;background:#030504;border:1px solid rgba(255,255,255,.08);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.pseudo-code span{display:grid;grid-template-columns:34px 1fr;color:#eef7efc7}.pseudo-code em{color:#d8ff7d;font-style:normal}details{border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:16px;background:#0000002e}summary{cursor:pointer;color:#d8ff7d;font-weight:900;margin-bottom:10px}.qa-item{border-top:1px solid rgba(255,255,255,.08);padding-top:12px;margin-top:12px}.qa-item strong{color:#fff}.study-todo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;list-style:none;margin-top:18px}.study-todo li{display:flex;gap:8px;align-items:flex-start}.study-todo svg{color:#74ffc0;flex:0 0 auto;margin-top:3px}.check-list{padding-left:20px}.source-list{display:grid;gap:8px}@media(max-width:1220px){.study-app{grid-template-columns:230px minmax(0,1fr)}.study-mini-toc{display:none}.study-overview-grid,.three-callouts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.study-app{display:block}.study-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.09)}.study-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.study-main{padding:18px}.study-cover,.summary-grid,.method-grid,.ops-grid,.script-grid,.flow-grid,.code-grid,.glossary-grid,.interview-grid,.three-callouts,.two-callouts,.study-overview-grid,.architecture-diagram{grid-template-columns:1fr}.chapter-hero,.study-topbar{flex-direction:column;align-items:stretch}.chapter-section,.chapter-hero{margin-left:14px;margin-right:14px;padding:20px}.project-chapter{margin-left:-6px;margin-right:-6px}.diagram-step i{display:none}.study-todo{grid-template-columns:1fr}}@media print{@page{margin:14mm}*{box-shadow:none!important;text-shadow:none!important}body{background:#fff!important}.no-print,.study-sidebar,.study-mini-toc,.study-topbar{display:none!important}.study-app,.study-main{display:block;background:#fff!important;color:#111!important;padding:0}.study-cover{min-height:auto;display:block;padding:0 0 20px;border-bottom:2px solid #111}.study-cover h1{font-size:42px;color:#111}.study-cover p,.chapter-hero p,.summary-grid p,.study-callout p,.flow-card p,.code-explainer p,.glossary-card p,.study-empty,.source-list,.study-check-list,.study-todo,.ops-grid li,.study-project-card p,.study-project-card i,.section-note{color:#222!important}.cover-panel,.study-overview-grid,.architecture-diagram,.summary-grid,.three-callouts,.two-callouts,.flow-grid,.code-grid,.glossary-grid,.interview-grid,.ops-grid,.script-grid{display:block}.cover-panel div,.study-project-card,.chapter-section,.project-chapter,.study-callout,.flow-card,.code-explainer,.glossary-card,details,.summary-grid div,.diagram-step{background:#fff!important;border:1px solid #cfcfcf!important;color:#111!important;break-inside:avoid;page-break-inside:avoid;margin-bottom:10px}.project-chapter{page-break-before:always;margin:0 0 20px;border:0!important}.chapter-hero{padding:0 0 10px;border:0!important;background:#fff!important}.chapter-hero h2,.chapter-section h2,.chapter-section h3,.flow-card h4,.code-explainer h4,.glossary-card h3,.qa-item strong{color:#111!important}.chapter-section{margin:0 0 14px;padding:12px}.study-table{min-width:0;font-size:11px}.study-table th,.study-table td{color:#111!important;border-bottom:1px solid #ddd}.pseudo-code{background:#f4f4f4!important;color:#111!important}.pseudo-code span{color:#111!important}details{display:block}}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#050807}*{box-sizing:border-box}button,a{font:inherit}
