/* The Third Lap account pages (signup, billing): one small stylesheet served from this origin (style-src 'self'; no inline styles).
   Claude, 26 Oct, from Gary's review of the post-payment page: phone-first, the setup steps first, plan management secondary. */
:root{--ink:#14181f;--muted:#5b6472;--line:#dde2e8;--bg:#f6f7f9;--card:#fff;--accent:#0b6bcb;--ok:#1b7f3b;--warn:#a15c00;}
@media (prefers-color-scheme:dark){:root{--ink:#e8ebf0;--muted:#a3abb7;--line:#2c333d;--bg:#0f1318;--card:#171c23;--accent:#5aa9ff;--ok:#5cc98a;--warn:#f0b35a;}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
main{max-width:640px;margin:0 auto;padding:24px 16px 48px;}
.brand{display:flex;gap:8px;align-items:baseline;color:var(--muted);font-size:14px;margin-bottom:8px}
.brand strong{color:var(--ink);font-size:16px}
h1{font-size:26px;line-height:1.25;margin:0 0 16px}
h2{font-size:18px;margin:0 0 8px}
p{margin:8px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin:16px 0}
.card.primary{border-color:var(--accent)}
button,.button{display:inline-block;font:inherit;font-weight:600;padding:10px 16px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;text-decoration:none;cursor:pointer;margin:4px 8px 4px 0;min-height:44px}
button:disabled{opacity:.45;cursor:not-allowed}
.secondary button,.secondary .button{background:transparent;color:var(--accent)}
input,select{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);max-width:100%;min-height:44px}
label{font-weight:600}
a{color:var(--accent)}
[hidden]{display:none!important}
ol.steps{list-style:none;padding:0;margin:12px 0;counter-reset:s}
ol.steps>li{counter-increment:s;position:relative;padding:4px 0 12px 40px;color:var(--muted)}
ol.steps>li::before{content:counter(s);position:absolute;left:0;top:2px;width:28px;height:28px;border-radius:50%;border:2px solid var(--line);text-align:center;line-height:24px;font-weight:700}
ol.steps>li.current{color:var(--ink)}
ol.steps>li.current::before{border-color:var(--accent);color:var(--accent)}
ol.steps>li.done{color:var(--ink)}
ol.steps>li.done::before{content:"\2713";border-color:var(--ok);background:var(--ok);color:#fff}
.code{font:600 22px/1.3 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.04em;background:var(--bg);border:1px dashed var(--line);border-radius:8px;padding:10px 12px;word-break:break-all}
.secondary{border-top:1px solid var(--line);margin-top:32px;padding-top:8px;color:var(--muted)}
.secondary h2{color:var(--ink)}
footer{margin-top:32px;font-size:14px;color:var(--muted)}
@media (max-width:420px){h1{font-size:22px}button,.button{width:100%;margin-right:0}}
