.cd-commerce-tools { display: none; }
.cd-commerce-ready .cd-commerce-tools { display: flex; margin: 10px 0; min-width: 0; }
.cd-commerce-ready .summary > .cd-commerce-tools { margin: 12px 0; }
.cd-commerce-ready .summary > .cd-commerce-product-quote { margin-top: 18px; }
.cd-commerce-tools button,
.cd-commerce-tray button,
.cd-commerce-dialog button {
    display: inline-flex; align-items: center; justify-content: center; gap: 7px;
    min-height: 44px; margin: 0; padding: 9px 14px; border: 1px solid #526873;
    border-radius: 5px; background: #fff; color: #173442; box-shadow: none;
    font: inherit; font-size: 14px; font-weight: 600; line-height: 1.35;
    letter-spacing: 0; text-transform: none; white-space: normal; cursor: pointer;
}
.cd-commerce-tools button { width: 100%; }
.cd-commerce-tools button[aria-pressed="true"],
.cd-commerce-tray button[data-cd-commerce-open="quote"],
.cd-commerce-dialog #cd-commerce-send {
    background: #08636a; border-color: #08636a; color: #fff;
}
.cd-commerce-tools button:hover,
.cd-commerce-tray button:hover,
.cd-commerce-dialog button:hover { background: #e8f1f3; color: #173442; border-color: #173442; }
.cd-commerce-tools button:focus-visible,
.cd-commerce-tray button:focus-visible,
.cd-commerce-dialog :is(button, input, textarea, a, [tabindex]):focus-visible {
    outline: 3px solid #b54800; outline-offset: 3px;
}
.cd-commerce-tools button:disabled,
.cd-commerce-tray button:disabled,
.cd-commerce-dialog button:disabled { opacity: .55; cursor: default; }
.cd-commerce-tray[hidden], .cd-commerce-dialog [hidden] { display: none !important; }
.cd-commerce-tray {
    box-sizing: border-box; position: fixed; z-index: 10010; left: 16px; bottom: 16px;
    display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
    max-width: min(700px, calc(100% - 32px)); padding: 10px 12px;
    border: 1px solid #a8bbc5; border-radius: 6px; background: #fff; color: #173442;
    box-shadow: 0 3px 18px #0002; font-size: 14px; line-height: 1.5;
}
body.cd-commerce-has-selection { padding-bottom: 104px; }
.cd-commerce-tray #cd-commerce-count { overflow-wrap: anywhere; }
.cd-commerce-dialog {
    --cd-commerce-space: 24px;
    box-sizing: border-box; width: min(1000px, calc(100% - 32px)); max-width: none;
    max-height: calc(100dvh - 32px); margin: auto; padding: var(--cd-commerce-space);
    border: 1px solid #a8bbc5; border-radius: 7px; background: #fff; color: #173442;
    font-size: 16px; line-height: 1.5; overflow: auto; overscroll-behavior: contain;
}
.cd-commerce-dialog::backdrop { background: #0009; }
.cd-commerce-dialog *, .cd-commerce-tray * { box-sizing: border-box; letter-spacing: 0; }
.cd-commerce-dialog .cd-commerce-heading {
    display: flex; align-items: flex-start; justify-content: space-between; gap: 16px;
    position: sticky; top: calc(-1 * var(--cd-commerce-space)); z-index: 2;
    margin: calc(-1 * var(--cd-commerce-space)) calc(-1 * var(--cd-commerce-space)) 0;
    padding: var(--cd-commerce-space); padding-bottom: 12px;
    background: #fff; border-bottom: 1px solid #beced5;
}
.cd-commerce-dialog #cd-commerce-title { margin: 0; padding: 0; font-size: 24px; line-height: 1.25; color: #173442; overflow-wrap: anywhere; }
.cd-commerce-tray .cd-commerce-icon,
.cd-commerce-dialog .cd-commerce-icon { flex: 0 0 44px; width: 44px; height: 44px; padding: 9px; }
.cd-commerce-tools .dashicons,
.cd-commerce-tray .dashicons,
.cd-commerce-dialog .dashicons { font-size: 20px; line-height: 20px; width: 20px; height: 20px; flex-shrink: 0; }
.cd-commerce-dialog .cd-commerce-tabs { display: flex; gap: 0; margin: 18px 0 12px; border-bottom: 1px solid #beced5; }
.cd-commerce-dialog .cd-commerce-tabs button { flex: 1 1 0; border: 0; border-radius: 0; border-bottom: 3px solid transparent; }
.cd-commerce-dialog .cd-commerce-tabs button[aria-selected="true"] { border-bottom-color: #08636a; color: #07565c; background: #eaf5f5; }
.cd-commerce-dialog #cd-commerce-status { margin: 12px 0; color: #173442; }
.cd-commerce-dialog #cd-commerce-status:empty { display: none; }
.cd-commerce-dialog a { color: #00606d; text-decoration: underline; overflow-wrap: anywhere; }
.cd-commerce-dialog .cd-commerce-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid #beced5; }
.cd-commerce-dialog .cd-commerce-table { table-layout: fixed; width: 100%; min-width: 660px; margin: 0; border: 0; border-collapse: collapse; color: #173442; background: #fff; font-size: 14px; }
.cd-commerce-dialog .cd-commerce-table caption { text-align: left; font-weight: 600; padding: 12px; }
.cd-commerce-dialog .cd-commerce-table th,
.cd-commerce-dialog .cd-commerce-table td { padding: 12px; border: 1px solid #beced5; background: #fff; color: #173442; vertical-align: top; text-align: left; overflow-wrap: anywhere; white-space: normal; }
.cd-commerce-dialog .cd-commerce-table th { font-weight: 600; }
.cd-commerce-dialog .cd-commerce-table tbody th { background: #edf3f5; }
.cd-commerce-dialog .cd-commerce-table img { display: block; width: 100%; height: 120px; object-fit: contain; margin: 0 0 12px; background: #fff; }
.cd-commerce-dialog .cd-commerce-table thead .cd-commerce-icon { display: flex; margin-top: 12px; }
.cd-commerce-dialog .cd-commerce-price { display: block; color: #173442; font-weight: 600; }
.cd-commerce-dialog .cd-commerce-price del { color: #52636c; margin-right: 6px; }
.cd-commerce-dialog .cd-commerce-price ins { text-decoration: none; background: none; }
.cd-commerce-dialog .cd-commerce-quote-item { display: grid; grid-template-columns: minmax(0, 1fr) 88px 44px; align-items: center; gap: 12px; padding: 14px 0; border-bottom: 1px solid #beced5; }
.cd-commerce-dialog .cd-commerce-quote-item small { display: block; color: #52636c; }
.cd-commerce-dialog .cd-commerce-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.cd-commerce-dialog label { display: block; min-width: 0; font-size: 14px; color: #173442; }
.cd-commerce-dialog :is(input:not([type="checkbox"]), textarea) { display: block; box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; margin: 5px 0 0; padding: 10px; border: 1px solid #708893; border-radius: 4px; background: #fff; color: #173442; font: inherit; font-size: 16px; line-height: 1.4; }
.cd-commerce-dialog textarea { resize: vertical; }
.cd-commerce-dialog .cd-commerce-wide { grid-column: 1 / -1; }
.cd-commerce-dialog .cd-commerce-consent { display: flex; gap: 10px; align-items: flex-start; margin: 20px 0 12px; }
.cd-commerce-dialog input[type="checkbox"] { flex: 0 0 20px; width: 20px; height: 20px; min-height: 20px; margin: 2px 0 0; accent-color: #08636a; }
.cd-commerce-dialog .cd-commerce-note { color: #52636c; font-size: 14px; margin: 16px 0; }
.cd-commerce-honeypot, .cd-commerce-announcement { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip-path: inset(50%); white-space: nowrap !important; }
/* The dialog sits outside main, where the legacy dark-footer rules also apply. */
html body #cd-commerce-dialog,
html body #cd-commerce-dialog :is(h2, p, label, th, td, input, textarea, small, .cd-commerce-price),
html body #cd-commerce-tray {
    color: #173442 !important; -webkit-text-fill-color: #173442 !important;
}
html body #cd-commerce-dialog #cd-commerce-title { font-size: 24px !important; line-height: 1.25 !important; margin: 0 !important; }
html body :is(#cd-commerce-dialog, #cd-commerce-tray, .cd-commerce-tools) button {
    min-height: 44px !important; font-size: 14px !important; line-height: 1.35 !important;
    background: #fff !important; color: #173442 !important; -webkit-text-fill-color: #173442 !important;
    border: 1px solid #526873 !important; box-shadow: none !important;
    white-space: normal !important; letter-spacing: 0 !important;
    background-image: none !important;
}
html body #cd-commerce-dialog .cd-commerce-tabs button { border: 0 !important; border-bottom: 3px solid transparent !important; }
html body #cd-commerce-dialog .cd-commerce-tabs button[aria-selected="true"] {
    border-bottom-color: #08636a !important; background: #eaf5f5 !important;
}
html body #cd-commerce-tray button[data-cd-commerce-open="quote"],
html body #cd-commerce-dialog #cd-commerce-send,
html body :is(#cd-commerce-dialog, #cd-commerce-tray, .cd-commerce-tools) button[aria-pressed="true"] {
    background: #08636a !important; border-color: #08636a !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
}
html body #cd-commerce-dialog :is(input:not([type="checkbox"]), textarea) { background: #fff !important; border-color: #708893 !important; }
html body #cd-commerce-dialog a { color: #00606d !important; -webkit-text-fill-color: #00606d !important; }
.cd-commerce-contact-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.cd-commerce-contact-actions > button { flex: 1 1 170px; }
html body :is(#cd-commerce-dialog, #cd-commerce-tray, .cd-commerce-tools) button[data-cd-commerce-quote],
html body #cd-commerce-dialog #cd-commerce-whatsapp {
    background: #08636a !important; border-color: #08636a !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
}
.cd-commerce-product-quote button { width: 100%; }
.cd-commerce-destination { font-size: 13px; overflow-wrap: anywhere; }
@media (max-width: 600px) {
    .cd-commerce-tray { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px; left: 8px; bottom: 8px; max-width: calc(100% - 16px); gap: 6px; padding: 8px; }
    .cd-commerce-tray #cd-commerce-count { grid-column: 1 / -1; }
    .cd-commerce-tray button { padding: 8px 10px; }
    body.cd-commerce-has-selection { padding-bottom: 132px; }
    .cd-commerce-dialog { --cd-commerce-space: 16px; width: calc(100% - 16px); max-height: calc(100dvh - 16px); }
    .cd-commerce-dialog #cd-commerce-title { font-size: 21px; }
    .cd-commerce-dialog .cd-commerce-fields { grid-template-columns: minmax(0, 1fr); }
    .cd-commerce-dialog .cd-commerce-quote-item { grid-template-columns: minmax(0, 1fr) 72px 44px; gap: 8px; }
    .cd-commerce-dialog #cd-commerce-send { width: 100%; }
}
