:root{--sidebar-width: 260px;--sidebar-bg: #f4f5f7;--page-bg: #ffffff;--border-subtle: #e0e1e4;--text-main: #222222;--text-muted: #777777;--accent: #222222;--max-content-width: 720px;--line-height: 1.6}:root.dark-mode{--sidebar-bg: #1a1a1a;--page-bg: #0f0f0f;--border-subtle: #2a2a2a;--text-main: #e8e8e8;--text-muted: #a0a0a0;--accent: #e8e8e8}@media(prefers-color-scheme:dark){:root:not(.force-light){--sidebar-bg: #1a1a1a;--page-bg: #0f0f0f;--border-subtle: #2a2a2a;--text-main: #e8e8e8;--text-muted: #a0a0a0;--accent: #e8e8e8}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:var(--line-height);color:var(--text-main);background:var(--sidebar-bg)}.skip-link{position:absolute;top:.75rem;left:.75rem;padding:.5rem .75rem;background:#000;color:#fff;text-decoration:none;border-radius:999px;transform:translateY(-150%);transition:transform .15s ease-out;z-index:1000}.skip-link:focus{transform:translateY(0)}.shell{min-height:100vh;display:grid;grid-template-columns:minmax(220px,var(--sidebar-width)) minmax(0,1fr)}.mobile-menu-button{display:none;position:static;width:32px;height:32px;background:none;border:none;cursor:pointer;padding:0;z-index:999;flex-shrink:0}.mobile-menu-button span{display:block;width:24px;height:2px;background:var(--text-main);margin:6px 0;transition:all .45s ease-in-out}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border-subtle);padding:2.5rem 2.25rem}.sidebar-inner{display:flex;flex-direction:column;height:100%}.mobile-menu-content{display:flex;flex-direction:column;flex-grow:1}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem}.site-header-inner{display:flex;flex-direction:column}.site-title{font-size:1.15rem;font-weight:600;letter-spacing:.03em;text-decoration:none;color:var(--text-main)}.site-tagline{margin:.35rem 0 0;font-size:.9rem;color:var(--text-muted)}.site-nav{margin-top:1.5rem}.nav-link{display:block;padding:.3rem 0;font-size:.95rem;color:var(--text-main);text-decoration:none}.nav-link:hover{text-decoration:underline}.nav-link--active{font-weight:600;text-decoration:underline}.sidebar-footer{margin-top:auto;display:flex;gap:.75rem;padding-top:2rem;align-items:center}.icon-button{width:40px;height:40px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--page-bg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;color:var(--text-muted)}.icon-button:hover{background:var(--border-subtle)}.icon-button:focus-visible{outline:2px solid #000;outline-offset:2px}.theme-toggle-button{margin-left:auto}.theme-toggle-icon{font-size:1.1rem;line-height:1}.content{background:var(--page-bg);padding:3rem 4rem;display:flex;justify-content:center}.content-inner{width:100%;max-width:var(--max-content-width)}h1,h2,h3{font-weight:600;letter-spacing:.02em}h1{font-size:2.25rem;margin:0 0 1.5rem}h2{font-size:1.4rem;margin:2.5rem 0 .75rem}p{margin:0 0 1rem}a{color:var(--accent)}a:hover{text-decoration:underline}.section-divider{margin:3rem 0 2rem;border:0;border-top:1px solid var(--border-subtle)}.site-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-subtle);font-size:.85rem;color:var(--text-muted)}.blog-year{margin-top:2.5rem}.blog-year-heading{font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.blog-list{margin-top:.75rem;border-top:1px solid var(--border-subtle)}.blog-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:baseline;padding:.7rem 0;border-bottom:1px solid var(--border-subtle);text-decoration:none;color:inherit}.blog-row-title{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.15em;transition:text-decoration-color .12s ease-out}.blog-row:hover .blog-row-title{text-decoration-color:currentColor}.blog-row-date{font-size:.9rem;color:var(--text-muted);justify-self:flex-end;text-align:right}.blog-article{width:100%;max-width:600px}.blog-article h1{margin-bottom:1.5rem}.blog-article-meta{display:flex;gap:1.5rem;align-items:baseline;margin-bottom:2rem;font-size:1.1rem;color:var(--text-muted)}.blog-article-date,.blog-article-category{display:inline}.blog-article p{margin-bottom:1.5rem;font-size:1.1rem}@media(max-width:900px){.shell{grid-template-columns:1fr;grid-template-rows:auto 1fr;position:relative}.mobile-menu-button{display:block;margin-left:0}.site-tagline{max-height:0;opacity:0;overflow:hidden;margin:0;transition:max-height .45s ease-in-out,opacity .45s ease-in-out,margin .45s ease-in-out}.sidebar.open .site-tagline{max-height:50px;opacity:1;margin:.35rem 0 0}.sidebar{position:relative;top:auto;left:auto;right:auto;width:100%;height:auto;border-right:none;border-bottom:1px solid var(--border-subtle);padding:1rem 1.5rem;max-height:none;overflow:visible;z-index:998}.sidebar.open{max-height:none}.mobile-menu-content{max-height:0;overflow:hidden;transition:max-height .45s ease-in-out}.sidebar.open .mobile-menu-content{max-height:100vh}.sidebar-inner{height:auto}.site-header{margin-bottom:0}.site-nav{margin-top:1.5rem}.nav-link{padding:.5rem 0;font-size:1rem}.content{padding:2rem 1.5rem 3rem;position:relative;z-index:1}.sidebar-footer{margin-top:auto;display:flex;justify-content:flex-end;padding-top:1.5rem}}@media(max-width:600px){h1{font-size:1.8rem}.sidebar{padding:1.5rem}}.video-embed{margin-top:1.5rem}.video-embed-inner{position:relative;width:100%;max-width:800px;aspect-ratio:16 / 9;background:#000;border-radius:8px;overflow:hidden;border:1px solid var(--border-subtle)}.video-embed-inner iframe{position:absolute;inset:0;width:100%;height:100%}
