/* wy-fit.css — the offer card's own styling, shared by the two front doors
   that render it (#2233).

   `web/wy-fit.js` emits the markup and BOTH pages run it: the customer's door
   and the operator's review queue. Markup shared and styling copied would have
   made the preview resemble the offer rather than be it — and the drift would
   be invisible until a customer read something the reviewer never saw.

   Lifted verbatim from web/intake.html, which is where it was written and
   where it stays correct. Everything here uses tokens.css variables, so each
   page keeps its own ground and ink. */

.fit{display:none}
.fit.show{display:block;animation:rise .3s ease-out}
.fit-price{font-family:var(--font-serif);font-size:26px;line-height:1.2;padding:15px 0 3px;border-top:1px solid var(--rule)}
.fit-price .mo{font-size:17px;color:var(--ink-soft)}
.fit-days{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.fit-h{font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:15px 0 5px}
.fit-list{list-style:none;margin:0}
.fit-list li{padding:7px 0;font-size:14px;color:var(--ink-soft);display:flex;gap:9px;border-bottom:1px solid var(--rule);align-items:baseline}
.fit-list li:last-child{border-bottom:none}
.fit-in li::before{content:"\2713";color:var(--olive);font-size:13px;flex:none}
.fit-not li::before{content:"\25CB";color:var(--muted);font-size:11px;flex:none}
.fit-not li .adds{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--muted);flex:none;white-space:nowrap}
.fit-wait{padding:15px 0 3px;border-top:1px solid var(--rule)}
.fit-wait b{font-family:var(--font-serif);font-weight:400;font-size:21px;display:block;margin-bottom:7px}
.fit-wait p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.55}
.fit-wait.warn b{color:var(--coral)}
.fit-note{font-size:12.5px;color:var(--ink-soft);line-height:1.5;margin-top:13px;padding:10px 13px;background:var(--bg-deep);border-radius:var(--radius-sm)}
.fit-note.warn{border-left:2px solid var(--coral)}

/* THE TERMS (#2233) — what the monthly is for, how many rounds, how involved,
   and what it is built with. A price with none of these is a number with
   decoration, which is what a real quote looked like on 2026-09-12. */
.fit-terms li{align-items:flex-start}
.fit-terms li::before{content:"\2022";color:var(--accent);font-size:15px;flex:none;line-height:1.35}
.fit-terms i{opacity:.7;font-style:normal;font-size:12.5px}
.fit-stack{font-family:var(--font-mono);font-size:11px;color:var(--muted);white-space:nowrap}

/* THE WAY PAST A NO (#2254) — the band above, and what it would cover. Sits
   under the refusal note and reads as the next step rather than a second
   warning, so it takes the accent rule and not the coral one. */
.fit-up{font-size:12.5px;color:var(--ink-soft);line-height:1.5;margin-top:8px;padding:10px 13px;background:var(--bg-deep);border-radius:var(--radius-sm);border-left:2px solid var(--accent)}
.fit-up b{color:var(--ink);font-weight:600}
.fit-up i{font-family:var(--font-mono);font-size:11px;color:var(--muted);font-style:normal;white-space:nowrap}
