:root{--paper:#0f1216;--paper-deep:#181c22;--ink:#f0ece4;--ink-soft:#c2bdb1;--ink-muted:#7a7568;--rule:#2a2e35;--rule-soft:#1f232a;--accent:#ff7849;--accent-soft:#2a1a14;--accent-2:#6fd6c8;--accent-2-soft:#11221f;--panel:#1c2128;--panel-text:#f0ece4}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:IBM Plex Sans,system-ui,sans-serif;overflow:hidden}.font-display{letter-spacing:-.025em;font-family:IBM Plex Sans,system-ui,sans-serif;font-weight:500}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.stage{z-index:2;position:relative}.small-caps{letter-spacing:.14em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500}.rule-top{border-top:1px solid var(--rule)}.rule-bottom{border-bottom:1px solid var(--rule)}.slide{opacity:0;transition:opacity .35s,transform .35s;transform:translateY(4px)}.slide.in{opacity:1;transform:translateY(0)}.accent{color:var(--accent)}.marker{background:var(--accent);flex-shrink:0;width:10px;height:2px;margin-right:.7em;display:inline-block;transform:translateY(-.3em)}.code-panel{background:var(--panel);color:var(--panel-text);border:1px solid var(--accent-2);border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:15px;line-height:1.7;position:relative;overflow:hidden}.code-panel .header-bar{background:#00000026;border-bottom:1px solid #ebe5d41a;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.code-panel .body{white-space:pre;padding:22px 24px;overflow-x:auto}.tok-key{color:#f4b673}.tok-str{color:#b8d68d}.tok-tag{color:#f4b673}.tok-attr{color:#d8b070}.tok-com{color:#6e7d76;font-style:italic}.tok-fn{color:#82c4be}.tok-punct{color:#80796b}.edge-card{background:var(--paper);border:1px solid var(--rule);border-radius:4px}.diagram-node rect{fill:var(--paper-deep);stroke:var(--ink-soft);stroke-width:1px}.diagram-node text{fill:var(--ink);font-family:IBM Plex Sans,sans-serif}.diagram-label{letter-spacing:.1em;text-transform:uppercase;fill:var(--ink-muted);font-family:IBM Plex Mono,monospace;font-size:12px}.diagram-arrow{stroke:var(--ink);stroke-width:1px;fill:none}.diagram-dashed{stroke-dasharray:3 3}.diagram-muted{stroke:var(--ink-muted)}.diagram-accent rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.4px}.diagram-accent text{fill:var(--ink)}.top-actions{z-index:60;align-items:center;gap:22px;display:inline-flex;position:fixed;top:22px;right:28px}.skcript-mark{color:var(--ink);opacity:.9;align-items:center;transition:opacity .15s;display:inline-flex}.skcript-mark:hover{opacity:1}.skcript-mark svg{width:auto;height:18px;display:block}.demo-link{background:var(--accent);color:var(--paper);letter-spacing:.1em;text-transform:uppercase;border-radius:2px;align-items:center;gap:8px;padding:8px 14px;font-family:IBM Plex Mono,monospace;font-size:11px;text-decoration:none;transition:background .15s;display:inline-flex}.demo-link:hover{background:var(--ink)}.masthead{z-index:50;align-items:center;gap:10px;display:flex;position:fixed;top:22px;left:28px}.mast-mark{background:var(--accent);border-radius:50%;width:10px;height:10px}.mast-mark:before{content:none}.foot{z-index:50;color:var(--ink-muted);justify-content:space-between;align-items:center;display:flex;position:fixed;bottom:22px;left:28px;right:28px}.progress-track{gap:3px;display:flex}.progress-tick{background:var(--rule);width:16px;height:2px;transition:background .2s}.progress-tick.done{background:var(--ink-muted)}.progress-tick.here{background:var(--accent)}.margin-note{color:var(--accent-2);border-left:2px solid var(--accent);padding-left:14px;font-family:IBM Plex Sans,sans-serif;font-size:16px;font-style:italic;line-height:1.5}.margin-note:before{content:none}.kbd{border:1px solid var(--rule);background:var(--paper-deep);color:var(--ink-soft);border-radius:2px;padding:2px 6px;font-family:IBM Plex Mono,monospace;font-size:11px}.tag-pill{background:var(--accent-soft);color:var(--accent);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;display:inline-flex}.col-flow{max-width:64ch}.col-flow-wide{max-width:78ch}.home-page{z-index:2;justify-content:center;width:100vw;min-height:100vh;padding:140px 40px 80px;display:flex;position:relative;overflow-y:auto}.home-inner{width:100%;max-width:920px}.talks-list{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.talk-row{border-bottom:1px solid var(--rule-soft);color:inherit;grid-template-columns:56px 1fr auto 24px;align-items:baseline;gap:28px;padding:28px 4px;text-decoration:none;transition:background .16s,padding-left .16s;display:grid}.talk-row:hover{background:#ff78490a;padding-left:14px}.talk-row:hover .talk-arrow{color:var(--accent);transform:translate(6px)}.talk-num{color:var(--ink-muted);font-size:12px}.talk-meta{flex-direction:column;gap:6px;display:flex}.talk-title{letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.15}.talk-subtitle{color:var(--ink-soft);font-size:15px;line-height:1.4}.talk-date{color:var(--ink-muted);font-size:12px}.talk-arrow{color:var(--ink-muted);font-family:IBM Plex Mono,monospace;font-size:18px;transition:transform .16s,color .16s}@media (width<=900px){.top-actions{gap:14px;top:14px;right:14px}.masthead{top:14px;left:14px}.foot{bottom:14px;left:14px;right:14px}.home-page{padding:100px 20px 60px}.talk-row{grid-template-columns:40px 1fr auto;gap:16px}.talk-arrow{display:none}}body:has(.home-page){overflow:auto}
