/* Onboarding checklist (app/onboarding.js). Uses app.css v2 tokens; light + dark follow them. */
.ob h2{margin:0 0 12px}
.ob-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.ob-step{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start}
.ob-ico{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--surface-2);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);font:700 14px/1 var(--body);font-variant-numeric:tabular-nums}
.ob-ico svg{width:18px;height:18px}
.ob-ico.ok{background:var(--green-soft);color:var(--green);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 18%,transparent)}
.ob-ico.now{background:var(--primary);color:var(--on-primary);box-shadow:0 0 0 4px var(--accent-soft)}
.ob-ico.warn{background:var(--today-soft);color:var(--today);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--today) 18%,transparent)}
.ob-body{min-width:0;padding-top:4px}
.ob-body>b{display:block;font:600 16px/22px var(--body);letter-spacing:-.008em}
.ob-body .meta{display:block;margin-top:2px}
.ob-done .ob-body>b,.ob-live .ob-body>b{color:var(--text)}
.ob-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ob-actions .btn{flex:1 1 140px}
.ob-note{margin-top:8px;padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--hair);font:500 14px/20px var(--body)}
.ob-note.warn{background:var(--today-soft);border-color:color-mix(in srgb,var(--today) 20%,transparent)}
.ob-reach{margin-top:18px;padding-top:14px;border-top:1px solid var(--hair)}
.ob-reach .seg{margin:10px 0 0}
.ob-reach .meta-inline{color:var(--muted);font:500 13px/18px var(--body)}
.cov-test{margin-top:12px}
