:root{--bg:#ffffff;--surface:#ffffff;--ink:#0e0f13;--ink-2:#5b6170;--line:#e4e6eb;--accent:#ffc21a;--accent-ink:#3d2d00;--good:#1f9d55;--warn:#c97a00;--bad:#d33a2c;--radius:14px;--shadow:0 1px 2px rgb(14 15 19/6%),0 8px 24px rgb(14 15 19/6%);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Inter,Roboto,sans-serif;color:var(--ink);color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}a{color:inherit}.shell{max-width:1120px;margin:0 auto;padding:16px 20px 64px}.topbar{gap:12px;justify-content:space-between;flex-wrap:wrap}.brand,.topbar{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;font-weight:700}.brand small{color:var(--ink-2);font-weight:500}.nav{display:flex;gap:4px;flex-wrap:wrap}.nav a{padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--ink-2);font-size:14px}.nav a:hover,.nav a[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.island{margin:14px auto 6px;width:-moz-fit-content;width:fit-content;max-width:100%;display:flex;align-items:center;gap:10px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:13px;transition:padding .25s ease}.island:hover{padding:12px 22px}.dot{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 0 4px rgb(31 157 85/25%)}.dot.warn{background:var(--warn);box-shadow:0 0 0 4px rgb(201 122 0/25%)}.dot.bad{background:var(--bad);box-shadow:0 0 0 4px rgb(211 58 44/25%)}.hero{margin:24px 0;padding:28px;border-radius:20px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.hero h1{margin:0 0 8px;font-size:clamp(22px,3vw,30px);letter-spacing:-.01em}.hero p{margin:0;color:var(--ink-2);max-width:640px;line-height:1.5}.grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card h2{margin:0 0 12px;font-size:16px}.stat{font-size:30px;font-weight:700;letter-spacing:-.02em}.stat-label{color:var(--ink-2);font-size:13px}.steps{list-style:none;padding:0;margin:0;display:grid;grid-gap:8px;gap:8px}.steps li{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.badge{font-size:12px;padding:3px 9px;border-radius:999px;background:var(--line);color:var(--ink-2)}.badge.ok{background:rgb(31 157 85/14%);color:var(--good)}.badge.bad{background:rgb(211 58 44/14%);color:var(--bad)}.badge.warn{background:rgb(201 122 0/14%);color:var(--warn)}table{width:100%;border-collapse:collapse;font-size:14px}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--ink-2);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.04em}td.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.stack{display:grid;grid-gap:14px;gap:14px;margin-top:14px}label{display:grid;grid-gap:6px;gap:6px;font-size:14px;font-weight:500}input,select,textarea{font:inherit;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn,button{font:inherit;font-weight:600;padding:10px 16px;border-radius:10px;border:0;background:var(--ink);color:var(--bg);cursor:pointer;text-decoration:none;display:inline-block}.btn.secondary,button.secondary{background:var(--line);color:var(--ink)}.copy{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;padding:10px 12px;background:var(--bg);border:1px dashed var(--line);border-radius:10px;word-break:break-all}.muted{color:var(--ink-2)}.notice{padding:12px 14px;border-radius:10px;background:rgb(31 157 85/12%);color:var(--good)}.notice.warn{background:rgb(201 122 0/14%);color:var(--warn)}.notice.bad{background:rgb(211 58 44/12%);color:var(--bad)}.prose{line-height:1.6;max-width:760px}.prose h2{margin-top:28px}label.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}label.check input{margin-top:3px}fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin:0;background:var(--surface);display:grid;grid-gap:14px;gap:14px}legend{font-weight:700;padding:0 6px}.hint{font-weight:400}.hint,.issues{color:var(--ink-2);font-size:13px}.issues{margin:0;padding-left:18px}@media (max-width:640px){.hide-sm{display:none}.shell{padding:12px 16px 48px}}