@import"https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=JetBrains+Mono:wght@400;500&display=swap";@import"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css";:root{--bg: #1b1e25;--bg-surface: #21252e;--bg-elevated: #272c38;--bg-code: #1a1d24;--border: #353a48;--border-dim: #2c3040;--text: #ddd8ce;--text-muted: #8c8780;--text-dim: #5c5850;--amber: #c8863b;--amber-light: #e0a05a;--teal: #4bbfb8;--teal-dim: #2d8f89;--gold: #d0a83a;--font-serif: "EB Garamond", Georgia, serif;--font-display: "Playfair Display", Georgia, serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--col-main: 640px;--col-side: 260px;--max-width: 1100px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-serif);font-size:18px;line-height:1.75;min-height:100vh}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.prose{max-width:var(--col-main)}.prose h2{font-family:var(--font-display);font-size:1.55rem;font-weight:700;color:var(--text);margin:2.5rem 0 1rem;padding-bottom:.4rem;border-bottom:1px solid var(--border-dim)}.prose h3{font-family:var(--font-display);font-size:1.15rem;font-weight:700;font-style:italic;color:var(--amber-light);margin:2rem 0 .75rem}.prose p{margin-bottom:1.2rem;text-align:justify}.prose strong{font-weight:600;color:var(--text)}.prose em{font-style:italic}.prose a{color:var(--amber);text-decoration:none;border-bottom:1px solid rgba(200,134,59,.4)}.prose a:hover{border-bottom-color:var(--amber)}.prose code{font-family:var(--font-mono);font-size:.82em;background:var(--bg-code);color:var(--teal);padding:.1em .4em}.prose pre{background:var(--bg-code);border:1px solid var(--border-dim);padding:1.25rem 1.5rem;overflow-x:auto;margin:1.5rem 0}.prose pre code{background:none;padding:0;color:var(--text-muted);font-size:.82rem;line-height:1.6}.math-display{padding:1.25rem 0;overflow-x:auto;text-align:center;font-size:1.1rem;margin:1.5rem 0}.theorem-box{background:var(--bg-surface);border:1px solid var(--border);border-left:3px solid var(--gold);padding:1.25rem 1.5rem;margin:2rem 0}.theorem-label{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem}.theorem-body{font-size:.95rem;font-style:italic;color:var(--text-muted);line-height:1.7}.definition-box{border-left-color:var(--teal)}.definition-box .theorem-label{color:var(--teal)}.lemma-box{border-left-color:var(--amber)}.lemma-box .theorem-label{color:var(--amber)}.site-header{position:sticky;top:0;z-index:100;height:52px;padding:0 2.5rem;background:#1b1e25eb;backdrop-filter:blur(12px);border-bottom:1px solid var(--border-dim);display:flex;align-items:center;justify-content:space-between}.site-logo{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text)}.site-logo .dot{color:var(--text-dim)}.site-nav{display:flex;gap:0}.nav-link{font-family:var(--font-serif);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;padding:.5rem 1.2rem;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.nav-link:hover{color:var(--text)}.nav-link[data-active]{color:var(--teal);border-bottom-color:var(--teal)}.blog-card{background:var(--bg-surface);border:1px solid var(--border-dim);padding:2rem;cursor:pointer;transition:background .2s,border-color .2s}.blog-card:hover{background:var(--bg-elevated);border-color:var(--border)}.sim-container{background:var(--bg-surface);border:1px solid var(--border);margin:2.5rem 0}.sim-header-bar{background:var(--bg-elevated);border-bottom:1px solid var(--border-dim);padding:.75rem 1.25rem;display:flex;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:fadeInUp .5s ease both}@media (max-width: 700px){body{font-size:16px}.site-header{height:auto;padding:.75rem 1.25rem}.nav-link{padding:.4rem .7rem;font-size:.8rem}.blog-card{padding:1.25rem}}
