/* Scoped purchase presentation; the other three workflows retain their styles. */
.purchase-layout{--accent:#075dc8;--bg:#f3f7fc;--soft:#eaf3ff;--text:#10294b;--muted:#516580;--border:#d8e4f1}
.purchase-layout.dark{--accent:#80b8ff;--bg:#0c1728;--soft:#1b304a;--text:#edf5ff;--muted:#b7c8dd;--border:#344a64}
.purchase-layout main{max-width:1440px;padding:28px 30px}
.purchase-layout .grid{grid-template-columns:minmax(0,2.15fr) minmax(310px,1fr);gap:20px}
.purchase-layout #loanForm{padding:0;border:0;background:transparent;min-width:0}
.purchase-layout .purchase-card{padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--card);margin-bottom:14px;min-width:0}
.purchase-layout .purchase-card h2{font-size:1.2rem;margin:0 0 4px}
.purchase-layout .purchase-card-intro{margin:0 0 18px;font-size:.9rem}
.purchase-layout .purchase-card-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;align-items:start}
.purchase-layout .purchase-card-fields>div,.purchase-layout .purchase-card-fields>section{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;min-width:0}
.purchase-layout .purchase-card-fields label{min-width:0;margin-bottom:0;font-size:.9rem}
.purchase-layout input,.purchase-layout select{min-width:0;max-width:100%;padding:10px;font-size:.95rem}
.purchase-layout :is(p,h3,h4,fieldset,.tax-note,.check-help-row,.vehicle-today,.mode-heading,.field-help-panel){grid-column:1/-1}
.purchase-layout :is([hidden],.hidden){display:none!important}
.purchase-layout .purchase-card-fields :is(#vehicleVinEntry,#finalLocalityFields,#automaticTaxFields,.mode-heading){grid-column:1/-1}
.purchase-layout #vehicleVinEntry{display:block;border-top:1px solid var(--border);padding-top:12px}
.purchase-layout #vehicleEntryConditionField{display:block;grid-column:auto}
.purchase-layout #vehicleConditionHelp{display:block;font-size:.8rem}
.purchase-layout main :is(#vehicleVinFootnote,.state-rules-footnote){font-size:1rem;font-weight:400;line-height:1.5;color:var(--muted);margin:1rem 0}
.purchase-layout #tradeFields,.purchase-layout #dealerFields{grid-column:1/-1}
.purchase-layout #loanForm>.actions{margin-top:8px}.purchase-layout .actions button{font-weight:700}
.purchase-layout .purchase-results{position:sticky;top:20px;min-width:0}
.purchase-layout #result{border-radius:12px;padding:22px;min-width:0;overflow-wrap:anywhere}
.purchase-layout #result>h2{font-size:1.25rem}.purchase-layout .big-payment{color:var(--accent);background:var(--soft);border-radius:10px;padding:16px;font-size:clamp(2rem,3vw,3rem)}
.purchase-layout #result dl div{align-items:flex-start;font-size:.92rem}.purchase-layout #result dt{max-width:65%}.purchase-layout #result dd{text-align:right;overflow-wrap:anywhere}
.purchase-layout .purchase-stale{padding:12px;border:2px solid var(--accent);border-radius:10px;background:var(--card);font-weight:700}
.purchase-layout.dark .validation{color:#ffb4ae}
.purchase-layout .is-stale .big-payment{opacity:.6}.purchase-layout button:disabled{cursor:default;opacity:.65}
.purchase-layout :is(a,button,input,select):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.purchase-layout .purchase-vehicle-dialog{width:min(640px,calc(100% - 28px))}.purchase-layout #purchaseVehicleDrafts{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.purchase-layout .purchase-vehicle-dialog button:not(.secondary),.purchase-layout .actions button[type=submit],.purchase-layout .save-garage{background:#075dc8;color:white}
@media(max-width:1100px){.purchase-layout .purchase-card-fields,.purchase-layout .purchase-card-fields>div,.purchase-layout .purchase-card-fields>section{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.purchase-layout main{padding:22px 14px}.purchase-layout .grid{grid-template-columns:1fr}.purchase-layout .purchase-results{position:static}.purchase-layout .purchase-card{padding:16px}.purchase-layout .purchase-card-fields,.purchase-layout .purchase-card-fields>div,.purchase-layout .purchase-card-fields>section,.purchase-layout #purchaseVehicleDrafts{grid-template-columns:1fr}.purchase-layout #result dt{max-width:62%}.purchase-layout .brand{min-width:0}}

/* Batch 2: the approved homepage palette and surface treatment, scoped to Purchase. */
.purchase-layout{--accent:#075dc8;--text:#09264f;--bg:#f5f9ff;--card:#fff;--soft:#e9f2ff;--border:#d5e4f7;--muted:#435f80;--purchase-shadow:0 7px 25px #1a43770a;font-family:"Segoe UI",Arial,Helvetica,sans-serif;line-height:1.5}
.purchase-layout.dark{--accent:#a8d4ff;--text:#edf5ff;--bg:#0b1526;--card:#14243b;--soft:#1c334f;--border:#36506b;--muted:#b4c9df;--purchase-shadow:0 7px 25px #00000020}
.purchase-layout .purchase-header{background:var(--card);color:var(--text);padding:14px 30px;border-bottom:1px solid var(--border)}
.purchase-layout .purchase-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;max-width:1380px;margin:auto}
.purchase-layout .purchase-identity{min-width:0}.purchase-layout .brand,.purchase-layout .brand-lockup{width:310px;max-width:100%;background:transparent;border-radius:0}
.purchase-layout .purchase-tagline{color:var(--muted);font-size:.8125rem;margin:0 0 0 7px}
.purchase-layout .purchase-header nav a,.purchase-layout .purchase-header nav button{background:transparent;color:var(--text);font-weight:600;padding:10px 16px;font-size:.9375rem}
.purchase-layout .purchase-header nav button{border:1px solid var(--border);border-radius:24px;min-width:100px;background:var(--soft)}
.purchase-layout .purchase-skip{position:absolute;top:-100px;left:16px;z-index:20}.purchase-layout .purchase-skip:focus{top:12px}
.purchase-layout main{padding-top:22px}.purchase-layout .purchase-intro{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 0 6px;position:relative}
.purchase-layout .purchase-intro>div{max-width:920px}.purchase-layout .purchase-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.15em;color:var(--accent);margin:0 0 7px}
.purchase-layout .purchase-intro h1{font-size:clamp(1.65rem,2.5vw,2.3rem);line-height:1.15;letter-spacing:-.035em;margin:0 0 8px;font-weight:750}
.purchase-layout #purchasePageDescription{font-size:.9375rem;max-width:880px;margin:0;line-height:1.5}
.purchase-layout .purchase-artwork{width:230px;height:90px;object-fit:cover;object-position:center;border-radius:12px;flex-shrink:0;opacity:.9}.purchase-layout.dark .purchase-artwork{opacity:.8}
.purchase-layout .seller-switch{margin:14px 0 18px;gap:8px}.purchase-layout .seller-btn{border-radius:8px;padding:9px 18px;font-size:.875rem}.purchase-layout .seller-btn.active{background:#075dc8;border-color:#075dc8;color:#fff;box-shadow:0 4px 12px #075dc822}
.purchase-layout .purchase-sections{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:22px}
.purchase-layout .purchase-step{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--text);font-size:.875rem;font-weight:650;box-shadow:var(--purchase-shadow);min-width:0;line-height:1.3}
.purchase-layout .purchase-step small{display:block;color:var(--muted);font-size:.625rem;letter-spacing:.1em;margin-bottom:4px}.purchase-layout .purchase-step[aria-current]{background:var(--soft);border-color:var(--accent)}
.purchase-layout .purchase-step:hover{background:var(--soft)}.purchase-layout svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.purchase-layout .purchase-step svg{width:26px;height:26px;flex-shrink:0;color:var(--accent)}
.purchase-layout .grid{grid-template-columns:minmax(0,1.72fr) minmax(370px,1fr);gap:24px}
.purchase-layout .purchase-card{border-radius:16px;padding:20px 22px;margin-bottom:16px;box-shadow:var(--purchase-shadow)}
.purchase-layout .purchase-card h2{display:flex;align-items:center;gap:12px;font-size:1.125rem;letter-spacing:-.02em;margin-bottom:5px;scroll-margin-top:20px}
.purchase-layout .purchase-section-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--soft);color:var(--accent);flex-shrink:0}.purchase-layout .purchase-section-icon svg{width:23px;height:23px}
.purchase-layout .purchase-card-intro{font-size:.8125rem;line-height:1.5;margin:0 0 17px 50px}
.purchase-layout .purchase-card-fields{gap:12px 14px}.purchase-layout .mode-heading{display:none!important}
.purchase-layout input,.purchase-layout select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px 11px;line-height:1.35}
.purchase-layout input[type=checkbox],.purchase-layout input[type=radio]{accent-color:#075dc8;flex-shrink:0}.purchase-layout .field-help{color:var(--accent);background:var(--soft);border-color:var(--border)}
.purchase-layout #result{padding:24px;border:1px solid var(--border);border-top:4px solid #075dc8;border-radius:16px;box-shadow:var(--purchase-shadow);background:var(--card)}
.purchase-layout #result>h2{font-size:1.35rem;letter-spacing:-.025em;margin-top:0}.purchase-layout .result-label{font-size:.875rem;letter-spacing:.01em}
.purchase-layout .big-payment{background:linear-gradient(120deg,#075dc8,#08498e);color:#fff;padding:22px;border-radius:12px;font-size:clamp(2.3rem,3.4vw,3.1rem);line-height:1.2;letter-spacing:-.03em;margin:10px 0 22px;font-variant-numeric:tabular-nums}
.purchase-layout .big-payment small{color:#edf5ff;font-weight:500;font-size:.9rem;letter-spacing:0}
.purchase-layout #result dl div{padding:12px 0;gap:18px;line-height:1.5}.purchase-layout #result dt{color:var(--muted);max-width:63%}.purchase-layout #result dd{font-size:1rem;font-variant-numeric:tabular-nums}.purchase-layout #result p{line-height:1.6}
.purchase-layout .save-garage{padding:13px;border-radius:9px;font-weight:650;box-shadow:0 4px 12px #075dc822}.purchase-layout #loanForm>.actions{padding:4px 0 2px;gap:10px}.purchase-layout .actions button{padding:12px 22px}
.purchase-layout .schedule{padding:24px;border-radius:16px;box-shadow:var(--purchase-shadow);min-width:0}.purchase-layout .schedule h2{margin:0 0 8px;letter-spacing:-.02em;font-size:1.35rem}.purchase-layout #purchaseScheduleHelp{font-size:.875rem;margin:0 0 18px}
.purchase-layout .table-wrap{border:1px solid var(--border);border-radius:10px;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.purchase-layout table{font-size:.875rem;font-variant-numeric:tabular-nums}.purchase-layout th{background:var(--soft);font-weight:650;color:var(--text);padding:13px 14px}.purchase-layout td{padding:11px 14px}.purchase-layout tbody tr:nth-child(even){background:var(--bg)}
.purchase-layout .table-wrap:focus-visible,.purchase-layout .purchase-card h2:focus{outline:3px solid var(--accent);outline-offset:4px}
.purchase-layout .purchase-vehicle-dialog{box-shadow:0 24px 70px #00000040;border-radius:16px}.purchase-layout .purchase-vehicle-dialog h2{letter-spacing:-.025em}
.purchase-layout .site-footer{background:#0c315d;color:#deebfa;border:0}.purchase-layout .site-footer a{color:#edf5ff}.purchase-layout .footer-disclaimer{color:#c4d7ee}
@media(max-width:1100px){.purchase-layout .grid{grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr)}.purchase-layout .purchase-step{gap:8px;padding:12px 10px;font-size:.8125rem}.purchase-layout .purchase-artwork{width:180px;height:85px}}
@media(max-width:850px){.purchase-layout .grid{grid-template-columns:minmax(0,1fr)}.purchase-layout .purchase-sections{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.purchase-layout .purchase-results{position:static}.purchase-layout .purchase-artwork{width:160px;height:80px}.purchase-layout .purchase-card{padding:18px}.purchase-layout .purchase-header{padding:12px 18px}.purchase-layout .purchase-header-inner{gap:16px}.purchase-layout .purchase-header nav a,.purchase-layout .purchase-header nav button{padding:9px 10px}}
@media(max-width:540px){.purchase-layout main{padding-top:18px}.purchase-layout .purchase-header-inner{flex-wrap:wrap;gap:10px}.purchase-layout .brand,.purchase-layout .brand-lockup{width:260px}.purchase-layout .purchase-header nav{width:100%;justify-content:space-between;gap:6px}.purchase-layout .purchase-header nav button{margin-left:auto}.purchase-layout .purchase-artwork{display:none}.purchase-layout .purchase-intro{gap:0}.purchase-layout .purchase-sections{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.purchase-layout .purchase-step{font-size:.8rem;padding:10px}.purchase-layout .purchase-step svg{width:23px;height:23px}.purchase-layout .purchase-step:last-child{grid-column:1/-1}.purchase-layout .purchase-card h2{font-size:1.05rem;gap:10px}.purchase-layout .purchase-card-intro{margin-left:0}.purchase-layout .seller-switch{display:grid;grid-template-columns:1fr 1fr}.purchase-layout .seller-btn{padding:10px 8px;font-size:.8rem}.purchase-layout #result,.purchase-layout .schedule{padding:18px}.purchase-layout .big-payment{font-size:2.6rem}.purchase-layout #result dl div{font-size:.875rem}.purchase-layout #result dd{font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){.purchase-layout{scroll-behavior:auto}.purchase-layout *, .purchase-layout *:before,.purchase-layout *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Linked background explanations; active warnings never receive this class. */
.purchase-layout .purchase-footnoted{display:none!important}
.purchase-layout .purchase-note-ref{display:inline-block;background:transparent;color:var(--accent);padding:2px 4px;margin-left:5px;font-size:.8rem;font-weight:700;line-height:1.4;border-radius:4px;text-decoration:underline;text-underline-offset:3px;vertical-align:baseline;white-space:nowrap}
.purchase-layout .purchase-note-ref:hover{background:var(--soft)}
.purchase-layout .purchase-notes{margin-top:22px;padding:24px;border-radius:16px;box-shadow:var(--purchase-shadow);min-width:0}
.purchase-layout .purchase-notes h2{font-size:1.35rem;margin:0 0 8px;letter-spacing:-.02em}.purchase-layout .purchase-notes-intro{font-size:.875rem;margin:0 0 18px}
.purchase-layout .purchase-notes ol{margin:0;padding-left:28px}.purchase-layout .purchase-notes li{padding:16px 14px;margin-bottom:12px;border:1px solid var(--border);border-radius:10px;scroll-margin-top:20px;background:var(--bg)}
.purchase-layout .purchase-notes li::marker{color:var(--accent);font-weight:700}.purchase-layout .purchase-notes h3{font-size:1rem;margin:0 0 8px}.purchase-layout .purchase-notes li p{font-size:.9rem;line-height:1.65;margin:0 0 12px}
.purchase-layout .purchase-note-returns{display:flex;flex-wrap:wrap;gap:8px 16px}.purchase-layout .purchase-note-returns a{padding:3px 0;background:transparent;color:var(--accent);font-size:.8125rem;text-decoration:underline;text-underline-offset:3px}
.purchase-layout .purchase-notes li:focus{outline:3px solid var(--accent);outline-offset:3px}.purchase-layout #govFeeStatus .purchase-note-ref{font-weight:700}
@media(max-width:540px){.purchase-layout .purchase-notes{padding:18px}.purchase-layout .purchase-notes ol{padding-left:22px}.purchase-layout .purchase-notes li{padding:14px 10px}.purchase-layout .purchase-note-returns{flex-direction:column;align-items:flex-start}}

/* Compact purchase review: existing data and disclosures retain their owners. */
.purchase-layout .grid{grid-template-columns:minmax(0,2.4fr) minmax(320px,1fr);gap:20px}
.purchase-layout .purchase-card{padding:16px 18px;margin-bottom:12px}
.purchase-layout .purchase-card-intro{margin-bottom:12px}
.purchase-layout .purchase-card-fields,.purchase-layout .purchase-card-fields>div,.purchase-layout .purchase-card-fields>section{row-gap:9px}
.purchase-layout #result{padding:20px}.purchase-layout #result dl div{padding:9px 0;gap:12px}
.purchase-layout .big-payment{padding:18px;margin-bottom:16px}
.purchase-layout button.purchase-note-ref{width:22px;height:22px;padding:0;margin-left:6px;border:1px solid var(--border);border-radius:50%;background:var(--soft);color:var(--accent);font-size:.8rem;text-decoration:none;font-family:inherit;font-weight:700;line-height:20px;vertical-align:middle;cursor:pointer}
.purchase-layout .purchase-context-dialog,.purchase-layout .purchase-context-popover,.purchase-layout .purchase-schedule-dialog{box-sizing:border-box;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 60px #00000040;padding:24px}
.purchase-layout .purchase-context-dialog{width:min(620px,calc(100% - 32px));max-height:85dvh;overflow:auto}
.purchase-layout .purchase-context-popover{position:fixed;inset:auto;margin:0;width:min(350px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:18px}
.purchase-layout :is(.purchase-context-dialog,.purchase-context-popover) h2{font-size:1.125rem;margin:0 0 12px;line-height:1.35}
.purchase-layout .purchase-context-content p{font-size:.9375rem;line-height:1.65;margin:0 0 18px}
.purchase-layout :is(.purchase-context-dialog,.purchase-schedule-dialog)::backdrop{background:#07172c99}
.purchase-layout .purchase-schedule-dialog{width:min(960px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:18px}
.purchase-layout .purchase-schedule-dialog>button{display:block;margin-left:auto;margin-bottom:12px}
.purchase-layout .purchase-schedule-dialog .schedule{padding:0;border:0;box-shadow:none;margin:0}
.purchase-layout .purchase-schedule-dialog .table-wrap{max-height:58dvh;overflow:auto;overscroll-behavior:contain}
.purchase-layout .purchase-schedule-dialog table{min-width:570px;width:100%}
.purchase-layout .purchase-schedule-dialog th{position:sticky;top:0;z-index:1}
.purchase-layout .purchase-schedule-open{display:block;width:100%;margin-top:14px;padding:12px;font-weight:650;border-radius:9px}
@media(max-width:1100px){.purchase-layout .grid{grid-template-columns:minmax(0,2fr) minmax(310px,1fr)}}
@media(max-width:850px){.purchase-layout .grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:540px){.purchase-layout .purchase-card{padding:16px}.purchase-layout .purchase-card-intro{margin-left:0}.purchase-layout .purchase-context-dialog{padding:20px}.purchase-layout .purchase-schedule-dialog{width:calc(100% - 20px);padding:14px}}

/* Horizontal field groups; currency widths are visual only. */
.purchase-layout input[data-aft-type="currency"]{width:17ch;max-width:100%;box-sizing:border-box;font-variant-numeric:tabular-nums}
.purchase-layout #purchase-purchase-fields>.purchase-price-row{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:12px 20px;align-items:start}
.purchase-layout .purchase-price-row .purchase-tax-group{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 10px;min-width:0}
.purchase-layout .purchase-tax-group>label:not([hidden]){display:contents}.purchase-layout .purchase-tax-group>label>.field-label{grid-column:1/-1}.purchase-layout #tax{grid-column:1;grid-row:2;width:10ch;max-width:100%;box-sizing:border-box;margin-top:0}
.purchase-layout .purchase-tax-group>.check-help-row{grid-column:2;grid-row:2;display:flex;align-items:center;gap:6px;margin:0;min-width:0;height:42px}
.purchase-layout .purchase-tax-group .check{white-space:nowrap;gap:6px;align-items:center}
.purchase-layout .purchase-tax-group .field-help-panel{white-space:normal}
.purchase-layout #tradeFields:not(.hidden):not([hidden]){display:contents}
.purchase-layout .purchase-registration-options{display:flex;flex-direction:column;gap:10px;align-self:center;min-width:0}
.purchase-layout .purchase-card-fields label>.field-label{min-height:24px;align-items:flex-start}
.purchase-layout .purchase-card-fields{row-gap:8px}
.purchase-layout #purchaseStateField:not(:has(*)){display:none}
@media(min-width:1200px){
 .purchase-layout #purchase-vehicle-fields{grid-template-columns:repeat(12,minmax(0,1fr))}
 .purchase-layout #purchase-vehicle-fields>label{grid-column:span 4}
 .purchase-layout #purchase-vehicle-fields>.purchase-state-inline{grid-column:span 5}
 .purchase-layout #purchase-vehicle-fields>#vehicleEntryConditionField{grid-column:span 3}
 .purchase-layout #purchase-vehicle-fields>.purchase-description-field{grid-column:span 4}
 .purchase-layout #purchase-vehicle-fields>#govFieldFuel{grid-column:span 5}
 .purchase-layout.private-purchase-scope #purchase-vehicle-fields>.purchase-description-field,
 .purchase-layout.private-purchase-scope #purchase-vehicle-fields>#govFieldFuel{grid-column:span 6}
 .purchase-layout .purchase-state-inline{display:flex;align-items:center;gap:10px}
 .purchase-layout .purchase-state-inline>.field-label{flex-shrink:0;white-space:nowrap;align-items:center}
 .purchase-layout .purchase-state-inline>select{flex:1;min-width:0;width:auto;margin-top:0}
 .purchase-layout .purchase-state-inline+#vehicleVinEntry{grid-column:span 7;border-top:0;padding-top:0}
}
@media(min-width:851px) and (max-width:1199px){.purchase-layout .purchase-state-inline{grid-column:1/-1;display:flex;align-items:center;gap:12px;max-width:440px}.purchase-layout .purchase-state-inline>select{flex:1;width:auto;min-width:0;margin-top:0}.purchase-layout #purchase-purchase-fields>.purchase-price-row{grid-template-columns:1fr}}
@media(max-width:850px){.purchase-layout #purchase-purchase-fields>.purchase-price-row{grid-template-columns:1fr;gap:12px}.purchase-layout .purchase-tax-group{flex-wrap:wrap}.purchase-layout #tradeFields:not(.hidden):not([hidden]){display:grid;grid-template-columns:1fr}.purchase-layout .purchase-registration-options{gap:10px}}

/* Reusable entry and section patterns, initially scoped to the purchase candidate. */
.purchase-layout .calculator-section-header{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;margin-bottom:12px;padding:0;background:transparent;color:var(--text);border:0}
.purchase-layout .calculator-section-header h2{flex:0 0 auto;margin:0}
.purchase-layout .calculator-section-header .purchase-card-intro{flex:1 1 260px;margin:0;min-width:0}
.purchase-layout #vehicleVinEntry{border:0;padding:0}
.purchase-layout .calculator-entry-action{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-height:42px}
.purchase-layout .calculator-entry-action>button:first-child{padding:10px 14px;font-weight:650}
.purchase-layout #purchaseVinBrief{font-size:.8125rem;color:var(--muted)}
.purchase-layout .calculator-entry-dialog{box-sizing:border-box;width:min(640px,calc(100% - 28px));max-height:85dvh;overflow:auto;padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--card);color:var(--text);box-shadow:0 24px 70px #00000040}
.purchase-layout .calculator-entry-dialog::backdrop{background:#07172c99}
.purchase-layout .calculator-entry-dialog>h2{margin:0 0 16px}
.purchase-layout .calculator-entry-dialog .vin-input-row{display:flex;gap:8px;flex-wrap:wrap}
.purchase-layout .calculator-entry-dialog .vin-input-row input{flex:1 1 200px;width:auto}
.purchase-layout .calculator-entry-dialog .vin-input-row button{flex:0 0 auto}
.purchase-layout .calculator-entry-dialog>button:last-child{margin-top:12px}
.purchase-layout .purchase-card-fields>.fee-estimate-panel{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;align-items:center}
.purchase-layout #govFeeDisplayLabel{grid-column:1/-1;margin:0}
.purchase-layout #govFeeDisplay{margin:0}
.purchase-layout #govFeeStatus{grid-column:2;margin:0;min-width:0}
@media(min-width:1200px){.purchase-layout #purchase-fees-fields>#dealerFields{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.purchase-layout .calculator-section-header{display:block}.purchase-layout .calculator-section-header h2{margin-bottom:6px}.purchase-layout .calculator-section-header .purchase-card-intro{margin:0}.purchase-layout .purchase-card-fields>.fee-estimate-panel{grid-template-columns:1fr}.purchase-layout #govFeeStatus{grid-column:1}.purchase-layout .calculator-entry-dialog{padding:20px}}

/* Template polish: captions above a shared control baseline. */
.purchase-layout #vehicleVinEntry{margin:0}
.purchase-layout .purchase-card-fields label>select,.purchase-layout .vehicle-year-quick>select{display:block;margin-top:6px}
.purchase-layout .purchase-state-inline{display:block;max-width:none}
.purchase-layout .purchase-state-inline>.field-label{min-height:24px;align-items:center}
.purchase-layout .purchase-state-inline>select{display:block;width:100%;height:42px;margin-top:6px}
.purchase-layout .calculator-entry-action{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:12px 16px}
.purchase-layout .calculator-entry-action .field-label{min-height:24px;font-size:.9rem;font-weight:600;align-items:center}
.purchase-layout .calculator-entry-control>button{display:block;height:42px;margin-top:6px;padding:10px 14px;font-size:.95rem;font-weight:650}
.purchase-layout .calculator-entry-status-line{display:flex;align-items:center;flex-wrap:wrap;min-height:42px;margin-top:6px;gap:4px 8px}
.purchase-layout #purchase-fees-fields>.check-help-row{display:flex;align-items:center;gap:8px}
.purchase-layout #purchase-fees-fields>.check-help-row .check{flex:0 1 auto;margin:0}
.purchase-layout #purchase-fees-fields>.check-help-row .purchase-note-ref{margin-left:0;flex-shrink:0}
@media(min-width:851px){.purchase-layout #dealerFields label>.field-label{min-height:44px}}
@media(max-width:540px){.purchase-layout .calculator-entry-action{gap:12px}.purchase-layout .calculator-entry-status-line{gap:4px}}

/* The product tagline follows the AFT portion of the approved lockup. */
.purchase-layout{--purchase-logo-width:310px}
.purchase-layout .purchase-identity{width:350px;max-width:100%}
.purchase-layout .purchase-tagline{margin-left:calc(var(--purchase-logo-width)*.605);font-size:.75rem;white-space:nowrap}
@media(max-width:540px){.purchase-layout{--purchase-logo-width:260px}}

/* Page-shell hero: the image ends above section navigation and calculator cards. */
/* Only original informational nodes associated by AFTFieldHelp are collapsed. */
.purchase-layout .aft-field-explanation{display:none!important}
.purchase-layout .aft-state-information{grid-column:1/-1;color:var(--muted)}
.purchase-layout .aft-state-information>summary{cursor:pointer;min-height:44px;align-content:center;color:var(--accent)}
.purchase-layout .aft-state-information>summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.private-purchase-scope .private-scope-excluded{display:none!important}
.purchase-layout .purchase-header{padding:14px 28px}
.purchase-layout .purchase-header-inner{max-width:1250px}
.purchase-layout .purchase-tagline{font-size:.8125rem}
.purchase-layout .purchase-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:260px;box-sizing:border-box;padding:28px;margin-bottom:22px;border-radius:16px;overflow:hidden;background:#c9e3f5 url('../assets/home-scenic-hero-preferred.webp') center 62%/cover no-repeat}
.purchase-layout .purchase-hero-content{position:relative;z-index:1;box-sizing:border-box;width: min(740px,64%);padding:22px 24px;border-radius:12px;background:rgba(248,252,255,.94)}
.purchase-layout .purchase-intro{display:block;padding:0}
.purchase-layout .purchase-intro>div{max-width:none}
.purchase-layout .purchase-hero .seller-switch{margin:18px 0 0}
.purchase-layout.dark .purchase-hero::before{content:"";position:absolute;inset:0;background:rgba(5,17,34,.32);pointer-events:none}
.purchase-layout.dark .purchase-hero-content{background:rgba(13,30,51,.94)}
@media(max-width:850px){.purchase-layout .purchase-hero{padding:22px;min-height:250px}.purchase-layout .purchase-hero-content{width:78%;padding:20px}}
@media(max-width:640px){.purchase-layout{--purchase-logo-width:285px}.purchase-layout .brand,.purchase-layout .brand-lockup{width:285px}.purchase-layout .purchase-header{padding:12px 18px}}
@media(max-width:540px){.purchase-layout .purchase-hero{padding:76px 14px 14px;min-height:0;background-position:68% 62%}.purchase-layout .purchase-hero-content{width:100%;padding:18px 16px}.purchase-layout .purchase-hero .seller-switch{margin-top:16px}}

/* Keep Summary captions readable when the verified rule or source is lengthy. */
.purchase-layout #result dl>div{display:grid;grid-template-columns:minmax(92px,1fr) minmax(0,1.2fr);gap:12px}
.purchase-layout #result dt{max-width:none;min-width:0;overflow-wrap:normal}
.purchase-layout #result dd{min-width:0;overflow-wrap:anywhere}
.purchase-layout #result dd .aft-state-information,.purchase-layout #result dd .vin-entry-link{text-align:left}
@media(max-width:360px){.purchase-layout #result dl>div{grid-template-columns:minmax(85px,1fr) minmax(0,1.15fr);gap:8px}}
@media(max-width:360px){.purchase-layout .purchase-tagline{white-space:normal}}

/* Shared compact vehicle grid: the DOM follows the same keyboard order. */
@media(min-width:851px){
 .purchase-layout #purchase-vehicle-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
 .purchase-layout #purchase-vehicle-fields>.purchase-state-inline{grid-column:1;grid-row:1}
 .purchase-layout #purchase-vehicle-fields>#vehicleEntryConditionField{grid-column:2;grid-row:1}
 .purchase-layout #purchase-vehicle-fields>#vehicleVinEntry{grid-column:1;grid-row:2}
 .purchase-layout #purchase-vehicle-fields>.purchase-description-field,
 .purchase-layout.private-purchase-scope #purchase-vehicle-fields>.purchase-description-field{grid-column:2;grid-row:2}
 .purchase-layout #purchase-vehicle-fields>label:not(.purchase-state-inline):not(.purchase-description-field){grid-column:auto}
 .purchase-layout #purchase-vehicle-fields>#govFieldFuel,
 .purchase-layout.private-purchase-scope #purchase-vehicle-fields>#govFieldFuel{grid-column:auto}
 .purchase-layout .purchase-state-inline{display:block;max-width:none}
 .purchase-layout #purchase-vehicle-fields>#vehicleVinEntry{margin:0;padding:0;border:0}
 .purchase-layout #purchase-purchase-fields>.purchase-price-row:has(>.purchase-tax-group.state-requirements-source){grid-template-columns:repeat(3,minmax(0,1fr))}
}
.purchase-layout #purchase-vehicle-fields{min-height:0;padding-bottom:0}
.purchase-layout #purchase-vehicle-fields>.purchase-description-field{margin-bottom:0}
.purchase-layout #vehicleEntryConditionField{margin-bottom:0}
.purchase-layout #vehicleConditionLabel{display:flex;min-height:24px;align-items:center;font-size:.9rem;font-weight:600}
.purchase-layout #vehicleEntryConditionField .vehicle-condition-buttons{margin-bottom:0}
.purchase-layout #vehicleEntryConditionField .vehicle-condition-buttons button{min-height:42px}

.purchase-layout .purchase-state-inline>.field-label{display:flex}

/* Section 2: price and its existing tax disclosure share one ordinary row. */
.purchase-layout #purchase-purchase-fields>.purchase-price-row:has(>.purchase-tax-group.state-requirements-source){display:contents}
@media(min-width:851px){
 .purchase-layout #purchase-purchase-fields:has(>.purchase-price-row>.purchase-tax-group.state-requirements-source):has(>details#aftRuleInformation-taxRuleStatus:not([hidden])){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .purchase-layout #purchase-purchase-fields>.purchase-price-row:has(>.purchase-tax-group.state-requirements-source)>label{grid-column:1;grid-row:1;align-self:start}
 .purchase-layout #purchase-purchase-fields:has(>.purchase-price-row>.purchase-tax-group.state-requirements-source)>details#aftRuleInformation-taxRuleStatus{grid-column:2;grid-row:1;align-self:center;margin:0;min-width:0}
}
@media(max-width:850px){
 .purchase-layout #purchase-purchase-fields>.purchase-price-row:has(>.purchase-tax-group.state-requirements-source)>label{grid-column:1/-1}
 .purchase-layout #purchase-purchase-fields>details#aftRuleInformation-taxRuleStatus{grid-column:1/-1;margin:0}
}

/* Section 3: compact monetary labels retain their original Info controls. */
.purchase-layout #purchase-trade-fields label:has(> :is(#rebate,#trade,#payoff,#tradeAllowance,#tradePayoff))>.field-label{white-space:nowrap}

/* Shared calculator field contract; transaction-specific owners stay intact. */
.purchase-layout .purchase-card-fields label>.field-label{display:flex;align-items:center;gap:6px;line-height:1.5}
.purchase-layout .purchase-card-fields .field-label>:is(.field-help,.info){display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;min-height:22px;padding:0;flex:0 0 22px;border-radius:50%;font-size:.75rem;line-height:1;color:var(--accent);background:var(--soft);border:1px solid var(--border)}
.purchase-layout .purchase-card-fields input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.purchase-layout .purchase-card-fields select{box-sizing:border-box;height:42.5px}
@media(min-width:1200px){
 .purchase-layout #purchase-finance-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
 .purchase-layout.lease-layout #purchase-finance-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
 .purchase-layout #purchase-finance-fields>label>.field-label{min-height:24px;white-space:nowrap}
 .purchase-layout #purchase-finance-fields :is(#down,#term,#apr,#factor,#residual){width:calc(14ch + 22px);max-width:100%}
 .purchase-layout #purchase-fees-fields label:has(> :is(#fees,#accessories,#warranty,#documentFee,#acquisition,#disposition))>.field-label{min-height:44px}
}
@media(min-width:851px) and (max-width:1199px){
 .purchase-layout #purchase-finance-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 .purchase-layout #purchase-trade-fields label>.field-label{white-space:normal}
}
@media(max-width:850px){.purchase-layout #purchase-finance-fields{grid-template-columns:minmax(0,1fr)}}

.purchase-layout .purchase-card-fields input[type=number]{width:calc(14ch + 22px);max-width:100%}
