/* (c) 2025-2026 Asymmetric Effort, LLC. MIT LICENSE */
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#3b82f6;--color-primary-dark:#2563eb;--color-bg:#fff;--color-bg-subtle:#f8fafc;--color-bg-muted:#f1f5f9;--color-text:#0f172a;--color-text-muted:#64748b;--color-border:#e2e8f0;--color-dem:#3b82f6;--color-rep:#ef4444;--radius:8px;--max-width:1200px}[data-theme=dark]{--color-primary:#60a5fa;--color-primary-dark:#3b82f6;--color-bg:#0f172a;--color-bg-subtle:#1e293b;--color-bg-muted:#334155;--color-text:#f1f5f9;--color-text-muted:#94a3b8;--color-border:#334155}body{background:var(--color-bg);color:var(--color-text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}[data-theme=dark] .code-block{background:#0f172a;border:1px solid #334155}[data-theme=dark] .feature-card--clickable:hover{box-shadow:0 4px 16px #0006}[data-theme=dark] .dialog-panel{border-color:#475569;box-shadow:6px 8px 24px #00000080,2px 3px 8px #0000004d}[data-theme=dark] .preview-body svg text{fill:#e2e8f0}[data-theme=dark] .preview-body svg text[fill=\#fff],[data-theme=dark] .preview-body svg text[fill=\#ffffff],[data-theme=dark] .preview-body svg text[fill=white]{fill:#fff}[data-theme=dark] .preview-body svg line[stroke=\#374151]{stroke:#94a3b8}[data-theme=dark] .preview-body svg line[stroke=\#e5e7eb]{stroke:#334155}.dark-mode-toggle{border:1px solid var(--color-border);background:var(--color-bg-subtle);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-left:auto;font-size:16px;transition:background .15s,border-color .15s;display:flex}.dark-mode-toggle:hover{background:var(--color-bg-muted);border-color:var(--color-primary)}.nav-bar{background:var(--color-bg);border-bottom:1px solid var(--color-border);z-index:100;padding:0 24px;position:sticky;top:0}.nav-bar-inner{max-width:var(--max-width);align-items:center;gap:32px;height:56px;margin:0 auto;display:flex}.nav-logo{color:var(--color-primary);align-items:center;gap:8px;font-size:20px;font-weight:700;text-decoration:none;display:flex}.nav-links{gap:8px;display:flex}.nav-link{border-radius:var(--radius);color:var(--color-text-muted);padding:6px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.nav-link:hover{background:var(--color-bg-muted);color:var(--color-text)}.nav-link.active{background:var(--color-primary);color:#fff}.main-content{max-width:var(--max-width);margin:0 auto;padding:32px 24px}.hero{text-align:center;padding:80px 0 48px}.hero h1{margin-bottom:16px;font-size:48px;font-weight:800}.hero h1 span{color:var(--color-primary)}.hero p{color:var(--color-text-muted);max-width:600px;margin:0 auto 32px;font-size:20px}.hero-stats{justify-content:center;gap:48px;margin-top:40px;display:flex}.hero-stat{text-align:center}.hero-stat-value{color:var(--color-primary);font-size:32px;font-weight:700}.hero-stat-label{color:var(--color-text-muted);font-size:14px}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin:48px 0;display:grid}.feature-card{border:1px solid var(--color-border);border-radius:var(--radius);padding:24px;transition:box-shadow .2s,border-color .2s}.feature-card--clickable{cursor:pointer}.feature-card--clickable:hover{border-color:var(--color-primary);box-shadow:0 4px 16px #0000001a}.feature-card h3{margin-bottom:8px;font-size:18px}.feature-card p{color:var(--color-text-muted);font-size:14px}.feature-card-cta{color:var(--color-primary);margin-top:12px;font-size:13px;font-weight:600;display:inline-block}.article-section{margin-bottom:24px}.article-heading{color:var(--color-text);margin-bottom:8px;font-size:17px;font-weight:700}.article-body{color:var(--color-text-muted);font-size:15px;line-height:1.7}.section{margin:48px 0}.section h2{margin-bottom:24px;font-size:28px;font-weight:700}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:10px 14px}.data-table th{background:var(--color-bg-subtle);font-weight:600}.data-table tr:hover td{background:var(--color-bg-muted)}.stat-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px;display:grid}.stat-card{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px}.stat-card-label{color:var(--color-text-muted);margin-bottom:4px;font-size:13px}.stat-card-value{font-size:28px;font-weight:700}.stat-card-sub{color:var(--color-text-muted);margin-top:4px;font-size:12px}.bar-chart{align-items:stretch;gap:12px;padding-top:16px;display:flex}.bar-chart-col{flex-direction:column;flex:1;align-items:center;display:flex}.bar-chart-value{flex-shrink:0;margin-bottom:4px;font-size:12px;font-weight:600}.bar-chart-bar-wrap{flex:1;justify-content:center;align-items:flex-end;min-height:160px;display:flex}.bar-chart-bar{border-radius:4px 4px 0 0;width:100%;max-width:60px;min-height:2px;transition:height .3s}.bar-chart-label{color:var(--color-text-muted);text-align:center;flex-shrink:0;margin-top:6px;font-size:11px}.accordion{flex-direction:column;gap:2px;display:flex}.accordion-section{border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.accordion-header{background:var(--color-bg-subtle);cursor:pointer;text-align:left;border:none;justify-content:space-between;align-items:center;width:100%;padding:14px 18px;font-size:15px;transition:background .15s;display:flex}.accordion-header:hover,.accordion-header--open{background:var(--color-bg-muted)}.accordion-header-left{align-items:center;gap:10px;display:flex}.accordion-chevron{color:var(--color-text-muted);width:14px;font-size:10px}.accordion-title{color:var(--color-text);font-weight:600}.accordion-subtitle{color:var(--color-text-muted);font-size:13px;font-weight:400}.accordion-body{padding:16px 18px}.preview-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.preview-card{border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.preview-header{background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);padding:12px 16px;font-size:14px;font-weight:600}.preview-body{padding:20px}.loading{text-align:center;color:var(--color-text-muted);padding:48px;font-size:16px}.error{text-align:center;color:#ef4444;padding:48px;font-size:16px}.code-block{color:#e2e8f0;border-radius:var(--radius);white-space:pre;background:#1e293b;padding:16px 20px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;line-height:1.5;overflow-x:auto}.demo-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex}.demo-toggle-track{background:#cbd5e1;border-radius:12px;width:44px;height:24px;transition:background .2s;position:relative}.demo-toggle-track.on{background:var(--color-primary)}.demo-toggle-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.demo-toggle-track.on .demo-toggle-thumb{transform:translate(20px)}.dialog-backdrop{z-index:50;background:#0006;justify-content:center;align-items:flex-start;padding:24px;display:flex;position:fixed;inset:56px 0 0;overflow-y:auto}.dialog-panel{background:var(--color-bg);border:1px solid var(--color-border);width:100%;max-width:var(--max-width);border-bottom:3px solid #00000026;border-right:2px solid #0000001a;border-radius:12px;max-height:calc(100vh - 104px);animation:.2s ease-out dialog-in;overflow-y:auto;box-shadow:6px 8px 24px #00000040,2px 3px 8px #0000001a}.dialog-header{border-bottom:1px solid var(--color-border);background:var(--color-bg);z-index:1;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.dialog-title{margin:0;font-size:20px;font-weight:700}.dialog-close{cursor:pointer;color:#fff;background:#dc2626;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;transition:background .15s;display:flex}.dialog-close:hover{background:#b91c1c}.dialog-body{padding:24px}@keyframes dialog-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}body:has(.dialog-backdrop){overflow:hidden}.nav-hamburger{cursor:pointer;width:44px;height:44px;color:var(--color-text);border-radius:var(--radius);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:24px;display:none}@media (width<=767px){.nav-bar{padding:0 12px}.nav-bar-inner{gap:8px}.nav-hamburger{display:flex}.nav-links{background:var(--color-bg);border-bottom:1px solid var(--color-border);z-index:99;flex-direction:column;padding:8px 0;display:none;position:absolute;top:56px;left:0;right:0;box-shadow:0 4px 12px #0000001a}.nav-links.nav-links--open{display:flex}.nav-link{align-items:center;min-height:44px;padding:12px 20px;font-size:16px;display:flex}.hero{padding:40px 0 24px}.hero h1{font-size:28px}.hero p{font-size:16px}.hero-stats{flex-wrap:wrap;gap:20px}.hero-stat-value{font-size:24px}.features-grid{grid-template-columns:1fr;gap:16px;margin:24px 0}.feature-card{min-height:44px}.main-content{padding:16px 12px}.section{margin:24px 0}.section h2{font-size:22px}.dialog-backdrop{align-items:stretch;padding:0;top:56px}.dialog-panel{border-radius:0;max-width:100%;min-height:calc(100vh - 56px);max-height:none}.dialog-header{border-radius:0;padding:12px 16px}.dialog-body{padding:16px}.dialog-close{width:44px;height:44px;font-size:22px}.preview-grid,.stat-cards{grid-template-columns:1fr}.data-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.bar-chart{gap:6px}.bar-chart-bar-wrap{min-height:100px}.dark-mode-toggle{width:44px;height:44px;font-size:18px}.accordion-header{min-height:44px;padding:14px 16px}.code-block{padding:12px;font-size:12px}.demo-layout-row{flex-direction:column!important}.demo-sidebar{width:100%!important;min-width:0!important;max-width:100%!important}.footer-inner{text-align:center!important;flex-direction:column!important}.footer-section{text-align:center!important;width:100%!important;min-width:0!important}a,button,[role=button],input,select,textarea{min-width:44px;min-height:44px}}@media (width>=768px) and (width<=1024px){.hero h1{font-size:36px}.hero p{font-size:18px}.features-grid,.preview-grid,.stat-cards{grid-template-columns:repeat(2,1fr)}.main-content{padding:24px 20px}.dialog-panel{max-width:90%}}
