:root{--text:#1a1a2e;--text-secondary:#555;--bg:#fafafa;--surface:#fff;--border:#e2e2e2;--accent:#2563eb;--accent-light:#eff6ff;--code-bg:#f4f4f8;--nav-hover:#f0f0f5;--sidebar-width:220px;--content-max-width:720px}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.7}.layout{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;padding:1.5rem 1rem;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.site-logo{margin-bottom:1rem;display:block}.site-logo img{width:100%;max-width:180px}.site-logo:hover{text-decoration:none}.site-subtitle{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.8rem}.mobile-title{color:var(--text);align-items:center;gap:.4rem;font-size:1rem;font-weight:700;text-decoration:none;display:flex}.mobile-title:hover{text-decoration:none}.mobile-title img{width:24px;height:24px}nav{flex-direction:column;gap:.125rem;display:flex}.nav-icon{flex-shrink:0;width:16px;height:16px}.nav-link{color:var(--text-secondary);border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .15s,background .15s;display:flex}.nav-link:hover{color:var(--text);background:var(--nav-hover);text-decoration:none}.nav-link.active{color:var(--accent);background:var(--accent-light)}.nav-group{flex-direction:column;gap:.125rem;display:flex}.nav-group+.nav-group{margin-top:.25rem}.nav-section-label{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:.4rem;width:100%;padding:.4rem .6rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:color .15s,background .15s;display:flex}.nav-section-label:hover{color:var(--text);background:var(--nav-hover)}.nav-section-label:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nav-chevron{opacity:.4;flex-shrink:0;width:14px;height:14px;margin-left:auto;transition:transform .2s}.nav-chevron.rotated{transform:rotate(180deg)}.nav-group.collapsed .nav-children{display:none}.nav-children{flex-direction:column;gap:.125rem;display:flex}.nav-child{opacity:.75;padding-left:2rem;font-size:.8rem}.nav-child:hover,.nav-child.active{opacity:1}.content-area{margin-left:var(--sidebar-width);flex-direction:column;flex:1;min-height:100vh;display:flex}main{max-width:var(--content-max-width);flex:1;width:100%;margin:0 auto;padding:2.5rem 2rem 4rem}.mobile-header{display:none}.nav-toggle{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:.5rem}.nav-toggle svg{width:24px;height:24px}.sidebar-overlay{display:none}h1{letter-spacing:-.02em;margin-bottom:.75rem;font-size:2rem;font-weight:700}h2{letter-spacing:-.01em;margin-top:2.5rem;margin-bottom:.75rem;font-size:1.4rem;font-weight:600}h3{margin-top:2rem;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}p{margin-bottom:1rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}ul,ol{margin-bottom:1rem;padding-left:1.5rem}li{margin-bottom:.35rem}code{background:var(--code-bg);border-radius:4px;padding:.15em .4em;font-family:SF Mono,Fira Code,Fira Mono,Menlo,Consolas,monospace;font-size:.875em}pre{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:1.5rem;padding:1rem 1.25rem;line-height:1.5;overflow-x:auto}pre code{background:0 0;padding:0;font-size:.85rem}table{border-collapse:collapse;width:100%;margin-bottom:1.5rem;font-size:.9rem}main img{max-width:100%;height:auto;margin:1.5rem auto;display:block}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem .75rem}th{background:var(--code-bg);font-weight:600}blockquote{border-left:3px solid var(--accent);background:var(--accent-light);border-radius:0 6px 6px 0;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.95rem}blockquote p:last-child{margin-bottom:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:1rem;padding:1.25rem}.contact-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-top:1.5rem;padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{margin-bottom:.4rem;font-size:.875rem;font-weight:600;display:block}.form-group input,.form-group textarea{border:2px solid var(--border);width:100%;color:var(--text);background:var(--bg);border-radius:6px;padding:.5rem .75rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.h-captcha{margin-bottom:1.25rem}#submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;height:2.5rem;padding:0 1.25rem;font-size:.875rem;font-weight:600;transition:background .15s;display:inline-flex}#submit-btn:hover:not(:disabled){background:#1d4ed8}#submit-btn:disabled{opacity:.5;cursor:not-allowed}.subscribe-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-top:.5rem;padding:1.25rem}.subscribe-row{gap:.5rem;display:flex}.subscribe-row input[type=email]{border:2px solid var(--border);color:var(--text);background:var(--bg);border-radius:6px;flex:1;padding:.5rem .75rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.subscribe-row input[type=email]:focus{border-color:var(--accent);outline:none}.subscribe-row button{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;transition:background .15s}.subscribe-row button:hover{background:#1d4ed8}.subscribe-note{color:var(--text-secondary);margin-top:.5rem;margin-bottom:0;font-size:.8rem}@media (width<=640px){.subscribe-row{flex-direction:column}}.site-footer{border-top:1px solid var(--border);text-align:center;color:var(--text-secondary);padding:2rem 1.5rem;font-size:.8rem}.site-footer a{color:var(--text-secondary)}.site-footer a:hover{color:var(--text)}@media (width<=768px){.sidebar{z-index:100;width:260px;transition:transform .25s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:99;background:#0000004d;display:none;position:fixed;inset:0}.sidebar-overlay.open{display:block}.mobile-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:50;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex;position:sticky;top:0}.content-area{margin-left:0}main{padding:1.5rem 1rem 3rem}h1{font-size:1.6rem}h2{font-size:1.2rem}html,body,.content-area{overflow-x:hidden}pre{max-width:100%;overflow-x:auto}table{max-width:100%;display:block;overflow-x:auto}img{max-width:100%;height:auto}}
