﻿/* Soltek Cotiza brand system r51.
   Identity: plum. Primary actions: mandarin. Alternatives: plum outline.
   Guidance: warm yellow. WhatsApp: green. Destructive actions: red.
   Geometry and interactions remain in styles.css/theme.css/app.js. */
:root{
  --brand-plum:#3b1d5a;--brand-plum-deep:#28133e;--brand-grape:#654382;
  --brand-grape-hover:#4b2c65;--brand-grape-soft:#f4eef9;--brand-outline:#9376aa;
  --brand-orange:#f58a32;--brand-orange-light:#ffa64d;--brand-orange-ink:#49250e;
  --brand-orange-soft:#fff0df;--brand-danger:#aa3547;--brand-danger-soft:#fff2f3;
  --brand-success:#176f45;--brand-success-soft:#ebf8f0;
  --bg:#f8f7fb;--paper:#fff;--ink:#2e2837;--muted:#6b6176;--line:#e3dce9;
  --primary:var(--brand-grape);--primary-hover:var(--brand-grape-hover);--primary-soft:var(--brand-grape-soft);
  --accent:var(--brand-orange);--accent-soft:var(--brand-orange-soft);--accent-ink:var(--brand-orange-ink);
  --blue:var(--brand-grape);--blue-soft:var(--brand-grape-soft);
  --quote:var(--brand-grape);--quote-hover:var(--brand-grape-hover);--quote-ink:var(--brand-plum);
  --quote-soft:var(--brand-grape-soft);--quote-border:var(--line);--success:var(--brand-success);
  --quote-action:linear-gradient(110deg,var(--brand-orange-light),var(--brand-orange));
  --quote-action-hover:linear-gradient(110deg,#ff9c40,#ec7921);--quote-action-ink:var(--brand-orange-ink);
}
body{background:radial-gradient(ellipse at 0% 0%,#eae0f680,transparent 45%),radial-gradient(ellipse at 100% 35%,#e8eef880,transparent 48%),linear-gradient(135deg,#faf8fc,#f2f2fa 52%,#f8f4fa);color:var(--ink)}
.site-header::before{background:linear-gradient(110deg,var(--brand-plum),#4b276a)}
.site-header .header-label{color:#f5edf9;border-left-color:#ffffff40}
.site-footer::before{background:linear-gradient(110deg,#241235,var(--brand-plum))}
.site-footer,.site-footer .footer-note,.footer-mobile-copy{color:#f5edf9}
.hero h1,.hero h1 span,h2,.bag-heading h2,.bag-heading>div,.field-label,.review-item strong{color:var(--ink)}
.hero p,.dialog-description,.bag-empty p,.field-hint,.review-total span,.review-item p,.bag-item-meta,.bag-item-store,.quiet-note,.action-hint,.bag-summary{color:var(--muted)}
.overline,.section-number{color:#7d708b}.section-number{opacity:.45}
.composer,.bag-panel,body.has-items .bag-panel{background:var(--paper);border-color:var(--line);box-shadow:0 8px 28px #39204408}
.bag-heading,body.has-items .bag-heading,.bag-item,.review-item,.confidence-strip{border-color:var(--line)}
.bag-count,body.has-items .bag-count,.mobile-bag-dialog .bag-count{background:var(--brand-orange-soft);color:#874015}
.bag-heading .icon,.bag-empty .empty-illustration,.bag-item-image .icon{color:var(--brand-grape)}
.bag-empty .empty-illustration{background:var(--brand-grape-soft)}
.bag-empty .empty-illustration>span{background:#e9def3;color:var(--brand-grape)}
.journey-step,.journey-step.active{color:var(--muted)}.journey-step.active strong{color:var(--brand-plum)}
.journey-step>span{background:#e9e3ee;color:#655771}.journey-step.active>span{background:var(--brand-plum);color:#fff}.journey-line{background:#ded5e7}
.mode-tabs{background:#f5f2f8;border-color:var(--line)}.mode-tab{color:var(--muted)}
.mode-tab.active{background:#fff;color:var(--brand-grape);outline-color:var(--brand-outline)}
.new-label{background:#eae0f3;color:#573471}
.text-input,.url-field,.quantity-control,.contact-value-field{background:#fff;border-color:#b9adc7}
.text-input::placeholder,.url-field input::placeholder{color:#7c7187}
.text-input:focus,.url-field:focus-within,.contact-value-field:focus-within{border-color:var(--brand-grape);box-shadow:0 0 0 3px #65438220}
.url-inspect,.quantity-control button{background:#f2edf6;color:var(--brand-grape)}
.quantity-control button:hover:not(:disabled){background:#e8ddf0}
.quantity-control button:disabled{background:#f5f3f7;color:#b0a6b8}
button:focus-visible,a:focus-visible,summary:focus-visible,.mode-tab:focus-visible{outline:3px solid var(--brand-grape);outline-offset:3px}
/* Primary: one clear next step within each form or dialog. */
body #addButton:not(:disabled),body #reviewButton:not(:disabled),body #goContact:not(:disabled),body #sendQuote:not(:disabled),body #mobileReview:not(:disabled),body #browserAddProduct:not(:disabled),body #contactForm:has([value=whatsapp]:checked) #sendQuote:not(:disabled){background:var(--quote-action);color:var(--brand-orange-ink);border-color:transparent;box-shadow:0 5px 16px #d5762024}
body #addButton:hover:not(:disabled),body #reviewButton:hover:not(:disabled),body #goContact:hover:not(:disabled),body #sendQuote:hover:not(:disabled),body #mobileReview:hover:not(:disabled),body #browserAddProduct:hover:not(:disabled),body #contactForm:has([value=whatsapp]:checked) #sendQuote:hover:not(:disabled){background:var(--quote-action-hover);color:var(--brand-orange-ink);border-color:transparent;box-shadow:0 7px 20px #d5762030}
/* Secondary: an alternate route, never another orange block beside the primary. */
body #quoteSingleLink:not(:disabled),body #browserUseLink:not(:disabled),.button-ghost:not(:disabled){background:#faf7fd;color:#573471;border:1px solid var(--brand-outline);box-shadow:none}
body #quoteSingleLink:hover:not(:disabled),body #browserUseLink:hover:not(:disabled),.button-ghost:hover:not(:disabled){background:#eee5f6;color:#43245c;border-color:var(--brand-grape);box-shadow:none}
/* The bag is navigation; a quiet white surface preserves the main action hierarchy. */
body .header-bag,body.has-items .header-bag,body .browser-view-bag{background:#fffaf5;color:var(--brand-plum);border:1px solid #eadfd2;box-shadow:0 3px 12px #28133e10}
body .header-bag:hover,body.has-items .header-bag:hover,body .browser-view-bag:hover{background:#fff0df;color:var(--brand-plum);border-color:#d5a879;box-shadow:0 4px 14px #28133e18}
body .header-bag .icon,body.has-items .header-bag .icon{color:var(--brand-plum)}
body .header-bag .count-badge,body.has-items .header-bag .count-badge,body .browser-view-bag>span{background:#ffe0b7;color:#75380d}
.header-calculator,.header-calculator:hover{background:#fff;color:#61556d;border-color:#ded5e7}
.compact-navigation .header-actions{border-color:var(--line);box-shadow:0 12px 32px #28133e1f}
/* Supporting controls share the same muted grape family. */
.mini-quantity,.review-quantity{background:#faf7fd;border-color:#cfc0dc}
.mini-quantity button,.review-quantity button{color:var(--brand-grape)}
.mini-quantity button:hover:not(:disabled),.review-quantity button:hover:not(:disabled){background:#eae0f3}
.review-quantity>span,.mini-quantity>span{color:var(--brand-plum)}
.bag-item button[data-action=edit]{background:#f1eaf7;color:var(--brand-grape)}
.review-total,.mobile-bag-bar .mobile-quote-summary strong{color:var(--ink)}
.mobile-bag-bar .mobile-quote-summary>span{color:var(--muted)}
.mobile-bag-bar:not([hidden]),body.has-items .mobile-bag-bar:not([hidden]){background:#fffdfbf7;border-color:var(--line);box-shadow:0 8px 28px #28133e1c}
.coupon-disclosure summary,.quote-message summary,.other-store-form label,.browser-product-label,.browser-source-offer a{color:var(--brand-grape)}
.coupon-applied{background:#f0e8f7;color:#573471}.coupon-remove{color:#573471}
.product-preview,.reference-box,.browser-choice{background:#faf8fc;border-color:var(--line)}
.store-button{background:#fff;border-color:var(--line);color:var(--ink)}.store-button:hover{background:#f6f0fa;border-color:var(--brand-outline)}
.explore-globe{background:var(--brand-grape-soft);color:var(--brand-grape)}
.store-button>.icon,.other-store .store-monogram,.browser-choice input{color:var(--brand-grape)}
.browser-choice input,.browser-consent-bar input{accent-color:var(--brand-grape)}
/* Guidance keeps the owner's warm yellow and animated hand. */
.link-start-guide{border-color:#e2c16c;background:linear-gradient(110deg,#fff8d2,#ffe5a0);box-shadow:0 3px 10px #b5841310}
.link-start-copy strong{color:#674516}.link-start-eyebrow{color:#79591d}.link-start-caption{color:#735a31}
.link-ready-heading{background:#faf8fc;border-color:var(--line);color:var(--ink)}
/* Contact semantics: green identifies WhatsApp; red is reserved for errors/removal. */
.contact-choice label>span{background:#fff;border-color:#c8bbd4;color:var(--brand-grape)}
.contact-choice input[value=email]:checked+span{background:#f3edf8;border-color:var(--brand-grape);color:#573471}
.contact-choice label:has([value=whatsapp])>span{background:#f4fbf6;color:#176f45;border-color:#b7d8c4}
.contact-choice input[value=whatsapp]:checked+span{background:var(--brand-success-soft);color:#176f45;border-color:#278655;box-shadow:0 0 0 1px #27865515}
.contact-value-field.is-phone:not(:has([aria-invalid=true])){border-color:#98c8ac}
.contact-value-field.is-phone:focus-within:not(:has([aria-invalid=true])){border-color:#278655;box-shadow:0 0 0 3px #27865518}
.contact-value-field.is-phone .country-select-control{background:#f0f8f3;border-color:#c8dfd1}
.contact-value-field.is-phone .country-select-display,.contact-value-field.is-phone .country-select-display .icon,#contactForm:has([value=whatsapp]:checked) #contactValueLabel{color:#246d45}
.clear-quote-button,.review-remove,.bag-item button[data-action=delete]{color:var(--brand-danger);border-color:#e5bfc7;background:#fff}
.clear-quote-button:hover,.review-remove:hover,.bag-item button[data-action=delete]:hover{color:#8b2638;background:var(--brand-danger-soft);border-color:#cb8795}
.button-danger{background:var(--brand-danger);border-color:var(--brand-danger);color:#fff}
.button-danger:hover:not(:disabled){background:#8b2638;border-color:#8b2638;color:#fff}
.field-error{color:var(--brand-danger)}.text-input[aria-invalid=true],.contact-value-field:has([aria-invalid=true]){border-color:var(--brand-danger)}
/* Dialogs and the explorer belong to Cotiza; retailer branding inside frames is untouched. */
dialog{background:#fff;border-color:var(--line);box-shadow:0 18px 70px #28133e29}
dialog::backdrop{background:#20132e85}.dialog-top .icon-button{background:#f2eef6;color:#6b5a79}
.modal-eyebrow{color:var(--brand-grape)}
.browser-toolbar,.browser-consent-bar,.browser-mode-row{background:#f8f5fb;border-color:var(--line);color:var(--muted)}
.browser-toolbar form{background:#fff;border-color:#b9adc7}.browser-status{background:#f1edf7;color:#5c4b6d}
.browser-product-bar{border-color:var(--line)}.browser-product-bar strong{color:var(--ink)}
.browser-consent-bar a{color:var(--brand-grape)}.toast{background:var(--brand-plum);color:#fff}.toast .icon{color:#ffe0a6}
.success-icon{background:var(--brand-success-soft);color:var(--brand-success)}
/* Disabled is a state, independent of the primary/secondary role. */
.button:disabled:not([aria-busy=true]){background:#eeeaf1!important;border-color:#e4dfe9!important;color:#908797!important;box-shadow:none!important}
#quoteSingleLink .spinner{border-color:#65438240;border-top-color:var(--brand-grape)}
@media(max-width:690px){
  /* Accommodate a two-line guide heading without clipping the warm card. */
  .link-entry-heading:has(.link-start-guide:not([hidden])),.link-start-guide{height:110px;min-height:110px}
  .link-start-copy{flex:1;min-width:0}.link-start-copy strong{font-size:20px;line-height:1.3}
  .site-footer .footer-note,.footer-mobile-copy{color:#f5edf9}
}
@media(max-width:370px){.link-entry-heading:has(.link-start-guide:not([hidden])),.link-start-guide{height:124px;min-height:124px}}

/* r52: choosing a route looks distinct from entering a URL. */
.mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;border:0;background:none;overflow:visible;margin-bottom:22px}
.mode-tab{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:11px;position:relative;min-height:76px;height:auto;padding:13px 16px;border:1px solid #d7ccdf;border-radius:12px;background:#fff;color:#61526d;font-size:15px;font-weight:500;text-align:left;white-space:normal;box-shadow:none;line-height:1.4}
.mode-tab.active{background:#f3edf8;border-color:var(--brand-grape);color:var(--brand-plum);outline:0;box-shadow:0 0 0 1px var(--brand-grape)}
.mode-tab:hover:not(.active){background:#faf7fd;border-color:var(--brand-outline)}
.mode-tab:focus-visible{outline:3px solid var(--brand-grape);outline-offset:4px}
.mode-choice-mark{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border:2px solid #a492b3;border-radius:50%;background:#fff}
.mode-tab.active .mode-choice-mark{border-color:var(--brand-grape)}
.mode-tab.active .mode-choice-mark::after{content:'';width:10px;height:10px;border-radius:50%;background:var(--brand-grape)}
.mode-option-copy{display:block;min-width:0;line-height:1.4}.mode-tab .mode-option-copy .new-label{display:inline-flex;align-items:center;width:auto;flex-basis:auto;margin:2px 0 2px 4px;padding:2px 5px;font-size:8px;line-height:1.2;vertical-align:middle}
@media(max-width:1000px){.mode-tabs{gap:10px}.mode-tab{gap:9px;padding:12px;font-size:14px;min-height:78px}}
@media(max-width:370px){.mode-tabs{gap:8px}.mode-tab{gap:7px;padding:11px 9px;font-size:14px;min-height:90px}.mode-choice-mark{width:18px;height:18px;flex-basis:18px}.mode-tab.active .mode-choice-mark::after{width:8px;height:8px}}

/* r53: the single-product route uses a solid existing grape brand color. */
body #quoteSingleLink:not(:disabled),body #browserUseLink:not(:disabled){background:var(--brand-grape);color:#fff;border-color:var(--brand-grape);box-shadow:none}
body #quoteSingleLink:hover:not(:disabled),body #browserUseLink:hover:not(:disabled){background:var(--brand-grape-hover);color:#fff;border-color:var(--brand-grape-hover);box-shadow:none}
#quoteSingleLink .spinner{border-color:#ffffff66;border-top-color:#fff}

/* r54: the cue belongs to the actual input, with no separate colored target. */
#productForm .link-entry-heading{display:block;position:static;min-height:0;height:auto;padding:0;margin:0 0 12px}
#productForm .link-entry-heading .field-label{display:block;margin:0;color:var(--brand-plum);font-size:16px;font-weight:600;line-height:1.4}
#productForm .url-field{position:relative;overflow:visible}
#productForm .link-start-guide{display:block;position:absolute;inset:auto;right:22px;top:-31px;width:52px;height:52px;min-height:0;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;pointer-events:none;z-index:2;overflow:visible}
#productForm .link-start-guide:hover{background:none;box-shadow:none}
#productForm .link-start-guide::after{display:none}
#productForm .link-start-hand{width:52px;height:52px;stroke:#8a5b17;fill:#fffdf1;stroke-width:1.65}
#productForm .url-field.is-awaiting-link{background:#fff;border-color:#b9adc7;box-shadow:none}
#productForm:has(.link-start-guide.is-in-view:not([hidden])) .url-field.is-awaiting-link:not(:focus-within){animation:none}
#productForm .url-field.is-awaiting-link:focus-within{border-color:var(--brand-grape);box-shadow:0 0 0 3px #65438220}
#productForm .url-field.is-awaiting-link input{padding-right:65px}
#reviewButton{display:grid;grid-template-columns:24px minmax(0,1fr) 24px;align-items:center;justify-content:stretch;gap:8px;padding-inline:18px;text-align:center}
#reviewButton .review-button-label{grid-column:2;grid-row:1;text-align:center}
#reviewButton>.icon{grid-column:3;grid-row:1;justify-self:end;margin:0}
@media(max-width:690px){#productForm .link-start-guide{right:12px;top:-28px;width:48px;height:48px}#productForm .link-start-hand{width:48px;height:48px}#productForm .url-field.is-awaiting-link input{padding-right:52px}}

/* r55: handwriting and the hand form one moving callout at the input. */
@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url('./assets/fonts/caveat-latin-700.woff2') format('woff2')}
#productForm .link-entry-heading{height:30px;min-height:30px;margin:0 0 12px}
#productForm .link-start-guide{display:flex;align-items:center;gap:10px;right:20px;top:-44px;width:max-content;height:60px;max-width:calc(100% - 20px);transform-origin:88% 80%}
#productForm .link-guide-caption{display:block;font-family:Caveat,'Segoe Print',cursive;font-size:38px;font-weight:700;line-height:1;letter-spacing:.2px;white-space:nowrap;color:#7b4a20;transform:translateY(-7px) rotate(-5deg)}
#productForm .link-start-hand{flex:0 0 52px;animation:none!important;transform:none}
#productForm .link-start-guide.is-in-view{animation:link-cue-callout 1.8s ease-in-out infinite}
@keyframes link-cue-callout{0%,100%{transform:translateY(-3px) rotate(-3deg)}35%,65%{transform:translateY(7px) rotate(1deg)}50%,80%{transform:translateY(0) rotate(-1deg)}}
@media(max-width:690px){#productForm .link-start-guide{right:12px;top:-42px;gap:8px}#productForm .link-guide-caption{font-size:34px}#productForm .link-start-hand{flex-basis:48px}}
@media(max-width:370px){#productForm .link-guide-caption{font-size:32px}}
@media(prefers-reduced-motion:reduce){#productForm .link-start-guide.is-in-view{animation:none;transform:none}}

/* r58: only products scroll; quotation extras and actions stay in view. */
#checkoutDialog.is-review{overflow:hidden;max-height:calc(100dvh - 32px)}
#checkoutDialog.is-review>.dialog-inner{display:flex;flex-direction:column;max-height:calc(100dvh - 34px);min-height:0;padding:24px 30px}
#checkoutDialog.is-review .dialog-top{flex:0 0 auto;justify-content:flex-end;margin-bottom:18px}
#checkoutDialog.is-review .dialog-top>.brand{display:none}
#checkoutDialog.is-review #reviewStep{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
#checkoutDialog.is-review #reviewStep>.modal-eyebrow,#checkoutDialog.is-review #checkoutTitle,#checkoutDialog.is-review .review-list-tools{flex:0 0 auto}
#checkoutDialog.is-review #reviewItems{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b9a3ca transparent;scrollbar-gutter:stable;margin:0;padding-right:7px}
#checkoutDialog .review-footer{flex:0 0 auto;padding-top:12px;border-top:1px solid var(--line);background:#fff;box-shadow:0 -8px 16px #3b1d5a06}
#checkoutDialog .review-footer #reviewCouponSlot{max-height:none;overflow:visible}
#checkoutDialog .review-footer .coupon-disclosure{margin:0 0 9px}
#checkoutDialog .review-footer .coupon-disclosure summary{min-height:32px}
#checkoutDialog .review-footer .quote-message{margin:0}
#checkoutDialog .review-footer .dialog-actions{margin-top:16px}
@media(max-width:690px){#checkoutDialog.is-review>.dialog-inner{padding:20px 21px}#checkoutDialog.is-review .dialog-top{margin-bottom:14px}#checkoutDialog.is-review #checkoutTitle{font-size:23px;line-height:1.25}#checkoutDialog .review-footer{padding-top:10px}#checkoutDialog .review-footer .dialog-actions{margin-top:12px}}
@media(max-height:650px){
 #checkoutDialog.is-review>.dialog-inner{position:relative;padding-top:16px;padding-bottom:16px}
 #checkoutDialog.is-review .dialog-top{position:absolute;top:10px;right:12px;margin:0}
 #checkoutDialog.is-review .modal-eyebrow{display:none}
 #checkoutDialog.is-review #checkoutTitle{padding-right:32px;font-size:20px;line-height:1.25;margin-bottom:8px}
 #checkoutDialog.is-review .review-list-tools{flex-wrap:nowrap;gap:8px;margin:8px 0}
 #checkoutDialog.is-review .review-total{flex:0 1 auto;gap:6px}
 #checkoutDialog.is-review .review-total strong{font-size:27px}
 #checkoutDialog.is-review .review-total span{font-size:14px}
 #checkoutDialog.is-review .clear-quote-button{padding:7px 8px;gap:5px;font-size:12px;white-space:nowrap}
 #checkoutDialog .review-footer #reviewCouponSlot{max-height:none}
 #checkoutDialog .review-footer .dialog-actions{flex-direction:row;align-items:stretch;gap:10px;margin-top:10px}
 #checkoutDialog .review-footer .dialog-actions .button{flex:1;min-width:0;width:auto;min-height:48px;padding:10px 8px;font-size:13px;white-space:normal}
}

/* r59: high-contrast acknowledgement, with one direct review action. */
#toast{position:fixed;inset:20px 20px auto auto;transform:none;margin:0;width:min(420px,calc(100vw - 32px));max-width:none;padding:18px 48px 18px 18px;border:1px solid #d5e7db;border-left:5px solid #23834c;border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 8px 36px #28133e30;font-size:15px;white-space:normal;z-index:100;display:block;animation:toast-enter .2s ease-out}
#toast .toast-status{display:flex;align-items:flex-start;gap:12px}#toast .toast-check{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#e7f5ec;color:#176938}#toast .toast-check .icon{color:inherit;width:22px;height:22px;stroke-width:2.5}
#toast .toast-copy{min-width:0;line-height:1.45}#toastTitle{display:block;font-size:16px;font-weight:650}#toastDetail{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:14px;font-weight:400;color:var(--muted);margin-top:4px}
#toast .toast-review{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px 0 0 46px;padding:10px 14px;min-height:44px;border-radius:7px;background:var(--brand-grape);color:#fff;font-size:14px;font-weight:600}#toast .toast-review .icon{width:17px;height:17px;color:inherit}#toast .toast-review:hover{background:#4b2c65}
#toast .toast-close{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:#6b5a79}#toast .toast-close:hover{background:#f2eef6}#toast .toast-close .icon{color:inherit;width:19px;height:19px}
@keyframes toast-enter{from{opacity:0;translate:0 -10px}to{opacity:1;translate:0 0}}
@media(max-width:690px){#toast{inset:12px 12px auto;width:calc(100vw - 24px);padding:16px 46px 16px 14px}#toastTitle{font-size:16px}#toast .toast-review{margin-left:46px}}
@media(prefers-reduced-motion:reduce){#toast{animation:none}}

/* r60: breathing room before the purple footer. */
.site-shell>main{padding-bottom:72px}
@media(max-width:690px){.site-shell>main{padding-bottom:48px}}

/* r61: expanded extras grow upward, giving space back when collapsed. */
#checkoutDialog .review-footer .quote-message textarea{height:90px;min-height:90px;max-height:90px;resize:none}
@media(max-height:650px){
 #checkoutDialog.is-review:has(#quoteCoupon[open],#quoteMessageDisclosure[open]) #checkoutTitle{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
 #checkoutDialog.is-review:has(#quoteCoupon[open],#quoteMessageDisclosure[open]) .review-list-tools{margin-top:32px}
 #checkoutDialog .review-footer .quote-message textarea{height:72px;min-height:72px;max-height:72px}
 #checkoutDialog .review-footer .coupon-disclosure[open] summary{margin-bottom:6px}
}
@media(max-height:650px) and (min-width:561px){
 #checkoutDialog .review-footer #quoteExtras:has(details[open]){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
}

/* r62: acknowledgement lives in the counters, with one consistent solid color. */
.quote-count-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:visible}
#bagCount,body.has-items #bagCount,#headerCount,body.has-items #headerCount,#browserBagCount,body.has-items #browserBagCount,#mobileBagCount{display:inline-flex;align-items:center;justify-content:center;min-width:52px;width:auto;height:52px;padding:0 10px;border-radius:13px;background:#654382;color:#fff;font-size:29px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
#headerCount,body.has-items #headerCount,#browserBagCount,body.has-items #browserBagCount{min-width:36px;height:36px;border-radius:10px;padding:0 8px;font-size:22px}
.mobile-count-line{display:flex;align-items:center;gap:10px}.mobile-bag-bar .mobile-count-line>#mobileBagLabel{color:var(--ink);font-size:18px;font-weight:600}.mobile-bag-bar .mobile-quote-summary{gap:5px}
.quote-count-wrap.count-added::after{content:attr(data-increment);position:absolute;bottom:75%;left:50%;padding:3px 8px;border-radius:99px;background:#654382;color:#fff;font-size:19px;font-weight:700;line-height:1.2;pointer-events:none;z-index:3;animation:count-fly 1.2s ease-out both}
.quote-count-wrap.count-added>span,.quote-count-wrap.count-added>strong{animation:count-pump .55s ease-out}
@keyframes count-pump{0%,100%{transform:scale(1)}35%{transform:scale(1.24)}65%{transform:scale(.94)}}
@keyframes count-fly{0%{opacity:0;transform:translate(-50%,8px) scale(.7)}15%,60%{opacity:1}30%{transform:translate(-50%,-12px) scale(1.1)}100%{opacity:0;transform:translate(-50%,-38px) scale(1)}}
@media(max-width:370px){#mobileBagCount{min-width:46px;height:46px;font-size:27px}.mobile-count-line{gap:7px}.mobile-bag-bar .mobile-count-line>#mobileBagLabel{font-size:16px}}
@media(prefers-reduced-motion:reduce){.quote-count-wrap.count-added>span,.quote-count-wrap.count-added>strong{animation:none}.quote-count-wrap.count-added::after{animation:none;bottom:100%;transform:translateX(-50%)}}

.browser-view-bag>.quote-count-wrap{padding:0;background:transparent}

.mobile-bag-bar .mobile-quote-summary{flex:1;min-width:0}.mobile-count-line{flex-wrap:wrap;gap:4px 10px}.mobile-count-line>#mobileBagLabel{flex-shrink:0}
