/* Candidate 1 quote UI, layered on the complete 52471c7 form. Home and consultation retain their existing styles. */
body:has([data-page="quote"]:not([hidden])){--ink:#182941;--muted:#536378;--blue:#2755cf;--blue-soft:#edf2ff;--bg:#f2f5f9;--line:#d8e0eb;--navy:#10233d;--on-navy:#f5f8ff;--navy-muted:#bdcde3;--radius:12px;--ease-out:cubic-bezier(.23,1,.32,1)}
body:has([data-page="quote"]:not([hidden])){letter-spacing:0;line-height:1.65;-webkit-font-smoothing:antialiased}body:has([data-page="quote"]:not([hidden])) .container{width:min(1240px,calc(100% - 80px))}body:has([data-page="quote"]:not([hidden])) p{text-wrap:pretty}body:has([data-page="quote"]:not([hidden])) h1,body:has([data-page="quote"]:not([hidden])) h2,body:has([data-page="quote"]:not([hidden])) h3{text-wrap:balance}body:has([data-page="quote"]:not([hidden])) h1{font-size:44px}body:has([data-page="quote"]:not([hidden])) h2{font-size:32px}body:has([data-page="quote"]:not([hidden])) h3{font-size:21px}
body:has([data-page="quote"]:not([hidden])) .header{position:sticky;background:#fff;backdrop-filter:none;border-color:var(--line)}body:has([data-page="quote"]:not([hidden])) .header-inner{height:80px}body:has([data-page="quote"]:not([hidden])) .brand{font-size:20px}body:has([data-page="quote"]:not([hidden])) .brand img{width:42px;height:35px}body:has([data-page="quote"]:not([hidden])) .header nav{gap:32px}body:has([data-page="quote"]:not([hidden])) .header nav a{font-size:14px;color:var(--muted)}body:has([data-page="quote"]:not([hidden])) .header nav a[aria-current=page]{color:var(--ink)}body:has([data-page="quote"]:not([hidden])) .header nav a[aria-current=page]:after{height:2px;background:var(--ink)}body:has([data-page="quote"]:not([hidden])) .header-cta.button.primary{background:#fff;color:var(--ink);border:1px solid #afbdcf}
body:has([data-page="quote"]:not([hidden])) .button{border-radius:8px;min-height:52px;padding:15px 20px;font-size:15px;font-weight:650;box-shadow:none;transition:transform 140ms var(--ease-out)}body:has([data-page="quote"]:not([hidden])) .button.small{border-radius:7px}body:has([data-page="quote"]:not([hidden])) .button:hover,body:has([data-page="quote"]:not([hidden])) .choice:hover{transform:none}body:has([data-page="quote"]:not([hidden])) .button.primary:hover{background:var(--blue);box-shadow:none}body:has([data-page="quote"]:not([hidden])) .button.soft{background:white;color:var(--ink);border:1px solid #becbdd}body:has([data-page="quote"]:not([hidden])) .button:active{transform:scale(.96)}body:has([data-page="quote"]:not([hidden])) .button:focus-visible{transform:none;transition:none}body:has([data-page="quote"]:not([hidden])) a:focus-visible,body:has([data-page="quote"]:not([hidden])) button:focus-visible,body:has([data-page="quote"]:not([hidden])) summary:focus-visible,body:has([data-page="quote"]:not([hidden])) .choice:has(input:focus-visible){outline:3px solid #386cdb;outline-offset:4px}body:has([data-page="quote"]:not([hidden])) .text-link{font-size:14px;min-height:28px;color:#254fb1}body:has([data-page="quote"]:not([hidden])) .eyebrow{font-size:13px;font-weight:650;letter-spacing:.04em;color:#4e6587;margin-bottom:16px}body:has([data-page="quote"]:not([hidden])) .page:not([hidden]){animation:none}
body:has([data-page="quote"]:not([hidden])){background:var(--bg)}body:has([data-page="quote"]:not([hidden])) .workspace-page{padding-bottom:70px}body:has([data-page="quote"]:not([hidden])) .page-heading{padding:42px 0 32px}body:has([data-page="quote"]:not([hidden])) .page-heading h1{font-size:39px;line-height:1.3;letter-spacing:-.045em;font-weight:680}body:has([data-page="quote"]:not([hidden])) .page-heading .eyebrow{font-size:13px;margin-bottom:12px}body:has([data-page="quote"]:not([hidden])) .page-heading p:last-child{font-size:15px;margin-top:14px}
body:has([data-page="quote"]:not([hidden])) .quote-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:32px;align-items:start}body:has([data-page="quote"]:not([hidden])) #quote-form{grid-column:2;grid-row:1;min-width:0}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset{background:white;border:0;border-radius:12px;padding:28px;margin:0 0 20px;transition:none;scroll-margin-top:104px}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset+fieldset{padding-top:28px}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset.is-guided{background:white;box-shadow:inset 0 0 0 2px #8ba6d9}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset.has-error{box-shadow:inset 0 0 0 2px #b42318}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset.is-guided .step{animation:none;background:var(--blue);color:#fff}body:has([data-page="quote"]:not([hidden])) legend{float:none;font-size:20px;font-weight:650;gap:12px;padding:0;margin:0 0 15px;line-height:1.5;transform:translateY(18px)}body:has([data-page="quote"]:not([hidden])) legend+*{margin-top:18px}body:has([data-page="quote"]:not([hidden])) .step{width:26px;height:26px;border-radius:50%;font-size:13px;background:#eaf0f9;color:#3c557a}body:has([data-page="quote"]:not([hidden])) .field-help{font-size:14px;color:var(--muted);margin-bottom:18px}body:has([data-page="quote"]:not([hidden])) .guide-label{font-size:12px;padding:4px 7px;background:#e9effc;color:#2c50a0;border-radius:4px}body:has([data-page="quote"]:not([hidden])) .guide-next{font-size:14px;padding:8px 0;margin-top:18px;color:#415a80}body:has([data-page="quote"]:not([hidden])) .choices{gap:12px}body:has([data-page="quote"]:not([hidden])) .choice{border:1px solid #c7d2e2;border-radius:7px;padding:17px;transition:none}body:has([data-page="quote"]:not([hidden])) .choice:has(input:checked){background:#f1f5ff;border-color:#2755cf;box-shadow:inset 0 0 0 1px #2755cf}body:has([data-page="quote"]:not([hidden])) .choice-head strong{font-size:16px;font-weight:600}body:has([data-page="quote"]:not([hidden])) .choice small{font-size:14px;line-height:1.6;color:var(--muted)}body:has([data-page="quote"]:not([hidden])) .choice .availability{font-size:12px;color:#415c7d}body:has([data-page="quote"]:not([hidden])) .choice .availability.consult{color:#79510b}body:has([data-page="quote"]:not([hidden])) .material-choices{grid-template-columns:repeat(4,1fr)}body:has([data-page="quote"]:not([hidden])) .material-choices .choice{padding:14px 10px}body:has([data-page="quote"]:not([hidden])) .material-choices .choice small{font-size:13px}body:has([data-page="quote"]:not([hidden])) .material-letter{background:#edf2f8;color:#4b607d;border-radius:5px}body:has([data-page="quote"]:not([hidden])) .consult-route{border-radius:7px;background:#f4f6fa;padding:16px;margin-top:18px}body:has([data-page="quote"]:not([hidden])) .consult-route strong{font-size:14px;font-weight:600}body:has([data-page="quote"]:not([hidden])) .consult-route small{font-size:13px;color:var(--muted)}body:has([data-page="quote"]:not([hidden])) details{border-radius:7px;background:#f4f6fa}body:has([data-page="quote"]:not([hidden])) .switch-row{border-radius:7px;background:#f4f6fa;padding:17px}body:has([data-page="quote"]:not([hidden])) .switch-row small{font-size:13px;color:var(--muted)}
body:has([data-page="quote"]:not([hidden])) input:not([type=radio]):not([type=checkbox]):not([type=file]),body:has([data-page="quote"]:not([hidden])) textarea{background:#fff;border:1px solid #b5c2d5;border-radius:6px;padding:14px;font-size:16px;transition:none}body:has([data-page="quote"]:not([hidden])) input::placeholder,body:has([data-page="quote"]:not([hidden])) textarea::placeholder{color:#607088}body:has([data-page="quote"]:not([hidden])) input:focus,body:has([data-page="quote"]:not([hidden])) textarea:focus{outline:2px solid #2755cf;outline-offset:2px;box-shadow:none}body:has([data-page="quote"]:not([hidden])) .unit-input input{font-variant-numeric:tabular-nums}body:has([data-page="quote"]:not([hidden])) .unit-input>span{font-size:14px;color:#536378}body:has([data-page="quote"]:not([hidden])) .dimension-fields{gap:12px}body:has([data-page="quote"]:not([hidden])) .color-choices{grid-template-columns:repeat(4,1fr)}body:has([data-page="quote"]:not([hidden])) .strength-choices{grid-template-columns:repeat(4,1fr)}body:has([data-page="quote"]:not([hidden])) .quote-summary{grid-column:1;grid-row:1;position:sticky;top:104px;background:var(--navy);border:0;border-radius:12px;padding:24px;color:var(--on-navy);max-height:none;overflow:visible}body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-top .eyebrow{color:#bdcde3;font-size:13px;letter-spacing:0}body:has([data-page="quote"]:not([hidden])) .quote-summary #progress-label{color:#bdcde3;font-variant-numeric:tabular-nums;font-size:13px}body:has([data-page="quote"]:not([hidden])) .quote-summary h2{color:#fff;font-size:22px;font-weight:600}body:has([data-page="quote"]:not([hidden])) .quote-summary progress{height:4px;background:#405773;color-scheme:dark;accent-color:#adc6ff}body:has([data-page="quote"]:not([hidden])) .quote-summary progress::-webkit-progress-bar{background:#405773}body:has([data-page="quote"]:not([hidden])) .quote-summary progress::-webkit-progress-value{background:#adc6ff}body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row{background:transparent;border-bottom:1px solid #40536d;padding:12px 0;font-size:14px}body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row>span,body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row .missing{color:#bdcde3}body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row strong{color:white;font-size:14px;font-weight:500;overflow-wrap:anywhere}body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-bottom{border-color:#40536d;padding-top:18px}body:has([data-page="quote"]:not([hidden])) .quote-summary #summary-state,body:has([data-page="quote"]:not([hidden])) .quote-summary .spec-help p{color:#bdcde3;font-size:13px}body:has([data-page="quote"]:not([hidden])) .quote-summary #quote-action{background:#fff;color:#182941;border-radius:7px;padding:14px 10px;min-height:48px}body:has([data-page="quote"]:not([hidden])) .quote-summary .consultation-help-button{background:transparent;border:1px solid #617896;color:#fff;border-radius:7px;margin-top:10px}body:has([data-page="quote"]:not([hidden])) .quote-summary .button:focus-visible,body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row:focus-visible{outline-color:#bad0ff}body:has([data-page="quote"]:not([hidden])) .quote-summary .error{color:#ffd7cf}body:has([data-page="quote"]:not([hidden])) .quote-summary #consult-notice{color:#563800}body:has([data-page="quote"]:not([hidden])) .quote-summary #consult-notice p{color:#69480d}body:has([data-page="quote"]:not([hidden])) .spec-help{margin-top:16px}body:has([data-page="quote"]:not([hidden])) .summary-row:focus-visible{outline:3px solid #bad0ff;outline-offset:3px}body:has([data-page="quote"]:not([hidden])) .notice{border-radius:8px}body:has([data-page="quote"]:not([hidden])) .notice.warning{background:#fff6e5;color:#79510b;border-color:#dfc184}body:has([data-page="quote"]:not([hidden])) .error{color:#b42318;font-size:14px}
body:has([data-page="quote"]:not([hidden])) .dialog-close{width:40px;height:40px;border-radius:7px;color:#3b506d;background:#edf2f8}body:has([data-page="quote"]:not([hidden])) dialog{border-radius:14px;border:1px solid #d4deea;padding:32px;box-shadow:0 24px 80px #10233d30;overscroll-behavior:contain}body:has([data-page="quote"]:not([hidden])) dialog::backdrop{background:#0b1b3288;backdrop-filter:blur(3px)}body:has([data-page="quote"]:not([hidden])) dialog h2{font-size:26px;line-height:1.4}body:has([data-page="quote"]:not([hidden])) .amount-preview{border-radius:8px}body:has([data-page="quote"]:not([hidden])) .quote-amounts dd{color:var(--blue);font-variant-numeric:tabular-nums}body:has([data-page="quote"]:not([hidden])) .quote-loading>strong{color:var(--ink)}body:has([data-page="quote"]:not([hidden])) .loading-orbit span{animation:quote-loading-pulse 1s cubic-bezier(.65,0,.35,1) infinite;background:#2755cf;width:12px;height:12px}body:has([data-page="quote"]:not([hidden])) .completion-mark{border-radius:50%}body:has([data-page="quote"]:not([hidden])) .quote-tooltip{width:290px;max-width:calc(100vw - 40px);border-radius:7px;transform:none;background:#263e5f;transition:opacity 150ms var(--ease-out)}body:has([data-page="quote"]:not([hidden])) .quote-tooltip-wrap:not(.tooltip-dismissed):is(:hover,:focus-within) .quote-tooltip{transform:none}body:has([data-page="quote"]:not([hidden])) .quote-tooltip:after{border-top-color:#263e5f}
@media(hover:hover) and (pointer:fine){body:has([data-page="quote"]:not([hidden])) .button.primary:hover{background:#1e43a5}body:has([data-page="quote"]:not([hidden])) .header-cta.button.primary:hover,body:has([data-page="quote"]:not([hidden])) .button.soft:hover{background:#f1f5fc}body:has([data-page="quote"]:not([hidden])) .choice:hover{border-color:#6c8abb}body:has([data-page="quote"]:not([hidden])) .quote-summary #quote-action:hover{background:#eaf0ff}body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row:hover{background:#203754}}
@media(max-width:1100px){body:has([data-page="quote"]:not([hidden])) .quote-layout{grid-template-columns:260px minmax(0,1fr);gap:24px}body:has([data-page="quote"]:not([hidden])) .material-choices{grid-template-columns:1fr 1fr}body:has([data-page="quote"]:not([hidden])) .header nav{gap:20px}body:has([data-page="quote"]:not([hidden])) .header-cta{display:none}}
@media(max-width:900px){body:has([data-page="quote"]:not([hidden])) .quote-layout{display:block}body:has([data-page="quote"]:not([hidden])) #quote-form{grid-column:auto}body:has([data-page="quote"]:not([hidden])) .quote-summary{position:static;margin-top:22px;padding:25px}body:has([data-page="quote"]:not([hidden])) .quote-summary #summary-rows{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}}
@media(max-width:700px){body:has([data-page="quote"]:not([hidden])) .container{width:calc(100% - 32px)}body:has([data-page="quote"]:not([hidden])) .header-inner{height:66px}body:has([data-page="quote"]:not([hidden])) .brand{font-size:17px;gap:7px}body:has([data-page="quote"]:not([hidden])) .brand img{width:34px;height:30px}body:has([data-page="quote"]:not([hidden])) .menu-toggle{background:#f1f4f8;border-radius:6px;min-width:56px;min-height:44px}body:has([data-page="quote"]:not([hidden])) .header nav{top:66px}body:has([data-page="quote"]:not([hidden])) .header nav a{min-height:44px}body:has([data-page="quote"]:not([hidden])) h2{font-size:28px}body:has([data-page="quote"]:not([hidden])) .page-heading{padding:30px 0 26px}body:has([data-page="quote"]:not([hidden])) .page-heading h1{font-size:30px}body:has([data-page="quote"]:not([hidden])) .page-heading p:last-child{font-size:14px}body:has([data-page="quote"]:not([hidden])) .page-heading p br{display:none}body:has([data-page="quote"]:not([hidden])) .workspace-page{padding-bottom:40px}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset{padding:20px;margin-bottom:16px;border-radius:10px}body:has([data-page="quote"]:not([hidden])) #quote-form fieldset+fieldset{padding-top:20px}body:has([data-page="quote"]:not([hidden])) legend{font-size:18px;transform:translateY(12px);gap:8px;flex-wrap:wrap}body:has([data-page="quote"]:not([hidden])) .step{width:25px;height:25px;font-size:12px}body:has([data-page="quote"]:not([hidden])) .guide-label{font-size:12px}body:has([data-page="quote"]:not([hidden])) .field-help{font-size:14px}body:has([data-page="quote"]:not([hidden])) .choices{gap:10px}body:has([data-page="quote"]:not([hidden])) .choice{padding:13px 10px}body:has([data-page="quote"]:not([hidden])) .choice-head strong{font-size:15px}body:has([data-page="quote"]:not([hidden])) .choice small{font-size:13px}body:has([data-page="quote"]:not([hidden])) .choice .checkmark{width:17px;height:17px}body:has([data-page="quote"]:not([hidden])) .material-choices{grid-template-columns:1fr 1fr}body:has([data-page="quote"]:not([hidden])) .material-choices .choice{padding:12px}body:has([data-page="quote"]:not([hidden])) .material-choices .choice small{font-size:13px}body:has([data-page="quote"]:not([hidden])) .dimension-fields{grid-template-columns:1fr;gap:14px}body:has([data-page="quote"]:not([hidden])) .unit-input input{font-size:16px;padding-inline:12px 42px!important}body:has([data-page="quote"]:not([hidden])) .unit-input>span{font-size:14px;right:14px}body:has([data-page="quote"]:not([hidden])) .dimension-fields input::placeholder{font-size:14px}body:has([data-page="quote"]:not([hidden])) .color-choices,body:has([data-page="quote"]:not([hidden])) .strength-choices{grid-template-columns:1fr 1fr}body:has([data-page="quote"]:not([hidden])) .quote-summary{padding:22px;border-radius:12px}body:has([data-page="quote"]:not([hidden])) .quote-summary #summary-rows{display:block}body:has([data-page="quote"]:not([hidden])) .quote-summary h2{font-size:23px}body:has([data-page="quote"]:not([hidden])) .quote-summary .button{font-size:14px}body:has([data-page="quote"]:not([hidden])) .mobile-quote-bar{position:sticky;bottom:8px;z-index:15;flex-wrap:wrap;padding:10px;gap:10px;border-radius:10px;background:#fff;box-shadow:0 6px 24px #17294122}body:has([data-page="quote"]:not([hidden])) .mobile-quote-bar>span{min-width:90px;font-size:13px;color:#475d7c}body:has([data-page="quote"]:not([hidden])) .mobile-quote-bar .button{font-size:14px;min-height:44px}body:has([data-page="quote"]:not([hidden])) .privacy-consent{font-size:14px}body:has([data-page="quote"]:not([hidden])) dialog{padding:28px 20px;border-radius:12px}body:has([data-page="quote"]:not([hidden])) dialog h2{font-size:24px}body:has([data-page="quote"]:not([hidden])) .caption{font-size:13px}body:has([data-page="quote"]:not([hidden])) .quote-tooltip{max-width:calc(100vw - 64px)}}
body:has([data-page="quote"]:not([hidden])) #quote-form fieldset{display:flow-root}
body:has([data-page="quote"]:not([hidden])) #quote-form fieldset>legend{float:left;transform:none;margin:0 0 16px}
body:has([data-page="quote"]:not([hidden])) #quote-form fieldset>legend+*{clear:both;margin-top:0}
@media(hover:none){body:has([data-page="quote"]:not([hidden])) .choice:hover{border-color:#c7d2e2}body:has([data-page="quote"]:not([hidden])) .choice:has(input:checked):hover{border-color:#2755cf}}
@media(prefers-reduced-motion:reduce){body:has([data-page="quote"]:not([hidden])) *,body:has([data-page="quote"]:not([hidden])) *::before,body:has([data-page="quote"]:not([hidden])) *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body:has([data-page="quote"]:not([hidden])) .button:active{transform:none}}
@media(forced-colors:active){body:has([data-page="quote"]:not([hidden])) a:focus-visible,body:has([data-page="quote"]:not([hidden])) button:focus-visible,body:has([data-page="quote"]:not([hidden])) .choice:has(input:focus-visible){outline:3px solid Highlight}body:has([data-page="quote"]:not([hidden])) .choice:has(input:checked){outline:2px solid Highlight}}

/* Reconcile the latest form's reference layer with the candidate's dark summary. */
body:has([data-page="quote"]:not([hidden])) .quote-summary .spec-help{background:transparent;border:0;padding:0;margin-top:16px}
body:has([data-page="quote"]:not([hidden])) .quote-summary #progress-label{display:inline}
body:has([data-page="quote"]:not([hidden])) .quote-summary progress{display:block;margin:16px 0 10px}
body:has([data-page="quote"]:not([hidden])) .quote-summary .summary-row{padding:10px 0}
body:has([data-page="quote"]:not([hidden])) .footer-bottom{color:#536378}
@media(min-width:901px){body:has([data-page="quote"]:not([hidden])) .quote-summary{max-height:calc(100dvh - 120px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bdcde3 #10233d}}
body:has([data-page="quote"]:not([hidden])) .mobile-quote-bar{bottom:max(8px,env(safe-area-inset-bottom))}
body:has([data-page="quote"]:not([hidden])) #packaging-examples-empty{font-size:14px;color:#536378;margin:16px;line-height:1.65}

/* Keep completed inputs unmistakable against the navy summary. */
body:has([data-page="quote"]:not([hidden])) #quote-action.is-quote-ready,
body:has([data-page="quote"]:not([hidden])) #mobile-quote-action.is-quote-ready {
  background: #2b60d9;
  color: #fff;
  box-shadow: 0 0 0 2px #9dbbff, 0 4px 16px #1e4dc333;
}
#quote-action:focus-visible::after, #mobile-quote-action:focus-visible::after { animation: none; display: none; }

/* The footer stays in view; only unusually long results need to scroll. */
body:has([data-page="quote"]:not([hidden])) #quote-dialog {
  width: min(700px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  padding: 24px;
  border-radius: 24px;
  overflow: hidden;
}
#quote-dialog[open] { display: flex; flex-direction: column; }
#quote-dialog > .eyebrow { flex: none; margin: 0 48px 4px 0; }
#quote-dialog #quote-dialog-title { flex: none; font-size: 25px; margin: 0 32px 18px 0; padding: 0; }
#quote-dialog-title:focus { outline: none; }
#quote-result, #quote-consultation { display: flex; flex-direction: column; min-height: 0; }
#quote-dialog .quote-dialog-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
#quote-dialog .amount-preview { margin: 0 0 18px; padding: 18px; border-radius: 10px; }
#quote-dialog .quote-amounts { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 18px; }
#quote-dialog .quote-amounts > div { min-width: 0; flex-direction: column; align-items: start; justify-content: center; gap: 4px; }
#quote-dialog .quote-amounts > div + div { border-top: 0; border-left: 1px solid #dae4f1; padding: 0 0 0 18px; }
#quote-dialog .quote-amounts dt { font-size: 13px; }
#quote-dialog .quote-amounts dd { font-size: 30px; line-height: 1.3; white-space: normal; overflow-wrap: anywhere; }
#quote-dialog .quote-amounts > div + div dd { font-size: 21px; }
#quote-dialog .amount-preview p { font-size: 12px; line-height: 1.6; margin-top: 12px; }
#quote-dialog .quote-spec-heading { display: flex; align-items: baseline; gap: 10px; margin-bottom: 4px; }
#quote-dialog .quote-spec-heading h3 { font-size: 17px; }
#quote-dialog .quote-spec-heading p { font-size: 13px; }
#quote-review { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 24px; }
#quote-review .summary-row { flex-direction: column; gap: 2px; padding: 9px 0; font-size: 12px; }
#quote-review .summary-row strong { text-align: left; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
#quote-review .summary-row:last-child:nth-child(odd) { grid-column: 1 / -1; }
#quote-review .summary-row:hover strong { color: inherit; }
#quote-dialog .quote-dialog-actions { flex: none; display: flex; flex-direction: column; align-items: center; gap: 6px; padding-top: 16px; }
#quote-dialog .quote-dialog-actions .button { min-height: 48px; padding: 12px 16px; }
#quote-dialog .quote-dialog-actions .text-link { min-height: 44px; }
#quote-dialog .quote-consultation-notice { display: flex; align-items: start; gap: 12px; padding: 18px; border-radius: 10px; background: #fff7e8; color: #79510b; }
.quote-consultation-notice > span { flex: none; width: 24px; height: 24px; border: 1.5px solid currentColor; border-radius: 50%; text-align: center; line-height: 21px; font-weight: 650; }
.quote-consultation-notice strong { font-size: 15px; }
#quote-consultation-reason { margin-top: 8px; color: #69480d; font-size: 15px; line-height: 1.7; }
#quote-dialog .quote-consultation-help { margin-top: 16px; font-size: 14px; line-height: 1.7; }
#quote-dialog .quote-loading { padding: 24px 0; overflow-y: auto; }
#quote-dialog .loading-orbit { height: 48px; margin-bottom: 16px; }
#quote-dialog .loading-orbit span:nth-child(2) { animation-delay: .12s; }
#quote-dialog .loading-orbit span:nth-child(3) { animation-delay: .24s; }
@media (max-width: 600px) {
  body:has([data-page="quote"]:not([hidden])) #quote-dialog { padding: 18px; border-radius: 20px; }
  #quote-dialog #quote-dialog-title { font-size: 21px; margin-bottom: 16px; }
  #quote-dialog .amount-preview { padding: 14px; margin-bottom: 14px; }
  #quote-dialog .quote-amounts { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  #quote-dialog .quote-amounts > div + div { flex-direction: row; justify-content: space-between; align-items: baseline; border-left: 0; border-top: 1px solid #dae4f1; padding: 10px 0 0; }
  #quote-dialog .quote-amounts dd { font-size: 28px; }
  #quote-dialog .quote-amounts > div + div dd { font-size: 18px; }
  #quote-review { column-gap: 16px; }
  #quote-dialog .quote-spec-heading { flex-wrap: wrap; gap: 2px 8px; }
  #quote-dialog .quote-consultation-notice { padding: 14px; }
}

/* Quote input recovery and quantity comparison. */
#quote-form .error, #quote-error, #submit-error { color: #962d23; background: #fff3f3; }
.quote-inline-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 12px; }
.quote-inline-actions[hidden], .mobile-quote-bar[hidden], .quote-comparison[hidden], .quote-draft[hidden] { display: none !important; }
#quantity-rule-hint { color: var(--muted, #56565a); font-size: 14px; line-height: 1.6; }
.quote-draft { margin-bottom: 20px; }
.quote-draft p { margin: 0; }
#quote-draft-status { margin: 0 0 16px; }
.quote-comparison { margin: 24px 0; padding-top: 20px; border-top: 1px solid #ddd; }
.quote-comparison h3 { margin: 0 0 8px; font-size: 20px; }
.quote-comparison-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 12px; }
.quote-comparison-item { padding: 16px; background: #f6f6f4; border-radius: 12px; min-width: 0; }
.quote-comparison-item h4 { margin: 0 0 14px; font-size: 20px; }
.quote-comparison-item dl { margin: 0 0 16px; }
.quote-comparison-item dl > div { margin-top: 10px; }
.quote-comparison-item dt { font-size: 13px; color: #595959; }
.quote-comparison-item dd { margin: 4px 0 0; font-weight: 700; overflow-wrap: anywhere; }
.quote-comparison-item .button { width: 100%; }
#quote-recovery .text-link, #quote-draft-reset { min-height: 44px; }
#quote-recovery .text-link { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 600px) { .quote-comparison-list { grid-template-columns: 1fr; } }
