/*
 * ONEDEALER · FINANCE FLEX — UNIFIED PREMIUM LIGHT
 * Reference: Immersive UI Playbook V1.2 (G0 / G1 / G3) and approved
 * Ice White / glass direction. Visual-only: no bank or credit decisions.
 * Shared by all four Finance Flex stages, regardless of signed-in role.
 * Reuses approved automotive artwork and the official header wordmark.
 */
body.od-ff-unified{
  --ff-premium-ink:#142338;
  --ff-premium-navy:#091827;
  --ff-premium-muted:#64748b;
  --ff-premium-blue:#0063d1;
  --ff-premium-active:#0059be;
  --ff-premium-hair:rgba(183,201,219,.58);
  --ff-premium-ice:#f5f8fc;
  --ff-premium-glass:linear-gradient(134deg,rgba(255,255,255,.91),rgba(243,248,252,.79) 62%,rgba(255,255,255,.86));
  --ff-premium-glass-strong:linear-gradient(139deg,rgba(255,255,255,.96),rgba(246,249,252,.91));
  --ff-premium-elevation:0 17px 43px -34px rgba(9,24,39,.42),0 6px 22px rgba(24,54,77,.045),inset 0 1px 0 rgba(255,255,255,.96);
  font-family:Inter,Arial,sans-serif;
  font-size:14px;
  color:var(--ff-premium-ink);
  background:linear-gradient(168deg,#edf3f8 0%,#f7fafc 38%,#eff4f8 75%,#f8fafc 100%)!important;
  min-height:100vh;
  position:relative;
  isolation:isolate;
}
body.od-ff-unified::before{
  content:"";position:fixed;z-index:-1;inset:62px 0 auto auto;
  width:min(72vw,1240px);height:min(62vh,590px);pointer-events:none;
  background:url("/assets/hero-three-brands.webp") center 42% / cover no-repeat;
  opacity:.10;filter:blur(28px) saturate(.68);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 32%,#000 60%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 32%,#000 60%,transparent 100%);
}
body.od-ff-unified :is(h1,h2,h3,h4){letter-spacing:-.035em}
body.od-ff-unified :is(h1,h2,h3){font-family:Montserrat,Inter,sans-serif}
body.od-ff-unified :is(output,.stats b,.ff-slider-value strong,.ff-metric strong){
  font-variant-numeric:tabular-nums;
}
body.od-ff-unified .header{
  position:relative;z-index:20;height:65px!important;
  background:rgba(251,253,255,.93)!important;
  border-bottom:1px solid rgba(185,207,222,.54);
  box-shadow:0 5px 20px rgba(24,45,65,.03);
  -webkit-backdrop-filter:blur(18px) saturate(110%);
  backdrop-filter:blur(18px) saturate(110%);
}
body.od-ff-unified .header img{
  object-fit:contain;
  filter:none;
}
body.od-ff-unified .header nav a{color:#415771;font-weight:600}
body.od-ff-unified .header nav a.active{
  color:#0059be;border-bottom-color:var(--ff-premium-blue);
}
body.od-ff-unified .shell{position:relative;isolation:isolate}
body.od-ff-unified .ff-hero{
  position:relative;overflow:hidden;isolation:isolate;
  min-height:265px!important;
  border:0!important;border-radius:0!important;
  padding:38px clamp(28px,4.2vw,76px) 34px!important;
  background:
    linear-gradient(90deg,rgba(247,250,253,.99) 0%,rgba(246,249,252,.97) 23%,rgba(243,247,251,.79) 41%,rgba(241,246,251,.24) 67%,rgba(10,29,48,.13) 100%),
    url("/assets/hero-three-brands.webp") right 50% / cover no-repeat!important;
  box-shadow:inset 0 -1px 0 rgba(180,199,214,.58)!important;
}
body.od-ff-unified .ff-hero::before{
  content:"";inset:0;position:absolute;z-index:-1;pointer-events:none;
  background:linear-gradient(0deg,rgba(237,244,249,.44),transparent 38%);
}
body.od-ff-unified .ff-hero-copy{max-width:660px}
body.od-ff-unified .ff-hero .eyebrow{
  font:700 10px/1.4 Inter,Arial,sans-serif;
  letter-spacing:.15em;color:#2d577a;
}
body.od-ff-unified .ff-hero h1{
  font:700 clamp(31px,3.15vw,48px)/1.1 Montserrat,Inter,sans-serif!important;
  color:#102a45!important;letter-spacing:-.052em;
  text-shadow:none;
}
body.od-ff-unified .ff-hero h1 em{
  color:#0063d1!important;
  font-style:normal;
}
body.od-ff-unified .ff-hero p{
  color:#4c6378!important;line-height:1.68;
  font-size:13px;
}
body.od-ff-unified .ff-hero-benefits span{
  background:rgba(255,255,255,.57)!important;
  border:1px solid rgba(191,209,223,.66)!important;
  color:#36536a!important;border-radius:999px;
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
body.od-ff-unified .ff-hero-side{
  background:linear-gradient(133deg,rgba(15,39,62,.83),rgba(24,53,75,.72))!important;
  border:1px solid rgba(255,255,255,.26)!important;
  border-radius:20px!important;
  color:#f2f7fc!important;
  -webkit-backdrop-filter:blur(16px) saturate(95%);
  backdrop-filter:blur(16px) saturate(95%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 14px 27px -21px rgba(12,34,53,.4)!important;
}
body.od-ff-unified .shell>.tabs{
  width:calc(100% - clamp(36px,6.6vw,118px));
  margin: -13px auto 20px!important;
  position:relative;z-index:4;
  padding:7px!important;border-radius:16px!important;
  border:1px solid rgba(255,255,255,.94)!important;
  background:linear-gradient(115deg,rgba(255,255,255,.93),rgba(237,245,251,.81))!important;
  -webkit-backdrop-filter:blur(20px) saturate(105%);
  backdrop-filter:blur(20px) saturate(105%);
  box-shadow:0 14px 36px -25px rgba(15,47,75,.32),inset 0 1px 0 #fff!important;
}
body.od-ff-unified .shell>.tabs button{
  min-height:39px!important;padding:9px 16px!important;
  font:600 12px/1.35 Inter,Arial,sans-serif!important;
  color:#4a657c!important;border-radius:10px!important;
  transition:background .18s,color .18s,box-shadow .18s;
}
body.od-ff-unified .shell>.tabs button.selected{
  color:#fff!important;
  background:linear-gradient(115deg,#133b5e,#0c598f)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13)!important;
}
body.od-ff-unified :is(#panel-sim,#panel-smart,#panel-request,#panel-mine){
  --od-ice-ink:#142338;--od-ice-title:#142338;--od-ice-muted:#64748b;
  --od-ice-stroke:var(--ff-premium-hair);
  --od-ice-glass:var(--ff-premium-glass);
  --od-ice-shadow:var(--ff-premium-elevation);
  color:var(--ff-premium-ink);
}
body.od-ff-unified :is(#panel-sim,#panel-smart,#panel-request,#panel-mine) .ff-intro-note{
  border:1px solid rgba(200,216,230,.62)!important;
  background:linear-gradient(125deg,rgba(255,255,255,.88),rgba(236,245,251,.75))!important;
  border-radius:14px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 7px 20px -18px rgba(19,48,70,.24)!important;
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
}
body.od-ff-unified :is(#panel-sim,#panel-smart,#panel-request,#panel-mine) .card,
body.od-ff-unified #panel-request .ff-wizard-main,
body.od-ff-unified #panel-request .ff-wizard-side>.card{
  color:#142338;
  border:1px solid rgba(206,222,233,.81)!important;
  background:var(--ff-premium-glass)!important;
  border-radius:19px!important;
  box-shadow:var(--ff-premium-elevation)!important;
  -webkit-backdrop-filter:blur(18px) saturate(109%);
  backdrop-filter:blur(18px) saturate(109%);
}
body.od-ff-unified .card .section-head :is(h2,h3),
body.od-ff-unified #panel-request .ff-wizard-pane h2{
  color:#142338!important;
  font-family:Montserrat,Inter,sans-serif!important;
  font-weight:700!important;
}
body.od-ff-unified .section-head .eyebrow{
  color:#276081!important;
  letter-spacing:.13em;
}
body.od-ff-unified :is(.section-head p,.ff-panel-desc,.footnote,.ff-step-dot+p,.ff-slider-box>small){
  color:#607588;
}
body.od-ff-unified :is(.ff-builder,.ff-smart-card,.ff-discover,.ff-results,.ff-finance-details){
  min-width:0;
}
body.od-ff-unified #panel-sim .ff-results{
  border-color:rgba(184,207,222,.65)!important;
  background:var(--ff-premium-glass)!important;
}
body.od-ff-unified #panel-sim .ff-results .section-head :is(h2,.eyebrow),
body.od-ff-unified #panel-sim .ff-results .section-head p{
  color:var(--ff-premium-ink)!important;
}
body.od-ff-unified #panel-sim .ff-result-hero,
body.od-ff-unified #panel-smart .ff-smart-card .ff-qic-status{
  background:linear-gradient(124deg,#0e2c49,#173a58)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#f6fafd!important;border-radius:17px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 11px 24px -23px rgba(10,33,56,.43)!important;
}
body.od-ff-unified #panel-sim .ff-result-hero :is(strong,span,small){
  color:#f0f6fb!important;
}
body.od-ff-unified #panel-smart .ff-smart-card[data-qic-state="eligible"] #qic-status{
  background:linear-gradient(115deg,#0b664c,#0e805b)!important;
}
body.od-ff-unified #panel-smart .ff-smart-card[data-qic-state="provisional"] #qic-status{
  background:linear-gradient(115deg,#fff4df,#f9ebc9)!important;
  color:#805a22!important;border-color:#dec48c!important;
}
body.od-ff-unified #panel-smart .ff-smart-card[data-qic-state="out"] #qic-status{
  background:#fff1ee!important;color:#973d37!important;border-color:#eac6c1!important;
}
body.od-ff-unified :is(.ff-advanced,.ff-big-field,.ff-slider-box,.ff-spouse,.ff-insight,.ff-compact-summary){
  border-color:rgba(206,221,233,.77)!important;
}
body.od-ff-unified :is(.ff-big-field,.ff-spouse,.ff-advanced,.ff-insight){
  background:linear-gradient(130deg,rgba(255,255,255,.74),rgba(241,247,250,.61))!important;
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
body.od-ff-unified :is(.field input,.field select,.ff-application-grid input,.ff-application-grid select){
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(186,204,221,.85)!important;
  color:#142338!important;border-radius:10px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.93);
}
body.od-ff-unified :is(.field input,.field select,.ff-application-grid input,.ff-application-grid select):focus{
  border-color:#3a88c6!important;
  outline:3px solid rgba(0,99,209,.12)!important;
  outline-offset:0;
}
body.od-ff-unified :is(input[type="range"],input[type="checkbox"]){
  accent-color:#0063d1;
}
body.od-ff-unified :is(button.primary,a.primary,.ff-button-link.primary){
  border-radius:10px!important;
  background:linear-gradient(115deg,#0063d1,#0059be)!important;
  color:#fff!important;border:1px solid #005bbb!important;
  box-shadow:0 8px 17px -15px rgba(0,61,129,.47),inset 0 1px 0 rgba(255,255,255,.17)!important;
  font-weight:650!important;
}
body.od-ff-unified :is(button.primary,a.primary,.ff-button-link.primary):hover{
  background:#004fae!important;
}
body.od-ff-unified :is(button.secondary,a.secondary,.ff-auto-actions button,.ff-auto-actions a){
  border-radius:10px!important;
  color:#285273!important;
  border:1px solid rgba(184,207,222,.86)!important;
  background:rgba(255,255,255,.83)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body.od-ff-unified #panel-sim .ff-auto-card{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(199,215,225,.87)!important;
  border-radius:15px!important;
  box-shadow:0 5px 21px -18px rgba(18,43,65,.33),inset 0 1px 0 #fff!important;
}
body.od-ff-unified #panel-sim .ff-auto-card:hover{
  border-color:#abc8de!important;
  box-shadow:0 14px 29px -24px rgba(12,46,79,.32)!important;
}
body.od-ff-unified #panel-request .ff-wizard-steps{
  background:linear-gradient(120deg,rgba(253,254,255,.90),rgba(238,245,249,.77))!important;
  border:1px solid rgba(206,222,234,.85)!important;
  border-radius:14px!important;
  -webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);
}
body.od-ff-unified #panel-request .ff-wizard-step.current b{
  background:linear-gradient(120deg,#133b5e,#0b5f9b)!important;
  border-color:#1c6699!important;
}
body.od-ff-unified #panel-request :is(.ff-bank-choice,.ff-review-grid>div,.ff-confirm,.ff-safe-notice,.ff-doc-note){
  background:rgba(255,255,255,.87)!important;
  color:#23445e;
  border:1px solid rgba(195,214,227,.82)!important;
  border-radius:11px!important;
}
body.od-ff-unified #panel-mine .my-list,
body.od-ff-unified #panel-mine .draft-row{
  color:#142338;
}
body.od-ff-unified .footer{
  color:#667b8c;
  border-top:1px solid rgba(194,213,225,.71);
  background:rgba(255,255,255,.44);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
body.od-ff-unified :is(a,button,input,select,summary):focus-visible{
  outline:2px solid #0063d1!important;
  outline-offset:3px;
}
@media(max-width:950px){
  body.od-ff-unified .ff-hero{min-height:240px!important}
  body.od-ff-unified .shell>.tabs{width:calc(100% - 32px);margin-top:-10px!important}
  body.od-ff-unified .ff-hero-side{display:none}
}
@media(max-width:700px){
  body.od-ff-unified::before{display:none}
  body.od-ff-unified .header{height:60px!important}
  body.od-ff-unified .ff-hero{min-height:260px!important;padding:27px 22px 37px!important;
    background:linear-gradient(90deg,rgba(246,250,253,.97),rgba(244,249,253,.91) 54%,rgba(243,248,251,.66)),url("/assets/hero-three-brands.webp") center / cover no-repeat!important}
  body.od-ff-unified .ff-hero h1{font-size:clamp(28px,7vw,35px)!important}
  body.od-ff-unified .shell>.tabs{width:calc(100% - 22px);margin-bottom:13px!important;padding:5px!important;overflow-x:auto}
  body.od-ff-unified .shell>.tabs button{font-size:11px!important;min-width:145px}
  body.od-ff-unified :is(#panel-sim,#panel-smart,#panel-request,#panel-mine) .card,
  body.od-ff-unified #panel-request .ff-wizard-main,
  body.od-ff-unified #panel-request .ff-wizard-side>.card{
    background:rgba(251,253,255,.96)!important;
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
}
@media(prefers-reduced-transparency:reduce){
  body.od-ff-unified :is(#panel-sim,#panel-smart,#panel-request,#panel-mine) .card,
  body.od-ff-unified .shell>.tabs,
  body.od-ff-unified #panel-request .ff-wizard-main{
    background:#fff!important;-webkit-backdrop-filter:none;backdrop-filter:none;
  }
}
@media(prefers-reduced-motion:reduce){
  body.od-ff-unified *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
