.rasm-box,.rasm-cart-aside,.rasm-cart-items{background:var(--surface,#fff);border:1px solid var(--border,#e7e8ef);padding:22px;border-radius:18px;margin:18px 0}.rasm-box h2{font-size:1.35rem;margin:0 0 12px}.rasm-field{font-size:14px;font-weight:700;display:block;margin:14px 0;color:var(--text,#222)}.rasm-field small{font-weight:400}.rasm-field input,.rasm-field select{width:100%;border:1px solid #b3bdce;background:var(--surface,#fff);color:var(--text,#222);border-radius:10px;padding:12px;margin-top:7px}.rasm-field input:focus,.rasm-field select:focus{outline:2px solid #fb6207}.rasm-order-form input[type=number]{max-width:140px}.rasm-quote-results{background:var(--surface-soft,#f6f7fa);border:1px dashed #cdd3df;border-radius:12px;padding:14px;margin:16px 0}.rasm-quote-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0;font-size:13px}.rasm-quote-line.total{font-size:17px;font-weight:800;border-top:1px solid #dadde6;padding-top:12px}.rasm-whatsapp-btn{border:0;width:100%;border-radius:12px;padding:15px 10px;color:#fff;background:#12b766;font-size:15px;line-height:1.2;cursor:pointer;font-weight:800}.rasm-whatsapp-btn:hover{background:#0b9451}.rasm-note{font-size:12px;color:var(--muted,#657185);line-height:1.55;margin:10px 0 0}.rasm-cart-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:22px;align-items:start}.rasm-cart-line{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:16px;border-bottom:1px solid var(--border,#eee);padding:15px 0}.rasm-cart-line img{max-width:90px;height:auto;border-radius:8px}.rasm-cart-line h3{font-size:15px;margin:0 0 6px}.rasm-cart-line form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rasm-cart-line input{max-width:62px;padding:6px;border:1px solid #bbc5d8;border-radius:5px}.rasm-mini-btn{border:1px solid #d0d8e8;border-radius:7px;background:var(--surface,#fff);color:var(--text,#333);padding:8px}.rasm-simple-link{color:#ff5c00}@media(max-width:720px){.rasm-cart-layout{grid-template-columns:1fr}.rasm-cart-line{grid-template-columns:65px minmax(0,1fr)}.rasm-cart-line>strong{grid-column:2}.rasm-cart-line img{max-width:65px}}

.rasm-cart-crosssell{padding:20px 0}.rasm-crosssell-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.rasm-crosssell-grid>a{border:1px solid var(--border,#e7e8ef);background:var(--surface,#fff);padding:12px;border-radius:12px;display:grid;gap:5px}.rasm-crosssell-grid img{width:100%;height:130px;object-fit:contain}.rasm-crosssell-grid strong{font-size:13px}.rasm-crosssell-grid small{color:var(--muted,#657185)}@media(max-width:720px){.rasm-crosssell-grid{grid-template-columns:repeat(2,1fr)}}

/* Fix readable labels, controls, and quote totals in dark mode; use theme --ink instead of missing --text. */
.rasm-order-form,.rasm-order-form .rasm-box,.rasm-cart-aside,.rasm-cart-items,.rasm-field,.rasm-quote-results,.rasm-quote-line,.rasm-quote-line.total{color:var(--ink,#22232b)!important;}
.rasm-order-form label,.rasm-order-form strong,.rasm-order-form .rasm-field,.rasm-order-form .rasm-field small{color:var(--ink,#22232b)!important;}
.rasm-order-form .rasm-field input,.rasm-order-form .rasm-field select,.rasm-cart-layout input,.rasm-cart-layout select{background:var(--surface,#fff)!important;color:var(--ink,#22232b)!important;border:1px solid var(--border,#b3bdce)!important;}
.rasm-order-form input::placeholder,.rasm-cart-layout input::placeholder{color:var(--muted,#758097)!important;opacity:1;}
.rasm-quote-results{background:var(--surface-soft,#f6f7fa)!important;border-color:var(--border,#cdd3df)!important;}
html[data-theme=dark] .rasm-order-form .rasm-field input,html[data-theme=dark] .rasm-order-form .rasm-field select{color-scheme:dark;}

.rasm-zone-search{margin-bottom:6px!important;border-color:var(--border,#b3bdce)!important;color:var(--ink,#22232b)!important;background:var(--surface,#fff)!important}.rasm-promo-badges{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}.rasm-promo-tag{font-size:11px;display:inline-block;font-weight:750;color:#a74400;background:#fff1e4;border:1px solid #ffd8b2;padding:6px 9px;border-radius:8px}html[data-theme=dark] .rasm-promo-tag{color:#ffd0ad;background:#3e2d24;border-color:#8d5a3a}

/* Cotizaciones: estado visible y legible en temas claros y oscuros. */
.rasm-order-form .rasm-quote-note{font-size:.88rem;line-height:1.5;color:inherit;opacity:.85;margin:.65rem 0 0}
.rasm-order-form .rasm-quote-results[aria-busy="true"]{opacity:.8}
.rasm-order-form .rasm-whatsapp-btn:disabled{opacity:.58;cursor:wait}

/* AsunShop 1.5: one searchable city input; native select is fallback when JS is unavailable. */
.rasm-city-picker{position:relative;display:block;margin-top:7px}
.rasm-city-picker .rasm-native-hidden{display:none!important}
.rasm-city-picker .rasm-city-input{width:100%;margin:0!important;min-width:0;display:block}
.rasm-city-results{position:absolute;z-index:99999;top:calc(100% + 5px);left:0;right:0;max-height:225px;overflow:auto;border:1px solid var(--border,#b3bdce);background:var(--surface,#fff);color:var(--ink,#22232b);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);padding:5px}
.rasm-city-results[hidden]{display:none!important}
.rasm-city-option{appearance:none;display:block;width:100%;padding:10px 12px;border:0;border-radius:7px;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}
.rasm-city-option:hover,.rasm-city-option.active,.rasm-city-option:focus-visible{background:rgba(255,100,0,.12);outline:none}
.rasm-city-empty{display:block;padding:10px 12px;color:var(--muted,#677083)}
.rasm-promo-tag.rasm-promo-3x2{background:#ff6400;color:#fff;border-color:#ff6400;font-weight:850}
html[data-theme=dark] .rasm-promo-tag.rasm-promo-3x2{background:#ff6400;color:#fff;border-color:#ff6400}

/* Redsol v1.9 — clearly identified promotions and one-click complete combos. */
.rasm-quote-results .rasm-quote-line:not(.total){color:var(--ink,#17253a)}
.rasm-combo-widget{margin:10px 0 13px;position:relative;border:1px solid #ffd0ad;border-radius:12px;background:var(--surface,#fff);color:var(--ink,#17253a);font-size:13px}
.rasm-combo-widget>summary{padding:11px 12px;cursor:pointer;list-style:none;font-weight:800;color:#c74b06;display:flex;justify-content:space-between;gap:8px}
.rasm-combo-widget>summary::-webkit-details-marker{display:none}
.rasm-combo-widget[open]>summary{border-bottom:1px solid #ead9cb}
.rasm-combo-content{padding:12px;min-width:0}
.rasm-combo-intro{margin:0 0 12px;font-size:12px}
.rasm-combo-products{list-style:none;padding:0;margin:0 0 12px}
.rasm-combo-products li{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:7px 0;border-bottom:1px solid var(--border,#e9e9ef);padding-bottom:7px}
.rasm-combo-products li a{display:flex;gap:9px;align-items:center;flex:1;min-width:0;text-decoration:none;color:inherit;font-size:12px}
.rasm-combo-products li a img{width:38px;height:38px;flex-shrink:0;object-fit:contain;border-radius:6px}
.rasm-combo-products li strong{white-space:nowrap;font-size:12px}
.rasm-combo-financial{display:grid;gap:4px;font-size:12px;margin-bottom:8px}
.rasm-combo-financial strong{color:#ff6400;font-size:14px}
.rasm-combo-content small{display:block;opacity:.8;line-height:1.5;margin:8px 0}
.rasm-combo-purchase{margin:12px 0 0!important;display:block!important}
.rasm-combo-add{border:0;background:#ff6400;color:#fff;padding:11px 12px;border-radius:9px;font-weight:800;cursor:pointer;width:100%;line-height:1.3}
.rasm-combo-add:hover{background:#d95200}
.rasm-combos-section{max-width:920px;margin:24px auto;padding:16px}
.rasm-combo-showcase{background:var(--surface,#fff);border:1px solid var(--border,#ddd);border-radius:18px;padding:22px}
.rasm-combos-section .rasm-combo-products img{width:60px;height:60px}
@media(max-width:660px){.rasm-combo-products li{flex-wrap:wrap}.rasm-combo-products li strong{margin-left:47px}}

/* v2.0: cart quantity controls must remain readable regardless of theme color variables. */
.rasm-cart-layout .rasm-mini-btn,
.rasm-cart-layout button.rasm-mini-btn {
  color:#182436 !important;
  background:#ffffff !important;
  border:1px solid #8e9aa9 !important;
  font-weight:750;
  min-width:88px;
  min-height:39px;
  opacity:1;
  cursor:pointer;
}
.rasm-cart-layout .rasm-mini-btn:hover,
.rasm-cart-layout .rasm-mini-btn:focus-visible{background:#ff6400 !important;color:#ffffff !important;border-color:#ff6400 !important;}
html[data-theme="dark"] .rasm-cart-layout .rasm-mini-btn {
  background:#314356 !important;
  color:#ffffff !important;
  border-color:#89a0b8 !important;
}
html[data-theme="dark"] .rasm-cart-layout .rasm-mini-btn:hover,
html[data-theme="dark"] .rasm-cart-layout .rasm-mini-btn:focus-visible{background:#ff6400 !important;color:#ffffff !important;border-color:#ff6400 !important;}
/* Multiple combo cards on a single page. */
.rasm-combos-section .rasm-combo-showcase{margin:14px 0 22px;}
/* v2.1 — featured combos and 3x2 in editable homepage */
.rasm-home-promo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.rasm-home-promo-card{min-width:0;border:1px solid var(--border,#e5e7ef);border-radius:18px;background:var(--surface,#fff);overflow:hidden;color:var(--ink,#263044);box-shadow:0 7px 22px #0f172a0b}
.rasm-home-combo-images{display:flex;justify-content:center;gap:4px;align-items:center;min-height:160px;background:var(--surface-soft,#f1f4f9);padding:15px}
.rasm-home-combo-images img{height:105px;max-width:35%;width:auto;object-fit:contain;border-radius:9px}
.rasm-home-product-img{display:grid;place-items:center;min-height:175px;background:var(--surface-soft,#f4f6fa);padding:12px}
.rasm-home-product-img img{height:155px;width:auto;max-width:100%;object-fit:contain}
.rasm-home-promo-body{padding:16px;display:flex;flex-direction:column;gap:10px}
.rasm-home-chip{font-size:10px;font-weight:850;letter-spacing:.04em;color:#ad4300;border:1px solid #ffbf91;background:#fff3e8;padding:5px 8px;border-radius:7px;align-self:flex-start}
.rasm-home-promo-body h3{font-size:15px;line-height:1.35;margin:0!important;color:var(--ink,#263044)}
.rasm-home-promo-body p{font-size:12px;line-height:1.55;margin:0;opacity:.75;min-height:38px}
.rasm-home-deal-money{display:grid;gap:2px;margin-top:auto}
.rasm-home-deal-money small{font-size:11px;opacity:.7}.rasm-home-deal-money strong{font-size:16px;color:var(--brand,#ff5c00)}.rasm-home-deal-money span{font-size:11px;color:#168051;font-weight:700}
.rasm-home-promo-card form{margin:0}.rasm-home-add,.rasm-home-promo-card .rasm-combo-add{width:100%;padding:11px 8px!important;background:var(--brand,#ff5c00)!important;border:0;border-radius:9px;color:#fff!important;font-size:12px;font-weight:800;cursor:pointer}
@media(max-width:1100px){.rasm-home-promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.rasm-home-promo-grid{grid-template-columns:1fr 1fr;gap:9px}.rasm-home-promo-body{padding:11px}.rasm-home-promo-body h3{font-size:12px}.rasm-home-combo-images{min-height:125px}.rasm-home-combo-images img{height:75px}.rasm-home-product-img{min-height:133px}.rasm-home-product-img img{height:115px}}

/* v2.2 — dark theme contrasts for BOTH legacy append and movable Gutenberg offers. */
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-promo-card{color:#f3f6fc;background:#233143;border-color:#44566a}
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-promo-card h3,
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-promo-card h3 a{color:#fff}
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-promo-card p,
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-promo-card small{color:#d7e2ef;opacity:1}
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-deal-money span{color:#a3f4c3}
html[data-theme="dark"] .rasm-home-promo-grid .rasm-home-chip{color:#ffe0b7;background:#56331e;border-color:#ac6843}

/* Readable offer cards even if only one or three promotions exist. */
.rasm-home-promo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,235px),1fr));gap:18px}
.rasm-home-promo-card .rasm-home-promo-body{gap:11px}
.rasm-home-promo-card .rasm-home-promo-body h3{font-size:16px;line-height:1.4}
.rasm-home-promo-card .rasm-home-promo-body p{font-size:13px;line-height:1.5;min-height:0}
.rasm-home-promo-card .rasm-home-deal-money small,
.rasm-home-promo-card .rasm-home-deal-money span{font-size:12px}
.rasm-home-promo-card .rasm-home-chip{font-size:11px}
@media(max-width:560px){.rasm-home-promo-grid{grid-template-columns:1fr;max-width:460px}.rasm-home-promo-card .rasm-home-promo-body h3{font-size:16px}}


/* v2.3 — presupuesto: desglose agrupado y subtotales claros en ambos modos. */
.rasm-quote-results .rasm-quote-line{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:8px 12px;align-items:baseline;color:var(--ink,#202838)!important;line-height:1.45;margin:7px 0}
.rasm-quote-results .rasm-quote-line>span{min-width:0;overflow-wrap:break-word}
.rasm-quote-results .rasm-quote-line>strong{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;color:inherit!important}
.rasm-quote-results .rasm-quote-subtotal{padding:10px 0;margin-top:11px;border-top:1px solid var(--border,#d7dce5);font-weight:750}
.rasm-quote-results .rasm-discounts-title{margin:13px 0 9px;padding-top:10px;border-top:1px solid var(--border,#d7dce5);color:var(--ink,#202838)!important;font-size:13px;line-height:1.3;font-weight:850}
.rasm-quote-results .rasm-quote-discount{padding-left:10px;border-left:2px solid var(--brand,#ff6500);font-size:12px}
.rasm-quote-results .rasm-quote-discount>strong{color:var(--ink,#202838)!important}
.rasm-quote-results .rasm-quote-savings{font-weight:800;padding:10px 0;margin-top:10px;border-top:1px dashed var(--border,#d7dce5)}
.rasm-quote-results .rasm-quote-no-discounts{margin:7px 0;color:var(--muted,#667189)!important;font-size:12px}
.rasm-quote-results .rasm-quote-line.total{font-size:17px;padding:13px 0 0;margin-top:9px;border-top:2px solid var(--border,#d7dce5)}
html[data-theme="dark"] .rasm-quote-results .rasm-quote-discount{border-left-color:#ff9b55}
/* Carousel layout is activated by theme 1.11+; keep cards available in grid mode without JS. */
.rasm-home-promo-card{scroll-snap-align:start}
