@font-face{font-family:Manrope;src:url(/fonts/Manrope-Variable.ttf) format("truetype");font-weight:200 800;font-display:swap}:root{--paper: #f4f5f0;--ink: #11212d;--lime: #ceff68;--blue: #3158f5;--card: #fafbf7;--border: #d7ddd7;--muted: #657279;--hover: #edf0e9;--ink-2: #263943;--red: #a43434;--amber: #705617;--green: #385c28;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--blue);outline-offset:3px}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}p{line-height:1.7}code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.muted{color:var(--muted)}.small{font-size:12px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.stack{display:grid;gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}@media(max-width:900px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.brand{display:inline-flex;align-items:center;line-height:1;font-size:27px;color:var(--ink)}.brand>img{display:block;width:6.4em;height:auto}.brand-compact>img{width:1.45em}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 16px;min-height:40px;border:1px solid var(--border);border-radius:4px;background:var(--card);color:var(--ink);font-size:12px;font-weight:700;line-height:1.4;white-space:nowrap;transition:background .15s,border-color .15s;text-decoration:none!important}.button:hover{background:var(--hover);border-color:#aeb9b0}.button.primary{background:var(--lime);border-color:var(--lime)}.button.primary:hover{background:#bcf14f;border-color:#bcf14f}.button.dark{background:var(--ink);color:var(--paper);border-color:var(--ink)}.button.dark:hover{background:var(--ink-2)}.button.danger{background:#a83232;color:#fff;border-color:#a83232}.button.small{min-height:32px;padding:6px 11px;font-size:11px}.text-link{display:inline-flex;gap:7px;align-items:center;background:none;border:0;padding:0;color:var(--blue);font-size:12px;font-weight:700}.eyebrow{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;display:flex;align-items:center;gap:8px}.notice{display:flex;align-items:flex-start;gap:11px;padding:14px 16px;border:1px solid var(--border);border-radius:4px;font-size:12px;line-height:1.7;background:var(--card)}.notice svg{margin-top:2px;flex-shrink:0}.notice.error{background:#fff1ef;border-color:#ecc8c4;color:#922f2c}.notice.info{background:#eef1fb;border-color:#d8dff8;color:#3a4e81}.notice.warning{background:#fff7e4;border-color:#eadbb1;color:var(--amber)}.notice.success{background:#edf7e8;border-color:#c9dfbb;color:var(--green)}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:700;border:1px solid var(--border);background:var(--card);white-space:nowrap}.badge:before{content:"";width:7px;height:7px;border-radius:1px;background:currentColor}.badge.good{color:var(--green);background:#edf7e8;border-color:#c9dfbb}.badge.warn{color:var(--amber);background:#fff7e4;border-color:#eadbb1}.badge.bad{color:var(--red);background:#fff1ef;border-color:#ecc8c4}.badge.info{color:#3a4e81;background:#eef1fb;border-color:#d8dff8}.badge.neutral{color:var(--muted)}.badge.neutral:before{background:transparent;border:1.5px solid currentColor}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--ink);color:var(--paper);padding:22px 14px;display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh}.sidebar .brand{padding:0 10px}.sidebar nav{display:grid;gap:2px}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:4px;color:#c8d0cd;font-size:13px;font-weight:600;text-decoration:none}.sidebar nav a:hover{background:#1c3040;color:var(--paper)}.sidebar nav a[aria-current=page]{background:var(--lime);color:var(--ink)}.sidebar .nav-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8796a0;font-weight:800;padding:0 10px;margin-top:6px}.sidebar .count{margin-left:auto;background:#2a3f4d;color:var(--paper);border-radius:3px;padding:0 6px;font-size:11px}.sidebar footer{margin-top:auto;font-size:12px;color:#a8b4b8;padding:0 10px;display:grid;gap:8px}.sidebar select{background:#1c3040;border:1px solid #36505f;color:var(--paper);border-radius:4px;padding:6px;width:100%}.main{padding:30px 40px 60px;max-width:1320px;width:100%}.page-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-head h1{font-size:30px;font-weight:700;margin:6px 0 0}.page-head p{margin:6px 0 0;color:var(--muted);font-size:13px;max-width:760px}.page-head .actions{margin-left:auto;display:flex;gap:10px}.mobile-bar{display:none}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;z-index:50;transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:none}.mobile-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--card);position:sticky;top:0;z-index:40}.main{padding:20px 16px 60px}}.card{background:var(--card);border:1px solid var(--border);border-radius:4px}.card>header{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.card>header h2,.card>header h3{font-size:15px;margin:0;font-weight:700}.card .body{padding:18px}.metric{padding:16px 18px}.metric .label{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.metric .value{font-size:26px;font-weight:700;letter-spacing:-.03em;margin-top:4px}.metric .hint{font-size:12px;color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:800;padding:10px 14px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:11px 14px;border-bottom:1px solid #e6eae4;vertical-align:top}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f1f3ec}.empty{padding:40px 20px;text-align:center;color:var(--muted);font-size:13px;display:grid;gap:10px;justify-items:center}.empty h3{color:var(--ink);font-size:16px;margin:0}dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;margin:0;font-size:13px}dl.kv dt{color:var(--muted);font-weight:600}dl.kv dd{margin:0;overflow-wrap:anywhere}.field{display:grid;gap:6px;font-size:12px;font-weight:700}.field .hint{font-weight:500;color:var(--muted)}.input,select.input,textarea.input{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:4px;background:#fff;font-size:13px;font-weight:500;min-height:40px}.input:focus{border-color:var(--blue)}fieldset{border:1px solid var(--border);border-radius:4px;padding:14px;margin:0}legend{font-size:12px;font-weight:800;padding:0 6px}.choice{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:4px;background:#fff;font-size:13px;cursor:pointer}.choice:has(input:checked){border-color:var(--ink);box-shadow:inset 3px 0 0 var(--lime)}.choice strong{display:block}.secret-once{background:var(--ink);color:var(--lime);padding:14px;border-radius:4px;font-family:ui-monospace,monospace;font-size:13px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}pre.code{background:var(--ink);color:var(--paper);padding:16px;border-radius:4px;font-size:12px;overflow-x:auto;line-height:1.6}dialog.modal{border:1px solid var(--border);border-radius:4px;padding:0;width:min(560px,calc(100% - 32px));background:var(--card);color:var(--ink)}dialog.modal::backdrop{background:#11212d66}dialog.modal header{padding:16px 20px;border-bottom:1px solid var(--border);font-weight:700;display:flex;align-items:center}dialog.modal .body{padding:20px;display:grid;gap:14px}dialog.modal footer{padding:14px 20px;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0}.timeline li{display:grid;grid-template-columns:14px 1fr auto;gap:12px;padding:8px 0;font-size:13px;position:relative}.timeline li:before{content:"";width:9px;height:9px;margin-top:5px;background:var(--ink);border-radius:1px}.timeline li.bad:before{background:var(--red)}.timeline li.good:before{background:#4f8a34}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%);max-width:calc(100% - 32px);padding:14px 17px;background:var(--ink);color:var(--paper);display:flex;gap:12px;align-items:center;border-radius:4px;z-index:200;font-size:13px}.toast.error{background:#6e1f1f}.loading{min-height:200px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:13px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skip-link{position:fixed;top:-60px;left:20px;padding:10px;background:var(--lime);color:var(--ink);z-index:100}.skip-link:focus{top:10px}.marketing{overflow:hidden}.marketing-nav{max-width:1424px;margin:auto;height:96px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:0 64px}.marketing-nav nav{display:flex;align-items:center;gap:28px}.marketing-nav nav>a{font-size:12px;font-weight:700;color:var(--ink)}.hero{max-width:1424px;margin:auto;padding:84px 64px 92px;display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center}.hero h1{font-size:clamp(42px,5.2vw,74px);font-weight:650;line-height:1.06;letter-spacing:-.06em;margin:24px 0 26px}.hero h1>span{color:var(--blue)}.hero p.lead{font-size:17px;color:#43525a;max-width:600px}.hero .row{margin-top:30px}.hero-panel{background:var(--ink);color:var(--paper);border-radius:4px;padding:28px;display:grid;gap:14px}.hero-panel .step{display:grid;grid-template-columns:28px 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid #2c4150;border-radius:4px;font-size:13px}.hero-panel .step b{color:var(--lime);font-size:12px}.hero-panel .step small{color:#a8b4b8;display:block;margin-top:2px}.hero-panel .pill{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:3px;background:#1c3040;color:var(--lime)}.band{border-top:1px solid var(--border)}.band-inner{max-width:1424px;margin:auto;padding:72px 64px}.band h2{font-size:clamp(28px,3vw,42px);font-weight:650;letter-spacing:-.05em;max-width:760px;margin-bottom:14px}.band .intro{color:var(--muted);max-width:720px;font-size:15px}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:40px;border-top:1px solid var(--border);border-left:1px solid var(--border)}.features article{padding:28px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.features h3{font-size:17px;margin:14px 0 8px}.features p{font-size:13px;color:#43525a;margin:0}.dark-band{background:var(--ink);color:var(--paper)}.dark-band .intro{color:#a8b4b8}.dark-band .features{border-color:#2c4150}.dark-band .features article{border-color:#2c4150}.dark-band .features p{color:#c8d0cd}.dark-band svg{color:var(--lime)}.stacks{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.stacks span{border:1px solid var(--border);border-radius:4px;padding:8px 12px;font-size:13px;font-weight:700;background:var(--card)}.site-footer{border-top:1px solid var(--border)}.site-footer .band-inner{padding:36px 64px;display:flex;gap:24px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}@media(max-width:900px){.marketing-nav{padding:0 16px;height:76px}.marketing-nav nav>a{display:none}.hero{grid-template-columns:1fr;padding:40px 16px 56px;gap:36px}.band-inner,.site-footer .band-inner{padding:48px 16px}.features{grid-template-columns:1fr}}.center-page{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.center-card{width:min(620px,100%)}
