:root{color:#000000f2;background:#f6f5f4;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: rgba(0, 0, 0, .95);--muted: #615d59;--subtle: #a39e98;--paper: #ffffff;--canvas: #f6f5f4;--line: rgba(0, 0, 0, .1);--blue: #0075de;--blue-dark: #005bab;--blue-tint: #f2f9ff;--card-shadow: rgba(0, 0, 0, .04) 0 4px 18px, rgba(0, 0, 0, .027) 0 2px 8px, rgba(0, 0, 0, .02) 0 1px 3px;--page-max-width: 1280px;--page-gutter: clamp(20px, 4vw, 64px)}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--canvas);color:var(--ink);line-height:1.6}a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--blue-dark)}a:focus-visible{outline:3px solid #8fc7ff;outline-offset:3px;border-radius:4px}.site-shell{min-height:100vh}.site-header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 32px;border-bottom:1px solid var(--line);background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-header__brand{color:var(--ink);text-decoration:none;font-size:17px;font-weight:700;letter-spacing:-.35px}.site-header nav{display:flex;gap:20px;align-items:center}.site-header nav a{color:var(--muted);font-size:14px;font-weight:600;text-decoration:none}.site-header nav a:hover{color:var(--ink)}.page{width:min(calc(100% - (var(--page-gutter) * 2)),var(--page-max-width));margin:0 auto;padding:64px 0 88px}.page--issue{width:100%;max-width:none;padding-right:var(--page-gutter)}.eyebrow{margin:0 0 12px;color:#097fe8;font-size:12px;font-weight:700;letter-spacing:.25px}.lesson{display:grid;min-width:0;grid-template-columns:minmax(210px,250px) minmax(0,1fr);grid-template-rows:auto auto;column-gap:clamp(28px,3vw,44px);row-gap:24px}.lesson--toc-collapsed{grid-template-columns:54px minmax(0,1fr);column-gap:20px}.lesson__header{padding:8px 2px 14px}.lesson__header,.lesson__main{min-width:0;grid-column:2;transform-origin:top left;will-change:transform}.lesson__header h1{margin:0;width:100%;font-size:clamp(34px,3.15vw,48px);line-height:1.12;letter-spacing:-1.2px;word-break:keep-all;overflow-wrap:normal;text-wrap:pretty}.lesson__main{display:grid;gap:24px}.lesson__toc{position:sticky;top:24px;grid-column:1;grid-row:1 / span 2;align-self:start;max-height:calc(100vh - 48px);overflow-x:clip;padding:10px 0 18px}.lesson__toc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:0 12px 0 16px}.lesson__toc[data-collapsed=true] .lesson__toc-toolbar{justify-content:center;margin-bottom:0;padding:0}.lesson__toc-toggle{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#ffffffd1;color:#69645f;box-shadow:0 1px 3px #00000009;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease}.lesson__toc-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.lesson__toc-toggle:hover{border-color:#8fc7f5;background:#fff;color:var(--blue);box-shadow:0 4px 12px #005bab17}.lesson__toc-toggle:focus-visible{outline:3px solid #8fc7ff;outline-offset:2px}.lesson__toc nav{max-height:calc(100vh - 104px);overflow-y:auto;padding:0 12px 0 16px;scrollbar-width:thin}.lesson__toc-title{margin:0 0 0 4px;color:var(--ink);font-size:14px;font-weight:800;letter-spacing:.02em}.lesson__toc ol{display:grid;gap:3px;margin:0;padding:0;list-style:none}.lesson__toc a{min-width:0;color:#4f4b47;line-height:1.45;text-decoration:none;transition:border-color .15s ease,background-color .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}.lesson__toc-item--level-1{margin-top:9px}.lesson__toc-item--level-1:first-child{margin-top:0}.lesson__toc-item--level-1 a{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:start;gap:9px;padding:9px 10px;border:1px solid rgba(0,117,222,.13);border-radius:9px;background:linear-gradient(135deg,#fffffff5,#f2f9ffd6);color:#292725;box-shadow:0 1px 2px #00000006;font-size:13px;font-weight:730}.lesson__toc-number{display:grid;width:27px;height:23px;place-items:center;border-radius:6px;background:#e5f2ff;color:#0877d1;font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:-.02em}.lesson__toc-item--level-2 a{position:relative;display:block;margin-left:17px;padding:7px 9px 7px 20px;border:1px solid transparent;border-radius:7px;color:#6b6661;font-size:12px;font-weight:570}.lesson__toc-item--level-2 a:before{content:"";position:absolute;top:.98em;left:8px;width:5px;height:5px;border:1.5px solid #9bc8ee;border-radius:999px;background:var(--paper)}.lesson__toc-item--level-1 a:hover{border-color:#9dcefa;background:#fff;color:var(--blue-dark);box-shadow:0 4px 12px #005bab14;transform:translateY(-1px)}.lesson__toc-item--level-2 a:hover{border-color:#0075de14;background:#ffffffb8;color:var(--blue-dark)}.lesson__toc-item--level-2 a:hover:before{border-color:var(--blue);background:#cfe8ff}.lesson__duration{display:inline-block;margin:18px 0 0;padding:3px 9px;border-radius:999px;background:var(--blue-tint);color:#097fe8;font-size:13px;font-weight:700}.lesson__theme{margin:12px 0 0;color:var(--muted);font-size:15px}.share-content{display:grid;min-width:0;gap:16px}.share-block{min-width:0;padding:28px 30px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--card-shadow)}.share-block h2{margin:0;font-size:24px;line-height:1.25;letter-spacing:-.55px}.share-block h2[id],.share-prose h2[id],.share-prose h3[id],.lesson__panel h2[id]{scroll-margin-top:24px}.share-block p{margin:14px 0 0;color:var(--muted);font-size:16px;line-height:1.75}.share-prose{margin-top:18px;color:var(--muted);font-size:16px;line-height:1.75}.share-prose>:first-child{margin-top:0}.share-prose>:last-child{margin-bottom:0}.share-prose h3,.share-prose h4{margin:30px 0 0;color:var(--ink);line-height:1.35;letter-spacing:-.25px}.share-prose h3{font-size:19px}.share-prose h4{font-size:16px}.share-prose p,.share-prose ul,.share-prose ol,.share-prose blockquote,.share-prose pre,.share-prose table{margin:14px 0 0}.share-prose ul,.share-prose ol{padding-left:22px}.share-prose li+li{margin-top:6px}.share-prose a{color:#097fe8;font-weight:650;text-decoration-thickness:1px;text-underline-offset:2px}.share-prose blockquote{padding:12px 16px;border-left:3px solid #8fc7ff;background:var(--blue-tint);color:#213183}.share-prose blockquote>:first-child{margin-top:0}.share-prose blockquote>:last-child{margin-bottom:0}.share-prose pre{overflow-x:auto;padding:16px;border-radius:8px;background:#172033;color:#e8f1ff;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace}.share-prose code{padding:.12em .35em;border-radius:4px;background:#eef2f7;color:#243758;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.share-prose pre code{padding:0;background:transparent;color:inherit}.share-prose table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:14px}.share-prose th,.share-prose td{min-width:130px;padding:10px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}.share-prose th{background:#f5f8fb;color:var(--ink);font-weight:700}.share-points{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}.share-points li{position:relative;padding-left:18px;color:var(--ink);font-size:14px;font-weight:600}.share-points li:before{content:"";position:absolute;top:.66em;left:1px;width:7px;height:7px;border-radius:999px;background:#097fe8}.lesson__panel,.archive{padding:28px 30px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--card-shadow)}.lesson__panel h2,.archive h2{margin:0;font-size:24px;line-height:1.25;letter-spacing:-.55px}.lesson__panel h2+p,.lesson__panel h2+ul{margin-top:14px}.lesson__panel p{margin-bottom:0;color:var(--muted)}.lesson__panel ul{margin-bottom:0;padding-left:20px;color:var(--muted)}.lesson__panel li+li{margin-top:7px}.lesson__agenda,.lesson__sources{margin:18px 0 0;padding:0;list-style:none}.lesson__agenda{counter-reset:agenda;display:grid;gap:14px}.lesson__agenda>li{position:relative;padding:18px 18px 18px 56px;border:1px solid var(--line);border-radius:10px;background:#fff}.lesson__agenda>li:before{counter-increment:agenda;content:counter(agenda);position:absolute;top:18px;left:18px;display:grid;width:24px;height:24px;place-items:center;border-radius:999px;background:var(--blue-tint);color:#097fe8;font-size:12px;font-weight:700}.lesson__agenda-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.lesson__agenda-title strong{font-size:16px}.lesson__agenda-title span{flex:0 0 auto;color:var(--muted);font-size:13px;font-weight:600}.lesson__agenda p{margin-top:9px;font-size:14px}.lesson__takeaway{color:var(--ink)!important;font-size:13px!important;font-weight:600}.lesson__exercise{border-color:#bdddff;background:var(--blue-tint)}.lesson__exercise p{color:#213183}.lesson__sources{display:grid;gap:16px;counter-reset:sources}.lesson__sources li{position:relative;padding-left:28px}.lesson__sources li:before{counter-increment:sources;content:counter(sources) ".";position:absolute;left:0;color:var(--subtle);font-size:13px;font-weight:700}.lesson__sources a{font-size:15px;font-weight:700}.lesson__sources span{color:var(--subtle);font-size:13px}.lesson__sources p{margin:4px 0 0;font-size:14px}.lesson__next{padding:22px 26px;border-left:4px solid var(--blue);border-radius:0 8px 8px 0;background:#fff;color:var(--muted)}.lesson__next strong{color:var(--ink)}.archive{max-width:800px;margin:24px auto}.archive__heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.archive__list{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none}.archive__list a{display:flex;align-items:flex-start;gap:16px;padding:18px;border:1px solid var(--line);border-radius:9px;color:var(--ink);text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.archive__list a:hover{border-color:#8fc7ff;box-shadow:var(--card-shadow);transform:translateY(-1px)}.archive__list span:last-child{display:grid;gap:3px}.archive__list strong{font-size:16px}.archive__list small{color:var(--muted);font-size:13px}.archive__number{display:grid;min-width:38px;min-height:26px;place-items:center;border-radius:999px;background:var(--blue-tint);color:#097fe8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700}.empty-state{padding:100px 0;text-align:center}.site-footer{width:min(calc(100% - (var(--page-gutter) * 2)),var(--page-max-width));margin:0 auto;padding:28px 0 40px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.admin-gate{min-height:calc(100vh - 69px);display:grid;place-items:center;padding:40px 20px;background:radial-gradient(circle at 20% 20%,rgba(0,117,222,.09),transparent 34%),radial-gradient(circle at 80% 80%,rgba(92,55,238,.07),transparent 36%),#f6f7f9}.admin-gate__card{width:min(100%,440px);display:grid;gap:18px;padding:40px;border:1px solid var(--line);border-radius:18px;background:#fffffff0;box-shadow:0 24px 70px #1a21321f;text-align:center}.admin-gate__card h1{margin:-8px 0 0;font-size:30px;letter-spacing:-.8px}.admin-gate__card p{margin:0;color:var(--muted)}.admin-gate__card>a{color:var(--muted);font-size:13px}.admin-gate__mark{display:grid;width:48px;height:48px;place-items:center;margin:0 auto;border-radius:14px;background:#101828;color:#fff;font-size:22px}.admin-spinner{width:28px;height:28px;margin:0 auto;border:3px solid #dde6f0;border-top-color:var(--blue);border-radius:999px;animation:admin-spin .8s linear infinite}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-workspace{min-height:calc(100vh - 69px);background:#f3f5f7;color:#172033}.admin-toolbar{position:sticky;z-index:20;top:0;min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 28px;border-bottom:1px solid #dfe3e8;background:#fffffff5;box-shadow:0 2px 10px #1118270a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.admin-toolbar>div{display:flex;align-items:center;gap:12px}.admin-toolbar__back{color:#687386;font-size:13px;font-weight:650;text-decoration:none}.admin-toolbar strong{padding-left:12px;border-left:1px solid #dfe3e8}.admin-save-state{display:inline-flex;align-items:center;gap:6px;color:#40865c;font-size:12px;font-weight:650}.admin-save-state:before{content:"";width:7px;height:7px;border-radius:99px;background:#47a96b}.admin-save-state--dirty{color:#a96215}.admin-save-state--dirty:before{background:#f0a239}.admin-shortcut{color:#8a94a6;font-size:11px}.admin-primary-button,.admin-secondary-button{min-height:38px;padding:0 16px;border:0;border-radius:8px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.admin-primary-button{background:#101828;color:#fff;box-shadow:0 2px 5px #10182826}.admin-primary-button:hover{background:#26344c}.admin-primary-button:disabled{background:#bdc4ce;box-shadow:none;cursor:default}.admin-secondary-button{border:1px solid #d5dae1;background:#fff;color:#4e5b70}.admin-secondary-button:hover{background:#f7f8fa}.admin-layout{width:min(100%,1680px);display:grid;grid-template-columns:270px minmax(0,1fr);gap:0;margin:0 auto}.admin-sidebar{position:sticky;top:68px;height:calc(100vh - 68px);overflow-y:auto;padding:24px 18px;border-right:1px solid #dfe3e8;background:#fafbfc}.admin-sidebar nav{display:grid;gap:4px;margin-top:24px}.admin-sidebar nav>p{margin:0 10px 8px;color:#9099a8;font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.admin-sidebar nav button{width:100%;display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:start;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#566176;font:inherit;font-size:12px;line-height:1.45;text-align:left;cursor:pointer}.admin-sidebar nav button span{color:#9ba4b2;font:10px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace}.admin-sidebar nav button:hover{background:#eff2f6;color:#172033}.admin-sidebar nav button.is-active{background:#e8f2ff;color:#0b67be;font-weight:700}.admin-sidebar nav button.is-active span{color:#0b67be}.admin-canvas{min-width:0;display:grid;align-content:start;gap:18px;padding:32px}.admin-card{min-width:0;padding:26px;border:1px solid #dfe3e8;border-radius:14px;background:#fff;box-shadow:0 4px 16px #11182709}.admin-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.admin-card__heading .eyebrow{margin-bottom:5px}.admin-card__heading h1{margin:0;color:#101828;font-size:23px;line-height:1.25;letter-spacing:-.45px}.admin-card__heading>span{color:#8c96a6;font-size:12px}.admin-issue-fields{display:grid}.admin-field{display:grid;min-width:0;gap:7px;text-align:left}.admin-field>span,.markdown-editor__input>span,.markdown-editor__preview>span{color:#647086;font-size:11px;font-weight:750;letter-spacing:.02em}.admin-field input,.admin-field select,.admin-field textarea{width:100%;min-width:0;border:1px solid #cfd5dd;border-radius:8px;background:#fff;color:#172033;font:inherit;font-size:14px;outline:0;transition:border-color .12s ease,box-shadow .12s ease}.admin-field input,.admin-field select{height:42px;padding:0 11px}.admin-field textarea{padding:10px 11px}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus,.markdown-editor textarea:focus{border-color:#4b9de8;box-shadow:0 0 0 3px #0075de1a}.admin-gate .admin-field input{height:48px;text-align:center;font-size:18px;letter-spacing:.15em}.admin-field--wide{width:100%}.admin-field-grid{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(150px,.5fr));gap:14px;margin-top:14px}.admin-field-grid--two{grid-template-columns:minmax(280px,1fr) minmax(180px,.35fr)}.admin-compact-textarea{min-height:82px;resize:vertical}.admin-message{margin:0;padding:10px 12px;border-radius:8px;font-size:13px}.admin-message--error{background:#fff1f0;color:#a9322e!important}.markdown-editor{min-width:0;margin-top:20px;overflow:hidden;border:1px solid #cfd5dd;border-radius:10px}.markdown-editor__toolbar{min-height:42px;display:flex;align-items:center;gap:5px;padding:6px 8px;border-bottom:1px solid #dfe3e8;background:#f8f9fb}.markdown-editor__toolbar button{width:30px;height:28px;display:grid;place-items:center;border:1px solid transparent;border-radius:5px;background:transparent;color:#4f5b70;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.markdown-editor__toolbar button:hover{border-color:#ccd2da;background:#fff}.markdown-editor__toolbar>span{margin-left:auto;color:#939cab;font-size:10px}.markdown-editor__panes{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.markdown-editor__input{display:grid;grid-template-rows:auto minmax(480px,65vh);gap:8px;min-width:0;padding:14px;border-right:1px solid #dfe3e8}.markdown-editor__input textarea{width:100%;min-width:0;min-height:480px;resize:vertical;padding:14px;border:1px solid transparent;border-radius:7px;background:#fbfcfd;color:#2d3748;font:13px/1.72 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;outline:0;tab-size:2}.markdown-editor__preview{min-width:0;overflow:auto;padding:14px 20px 24px;background:#fff}.markdown-editor__preview .share-prose{color:#4e596d;font-size:14px}.markdown-editor__placeholder{color:#a3abb7!important}.admin-card>.admin-field:last-child{margin-top:18px}.admin-source-list{display:grid;gap:16px}.admin-source-list fieldset{display:grid;gap:14px;margin:0;padding:18px;border:1px solid #dfe3e8;border-radius:10px}.admin-source-list legend{padding:0 7px;color:#637086;font-size:12px;font-weight:750}@media(max-width:1100px){.admin-layout{grid-template-columns:220px minmax(0,1fr)}.markdown-editor__panes{grid-template-columns:1fr}.markdown-editor__input{border-right:0;border-bottom:1px solid #dfe3e8}.markdown-editor__preview{max-height:65vh}}@media(max-width:960px){.page{padding-top:48px}.lesson__header h1{font-size:clamp(32px,5vw,42px)}}@media(max-width:800px){.page--issue{width:calc(100% - 40px);padding-right:0}.lesson,.lesson--toc-collapsed{grid-template-columns:minmax(0,1fr);column-gap:0}.lesson__header,.lesson__toc,.lesson__main{grid-column:1}.lesson__header{grid-row:1}.lesson__toc{position:static;grid-row:2;max-height:none;padding:12px 0 0;border:1px solid var(--line);border-radius:10px;background:#ffffffb8}.lesson__toc-toolbar{margin-bottom:10px;padding:0 16px}.lesson__toc[data-collapsed=true]{width:34px;padding:0;border:0;background:transparent}.lesson__toc[data-collapsed=true] .lesson__toc-toolbar{justify-content:flex-start;padding:0}.lesson__toc nav{max-height:min(360px,48vh);overflow-y:auto;padding:0 16px 16px;scrollbar-width:thin}.lesson__main{grid-row:3}}@media(max-width:640px){.site-header{min-height:60px;padding:0 20px}.site-header nav{gap:14px}.site-header nav a{font-size:13px}.page{width:calc(100% - 28px);padding:32px 0 56px}.lesson__header h1{font-size:28px;letter-spacing:-.7px;word-break:normal;overflow-wrap:anywhere}.lesson__panel,.archive,.share-block{padding:22px 20px}.lesson__panel h2,.archive h2,.share-block h2{font-size:21px}.lesson__agenda>li{padding:16px 14px 16px 50px}.lesson__agenda>li:before{top:16px;left:14px}.lesson__agenda-title{align-items:flex-start;flex-direction:column;gap:2px}.lesson__next{padding:18px 20px}.site-footer{width:calc(100% - 28px)}.admin-gate__card{padding:30px 22px}.admin-toolbar{position:static;align-items:flex-start;padding:12px 14px}.admin-toolbar>div{align-items:flex-start;flex-wrap:wrap}.admin-toolbar>div:last-child{justify-content:flex-end}.admin-toolbar__back,.admin-shortcut{display:none}.admin-save-state{flex-basis:100%}.admin-layout{display:block}.admin-sidebar{position:static;height:auto;padding:14px;border-right:0;border-bottom:1px solid #dfe3e8}.admin-sidebar nav{display:flex;overflow-x:auto;margin-top:12px;padding-bottom:3px}.admin-sidebar nav>p{display:none}.admin-sidebar nav button{min-width:180px}.admin-canvas{padding:14px}.admin-card{padding:18px 14px}.admin-card__heading{display:block}.admin-card__heading>span{display:inline-block;margin-top:6px}.admin-field-grid,.admin-field-grid--two{grid-template-columns:1fr}.markdown-editor__input{grid-template-rows:auto minmax(420px,60vh);padding:10px}.markdown-editor__input textarea{min-height:420px;padding:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
