/* Full credit application (templates/pages/credit-app-full.html). Uses the site's theme colors and fonts. */
.ca{--ca-surface:#fff;--ca-ink:var(--dark,#161a1d);--ca-muted:#5a6573;--ca-line:#d6dbe1;--ca-field:#f8f9fb;
  --ca-accent:var(--accent,#c4420f);--ca-primary:var(--primary,#14213d);--ca-danger:#c0262d;--ca-ok:#24803a;
  display:flex;flex-direction:column;gap:16px;counter-reset:casec;max-width:880px;margin:0 auto;color:var(--ca-ink)}
.ca *{box-sizing:border-box}
.ca-bar{position:sticky;top:8px;z-index:5;background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:14px;box-shadow:0 2px 10px rgba(0,0,0,.06)}
.ca-track{flex:1;height:6px;border-radius:3px;background:var(--ca-line);overflow:hidden}
.ca-fill{height:100%;width:0;background:var(--ca-accent);transition:width .25s}
.ca-count{font-family:var(--font-heading);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.ca-sec{background:var(--ca-surface);border:1px solid var(--ca-line);border-radius:10px;padding:20px 20px 22px;counter-increment:casec}
.ca-sec>h2{font-family:var(--font-heading);font-size:1.35rem;text-transform:uppercase;letter-spacing:.03em;display:flex;align-items:center;gap:10px;margin:0 0 4px}
.ca-sec>h2::before{content:counter(casec);font-size:.85rem;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ca-primary);color:#fff;flex:none}
.ca-lede{color:var(--ca-muted);font-size:.9rem;margin:0 0 14px}
.ca-sub{font-family:var(--font-heading);font-weight:600;font-size:.82rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ca-muted);margin:20px 0 10px;padding-top:14px;border-top:1px dashed var(--ca-line)}
.ca-sub:first-of-type{border-top:0;padding-top:0;margin-top:10px}
.ca-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px 14px}
.ca .s2{grid-column:span 2}.ca .s3{grid-column:span 3}.ca .s4{grid-column:span 4}.ca .s5{grid-column:span 5}.ca .s6{grid-column:span 6}.ca .s8{grid-column:span 8}.ca .s12{grid-column:span 12}
@media (max-width:640px){.ca .s2,.ca .s3,.ca .s4{grid-column:span 6}.ca .s5,.ca .s6,.ca .s8{grid-column:span 12}.ca-sec{padding:16px}}
.ca-f{display:flex;flex-direction:column;gap:4px;min-width:0}
.ca-f>label{font-family:var(--font-heading);font-weight:600;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.ca-f .req{color:var(--ca-accent);margin-left:2px}
.ca-f .opt{color:var(--ca-muted);font-weight:500;text-transform:none;letter-spacing:0;font-family:var(--font-body);font-size:.75rem;margin-left:4px}
.ca input,.ca select{font:inherit;color:var(--ca-ink);background:var(--ca-field);border:1px solid var(--ca-line);border-radius:6px;padding:9px 10px;width:100%;min-width:0}
.ca input:focus,.ca select:focus{outline:2px solid var(--ca-accent);outline-offset:1px}
.ca-f.bad input,.ca-f.bad select{border-color:var(--ca-danger);background:#fdf1f1}
.ca-f .err{color:var(--ca-danger);font-size:.78rem}
.ca-f .hint{color:var(--ca-muted);font-size:.76rem}
.ca .mono{font-family:ui-monospace,Menlo,Consolas,monospace;letter-spacing:.04em}
.ca-ssn{position:relative}
.ca-ssn button{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--ca-muted);font-weight:600;font-size:.75rem;cursor:pointer;padding:4px 6px}
.ca-ssn input{padding-right:52px}
.ca-choice{display:flex;flex-wrap:wrap;gap:10px}
.ca-card{flex:1 1 220px;display:flex;gap:10px;align-items:flex-start;border:1px solid var(--ca-line);border-radius:8px;padding:12px 14px;cursor:pointer;background:var(--ca-field)}
.ca-card:has(input:checked){border-color:var(--ca-accent);box-shadow:inset 0 0 0 1px var(--ca-accent)}
.ca-card input{width:auto;margin-top:3px;accent-color:var(--ca-accent)}
.ca-card b{font-family:var(--font-heading);font-size:1.05rem;display:block}
.ca-card span{color:var(--ca-muted);font-size:.82rem}
.ca details.ca-more{margin-top:16px;border:1px dashed var(--ca-line);border-radius:8px;padding:0 14px}
.ca-more>summary{cursor:pointer;padding:12px 0;font-family:var(--font-heading);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.85rem;color:var(--ca-muted)}
.ca-more[open]{padding-bottom:14px}
.ca-note{font-size:.78rem;color:var(--ca-muted);margin:10px 0 0}
.ca-rows{display:flex;flex-direction:column;gap:12px}
.ca-row{border:1px solid var(--ca-line);border-radius:8px;padding:12px;background:var(--ca-field)}
.ca-row .rt{font-family:var(--font-heading);font-weight:600;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ca-muted);margin-bottom:8px}
.ca-row input,.ca-row select{background:var(--ca-surface)}
.ca-add{font-family:var(--font-heading);font-weight:600;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--ca-line);background:none;color:var(--ca-ink);border-radius:6px;padding:9px 14px;cursor:pointer;margin-top:10px;align-self:flex-start}
.ca-check{display:flex;gap:10px;align-items:flex-start;margin:12px 0;font-size:.88rem;color:var(--ca-ink);cursor:pointer}
.ca-check input{width:auto;margin-top:4px;accent-color:var(--ca-accent);flex:none}
.ca-check.bad{color:var(--ca-danger)}
.ca-legal{font-size:.8rem;color:var(--ca-muted);max-width:75ch}
.ca-car{display:flex;gap:14px;align-items:center;margin-top:12px;border:1px solid var(--ca-line);border-radius:8px;padding:10px;background:var(--ca-field)}
.ca-car img{width:120px;height:80px;object-fit:cover;border-radius:6px;flex:none;background:var(--ca-line)}
.ca-car b{font-family:var(--font-heading);font-size:1.1rem;display:block}
.ca-car span{color:var(--ca-muted);font-size:.85rem}
.ca-sigs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:14px}
.ca-sig{display:flex;flex-direction:column;gap:6px;min-width:0}
.ca-sig canvas{width:100%;height:150px;border:1px solid var(--ca-line);border-radius:6px;background:#fff;touch-action:none;cursor:crosshair}
.ca-sig.bad canvas{border-color:var(--ca-danger)}
.ca-sigrow{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--ca-muted)}
.ca-sigrow button{border:0;background:none;color:var(--ca-primary);font-weight:600;font-size:.78rem;cursor:pointer}
.ca-alert{border:1px solid var(--ca-danger);color:var(--ca-danger);border-radius:8px;padding:10px 14px;font-size:.9rem;background:#fff}
.ca-submit{width:100%;font-size:1.1rem;padding:14px 22px}
.ca-done{background:#fff;border:1px solid var(--ca-line);border-radius:10px;padding:32px 24px;text-align:center;max-width:880px;margin:0 auto}
.ca-done .tick{width:54px;height:54px;border-radius:50%;background:var(--ca-ok,#24803a);color:#fff;display:grid;place-items:center;margin:0 auto 14px;font-size:1.8rem;font-weight:700}
.ca-done p{color:#5a6573;max-width:55ch;margin:6px auto}
.ca-editnote{background:#fff8e1;border:1px solid #f0d58a;border-radius:8px;padding:10px 14px;font-size:.88rem}
@media (prefers-reduced-motion:reduce){.ca *{transition:none!important}}
