:root{--blue:#1269bb;--navy:#091e38;--ink:#132a42;--line:#e2eaf3;--muted:#60748b} body{background:linear-gradient(180deg,#f8fbfe 0%,#eff4fa 100%);min-height:100vh}button,input,select{font-family:Inter,sans-serif}button:disabled{opacity:.45;cursor:not-allowed}.ff-hero{border-radius:0 0 28px 28px}.ff-hero-side{background:linear-gradient(135deg,#0a2b50,#0f5e9c);color:white;border-radius:22px;padding:26px;max-width:300px;box-shadow:0 25px 50px #0c457433}.ff-hero-side strong{display:block;font:800 24px Montserrat}.ff-hero-side span{display:block;margin:13px 0;line-height:1.65;font-size:13px}.ff-hero-side small{color:#afcde8;font-size:11px}.ff-intro-note{display:flex;align-items:center;gap:13px;padding:18px 22px;background:#eaf3fc;border-radius:16px;border:1px solid #d4e7f9;margin:0 0 22px}.ff-step-dot{display:grid;place-items:center;background:#0d61b8;color:white;width:35px;height:35px;border-radius:50%;font-weight:800}.ff-intro-note p{margin:4px 0 0;color:#627a93;font-size:12px}.ff-pills{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}.ff-pills>button,.ff-pills>label{background:#f6faff;color:#44617c;border:1px solid #d4e1ec;border-radius:50px;padding:12px 17px;font-size:12px;font-weight:750;cursor:pointer}.ff-pills .on{background:#0a315a;color:white;border-color:#0a315a}.ff-pills label:has(input:checked){border-color:#0a66c0;background:#e9f3fd;color:#0b559c}.ff-pills label input{accent-color:#0a66c0}.ff-big-field{background:linear-gradient(135deg,#f4f9ff,#edf5fe);padding:22px;border-radius:19px;border:1px solid #dbeafd;margin-bottom:22px}.ff-big-field>label{display:block;font-size:12px;font-weight:800;color:#315473}.ff-slider-value{display:flex;align-items:baseline;gap:8px;margin:15px 0}.ff-slider-value strong{font:800 clamp(29px,3vw,38px) Montserrat;color:#082d55;letter-spacing:-.045em}.ff-slider-value small{color:#65819c}.ff-slider-ends{display:flex;justify-content:space-between;color:#8396a9;font-size:10px;margin-top:6px}input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:7px;background:linear-gradient(90deg,#155fab,#b0cde8);border-radius:10px;cursor:pointer;margin:13px 0}input[type=range]::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:5px solid #0b65c1;box-shadow:0 2px 7px #0c487955}input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:white;border:5px solid #0b65c1}.ff-slider-box{border-bottom:1px solid #e5edf5;padding-bottom:20px;margin-bottom:18px}.ff-range-head{display:flex;justify-content:space-between;align-items:center;color:#2b4762;font-size:12px;font-weight:700}.ff-range-head b{font:800 18px Montserrat;color:#135eac}.ff-slider-box>small{font-size:11px;color:#6b849c}.ff-car-choice{border:1px solid #e1eaf5;border-radius:16px;padding:17px;margin-bottom:20px}.ff-car-choice select{margin-top:9px}.ff-toggle{display:flex;align-items:start;gap:10px;margin:12px 0 20px;font-size:12px;line-height:1.55;color:#304965;font-weight:650}.ff-toggle input{margin:2px 0 0;accent-color:#0b6dcc}.ff-results{position:sticky;top:15px}.ff-result-hero{background:linear-gradient(130deg,#071a31,#14426f);color:white;padding:28px;border-radius:20px;margin-bottom:25px;display:grid;gap:12px}.ff-result-hero span{color:#bfd7ed;font-size:12px}.ff-result-hero strong{font:800 clamp(24px,2.7vw,37px) Montserrat;letter-spacing:-.035em}.ff-result-hero small{color:#aecae3;font-size:11px}.ff-hint{font-size:12px;color:#3c6084;background:#f0f7ff;border-radius:11px;padding:15px;line-height:1.65}.ff-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.ff-button-link{display:inline-flex;text-decoration:none;align-items:center;justify-content:center}.ff-discover{margin-top:24px}.ff-discover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.ff-auto-card{border:1px solid #deebf6;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 30px #132b4310}.ff-auto-card>img,.ff-photo-empty{width:100%;height:177px;object-fit:cover;background:linear-gradient(125deg,#dfe9f2,#b8cce0)}.ff-photo-empty{display:grid;place-items:center;font-weight:800;color:#6988a4}.ff-auto-info{padding:18px}.ff-auto-info small{font-size:10px;color:#65809d;text-transform:uppercase;letter-spacing:.06em}.ff-auto-info h3{font:800 19px Montserrat;margin:6px 0}.ff-auto-info p{color:#5e748b;font-size:11px;min-height:15px}.ff-price-line{display:flex;justify-content:space-between;gap:5px;flex-wrap:wrap;margin:12px 0}.ff-price-line strong{color:#0b529b;font-size:14px}.ff-price-line span{color:#7a8da0;font-size:11px}.ff-match{font-size:10px;display:inline-block;border-radius:40px;padding:7px 10px;background:#e7f7ec;color:#177048}.ff-match.near{background:#fff5e3;color:#9e661d}.ff-auto-actions{display:flex;gap:9px;margin-top:14px;align-items:center}.ff-auto-actions button,.ff-auto-actions a{border:1px solid #bbd4ec;border-radius:8px;background:#f6faff;color:#1162ac;text-decoration:none;font-size:11px;font-weight:750;padding:10px;cursor:pointer}.ff-spouse{padding:16px;background:#f0f7ff;border-radius:15px;margin:12px 0 20px}.ff-smart-card{background:linear-gradient(160deg,#fff,#f1f8ff)}.ff-qic-status{background:#eaf2ff;color:#164f91;border-radius:12px;padding:16px;font-weight:800;margin-bottom:20px}.ff-qic-status.pre_eligible{background:#e8f8ef;color:#126b43}.ff-qic-status.out_of_range{background:#fff2e4;color:#955915}.ff-insights{display:grid;gap:10px;margin:23px 0}.ff-insight{border:1px solid #dfeaf6;background:#fff;padding:16px;border-radius:13px}.ff-insight strong{color:#143f69;font-size:13px}.ff-insight p{font-size:12px;color:#516c83;line-height:1.6}.ff-compact-summary{display:grid;grid-template-columns:1fr 1fr;gap:15px}.ff-compact-summary>div{padding:13px 0;border-bottom:1px solid #e4edf5}.ff-compact-summary small{display:block;color:#7790a8;font-size:11px;margin-bottom:7px}.ff-compact-summary strong{font-size:13px;color:#1e4262}.ff-empty{padding:22px;border:1px dashed #c5d9eb;border-radius:13px;color:#647e97;background:#f7faff;font-size:12px;grid-column:1/-1;line-height:1.6}.ff-discover-grid:empty{min-height:150px}.ff-auto-info .ff-button-link{background:white}@media(max-width:1060px){.ff-discover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-results{position:static}}@media(max-width:700px){.ff-hero-side{display:none}.ff-discover-grid{grid-template-columns:1fr}.ff-auto-card>img,.ff-photo-empty{height:210px}.ff-compact-summary{grid-template-columns:1fr}.ff-actions{flex-direction:column}.ff-actions .primary,.ff-actions .secondary{width:100%;justify-content:center}.tabs{white-space:nowrap;width:100%}}[hidden]{display:none!important}

/* Finance Flex — Discover-first cockpit */
.ff-mobile-budget{display:none}
#panel-sim .ff-intro-note{margin-bottom:10px;padding:8px 13px}
#panel-sim .ff-intro-note .ff-step-dot{width:25px;height:25px;font-size:12px}
#panel-sim .ff-intro-note p{margin:0}
#panel-sim .ff-explore-layout{grid-template-columns:minmax(300px,39fr) minmax(0,61fr);gap:16px;align-items:start}
#panel-sim .ff-builder{padding:18px}
#panel-sim .ff-builder>.section-head{margin-bottom:10px}
#panel-sim .ff-builder>.section-head h2{font-size:18px;margin:4px 0}
#panel-sim .ff-builder .ff-pills{gap:6px;margin-bottom:10px}
#panel-sim .ff-builder .ff-pills>button{flex:1;min-width:0;padding:9px 10px;font-size:10px}
#panel-sim .ff-big-field{padding:13px 15px;margin-bottom:12px;border-radius:13px}
#panel-sim .ff-slider-value{margin:4px 0}
#panel-sim .ff-slider-value strong{font-size:29px}
#panel-sim .ff-big-field .field{margin-top:7px!important}
#panel-sim .ff-big-field .field input{min-height:34px}
#panel-sim .ff-slider-box{padding-bottom:9px;margin-bottom:10px}
#panel-sim .ff-range-head b{font-size:14px}
#panel-sim .ff-slider-box>small{font-size:10px}
#panel-sim .ff-toggle{margin:8px 0 10px}
#panel-sim #calculate{padding:10px 13px;min-height:42px}
#panel-sim .ff-advanced{margin:8px 0;border:1px solid #dae8f5;border-radius:11px;background:#f9fbff}
#panel-sim .ff-advanced>summary{display:flex;align-items:center;gap:6px;list-style:none;padding:9px 12px;cursor:pointer;font-size:11px;font-weight:750;color:#143c65}
#panel-sim .ff-advanced>summary::-webkit-details-marker{display:none}
#panel-sim .ff-advanced>summary:after{content:'⌄';font-size:15px;margin-left:auto}
#panel-sim .ff-advanced[open]>summary:after{content:'⌃'}
#panel-sim .ff-advanced>summary small{font-size:10px;color:#6b8096;font-weight:500}
#panel-sim .ff-advanced .ff-car-choice{margin:0 8px 9px;padding:9px}
#panel-sim .ff-advanced .ff-pills label{font-size:10px;padding:8px}
#panel-sim .ff-bank-details .field{padding:0 12px 12px}
#panel-sim .ff-market-panel{display:grid;align-content:start;gap:11px;min-width:0}
#panel-sim .ff-results{position:static;padding:12px 15px}
#panel-sim .ff-results>.section-head{display:flex;gap:11px;align-items:center;margin-bottom:7px}
#panel-sim .ff-results>.section-head .eyebrow{font-size:10px}
#panel-sim .ff-results>.section-head h2{font-size:15px;margin:0}
#panel-sim .ff-result-hero{padding:11px 13px;margin-bottom:7px;grid-template-columns:1fr 1fr;gap:5px 12px;border-radius:13px;align-items:center}
#panel-sim .ff-result-hero>div{display:grid;gap:3px}
#panel-sim .ff-result-hero strong{font-size:clamp(18px,1.8vw,27px);line-height:1.1;overflow-wrap:anywhere}
#panel-sim .ff-result-hero .ff-cap-block{padding-left:10px;border-left:1px solid #ffffff36}
#panel-sim .ff-result-hero small{grid-column:1/-1;font-size:10px}
#panel-sim .ff-finance-details{border-bottom:1px solid #e2ebf5}
#panel-sim .ff-finance-details>summary{padding:5px 0 8px;cursor:pointer;font-size:11px;color:#1269bb;font-weight:700}
#panel-sim .ff-finance-details .stats{margin:5px 0 10px}
#panel-sim .ff-hint{padding:7px 10px;margin:8px 0;font-size:11px;line-height:1.4}
#panel-sim .ff-actions{gap:7px;margin-top:7px}
#panel-sim .ff-actions>button{padding:8px 11px;min-height:34px;font-size:11px}
#panel-sim .ff-results>.footnote{font-size:9px;line-height:1.3;margin:8px 0 0}
#panel-sim .ff-discover{margin:0;padding:15px}
#panel-sim .ff-discover .section-head{margin-bottom:10px}
#panel-sim .ff-discover .section-head h2{font-size:18px;margin:3px 0}
#panel-sim .ff-discover .section-head p{font-size:10px;line-height:1.35}
#panel-sim .ff-match-count{display:block;margin:5px 0;color:#1269bb;font-size:11px}
#panel-sim .ff-discover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
#panel-sim .ff-auto-card>img,#panel-sim .ff-photo-empty{height:115px}
#panel-sim .ff-auto-info{padding:10px}
#panel-sim .ff-auto-info h3{font-size:15px;margin:3px 0}
#panel-sim .ff-auto-info p{margin:2px 0 8px}
#panel-sim .ff-auto-actions button,#panel-sim .ff-auto-actions a{font-size:10px;padding:7px}
#panel-sim .ff-empty{padding:15px;line-height:1.5}
#panel-sim .ff-empty-link{display:inline-block;margin-top:8px;color:#0868b8;font-weight:750}
@media(min-width:951px){
.shell:has(#panel-sim:not([hidden]))>.ff-hero{padding-top:14px;padding-bottom:14px;gap:16px}
.shell:has(#panel-sim:not([hidden]))>.ff-hero h1{font-size:clamp(26px,2.3vw,37px);line-height:1.1;margin-bottom:7px}
.shell:has(#panel-sim:not([hidden]))>.ff-hero p{font-size:12px;line-height:1.45}
.shell:has(#panel-sim:not([hidden]))>.ff-hero .ff-hero-side{padding:12px 16px}
.shell:has(#panel-sim:not([hidden]))>.ff-hero .ff-hero-side strong{font-size:17px}
.shell:has(#panel-sim:not([hidden]))>.ff-hero .ff-hero-side span{font-size:11px;line-height:1.4;margin:5px 0}
.shell:has(#panel-sim:not([hidden]))>.tabs{margin-bottom:9px;padding:4px}
.shell:has(#panel-sim:not([hidden]))>.tabs button{padding:9px 14px;font-size:11px}
}
@media(max-width:1100px){#panel-sim .ff-explore-layout{grid-template-columns:minmax(260px,43fr) minmax(0,57fr)}}
@media(max-width:950px){#panel-sim .ff-explore-layout{grid-template-columns:1fr}#panel-sim .ff-discover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){
.ff-mobile-budget{position:sticky;top:0;z-index:15;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:8px 0;padding:9px 12px;background:#0a3059;color:white;border-radius:12px;box-shadow:0 8px 20px #0a34552b;font-size:10px}
.ff-mobile-budget strong{font-size:12px}.ff-mobile-budget a{margin-left:auto;color:#a2ddff;font-weight:700}
#panel-sim .ff-builder{padding:14px}#panel-sim .ff-discover-grid{grid-template-columns:1fr}#panel-sim .ff-auto-card>img,#panel-sim .ff-photo-empty{height:165px}
}
@media(prefers-reduced-motion:reduce){#panel-sim *{scroll-behavior:auto}}
