/*
 * Instabooster — checkout area: /checkout (live checkout variant B, `.ckb`), /carrito + cart
 * drawer (NEW vs live, `.ibk`, same visual language), payment status pages (`.ibco`).
 * Hand-written (live.css, generated from the crawl, has none of it: the live checkout cannot be
 * crawled). Sources: the inline <style> of app/modules/checkout/views/index_b.php,
 * payment_successfully.php and payment_unsuccessfully.php, scoped to html[data-brand="ib"] and
 * kept in @layer ib like live.css. Plain CSS served as is (no build step).
 * The scratchpad harness (ckb/render.php + build-ref.cjs + ckb-compare.cjs) diffs these pages
 * against a static render of the live PHP views.
 */

/* Live payment pages load Plus Jakarta Sans + Sora from Google Fonts: self-hosted, same names. */
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url("/brands/instabooster/fonts/plus-jakarta-sans-latin-var.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url("/brands/instabooster/fonts/plus-jakarta-sans-latin-ext-var.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: Sora;
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url("/brands/instabooster/fonts/sora-latin-var.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: Sora;
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url("/brands/instabooster/fonts/sora-latin-ext-var.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@layer ib {
  /* ── Chrome: live checkout / payment pages use the FULL user layout (header + footer), not
     the platform's minimal checkout chrome (globals.css .store-chrome-*, unlayered → !important). */
  html[data-brand="ib"] body:has([data-store-chrome="minimal"]:not([style*="display: none"], [style*="display: none"] *)) .store-chrome-full {
    display: contents !important;
  }
  html[data-brand="ib"] body:has([data-store-chrome="minimal"]:not([style*="display: none"], [style*="display: none"] *)) .store-chrome-min {
    display: none !important;
  }

  /* ════ /checkout — index_b.php inline <style> (verbatim, scoped) ════ */
  html[data-brand="ib"] .ckb { background:#fff; color:#14181f; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; -webkit-font-smoothing:antialiased; line-height:1.5; overflow-x:hidden; }
  html[data-brand="ib"] .ckb *, html[data-brand="ib"] .ckb *::before, html[data-brand="ib"] .ckb *::after { box-sizing:border-box; }
  html[data-brand="ib"] .ckb img, html[data-brand="ib"] .ckb svg { max-width:100%; }
  html[data-brand="ib"] .ckb__inner { max-width:1200px; margin:0 auto; padding:0 16px; }
  html[data-brand="ib"] .ckb-mont { font-family:'Montserrat',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
  /* Cabecera compacta */
  /* El cabecero es fijo (79-80px). En movil el body ya deja 66px; en escritorio no deja nada. */
  html[data-brand="ib"] .ckb__top { padding:34px 0 14px; }
  html[data-brand="ib"] .ckb__eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 8px; font-size:.68rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:#e61c72; }
  html[data-brand="ib"] .ckb__eyebrow::before { content:""; width:22px; height:2px; background:#e61c72; border-radius:2px; }
  html[data-brand="ib"] .ckb__title { margin:0; font-size:1.65rem; line-height:1.08; font-weight:800; letter-spacing:-.03em; color:#14181f; }
  html[data-brand="ib"] .ckb__steps { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:14px; }
  html[data-brand="ib"] .ckb__step { font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#9ca3af; padding-top:8px; border-top:3px solid #e8eaed; }
  html[data-brand="ib"] .ckb__step--done { color:#14181f; border-top-color:#14181f; }
  html[data-brand="ib"] .ckb__step--now { color:#e61c72; border-top-color:#e61c72; }
  /* Rejilla */
  html[data-brand="ib"] .ckb__grid { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; padding-bottom:28px; }
  html[data-brand="ib"] .ckb__main { min-width:0; }
  html[data-brand="ib"] .ckb__side { display:none; }
  /* Línea de producto (móvil y tablet) */
  html[data-brand="ib"] .ckb-product { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px 14px; padding:12px 14px; border:1px solid #e8eaed; border-radius:14px; background:#fff; }
  html[data-brand="ib"] .ckb-product__kicker { display:block; font-size:.62rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#9ca3af; margin-bottom:2px; }
  html[data-brand="ib"] .ckb-product__name { display:block; font-size:.98rem; font-weight:700; letter-spacing:-.01em; color:#14181f; line-height:1.25; }
  html[data-brand="ib"] .ckb-product__qty { display:block; font-size:.8rem; color:#6b7280; margin-top:2px; }
  html[data-brand="ib"] .ckb-product .mobile-price { text-align:right; }
  html[data-brand="ib"] .ckb-product .mobile-price .current { font-family:'Montserrat',sans-serif; font-size:1.2rem; font-weight:700; letter-spacing:-.03em; color:#14181f; white-space:nowrap; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ckb-product .mobile-price .original { font-size:.78rem; color:#9ca3af; text-decoration:line-through; white-space:nowrap; }
  html[data-brand="ib"] .ckb-product__change { grid-column:1 / -1; font-size:.78rem; font-weight:600; color:#e61c72; text-decoration:none; }
  /* Tarjetas de sección */
  html[data-brand="ib"] .ckb-card { border:1px solid #e8eaed; border-radius:16px; background:#fff; padding:18px 16px; }
  html[data-brand="ib"] .ckb-card + .ckb-card { margin-top:12px; }
  html[data-brand="ib"] .ckb-card__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:14px; }
  html[data-brand="ib"] .ckb-card__title { margin:0; font-size:1rem; font-weight:700; letter-spacing:-.01em; color:#14181f; }
  html[data-brand="ib"] .ckb-card__num { font-size:.7rem; font-weight:600; letter-spacing:.04em; color:#9ca3af; }
  html[data-brand="ib"] .ckb .form-group { margin:0 0 14px; }
  html[data-brand="ib"] .ckb .form-group:last-child { margin-bottom:0; }
  html[data-brand="ib"] .ckb .form-label { display:block; margin:0 0 6px; font-size:.84rem; font-weight:600; line-height:1.35; color:#374151; }
  html[data-brand="ib"] .ckb .form-required { color:#e61c72; }
  /* core.css (live user layout) `.form-control { height:3rem }` — not in live.css (no crawled page). */
  html[data-brand="ib"] .ckb .form-control { height:3rem; }
  html[data-brand="ib"] .ckb .form-control { display:block; width:100%; padding:.8rem .95rem; border:1.5px solid #e2e5ea; border-radius:12px; background:#fff; color:#14181f; font-family:inherit; font-size:16px; line-height:1.4; transition:border-color .15s, box-shadow .15s; box-shadow:none; }
  html[data-brand="ib"] .ckb .form-control::placeholder { color:#9ca3af; }
  html[data-brand="ib"] .ckb .form-control:focus { outline:none; border-color:#e61c72; box-shadow:0 0 0 3px rgba(230,28,114,.12); }
  html[data-brand="ib"] .ckb .form-control.valid-link { border-color:#10b981; }
  html[data-brand="ib"] .ckb .form-control.invalid-link { border-color:#f59e0b; }
  html[data-brand="ib"] .ckb .ckb-help { display:block; margin-top:6px; font-size:.76rem; line-height:1.4; color:#6b7280; }
  html[data-brand="ib"] .ckb .post-selector-input-wrap { display:flex; gap:8px; align-items:center; }
  html[data-brand="ib"] .ckb .post-selector-btn { flex-shrink:0; width:48px; height:48px; border:1.5px solid #e2e5ea; border-radius:12px; background:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; color:#e61c72; }
  html[data-brand="ib"] .ckb .post-selector-btn:hover { border-color:#e61c72; background:#e61c72; color:#fff; }
  html[data-brand="ib"] .ckb .link-validation-feedback { display:none; margin-top:8px; padding:10px 12px; border:1px solid #e8eaed; border-radius:10px; font-size:.82rem; line-height:1.45; font-weight:500; color:#4b5563; background:#f8f9fb; word-wrap:break-word; }
  html[data-brand="ib"] .ckb .link-validation-feedback.valid { display:block; background:#ecfdf5; border-color:#a7f3d0; color:#065f46; }
  html[data-brand="ib"] .ckb .link-validation-feedback.warning { display:block; background:#fffbeb; border-color:#fde68a; color:#92400e; }
  html[data-brand="ib"] .ckb .link-validation-feedback.info { display:block; background:#eff6ff; border-color:#bfdbfe; color:#1e40af; }
  html[data-brand="ib"] .ckb .link-validation-examples { margin-top:8px; padding-top:8px; border-top:1px solid rgba(0,0,0,.08); font-size:.78rem; }
  html[data-brand="ib"] .ckb .link-validation-examples strong { display:block; margin-bottom:4px; }
  html[data-brand="ib"] .ckb .ckb-reorder { margin-top:8px; padding:9px 12px; border-radius:10px; background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46; font-size:.82rem; font-weight:600; }
  /* Opciones de pago */
  html[data-brand="ib"] .ckb .payment-selector { display:grid; grid-template-columns:1fr; gap:14px; }
  html[data-brand="ib"] .ckb .payment-option { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 14px; padding:13px 14px 13px 44px; border:1px solid #e8eaed; border-radius:14px; background:#fff; cursor:pointer; color:#14181f; transition:border-color .15s, background .15s; }
  html[data-brand="ib"] .ckb .payment-option input[type="radio"] { position:absolute; opacity:0; pointer-events:none; }
  html[data-brand="ib"] .ckb .payment-radio { position:absolute; left:14px; top:50%; width:20px; height:20px; margin-top:-10px; border:2px solid #d1d5db; border-radius:50%; background:#fff; }
  html[data-brand="ib"] .ckb .payment-content { min-width:0; }
  html[data-brand="ib"] .ckb .payment-title { font-size:.95rem; font-weight:700; letter-spacing:-.01em; line-height:1.2; }
  html[data-brand="ib"] .ckb .payment-description { font-size:.76rem; line-height:1.35; color:#6b7280; margin-top:2px; }
  html[data-brand="ib"] .ckb .payment-price { grid-column:2; grid-row:1 / span 2; font-family:'Montserrat',sans-serif; font-size:1.15rem; font-weight:700; letter-spacing:-.03em; white-space:nowrap; text-align:right; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ckb .payment-period { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:.72rem; font-weight:500; color:#6b7280; letter-spacing:0; }
  html[data-brand="ib"] .ckb .original-price-strike { display:none; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:.78rem; font-weight:500; color:#9ca3af; text-decoration:line-through; margin-left:6px; letter-spacing:0; }
  html[data-brand="ib"] .ckb .payment-badge { position:absolute; z-index:2; top:-9px; right:12px; padding:3px 9px; border-radius:999px; background:#14181f; color:#fff; font-size:.58rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
  html[data-brand="ib"] .ckb .payment-option:hover { border-color:#c9ccd3; }
  html[data-brand="ib"] .ckb .payment-option.active { background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); border-color:transparent; color:#fff; }
  html[data-brand="ib"] .ckb .payment-option.active .payment-description, html[data-brand="ib"] .ckb .payment-option.active .payment-period { color:rgba(255,255,255,.85); }
  html[data-brand="ib"] .ckb .payment-option.active .original-price-strike { color:rgba(255,255,255,.7); }
  html[data-brand="ib"] .ckb .payment-option.active .payment-radio { border-color:#fff; background:#fff; }
  html[data-brand="ib"] .ckb .payment-option.active .payment-radio::after { content:""; position:absolute; top:50%; left:50%; width:8px; height:8px; margin:-4px 0 0 -4px; border-radius:50%; background:#e61c72; }
  html[data-brand="ib"] .ckb .payment-option.active .payment-badge { background:#fff; color:#e61c72; }
  html[data-brand="ib"] .ckb .discount-price.has-discount { color:inherit; }
  html[data-brand="ib"] .ckb .ckb-paynote { margin:12px 0 0; font-size:.78rem; color:#6b7280; }
  /* Comentarios personalizados */
  html[data-brand="ib"] .ckb .custom-message-card { padding:0; border:0; }
  html[data-brand="ib"] .ckb .custom-message-card h3 { margin:0 0 6px; font-size:.74rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#4b5563; }
  html[data-brand="ib"] .ckb .custom-message-card textarea { resize:vertical; min-height:130px; line-height:1.5; }
  html[data-brand="ib"] .ckb .message-counter { display:flex; align-items:center; gap:8px; margin-top:8px; font-size:.8rem; color:#6b7280; }
  html[data-brand="ib"] .ckb .custom-message-card.has-error textarea { border-color:#ef4444; }
  html[data-brand="ib"] .ckb .field-error { display:flex; align-items:flex-start; gap:10px; margin-top:10px; padding:12px 14px; border:1.5px solid #fecaca; border-radius:12px; background:#fef2f2; color:#b91c1c; font-size:.88rem; font-weight:600; line-height:1.45; }
  html[data-brand="ib"] .ckb .field-error svg { flex-shrink:0; width:18px; height:18px; margin-top:1px; }
  /* Cupón */
  html[data-brand="ib"] .ckb .coupon-collapse { border:1px solid #e8eaed; border-radius:14px; background:#fff; }
  html[data-brand="ib"] .ckb .coupon-toggle { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 14px; cursor:pointer; list-style:none; font-size:.9rem; font-weight:600; color:#14181f; }
  html[data-brand="ib"] .ckb .coupon-toggle::-webkit-details-marker { display:none; }
  html[data-brand="ib"] .ckb .coupon-toggle__label { display:flex; align-items:center; gap:8px; }
  html[data-brand="ib"] .ckb .coupon-toggle__label svg { color:#e61c72; }
  html[data-brand="ib"] .ckb .coupon-toggle__chevron { transition:transform .2s; color:#9ca3af; }
  html[data-brand="ib"] .ckb .coupon-collapse[open] .coupon-toggle__chevron { transform:rotate(180deg); }
  html[data-brand="ib"] .ckb .coupon-collapse__body { padding:0 14px 14px; }
  html[data-brand="ib"] .ckb .coupon-input-group { display:flex; gap:8px; }
  html[data-brand="ib"] .ckb .coupon-input-group .form-control { flex:1; min-width:0; }
  html[data-brand="ib"] .ckb .coupon-btn { flex-shrink:0; padding:0 18px; border:0; border-radius:12px; background:#14181f; color:#fff; font-family:inherit; font-size:.88rem; font-weight:700; cursor:pointer; min-width:96px; }
  html[data-brand="ib"] .ckb .coupon-btn:disabled { opacity:.6; cursor:wait; }
  html[data-brand="ib"] .ckb .coupon-response { display:none; margin-top:10px; padding:10px 12px; border-radius:10px; font-size:.84rem; font-weight:600; border:1px solid; }
  html[data-brand="ib"] .ckb .coupon-response.success { background:#ecfdf5; border-color:#a7f3d0; color:#065f46; }
  html[data-brand="ib"] .ckb .coupon-response.error { background:#fef2f2; border-color:#fecaca; color:#b91c1c; }
  /* Condiciones y botón */
  html[data-brand="ib"] .ckb .terms-card { background:#fff; border:1px solid #eceef2; border-radius:14px; padding:13px 15px; transition:border-color .2s, background .2s; }
  html[data-brand="ib"] .ckb .terms-card:has(input:checked) { border-color:#f9a8d4; background:#fff7fb; }
  html[data-brand="ib"] .ckb .terms-checkbox { display:flex; align-items:flex-start; gap:12px; }
  html[data-brand="ib"] .ckb .terms-checkbox input[type=checkbox] { -webkit-appearance:none; appearance:none; margin:1px 0 0; width:20px; height:20px; flex-shrink:0; border:2px solid #d1d5db; border-radius:6px; background:#fff; cursor:pointer; transition:all .15s; }
  html[data-brand="ib"] .ckb .terms-checkbox input[type=checkbox]:checked { border-color:#e61c72; background:#e61c72 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/13px no-repeat; }
  html[data-brand="ib"] .ckb .terms-checkbox input[type=checkbox]:focus-visible { outline:2px solid #f9a8d4; outline-offset:2px; }
  html[data-brand="ib"] .ckb .terms-checkbox label { margin:0; font-size:.88rem; line-height:1.45; color:#374151; font-weight:500; cursor:pointer; }
  html[data-brand="ib"] .ckb .terms-sub { display:block; margin-top:3px; font-size:.78rem; font-weight:400; color:#6b7280; }
  html[data-brand="ib"] .ckb .terms-checkbox a { color:#e61c72; font-weight:600; text-decoration:none; }
  html[data-brand="ib"] .ckb .terms-checkbox a:hover { text-decoration:underline; }
  html[data-brand="ib"] .ckb .submit-section { margin-top:16px; }
  html[data-brand="ib"] .ckb .submit-btn { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:56px; padding:14px 20px; border:0; border-radius:999px; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); color:#fff; font-family:inherit; font-size:1rem; font-weight:700; cursor:pointer; box-shadow:0 12px 26px -12px rgba(230,28,114,.75); transition:transform .18s ease, box-shadow .18s ease; }
  html[data-brand="ib"] .ckb .submit-btn:hover:not(:disabled) { transform:translateY(-2px); box-shadow:0 16px 30px -12px rgba(230,28,114,.8); }
  html[data-brand="ib"] .ckb .submit-btn:disabled { opacity:.65; cursor:not-allowed; transform:none; }
  html[data-brand="ib"] .ckb .submit-btn .loading-spinner { width:20px; height:20px; border:3px solid rgba(255,255,255,.35); border-top-color:#fff; border-radius:50%; animation:ckbSpin 1s linear infinite; }
  html[data-brand="ib"] .ckb .submit-reassurance { display:flex; align-items:center; justify-content:center; gap:6px; margin:12px 0 0; font-size:.76rem; color:#6b7280; text-align:center; }
  html[data-brand="ib"] .ckb .ckb-paylogos { display:flex; flex-wrap:wrap; justify-content:center; gap:6px 12px; margin:12px 0 0; padding:0; list-style:none; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#9ca3af; }
  html[data-brand="ib"] .ckb .alert-message { margin:0 0 14px; padding:12px 14px; border:1.5px solid #fecaca; border-radius:12px; background:#fef2f2; color:#b91c1c; font-size:.9rem; font-weight:600; }
  html[data-brand="ib"] .ckb .alert-message.success { border-color:#a7f3d0; background:#ecfdf5; color:#065f46; }
  html[data-brand="ib"] .ckb .alert-message.warning { border-color:#fde68a; background:#fffbeb; color:#92400e; }
  @keyframes ckbSpin { to { transform:rotate(360deg); } }
  /* Aviso de auto-suscripción (bloque heredado, con estilos propios) */
  html[data-brand="ib"] .ckb .ckb-auto { margin:0 0 14px; padding:14px 16px; border-radius:14px; background:#101114; color:#fff; font-size:.9rem; line-height:1.6; }
  html[data-brand="ib"] .ckb .ckb-auto strong { color:#fff; }
  html[data-brand="ib"] .ckb .ckb-auto__kicker { display:block; margin-bottom:6px; font-size:.62rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.6); }
  html[data-brand="ib"] .ckb .ckb-auto a { color:#ff4d94; font-weight:700; text-decoration:none; }
  /* Resumen lateral (escritorio) */
  html[data-brand="ib"] .ckb .order-summary { border:1px solid #e8eaed; border-radius:16px; background:#fff; padding:22px 22px 20px; }
  html[data-brand="ib"] .ckb .order-summary__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:14px; }
  html[data-brand="ib"] .ckb .order-summary__title { margin:0; font-size:1rem; font-weight:700; color:#14181f; }
  html[data-brand="ib"] .ckb .order-summary__change { font-size:.78rem; font-weight:600; color:#e61c72; text-decoration:none; }
  html[data-brand="ib"] .ckb .product-info .kicker { display:block; font-size:.62rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#9ca3af; }
  html[data-brand="ib"] .ckb .product-info h4 { margin:2px 0 0; font-family:'Montserrat',sans-serif; font-size:1.2rem; font-weight:700; letter-spacing:-.02em; color:#14181f; }
  html[data-brand="ib"] .ckb .product-info .quantity { font-size:.84rem; color:#6b7280; }
  html[data-brand="ib"] .ckb .features-grid { list-style:none; margin:14px 0 0; padding:14px 0 0; border-top:1px solid #e8eaed; display:grid; gap:8px; }
  html[data-brand="ib"] .ckb .feature-item { display:flex; align-items:flex-start; gap:9px; font-size:.84rem; color:#4b5563; line-height:1.35; }
  html[data-brand="ib"] .ckb .feature-item svg { flex:0 0 16px; width:16px; height:16px; margin-top:2px; padding:3px; border-radius:50%; background:#10b981; color:#fff; }
  html[data-brand="ib"] .ckb .price-breakdown { margin-top:14px; padding-top:12px; border-top:1px solid #e8eaed; }
  html[data-brand="ib"] .ckb .price-row { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:7px 0; font-size:.88rem; color:#4b5563; }
  html[data-brand="ib"] .ckb .price-row .value { display:flex; align-items:baseline; gap:4px; color:#14181f; font-weight:600; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ckb .price-row .amount { display:none; margin-left:6px; font-weight:500; color:#9ca3af; text-decoration:line-through; }
  html[data-brand="ib"] .ckb .price-row .amount.show { display:inline-block; }
  html[data-brand="ib"] .ckb .price-row.total { margin-top:6px; padding-top:12px; border-top:1px solid #14181f; font-size:.95rem; font-weight:700; color:#14181f; }
  html[data-brand="ib"] .ckb .price-row.total .value { font-family:'Montserrat',sans-serif; font-size:1.55rem; font-weight:700; letter-spacing:-.03em; }
  html[data-brand="ib"] .ckb .price-row.total .label small { display:block; font-size:.7rem; font-weight:500; color:#9ca3af; }
  html[data-brand="ib"] .ckb .subscription-info { display:none; margin-top:12px; padding:10px 12px; border-radius:10px; background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46; font-size:.8rem; font-weight:600; }
  html[data-brand="ib"] .ckb .ckb-trust { margin-top:12px; padding:18px 20px; border-radius:16px; background:#101114; color:#fff; }
  html[data-brand="ib"] .ckb .ckb-trust strong { display:block; margin-bottom:4px; font-size:.95rem; }
  html[data-brand="ib"] .ckb .ckb-trust p { margin:0; font-size:.82rem; line-height:1.5; color:rgba(255,255,255,.72); }
  /* Barra fija (móvil y tablet) */
  html[data-brand="ib"] .ckb-bar { position:fixed; left:0; right:0; bottom:0; z-index:900; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:#101114; color:#fff; box-shadow:0 -8px 24px rgba(0,0,0,.25); transform:translateY(0); transition:transform .25s ease; }
  html[data-brand="ib"] .ckb-bar.is-hidden { transform:translateY(110%); }
  html[data-brand="ib"] .ckb-bar__price { display:flex; flex-direction:column; line-height:1.1; min-width:0; }
  html[data-brand="ib"] .ckb-bar__label { font-size:.62rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.55); margin-bottom:3px; }
  html[data-brand="ib"] .ckb-bar__value { font-family:'Montserrat',sans-serif; font-size:1.3rem; font-weight:700; letter-spacing:-.03em; white-space:nowrap; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ckb-bar__value small { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:.72rem; font-weight:500; color:rgba(255,255,255,.6); }
  html[data-brand="ib"] .ckb-bar__btn { flex-shrink:0; padding:13px 20px; border:0; border-radius:999px; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); color:#fff; font-family:inherit; font-size:.92rem; font-weight:700; cursor:pointer; }
  html[data-brand="ib"] body:has(.ckb-bar) { padding-bottom:84px; }
  /* El globo flotante de reseñas (Senja) se solapaba con la barra de pago en móvil. */
  @media (max-width:1023px) {
    html[data-brand="ib"] body:has(.ckb-bar) .senja-embed { display:none !important; }
  }
  @media (min-width:640px) {
    html[data-brand="ib"] .ckb__inner { padding:0 24px; }
    html[data-brand="ib"] .ckb__top { padding:44px 0 18px; }
    html[data-brand="ib"] .ckb__title { font-size:2.1rem; }
    html[data-brand="ib"] .ckb__steps { max-width:420px; }
    html[data-brand="ib"] .ckb-card { padding:22px 22px 20px; }
    html[data-brand="ib"] .ckb .payment-selector { grid-template-columns:repeat(auto-fit, minmax(190px, 1fr)); gap:12px; }
    html[data-brand="ib"] .ckb .payment-option { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; min-height:130px; padding:16px 16px 14px; }
    html[data-brand="ib"] .ckb .payment-radio { left:auto; right:14px; top:14px; margin-top:0; }
    html[data-brand="ib"] .ckb .payment-content { display:contents; }
    html[data-brand="ib"] .ckb .payment-title { order:1; padding-right:32px; }
    html[data-brand="ib"] .ckb .payment-description { order:2; margin-bottom:auto; }
    html[data-brand="ib"] .ckb .payment-price { order:3; margin-top:18px; text-align:left; font-size:1.35rem; }
    html[data-brand="ib"] .ckb .payment-badge { position:static; order:2; align-self:flex-start; margin:6px 0 2px; }
    html[data-brand="ib"] .ckb .payment-description { order:3; }
    html[data-brand="ib"] .ckb .payment-price { order:4; }
  }
  @media (min-width:1024px) {
    html[data-brand="ib"] .ckb__top { padding:120px 0 22px; }
    html[data-brand="ib"] .ckb__title { font-size:2.4rem; }
    html[data-brand="ib"] .ckb__grid { grid-template-columns:minmax(0,1.25fr) 380px; gap:0 28px; align-items:start; padding-bottom:56px; }
    html[data-brand="ib"] .ckb__side { display:block; position:sticky; top:96px; }
    html[data-brand="ib"] .ckb-product { display:none; }
    html[data-brand="ib"] .ckb-bar { display:none; }
    html[data-brand="ib"] body:has(.ckb-bar) { padding-bottom:0; }
  }
  @media (prefers-reduced-motion:reduce) {
    html[data-brand="ib"] .ckb .submit-btn, html[data-brand="ib"] .ckb-bar { transition:none; }
  }

  /* ── Platform additions to the live checkout B (states live has no markup for) ── */
  html[data-brand="ib"] .ckb .ckb-help--error { color:#b91c1c; }
  html[data-brand="ib"] .ckb .ckb-suggest { display:inline-block; margin-top:8px; padding:5px 12px; border:1px solid #e8eaed; border-radius:999px; background:#f8f9fb; color:#374151; font-family:inherit; font-size:.8rem; cursor:pointer; }
  html[data-brand="ib"] .ckb .ckb-suggest strong { color:#14181f; }
  html[data-brand="ib"] .ckb .ckb-line-name { display:block; margin-bottom:2px; font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#9ca3af; }
  html[data-brand="ib"] .ckb .ckb-account { font-size:.875rem; }
  html[data-brand="ib"] .ckb .coupon-remove { margin-left:4px; padding:0; border:0; background:none; color:inherit; font:inherit; text-decoration:underline; cursor:pointer; }
  html[data-brand="ib"] .ckb .terms-card--invalid { border-color:#fecaca; background:#fef2f2; }
  html[data-brand="ib"] .ckb .submit-section .alert-message { margin:0 0 12px; }
  html[data-brand="ib"] .ckb .ckb-mock { margin:10px 0 0; text-align:center; font-size:.72rem; color:#9ca3af; }
  html[data-brand="ib"] .ckb .price-row--minus .value { color:#059669; }
  html[data-brand="ib"] .ckb .ckb-saving { margin:8px 0 0; text-align:right; font-size:.78rem; font-weight:700; color:#059669; }
  html[data-brand="ib"] .ckb .product-info--multi + .product-info--multi { margin-top:12px; padding-top:12px; border-top:1px dashed #e8eaed; }
  html[data-brand="ib"] .ckb .product-info__price { float:right; font-weight:600; color:#14181f; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ckb .ckb-skeleton { height:52px; border-radius:12px; background:linear-gradient(90deg,#f3f4f6 0%,#fafafa 50%,#f3f4f6 100%); background-size:200% 100%; animation:ckbShimmer 1.2s ease-in-out infinite; }
  @keyframes ckbShimmer { to { background-position:-200% 0; } }
  html[data-brand="ib"] .ckb-product + .ckb-product { margin-top:8px; }
  html[data-brand="ib"] .ckb-empty { max-width:560px; padding-bottom:56px; }
  html[data-brand="ib"] .ckb-empty .alert-message { margin:0 0 12px; }
  html[data-brand="ib"] .ckb-empty__text { margin:0; font-size:.95rem; line-height:1.55; color:#4b5563; }
  html[data-brand="ib"] .ckb-empty__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }

  /* ════ Cart (/carrito + drawer + header pill) — NEW vs live, checkout-B language ════ */
  html[data-brand="ib"] .ibk-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:12px 22px; border:0; border-radius:999px; font-family:inherit; font-size:.95rem; font-weight:700; line-height:1.2; text-decoration:none; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease; }
  html[data-brand="ib"] .ibk-btn--primary { background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); color:#fff; box-shadow:0 12px 26px -12px rgba(230,28,114,.75); }
  html[data-brand="ib"] .ibk-btn--primary:hover { color:#fff; text-decoration:none; transform:translateY(-2px); box-shadow:0 16px 30px -12px rgba(230,28,114,.8); }
  html[data-brand="ib"] .ibk-btn--ghost { background:#fff; color:#14181f; border:1.5px solid #e2e5ea; }
  html[data-brand="ib"] .ibk-btn--ghost:hover { color:#14181f; text-decoration:none; border-color:#e61c72; }
  html[data-brand="ib"] .ibk-btn--dark { min-height:44px; padding:0 18px; border-radius:12px; background:#14181f; color:#fff; font-size:.88rem; }
  html[data-brand="ib"] .ibk-btn--block { display:flex; width:100%; }
  html[data-brand="ib"] .ibk-cta { margin-top:16px; min-height:56px; font-size:1rem; }
  html[data-brand="ib"] .ibk-kicker { display:block; font-size:.62rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#9ca3af; }
  html[data-brand="ib"] .ibk-count { font-weight:600; color:#9ca3af; letter-spacing:0; }
  html[data-brand="ib"] .ibk-note { margin:10px 0 0; font-size:.76rem; color:#6b7280; text-align:center; }
  html[data-brand="ib"] .ibk-error { margin:10px 0 0; font-size:.82rem; color:#b91c1c; }
  html[data-brand="ib"] .ibk-error button { padding:0; border:0; background:none; color:#e61c72; font:inherit; font-weight:700; text-decoration:underline; cursor:pointer; }
  html[data-brand="ib"] .ibk-cart .ckb__step:not(.ckb__step--now) { color:#9ca3af; border-top-color:#e8eaed; }
  html[data-brand="ib"] .ibk-cart .ckb-card + .ckb-card,
  html[data-brand="ib"] .ibk-cart .ibk-threshold + .ckb-card,
  html[data-brand="ib"] .ibk-cart .ibk-undo + .ckb-card { margin-top:12px; }
  html[data-brand="ib"] .ibk-cart .ckb-empty .ckb-card__title { margin-bottom:6px; }
  html[data-brand="ib"] .ibk-skeleton { height:180px; border-radius:16px; }

  /* lines */
  html[data-brand="ib"] .ibk-action { padding:0; border:0; background:none; color:#6b7280; font-family:inherit; font-size:.8rem; font-weight:700; text-decoration:none; cursor:pointer; }
  html[data-brand="ib"] .ibk-action:hover { color:#14181f; text-decoration:underline; }
  html[data-brand="ib"] .ibk-action--remove:hover { color:#b91c1c; }
  html[data-brand="ib"] .ibk-action--pink { color:#e61c72; }
  html[data-brand="ib"] .ibk-input { flex:1; min-width:0; height:44px; padding:0 14px; border:1.5px solid #e2e5ea; border-radius:12px; background:#fff; color:#14181f; font-family:inherit; font-size:16px; }
  html[data-brand="ib"] .ibk-input:focus { outline:none; border-color:#e61c72; box-shadow:0 0 0 3px rgba(230,28,114,.12); }

  /* totals */
  html[data-brand="ib"] .ibk-totals { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
  html[data-brand="ib"] .ibk-row { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:6px 0; font-size:.88rem; color:#4b5563; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ibk-row--minus span:last-child { color:#059669; font-weight:600; }
  html[data-brand="ib"] .ibk-row--total { margin-top:6px; padding-top:12px; border-top:1px solid #14181f; font-size:.95rem; font-weight:700; color:#14181f; }
  html[data-brand="ib"] .ibk-row--total small { display:block; font-size:.7rem; font-weight:500; color:#9ca3af; }
  html[data-brand="ib"] .ibk-row--total span:last-child { font-family:'Montserrat',sans-serif; font-size:1.55rem; font-weight:700; letter-spacing:-.03em; white-space:nowrap; }

  /* undo, threshold, best sellers, offers */
  /* removed line: its dashed slot with «Deshacer» (not a dark toast) */
  html[data-brand="ib"] .ibk-undo { display:flex; align-items:center; gap:10px; margin:0 0 12px; padding:8px 8px 8px 10px; border:1px dashed #e3e6ea; border-radius:14px; background:#fafbfc; color:#6b7280; font-size:.84rem; animation:ibk-undo-in .22s ease-out both; }
  html[data-brand="ib"] .ibk-undo__icon { flex:none; display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:#f1f2f5; color:#9ca3af; }
  html[data-brand="ib"] .ibk-undo__text { flex:1; min-width:0; display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-height:1.3; }
  html[data-brand="ib"] .ibk-undo__text strong { color:#374151; font-weight:600; }
  html[data-brand="ib"] .ibk-undo__btn { flex:none; display:inline-flex; align-items:center; gap:5px; height:32px; padding:0 12px; border:1px solid #f4c5d9; border-radius:999px; background:#fff; color:#e61c72; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer; transition:background-color .15s, border-color .15s; }
  html[data-brand="ib"] .ibk-undo__btn:hover { border-color:#e61c72; background:#fdf2f8; }
  html[data-brand="ib"] .ibk-undo__btn:focus-visible { outline:none; box-shadow:0 0 0 3px rgba(230,28,114,.18); }
  @keyframes ibk-undo-in { from { opacity:0; transform:translateY(-4px); } }
  @media (prefers-reduced-motion:reduce) { html[data-brand="ib"] .ibk-undo { animation:none; } }
  html[data-brand="ib"] .ibk-threshold { margin:0 0 12px; padding:14px 16px; border:1px solid #f9a8d4; border-radius:14px; background:#fff7fb; }
  html[data-brand="ib"] .ibk-threshold__title { margin:0; font-size:.86rem; font-weight:700; color:#14181f; }
  html[data-brand="ib"] .ibk-threshold__bar { height:6px; margin-top:8px; border-radius:999px; background:#fbd7e8; overflow:hidden; }
  html[data-brand="ib"] .ibk-threshold__bar span { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#e61c72,#ff4d94); transition:width .3s ease; }
  html[data-brand="ib"] .ibk-threshold__msg { margin:6px 0 0; font-size:.76rem; color:#6b7280; }
  html[data-brand="ib"] .ibk-best { margin-top:18px; }
  html[data-brand="ib"] .ibk-best ul { list-style:none; margin:8px 0 0; padding:0; }
  html[data-brand="ib"] .ibk-best li + li { border-top:1px solid #eef0f3; }
  html[data-brand="ib"] .ibk-best a { display:flex; align-items:center; gap:12px; padding:10px 0; color:#14181f; text-decoration:none; font-size:.9rem; font-weight:600; }
  html[data-brand="ib"] .ibk-best a:hover .ibk-best__name { color:#e61c72; }
  html[data-brand="ib"] .ibk-best img,
  html[data-brand="ib"] .ibk-best__blank { width:32px; height:32px; border-radius:9px; flex:none; background:#fdecf4; }
  html[data-brand="ib"] .ibk-best__name { flex:1; min-width:0; }
  html[data-brand="ib"] .ibk-best__price { font-size:.78rem; font-weight:500; color:#6b7280; white-space:nowrap; }
  html[data-brand="ib"] .ibk-offers .tw { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
  html[data-brand="ib"] .ibk-drawer__body .ibk-offers { margin-top:16px; }

  /* mobile bar of /carrito: the checkout bar, a link instead of a button */
  html[data-brand="ib"] a.ckb-bar__btn { text-decoration:none; }
  html[data-brand="ib"] a.ckb-bar__btn:hover { color:#fff; }

  /* drawer (portal, outside .ibr) */
  /* The live header is z-index 9999: the drawer sits above it, and dialogs opened from the
     drawer (upsell post picker, toasts) above the drawer while it is mounted. */
  html[data-brand="ib"]:has(.ibk-drawer) { --z-modal: 10060 !important; --z-toast: 10070 !important; --z-tooltip: 10080 !important; }
  html[data-brand="ib"] .ibk-overlay { position:fixed; inset:0; z-index:10040; background:rgba(16,17,20,.45); }
  html[data-brand="ib"] .ibk-drawer { position:fixed; z-index:10050; display:flex; flex-direction:column; background:#fff; color:#14181f; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; -webkit-font-smoothing:antialiased; line-height:1.5; box-shadow:0 25px 50px -12px rgba(0,0,0,.25); outline:none; }
  html[data-brand="ib"] .ibk-drawer--side { top:0; bottom:0; right:0; width:420px; max-width:100vw; border-radius:24px 0 0 24px; }
  html[data-brand="ib"] .ibk-drawer--bottom { left:0; right:0; bottom:0; height:92dvh; border-radius:24px 24px 0 0; }
  /* Closing: vaul animates the exit in 0.5 s and keeps the page scroll-locked (overlay catching
     clicks) until it ends → 200 ms ease-in (!important beats vaul's unlayered injected style).
     Inner pages scroll on <body> (overflow-y: scroll): the scroll lock hid that scrollbar and the
     centred page jumped 5 px on open and again on close → keep its gutter. */
  html[data-brand="ib"] .ibk-drawer[data-state="closed"], html[data-brand="ib"] .ibk-overlay[data-state="closed"] { animation-duration:.2s !important; animation-timing-function:cubic-bezier(.4,0,1,1) !important; }
  html[data-brand="ib"] body { scrollbar-gutter:stable; }
  /* Loyalty block of the checkout summary (shared component in a .tw island). */
  html[data-brand="ib"] .ibc-loyalty { margin:14px 0 4px; font-family:inherit; }
  /* the live Bootstrap element rules (h2, a, input…) of this layer stay out of it: it keeps its own look */
  html[data-brand="ib"] .ibc-loyalty.tw * { all:revert-layer; }
  /* Thank-you page points note (shared component in its own .tw island): same reset, own spacing. */
  html[data-brand="ib"] .ibd-loyalty.tw { margin:14px 0 14px; }
  html[data-brand="ib"] .ibd-loyalty.tw * { all:revert-layer; }
  html[data-brand="ib"] .ibk-grip { width:40px; height:5px; margin:10px auto 0; border-radius:999px; background:#e5e7eb; flex-shrink:0; }
  html[data-brand="ib"] .ibk-drawer__head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:22px 22px 14px; border-bottom:1px solid #eef0f3; }
  html[data-brand="ib"] .ibk-drawer__title { margin:2px 0 0; font-family:'Montserrat',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:1.5rem; font-weight:800; letter-spacing:-.03em; line-height:1.1; color:#14181f; }
  html[data-brand="ib"] .ibk-close { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border:1.5px solid #e8eaed; border-radius:999px; background:#fff; color:#4b5563; cursor:pointer; }
  html[data-brand="ib"] .ibk-close:hover { border-color:#e61c72; color:#e61c72; }
  html[data-brand="ib"] .ibk-drawer__body { flex:1; overflow-y:auto; padding:16px 22px 20px; }
  html[data-brand="ib"] .ibk-drawer__foot { padding:14px 22px calc(12px + env(safe-area-inset-bottom)); border-top:1px solid #eef0f3; background:#f9fafb; }
  html[data-brand="ib"] .ibk-drawer__foot .ibk-cta { margin-top:12px; min-height:52px; }
  html[data-brand="ib"] .ibk-drawer__links { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; }
  html[data-brand="ib"] .ibk-empty { padding:24px 0 6px; }
  html[data-brand="ib"] .ibk-empty__title { margin:0; font-family:'Montserrat',sans-serif; font-size:1.1rem; font-weight:800; letter-spacing:-.02em; }
  html[data-brand="ib"] .ibk-empty__text { margin:6px 0 0; font-size:.9rem; color:#6b7280; line-height:1.5; }

  /* ════ Header actions (search + cart buttons): moved verbatim to ./header-actions.css, loaded on every page (this file loads only where the checkout, cart, drawer or palette need it). ════ */

  /* ════ Search palette (./search-dialog.tsx, portal) — the live «Servicios» mega dropdown look ════ */
  html[data-brand="ib"] .ibs-overlay { position:fixed; inset:0; z-index:10040; background:rgba(16,17,20,.45); backdrop-filter:blur(2px); }
  html[data-brand="ib"] .ibs { position:fixed; z-index:10050; left:50%; top:9vh; transform:translateX(-50%); width:min(720px, calc(100vw - 32px)); max-height:min(640px, 82vh); display:flex; flex-direction:column; overflow:hidden; border:1px solid #e5e7eb; border-radius:16px; background:#fff; color:#111827; font-family:Montserrat,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; box-shadow:0 20px 60px rgba(0,0,0,.15); outline:none; }
  html[data-brand="ib"] .ibs::before { content:""; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,#e61c72,#ff4d94); }
  html[data-brand="ib"] .ibs-head { display:flex; align-items:center; gap:10px; padding:18px 18px 14px; border-bottom:1px solid #f1f2f4; }
  html[data-brand="ib"] .ibs-field { flex:1; min-width:0; display:flex; align-items:center; gap:10px; height:50px; padding:0 14px; border:1.5px solid #e2e5ea; border-radius:12px; color:#e61c72; background:#fff; transition:border-color .15s, box-shadow .15s; }
  html[data-brand="ib"] .ibs-field:focus-within { border-color:#e61c72; box-shadow:0 0 0 3px rgba(230,28,114,.12); }
  html[data-brand="ib"] .ibs-field input { flex:1; min-width:0; height:100%; border:0; outline:0; background:transparent; color:#111827; font:inherit; font-size:16px; font-weight:500; }
  html[data-brand="ib"] .ibs-field input::placeholder { color:#9ca3af; }
  html[data-brand="ib"] .ibs-field input::-webkit-search-cancel-button { display:none; }
  html[data-brand="ib"] .ibs-scope { display:inline-flex; align-items:center; gap:6px; flex-shrink:0; padding:4px 10px 4px 6px; border-radius:999px; background:#fce7f3; color:#be185d; font-size:.78rem; font-weight:700; }
  html[data-brand="ib"] .ibs-close { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border:1.5px solid #e8eaed; border-radius:999px; background:#fff; color:#4b5563; cursor:pointer; }
  html[data-brand="ib"] .ibs-close:hover { border-color:#e61c72; color:#e61c72; }
  html[data-brand="ib"] .ibs-body { flex:1; overflow-y:auto; padding:14px 18px 18px; }
  html[data-brand="ib"] .ibs-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
  html[data-brand="ib"] .ibs-eyebrow { display:inline-flex; align-items:center; gap:6px; color:#e61c72; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
  html[data-brand="ib"] .ibs-back { padding:0; border:0; background:none; color:#e61c72; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer; }
  html[data-brand="ib"] .ibs-count { color:#6b7280; font-size:.75rem; font-weight:500; }
  html[data-brand="ib"] .ibs-icon { display:block; flex:none; border-radius:6px; object-fit:contain; }
  html[data-brand="ib"] .ibs-icon--blank { background:#fdecf4; }
  html[data-brand="ib"] .ibs-tiles { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; }
  html[data-brand="ib"] .ibs-tile { display:flex; align-items:center; gap:10px; min-width:0; padding:12px; border:1px solid #e5e7eb; border-radius:8px; background:#f9fafb; color:#111827; font:inherit; text-align:left; cursor:pointer; transition:background-color .15s, box-shadow .15s, transform .15s; }
  html[data-brand="ib"] .ibs-tile[data-active] { background:#f3f4f6; transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,.1); }
  html[data-brand="ib"] .ibs-tile__text, html[data-brand="ib"] .ibs-card__text { display:flex; flex-direction:column; min-width:0; }
  html[data-brand="ib"] .ibs-tile__name { font-size:.9rem; font-weight:600; }
  html[data-brand="ib"] .ibs-tile__meta { font-size:.72rem; color:#6b7280; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  html[data-brand="ib"] .ibs-cards { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px; }
  html[data-brand="ib"] .ibs-card { display:flex; align-items:center; gap:10px; min-width:0; padding:10px 12px; border:1px solid #e5e7eb; border-radius:8px; background:#fff; color:#111827; text-decoration:none; transition:background-color .12s, color .12s, border-color .12s; }
  html[data-brand="ib"] .ibs-card[data-active] { border-color:rgba(230,28,114,.35); background:#fff7fb; }
  html[data-brand="ib"] .ibs-card__text { flex:1; }
  html[data-brand="ib"] .ibs-card__name { font-size:.88rem; font-weight:600; line-height:1.25; }
  html[data-brand="ib"] .ibs-card__name mark { background:none; color:#e61c72; }
  html[data-brand="ib"] .ibs-card__meta { display:flex; align-items:center; gap:6px; font-size:.72rem; color:#6b7280; }
  html[data-brand="ib"] .ibs-pop { padding:1px 6px; border-radius:10px; background:#fce7f3; color:#be185d; font-size:.62rem; font-weight:500; }
  html[data-brand="ib"] .ibs-card__price { flex-shrink:0; font-size:.72rem; color:#6b7280; white-space:nowrap; }
  html[data-brand="ib"] .ibs-card__price strong { color:#111827; font-weight:700; }
  html[data-brand="ib"] .ibs-empty { padding:28px 8px; text-align:center; }
  html[data-brand="ib"] .ibs-empty p { margin:0 0 4px; font-weight:700; }
  html[data-brand="ib"] .ibs-empty span { color:#6b7280; font-size:.85rem; }
  html[data-brand="ib"] .ibs-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 18px; border-top:1px solid #f1f2f4; background:#fafafa; font-size:.75rem; color:#6b7280; }
  html[data-brand="ib"] .ibs-foot kbd { display:inline-block; min-width:20px; padding:1px 5px; border:1px solid #e5e7eb; border-radius:5px; background:#fff; font:inherit; font-size:.7rem; text-align:center; }
  html[data-brand="ib"] .ibs-all { color:#e61c72; font-weight:700; text-decoration:none; }
  html[data-brand="ib"] .ibs-all:hover { text-decoration:underline; }
  @media (max-width:639.98px) {
    html[data-brand="ib"] .ibs { top:0; left:0; transform:none; width:100vw; max-height:none; height:100dvh; border-radius:0; border:0; }
    html[data-brand="ib"] .ibs-tiles { grid-template-columns:repeat(2, minmax(0,1fr)); }
    html[data-brand="ib"] .ibs-cards { grid-template-columns:1fr; }
    html[data-brand="ib"] .ibs-keys { display:none; }
    html[data-brand="ib"] .ibs-tile__meta { white-space:normal; }
  }

  /* ════ Platform upsells / account / cross-sell drawn natively (checkout B, cart, status) ════
     The shared widgets keep their logic and markup; layer «ib» out-ranks the utilities, so these
     rules restyle them in the checkout-B language (white 14 px cards, #e8eaed borders, pink pills). */

  /* order bump (./bump.tsx) */
  html[data-brand="ib"] .ckb .ckb-bump { margin-top:12px; border-color:#f9a8d4; background:#fff7fb; }
  html[data-brand="ib"] .ckb .ckb-bump__row { display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:12px; align-items:start; }
  html[data-brand="ib"] .ckb .ckb-bump__icon { width:40px; height:40px; border-radius:11px; object-fit:cover; display:block; background:#fff; }
  html[data-brand="ib"] .ckb .ckb-bump__icon--blank { background:#fdecf4; }
  html[data-brand="ib"] .ckb .ckb-bump__text { display:flex; flex-direction:column; min-width:0; }
  html[data-brand="ib"] .ckb .ckb-bump__kicker { font-size:.62rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#e61c72; }
  html[data-brand="ib"] .ckb .ckb-bump__title { margin-top:2px; font-size:.98rem; font-weight:700; letter-spacing:-.01em; line-height:1.25; color:#14181f; }
  html[data-brand="ib"] .ckb .ckb-bump__msg { margin-top:3px; font-size:.78rem; line-height:1.4; color:#6b7280; }
  html[data-brand="ib"] .ckb .ckb-bump__price { text-align:right; }
  html[data-brand="ib"] .ckb .ckb-bump__amount { display:block; font-family:'Montserrat',sans-serif; font-size:1.15rem; font-weight:700; letter-spacing:-.03em; white-space:nowrap; color:#14181f; }
  html[data-brand="ib"] .ckb .ckb-bump__was { display:block; font-size:.76rem; color:#9ca3af; text-decoration:line-through; white-space:nowrap; }
  html[data-brand="ib"] .ckb .ckb-bump__btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; margin-top:14px; padding:0 18px; border:0; border-radius:999px; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); color:#fff; font-family:inherit; font-size:.88rem; font-weight:700; cursor:pointer; box-shadow:0 10px 22px -12px rgba(230,28,114,.75); transition:transform .18s ease; }
  html[data-brand="ib"] .ckb .ckb-bump__btn:hover:not(:disabled) { transform:translateY(-2px); }
  html[data-brand="ib"] .ckb .ckb-bump__btn:disabled { opacity:.55; cursor:not-allowed; box-shadow:none; }
  html[data-brand="ib"] .ckb .ckb-bump__btn--wide { width:100%; }
  html[data-brand="ib"] .ckb .ckb-bump__form { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
  html[data-brand="ib"] .ckb .ckb-bump__form .form-control { flex:1 1 220px; min-width:0; }
  html[data-brand="ib"] .ckb .ckb-bump__form .ckb-bump__btn { margin-top:0; min-height:3rem; }
  html[data-brand="ib"] .ckb .ckb-bump__alt { padding:0; border:0; background:none; color:#e61c72; font-family:inherit; font-size:.8rem; font-weight:700; cursor:pointer; }

  /* account prompt in «Tus datos» (shared CheckoutAccountPrompt: details + OAuth buttons) */
  html[data-brand="ib"] .ckb .ckb-account { margin:14px 0 0; padding-top:14px; border-top:1px solid #eef0f3; font-family:inherit; }
  html[data-brand="ib"] .ckb .ckb-account details { padding:0; border:0; border-radius:0; }
  html[data-brand="ib"] .ckb .ckb-account summary { padding:0; font-size:.86rem; color:#374151; }
  html[data-brand="ib"] .ckb .ckb-account summary .text-brand { color:#e61c72; }
  html[data-brand="ib"] .ckb .ckb-account [data-testid="checkout-account-signed-in"] { padding:10px 12px; border:1px solid #a7f3d0; border-radius:12px; background:#ecfdf5; color:#065f46; font-size:.84rem; }
  html[data-brand="ib"] .ckb .ckb-account [data-testid="checkout-account-signed-in"] a { color:#e61c72; }

  /* shared buttons inside IB surfaces (OAuth, account code, offers): pills like checkout B */
  html[data-brand="ib"] :is(.ckb, .ibco, .ibd, .ibk-drawer) .store-btn { min-height:46px; border-radius:999px !important; font-family:Montserrat,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:.88rem !important; font-weight:700; }
  html[data-brand="ib"] :is(.ckb, .ibco, .ibd, .ibk-drawer) .store-btn:not([class*="btn-primary"]) { border:1.5px solid #e2e5ea !important; background:#fff !important; color:#14181f !important; }
  html[data-brand="ib"] :is(.ckb, .ibco, .ibd, .ibk-drawer) .store-btn:not([class*="btn-primary"]):hover { border-color:#e61c72 !important; }
  html[data-brand="ib"] :is(.ckb, .ibco, .ibd, .ibk-drawer) .store-input,
  html[data-brand="ib"] :is(.ckb, .ibco, .ibd, .ibk-drawer) .store-field { border:1.5px solid #e2e5ea !important; border-radius:12px !important; }

  /* upsell offers in /carrito + drawer (shared OfferList / OfferCard) */
  html[data-brand="ib"] .ibk-offers [data-testid^="upsells-"] > p { margin:0 0 8px; font-size:.62rem !important; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#e61c72 !important; }
  html[data-brand="ib"] .ibk-offers [data-testid="upsell-offer"] { padding:14px !important; border:1px solid #f9a8d4 !important; border-radius:14px !important; background:#fff7fb !important; }
  html[data-brand="ib"] .ibk-offers [data-testid="upsell-offer"] p { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
  html[data-brand="ib"] .ibk-offers [data-testid="upsell-offer"] .type-price-m { font-family:'Montserrat',sans-serif; font-weight:700; letter-spacing:-.03em; }
  html[data-brand="ib"] .ibk-offers [data-testid="upsell-offer"] .store-btn { width:100%; border:0 !important; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%) !important; color:#fff !important; box-shadow:0 10px 22px -12px rgba(230,28,114,.75); }
  html[data-brand="ib"] .ibk-offers [data-testid="upsell-offer"] > div:first-child > span:first-child { border-radius:11px; background:#fff; border:1px solid #f6dcea; }
  html[data-brand="ib"] .ibk-cart .ibk-offers { padding:18px 16px; }

  /* status pages: cross-sell, account, withdrawal */
  html[data-brand="ib"] .ibco .ibco-cross__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:14px; }
  html[data-brand="ib"] .ibco .ibco-cross__all { color:#ED2B7E; font-size:13px; font-weight:700; }
  html[data-brand="ib"] .ibco .ibco-cross__list { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
  html[data-brand="ib"] .ibco .ibco-cross__card { display:flex; align-items:center; gap:13px; padding:12px 14px; border:1px solid #f0eef7; border-radius:13px; background:#faf9fd; color:#191428; }
  html[data-brand="ib"] .ibco .ibco-cross__card img { width:38px; height:38px; border-radius:10px; flex:none; object-fit:cover; }
  html[data-brand="ib"] .ibco .ibco-cross__body { flex:1; min-width:0; display:flex; flex-direction:column; }
  html[data-brand="ib"] .ibco .ibco-cross__title { font-size:14px; font-weight:700; letter-spacing:-.01em; }
  html[data-brand="ib"] .ibco .ibco-cross__price { font-size:12.5px; color:#8a8499; }
  html[data-brand="ib"] .ibco .ibco-cross__price strong { color:#191428; }
  html[data-brand="ib"] .ibco .ibco-cross__chip { margin-left:8px; padding:2px 8px; border-radius:999px; background:#fdecf4; color:#ED2B7E; font-size:11px; font-weight:700; }
  html[data-brand="ib"] .ibco .ibco-account .tw, html[data-brand="ib"] .ibco .ibco-withdrawal { font-family:inherit; font-size:13px; color:#6b6580; }
  html[data-brand="ib"] .ibco .ibco-withdrawal a { color:#ED2B7E; }

  /* quote checkout (./quote.tsx) */
  html[data-brand="ib"] .ckb .ckb-quote-email { padding:.8rem .95rem; border:1.5px solid #eef0f3; border-radius:12px; background:#f8f9fb; color:#14181f; font-size:16px; line-height:1.4; word-break:break-all; }


  /* public quote (./quote-page.tsx): checkout-B card + summary, summary visible on every width */
  html[data-brand="ib"] .ibq .ibq-dates { margin:10px 0 0; font-size:.84rem; color:#6b7280; }
  html[data-brand="ib"] .ibq-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; padding-bottom:40px; }
  @media (min-width:1024px) { html[data-brand="ib"] .ibq-grid { grid-template-columns:minmax(0,1.25fr) 380px; gap:0 28px; align-items:start; padding-bottom:56px; } html[data-brand="ib"] .ibq-side { position:sticky; top:96px; } }
  html[data-brand="ib"] .ibq .alert-message { margin:0 0 12px; }
  html[data-brand="ib"] .ibq .ibq-alert--neutral { border-color:#e5e7eb; background:#f8f9fb; color:#374151; }
  html[data-brand="ib"] .ibq .ibq-alert--info { border-color:#f9a8d4; background:#fff7fb; color:#be185d; }
  html[data-brand="ib"] .ibq-items { list-style:none; margin:0; padding:0; }
  html[data-brand="ib"] .ibq-item { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding:12px 0; border-top:1px solid #eef0f3; }
  html[data-brand="ib"] .ibq-item:first-child { border-top:0; padding-top:0; }
  html[data-brand="ib"] .ibq-item__body { display:flex; flex-direction:column; min-width:0; }
  html[data-brand="ib"] .ibq-item__name { font-size:.98rem; font-weight:700; letter-spacing:-.01em; color:#14181f; line-height:1.25; }
  html[data-brand="ib"] .ibq-item__meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:3px; font-size:.8rem; color:#6b7280; }
  html[data-brand="ib"] .ibq-chip { padding:2px 8px; border-radius:999px; background:#fce7f3; color:#be185d; font-size:.68rem; font-weight:700; }
  html[data-brand="ib"] .ibq-chip--grey { background:#f3f4f6; color:#4b5563; }
  html[data-brand="ib"] .ibq-item__price { text-align:right; white-space:nowrap; }
  html[data-brand="ib"] .ibq-item__was { display:block; font-size:.76rem; color:#9ca3af; text-decoration:line-through; }
  html[data-brand="ib"] .ibq-item__amount { font-family:'Montserrat',sans-serif; font-size:1.1rem; font-weight:700; letter-spacing:-.03em; color:#14181f; }
  html[data-brand="ib"] .ibq .ibq-breakdown { margin-top:4px; padding-top:0; border-top:0; }
  html[data-brand="ib"] .ibq .ibq-breakdown s { color:#9ca3af; font-weight:500; }
  html[data-brand="ib"] .ibq .ibq-remaining { margin:12px 0 0; font-size:.84rem; font-weight:600; color:#14181f; text-align:center; }
  html[data-brand="ib"] .ibq .submit-section .ibk-btn { margin-top:12px; }

  /* ════ Pack multi-post picker (live bundles/views/detail.php inline <style>, «PACK · multi-post
     picker», verbatim and scoped; React port in ib/packs/multi-post.tsx). live.css only has the
     rules of what the crawl saw (empty state): the grid cards, quantities and toolbar states are
     here. Keyframes renamed ibx-pkd-* (global names). ════ */
  html[data-brand="ib"] .pkd-handle-row { background:linear-gradient(135deg,#fdf2f8,#fff); border:1px solid var(--pk-gray-200); border-radius:12px; padding:14px 16px; margin:14px 0 12px; }
  html[data-brand="ib"] .pkd-link-row-head { font-size:.78rem; color:var(--pk-gray-600); margin:0 0 10px; display:flex; align-items:center; gap:8px; font-weight:600; }
  html[data-brand="ib"] .pkd-link-row-head .qty-pill { background:rgba(230,28,114,.1); color:var(--pk-primary); padding:.15rem .5rem; border-radius:8px; font-weight:700; font-size:.72rem; }
  html[data-brand="ib"] .pkd-link-row.is-multi { background:#fff; border:1px solid var(--pk-gray-200); padding:14px; }
  html[data-brand="ib"] .pkd-multi-rules { display:flex; align-items:center; gap:6px;
    margin:6px 0 10px; padding:8px 12px;
    background:rgba(230,28,114,.06); border:1px solid rgba(230,28,114,.15);
    border-radius:8px; font-size:.78rem; font-weight:600; color:var(--pk-primary); }
  html[data-brand="ib"] .pkd-multi-empty { display:flex; align-items:center; gap:10px; color:var(--pk-gray-500); font-size:.85rem; padding:14px 4px; }
  html[data-brand="ib"] .pkd-multi-empty svg { color:var(--pk-gray-400); flex-shrink:0; }
  html[data-brand="ib"] .pkd-multi-loading { display:flex; align-items:center; gap:10px; color:var(--pk-gray-600); font-size:.88rem; padding:14px 4px; }
  html[data-brand="ib"] .ibx-pkd-spinner { width:16px; height:16px; border:2px solid var(--pk-gray-200); border-top-color:var(--pk-primary); border-radius:50%; animation:ibx-pkd-spin .8s linear infinite; }
  @keyframes ibx-pkd-spin { to { transform:rotate(360deg); } }
  html[data-brand="ib"] .pkd-multi-error { background:#fff8e1; border:1.5px solid #fde68a; color:#854d0e; padding:.7rem .85rem; border-radius:9px; font-size:.85rem; margin:6px 0; }
  html[data-brand="ib"] .pkd-multi-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:12px;
    max-height:520px; overflow-y:auto; padding:6px 2px; margin:6px 0 10px;
    scrollbar-width:thin; scrollbar-color:#d4d4d8 transparent; }
  @media (max-width: 560px) {
    html[data-brand="ib"] .pkd-multi-grid { grid-template-columns:repeat(2, 1fr); gap:10px; max-height:none; }
  }
  html[data-brand="ib"] .pkd-multi-grid::-webkit-scrollbar { width:6px; }
  html[data-brand="ib"] .pkd-multi-grid::-webkit-scrollbar-thumb { background:#d4d4d8; border-radius:3px; }
  html[data-brand="ib"] .pkd-card { display:flex; flex-direction:column; gap:0;
    background:transparent; border-radius:12px; overflow:hidden;
    border:2px solid transparent; transition:border-color .14s, box-shadow .14s, transform .14s; }
  html[data-brand="ib"] .pkd-card:hover .pkd-card-thumb { transform:translateY(-2px); }
  html[data-brand="ib"] .pkd-card.is-selected { border-color:var(--pk-primary); box-shadow:0 6px 18px rgba(230,28,114,.18); background:#fff; }
  html[data-brand="ib"] .pkd-card-thumb { position:relative; background:#000;
    aspect-ratio:9/14; overflow:hidden; cursor:pointer;
    border-radius:10px;
    transition:transform .14s; }
  html[data-brand="ib"] .pkd-card.is-selected .pkd-card-thumb { border-radius:10px 10px 0 0; }
  html[data-brand="ib"] .pkd-card-thumb img { width:100%; height:100%; object-fit:cover; display:block; opacity:.92; }
  html[data-brand="ib"] .pkd-card.is-selected .pkd-card-thumb img { opacity:1; }
  html[data-brand="ib"] .pkd-card-thumb::after { content:''; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.7) 100%);
    pointer-events:none; }
  html[data-brand="ib"] .pkd-card-check { position:absolute; top:8px; right:8px; width:28px; height:28px; border-radius:50%;
    background:rgba(0,0,0,.45); border:2px solid #fff; display:flex; align-items:center; justify-content:center;
    color:#fff; transition:background .14s; z-index:2; }
  html[data-brand="ib"] .pkd-card.is-selected .pkd-card-check { background:var(--pk-primary); }
  html[data-brand="ib"] .pkd-card-check svg { width:14px; height:14px; opacity:0; transition:opacity .14s; }
  html[data-brand="ib"] .pkd-card.is-selected .pkd-card-check svg { opacity:1; }
  html[data-brand="ib"] .pkd-card-meta { position:absolute; left:0; right:0; bottom:0; padding:8px 10px;
    color:#fff; font-size:.75rem; font-weight:600; display:flex; gap:8px; align-items:center; z-index:2;
    text-shadow:0 1px 3px rgba(0,0,0,.5); }
  html[data-brand="ib"] .pkd-card-meta svg { width:12px; height:12px; }
  html[data-brand="ib"] .pkd-card-qty-box { padding:8px; background:#fff; border-radius:0 0 10px 10px;
    border-top:1px solid var(--pk-gray-100);
    animation:ibx-pkd-fade-in .18s ease; }
  @keyframes ibx-pkd-fade-in { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:translateY(0); } }
  @keyframes ibx-pkd-shake { 0%,100% { transform:translateX(0); } 25% { transform:translateX(-4px); } 75% { transform:translateX(4px); } }
  html[data-brand="ib"] .pkd-card-qty-input { width:100%; padding:8px 10px; border:1.5px solid var(--pk-gray-200); border-radius:8px;
    font-size:.95rem; font-weight:700; color:var(--pk-primary); text-align:center;
    font-variant-numeric:tabular-nums; background:#fff;
    transition:border-color .15s, box-shadow .15s;
    -moz-appearance:textfield; }
  html[data-brand="ib"] .pkd-card-qty-input::-webkit-outer-spin-button, html[data-brand="ib"] .pkd-card-qty-input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
  html[data-brand="ib"] .pkd-card-qty-input:focus { outline:none; border-color:var(--pk-primary); box-shadow:0 0 0 3px rgba(230,28,114,.12); }
  html[data-brand="ib"] .pkd-multi-toolbar { display:flex; justify-content:space-between; align-items:flex-start; gap:10px;
    padding:12px 14px; background:var(--pk-gray-50); border-radius:10px;
    font-size:.85rem; color:var(--pk-gray-600); margin:8px 0 0;
    flex-wrap:wrap; }
  html[data-brand="ib"] .pkd-multi-summary { flex:1; min-width:0; }
  html[data-brand="ib"] .pkd-multi-summary-line { font-size:.85rem; line-height:1.45; }
  html[data-brand="ib"] .pkd-multi-summary strong { color:var(--pk-primary); font-weight:700; font-variant-numeric:tabular-nums; }
  html[data-brand="ib"] .pkd-multi-summary.is-invalid .pkd-multi-summary-line strong { color:#b91c1c; }
  html[data-brand="ib"] .pkd-multi-hint { margin-top:4px; font-size:.78rem; color:var(--pk-gray-500); font-weight:600; }
  html[data-brand="ib"] .pkd-multi-summary.is-invalid .pkd-multi-hint { color:#b91c1c; }
  html[data-brand="ib"] .pkd-multi-summary:not(.is-invalid) .pkd-multi-hint { color:#0e8a64; }
  html[data-brand="ib"] .pkd-multi-manual { background:#fff; border:1.5px solid var(--pk-gray-200); color:var(--pk-gray-700); cursor:pointer;
    font-weight:600; font-size:.78rem; padding:7px 12px; border-radius:8px;
    transition:border-color .15s, color .15s;
    white-space:nowrap; }
  html[data-brand="ib"] .pkd-multi-manual:hover { border-color:var(--pk-primary); color:var(--pk-primary); }
  @media (max-width: 560px) {
    html[data-brand="ib"] .pkd-multi-toolbar { padding:10px 12px; }
    html[data-brand="ib"] .pkd-multi-manual { width:100%; padding:10px; }
  }
  html[data-brand="ib"] .pkd-multi-manual-box { margin-top:10px; }
  html[data-brand="ib"] .pkd-multi-manual-input { font-family:'SF Mono', Consolas, monospace; font-size:.85rem; line-height:1.5; }
  html[data-brand="ib"] .pkd-multi-comments-input { font-family:inherit; font-size:.92rem; line-height:1.5; }
  html[data-brand="ib"] .pkd-multi-comments-count { margin-top:6px; font-size:.78rem; color:var(--pk-gray-500); font-weight:600; }
  html[data-brand="ib"] .pkd-multi-comments-count .pkd-multi-c-now { color:var(--pk-primary); }
  html[data-brand="ib"] .pkd-multi-comments-count.is-ok .pkd-multi-c-now { color:var(--pk-success, #10b981); }
  html[data-brand="ib"] .pkd-multi-comments-count.is-invalid .pkd-multi-c-now { color:#b91c1c; }
  @media (max-width: 640px) {
    html[data-brand="ib"] .pkd-multi-rules { font-size:.74rem; padding:7px 10px; gap:5px; }
    html[data-brand="ib"] .pkd-card-qty-input { font-size:16px; padding:10px; min-height:42px; }
    html[data-brand="ib"] .pkd-card-check { width:30px; height:30px; }
    html[data-brand="ib"] .pkd-multi-toolbar { padding:11px 12px; }
    html[data-brand="ib"] .pkd-multi-summary-line { font-size:.82rem; }
    html[data-brand="ib"] .pkd-multi-hint { font-size:.76rem; }
  }
  @media (prefers-reduced-motion: reduce) {
    html[data-brand="ib"] .pkd-card, html[data-brand="ib"] .pkd-card * { transition:none !important; animation:none !important; }
  }
  /* the card thumb is a <button> here (keyboard + screen readers); live used a div */
  html[data-brand="ib"] button.pkd-card-thumb { display:block; width:100%; padding:0; border:0; margin:0; font:inherit; text-align:left; }
  html[data-brand="ib"] .pkd-card.is-shaking { animation:ibx-pkd-shake .35s; }

  /* ════ Cart lines + «Completa tu pedido» (redesign 2026-10-30: compact, quiet, functional) ════ */
  html[data-brand="ib"] .ibk-lines { list-style:none; margin:0; padding:0; }
  html[data-brand="ib"] .ibk-line { display:grid; grid-template-columns:36px minmax(0,1fr) auto; gap:12px; align-items:start; padding:14px 0; border-top:1px solid #eef0f3; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; color:#14181f; }
  html[data-brand="ib"] .ibk-line:first-child { border-top:0; padding-top:2px; }
  html[data-brand="ib"] .ibk-line__icon { width:36px; height:36px; border-radius:10px; object-fit:cover; display:block; }
  html[data-brand="ib"] .ibk-line__icon--blank { background:#f3f4f6; }
  html[data-brand="ib"] .ibk-line__body { min-width:0; display:flex; flex-direction:column; gap:6px; }
  html[data-brand="ib"] .ibk-line__name { font-size:.92rem; font-weight:700; letter-spacing:-.01em; line-height:1.25; }
  html[data-brand="ib"] .ibk-line__controls { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; }
  html[data-brand="ib"] .ibk-line__qty, html[data-brand="ib"] .ibk-line__meta { font-size:.78rem; color:#6b7280; }
  html[data-brand="ib"] .ibk-tier select { height:30px; padding:0 26px 0 10px; border:1px solid #e2e5ea; border-radius:8px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 8px center/11px no-repeat; color:#14181f; font-family:inherit; font-size:.78rem; font-weight:600; -webkit-appearance:none; appearance:none; cursor:pointer; }
  html[data-brand="ib"] .ibk-tier select:hover { border-color:#c9ccd3; }
  html[data-brand="ib"] .ibk-tier select:focus { outline:none; border-color:#e61c72; box-shadow:0 0 0 3px rgba(230,28,114,.12); }
  html[data-brand="ib"] .ibk-line__link { display:flex; align-items:center; gap:8px; min-width:0; font-size:.76rem; color:#9ca3af; }
  html[data-brand="ib"] .ibk-line__linktext { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  html[data-brand="ib"] .ibk-line__editlink { flex-shrink:0; padding:0; border:0; background:none; color:#6b7280; font:inherit; font-weight:600; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
  html[data-brand="ib"] .ibk-line__editlink:hover { color:#e61c72; }
  html[data-brand="ib"] .ibk-line__linkedit { display:flex; flex-direction:column; gap:4px; }
  html[data-brand="ib"] .ibk-line__help { font-size:.74rem; color:#9ca3af; }
  html[data-brand="ib"] .ibk-input--sm { height:34px; padding:0 10px; border:1px solid #e2e5ea; border-radius:8px; font-size:16px; }
  @media (min-width:640px) { html[data-brand="ib"] .ibk-input--sm { font-size:.84rem; } }
  html[data-brand="ib"] .ibk-line__issue { margin:0; font-size:.76rem; line-height:1.35; color:#b45309; }
  html[data-brand="ib"] .ibk-line__side { display:flex; flex-direction:column; align-items:flex-end; gap:2px; }
  html[data-brand="ib"] .ibk-line__amount { font-family:'Montserrat',sans-serif; font-size:.98rem; font-weight:700; letter-spacing:-.02em; white-space:nowrap; font-feature-settings:"tnum"; }
  html[data-brand="ib"] .ibk-line__was { font-size:.72rem; color:#9ca3af; text-decoration:line-through; white-space:nowrap; }
  html[data-brand="ib"] .ibk-line__remove { display:grid; place-items:center; width:30px; height:30px; margin-top:4px; margin-right:-6px; padding:0; border:0; border-radius:8px; background:transparent; color:#9ca3af; cursor:pointer; }
  html[data-brand="ib"] .ibk-line__remove:hover { background:#fef2f2; color:#dc2626; }
  html[data-brand="ib"] .ibk-line__remove:focus-visible { outline:2px solid #f9a8d4; outline-offset:1px; }

  html[data-brand="ib"] .ibk-xsell { margin-top:18px; padding-top:14px; border-top:1px solid #eef0f3; }
  html[data-brand="ib"] .ibk-cart .ibk-xsell { margin-top:16px; }
  html[data-brand="ib"] .ibk-xsell__title { margin:0 0 4px; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#6b7280; }
  html[data-brand="ib"] .ibk-xsell__list { list-style:none; margin:0; padding:0; }
  html[data-brand="ib"] .ibk-xsell__row { display:grid; grid-template-columns:32px minmax(0,1fr) auto 32px; align-items:center; gap:10px; padding:9px 0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
  html[data-brand="ib"] .ibk-xsell__row + .ibk-xsell__row { border-top:1px solid #f3f4f6; }
  html[data-brand="ib"] .ibk-xsell__icon { width:32px; height:32px; border-radius:9px; object-fit:cover; display:block; }
  html[data-brand="ib"] .ibk-xsell__icon--blank { background:#f3f4f6; }
  html[data-brand="ib"] .ibk-xsell__name { min-width:0; font-size:.86rem; font-weight:600; color:#14181f; line-height:1.3; }
  html[data-brand="ib"] .ibk-xsell__price { font-family:'Montserrat',sans-serif; font-size:.86rem; font-weight:700; letter-spacing:-.01em; color:#14181f; white-space:nowrap; }
  html[data-brand="ib"] .ibk-xsell__add { display:grid; place-items:center; width:32px; height:32px; padding:0; border:1.5px solid #e61c72; border-radius:999px; background:#fff; color:#e61c72; cursor:pointer; transition:background-color .15s, color .15s; }
  html[data-brand="ib"] .ibk-xsell__add:hover { background:#e61c72; color:#fff; }
  html[data-brand="ib"] .ibk-xsell__add:focus-visible { outline:2px solid #f9a8d4; outline-offset:2px; }
  html[data-brand="ib"] .ibk-xsell__added { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 0; font-size:.82rem; color:#059669; font-weight:600; }
  html[data-brand="ib"] .ibk-xsell__added button { padding:0; border:0; background:none; color:#6b7280; font:inherit; font-weight:600; text-decoration:underline; cursor:pointer; }

  /* drawer: no top strip, thin footer divider, total, CTA, two small links, safe area */
  html[data-brand="ib"] .ibk-drawer__head { padding:20px 22px 14px; }
  html[data-brand="ib"] .ibk-drawer__title { font-size:1.3rem; }
  html[data-brand="ib"] .ibk-drawer__foot { padding:14px 22px calc(14px + env(safe-area-inset-bottom)); border-top:1px solid #eef0f3; background:#fff; }
  html[data-brand="ib"] .ibk-drawer__foot .ibk-row--total { margin-top:0; padding-top:0; border-top:0; }
  html[data-brand="ib"] .ibk-drawer__foot .ibk-cta { margin-top:12px; min-height:50px; box-shadow:0 10px 22px -14px rgba(230,28,114,.7); }
  html[data-brand="ib"] .ibk-drawer__links { justify-content:center; gap:14px; margin-top:10px; }
  html[data-brand="ib"] .ibk-drawer__links .ibk-action { font-size:.8rem; font-weight:600; color:#6b7280; }
  html[data-brand="ib"] .ibk-drawer__foot .ibk-row--total span:last-child { font-size:1.3rem; }
  /* inside IB page regions (/carrito) the live base input rules apply too: pin the box */
  html[data-brand="ib"] .ibk-line input.ibk-input--sm { box-sizing:border-box; display:block; width:100%; height:34px; min-height:34px; margin:0; padding:0 10px; border:1px solid #e2e5ea; border-radius:8px; background:#fff; color:#14181f; line-height:normal; }
  html[data-brand="ib"] .ibk-line input.ibk-input--sm:focus { outline:none; border-color:#e61c72; box-shadow:0 0 0 3px rgba(230,28,114,.12); }

  /* ════ /checkout redesign 2026-10-30 (`.ibc`) — mobile first, one card per item, account once
     per network, posts picker/split, sticky summary (desktop) + sticky pay bar (mobile).
     IB language: Montserrat, #e2e5ea / #eef0f3 card system, pink only on actions. ════ */
  html[data-brand="ib"] .ibc-pp { --ibc-line:#e2e5ea; --ibc-soft:#eef0f3; --ibc-ink:#14181f; --ibc-mute:#6b7280; --ibc-pink:#e61c72; --ibc-ok:#059669; --ibc-bad:#dc2626; }
  html[data-brand="ib"] .ibc-pp, html[data-brand="ib"] .ibc-pp * { box-sizing:border-box; }
  html[data-brand="ib"] .ibc { --ibc-line:#e2e5ea; --ibc-soft:#eef0f3; --ibc-ink:#14181f; --ibc-mute:#6b7280; --ibc-pink:#e61c72; --ibc-ok:#059669; --ibc-bad:#dc2626;
    background:#f7f8fa; color:var(--ibc-ink); font-family:'Montserrat',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; -webkit-font-smoothing:antialiased; line-height:1.45; padding:18px 0 40px; overflow-x:clip; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) *, html[data-brand="ib"] :is(.ibc, .ibc-pp) *::before, html[data-brand="ib"] :is(.ibc, .ibc-pp) *::after { box-sizing:border-box; }
  html[data-brand="ib"] .ibc__inner { max-width:1120px; margin:0 auto; padding:0 16px; }
  html[data-brand="ib"] .ibc__inner--narrow { max-width:560px; }
  html[data-brand="ib"] .ibc__h1 { margin:0 0 14px; font-size:1.45rem; font-weight:800; letter-spacing:-.025em; line-height:1.15; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc__grid { display:flex; flex-direction:column; gap:0; }
  html[data-brand="ib"] .ibc__main { display:flex; flex-direction:column; gap:22px; min-width:0; }
  html[data-brand="ib"] .ibc-muted { color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-num { font-variant-numeric:tabular-nums; white-space:nowrap; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

  /* cards + sections */
  html[data-brand="ib"] .ibc-card { background:#fff; border:1px solid var(--ibc-line); border-radius:16px; padding:16px; }
  html[data-brand="ib"] .ibc-card--flush { padding:4px 16px; }
  html[data-brand="ib"] .ibc-sec { display:flex; flex-direction:column; gap:10px; }
  html[data-brand="ib"] .ibc-sec__title { margin:0; font-size:.72rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-group { display:flex; flex-direction:column; gap:10px; }
  html[data-brand="ib"] .ibc-group + .ibc-group { margin-top:8px; }
  html[data-brand="ib"] .ibc-row-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }

  /* alerts */
  html[data-brand="ib"] .ibc-alert { margin:0 0 12px; padding:10px 12px; border-radius:12px; font-size:.86rem; font-weight:600; background:var(--ibc-soft); color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-alert--error { background:#fef2f2; color:#b91c1c; }
  html[data-brand="ib"] .ibc-alert--warning { background:#fffbeb; color:#92400e; }
  html[data-brand="ib"] .ibc-alert--success { background:#ecfdf5; color:#065f46; }

  /* form controls */
  html[data-brand="ib"] .ibc-label { display:block; margin:0 0 6px; font-size:.84rem; font-weight:700; color:var(--ibc-ink); }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) input.ibc-input, html[data-brand="ib"] :is(.ibc, .ibc-pp) textarea.ibc-input { display:block; width:100%; height:48px; min-height:48px; margin:0; padding:0 14px; border:1.5px solid var(--ibc-line); border-radius:12px; background:#fff; color:var(--ibc-ink); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; font-size:16px; line-height:normal; box-shadow:none; transition:border-color .15s, box-shadow .15s; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) textarea.ibc-input { height:auto; padding:12px 14px; line-height:1.45; resize:vertical; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) .ibc-input::placeholder { color:#9ca3af; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) .ibc-input:focus { outline:none; border-color:var(--ibc-ink); box-shadow:0 0 0 3px rgba(20,24,31,.08); }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) .ibc-input.is-ok { border-color:#a7f3d0; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) .ibc-input.is-bad { border-color:var(--ibc-bad); box-shadow:0 0 0 3px rgba(220,38,38,.08); }
  html[data-brand="ib"] .ibc-help { margin:6px 0 0; font-size:.78rem; line-height:1.4; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-help.is-bad { color:var(--ibc-bad); font-weight:600; }
  html[data-brand="ib"] .ibc-help.is-ok { color:var(--ibc-ok); font-weight:600; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-link-btn { display:inline; padding:0; border:0; background:none; color:var(--ibc-pink); font:inherit; font-size:.84rem; font-weight:700; cursor:pointer; text-decoration:none; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-link-btn:hover { text-decoration:underline; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-icon-btn { display:grid; place-items:center; width:34px; height:34px; padding:0; border:0; border-radius:10px; background:none; color:#9ca3af; cursor:pointer; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-icon-btn:hover { background:var(--ibc-soft); color:var(--ibc-ink); }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-btn-dark { flex:none; height:48px; padding:0 18px; border:0; border-radius:12px; background:var(--ibc-ink); color:#fff; font:inherit; font-size:.88rem; font-weight:700; cursor:pointer; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button:focus-visible, html[data-brand="ib"] :is(.ibc, .ibc-pp) summary:focus-visible, html[data-brand="ib"] :is(.ibc, .ibc-pp) a:focus-visible { outline:2px solid var(--ibc-pink); outline-offset:2px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button:focus:not(:focus-visible) { outline:none; }

  /* account once per network */
  html[data-brand="ib"] .ibc-acc { background:#fff; border:1px solid var(--ibc-line); border-radius:16px; padding:14px 16px 14px; }
  /* one section per network: header (icon + name) with the account field, item cards nested */
  html[data-brand="ib"] .ibc-group--net { gap:10px; padding:14px 12px 12px; background:#fff; border:1px solid var(--ibc-line); border-radius:18px; }
  html[data-brand="ib"] .ibc-group__head { display:flex; flex-direction:column; gap:10px; padding:0 4px 4px; }
  html[data-brand="ib"] .ibc-group__name { display:flex; align-items:center; gap:8px; margin:0; font-size:1rem; font-weight:800; letter-spacing:-.01em; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-group__name img { width:22px; height:22px; border-radius:6px; object-fit:cover; }
  html[data-brand="ib"] .ibc-group--net .ibc-acc { padding:0; border:0; border-radius:0; }
  html[data-brand="ib"] .ibc-group--net .ibc-item { border-radius:14px; background:#fff; }
  html[data-brand="ib"] .ibc-group--net .ibc-item:not(.is-bad) { border-color:#e8eaee; }

  /* item cards */
  html[data-brand="ib"] .ibc-item { background:#fff; border:1px solid var(--ibc-line); border-radius:16px; transition:border-color .15s, box-shadow .15s; scroll-margin:96px 0 120px; }
  html[data-brand="ib"] .ibc-item.is-bad { border-color:#fca5a5; box-shadow:0 0 0 3px rgba(220,38,38,.06); }
  html[data-brand="ib"] .ibc-item__head { display:grid; grid-template-columns:36px minmax(0,1fr) auto 30px; align-items:center; gap:10px; padding:12px 8px 12px 14px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-item__remove { width:30px; height:30px; align-self:start; margin-top:2px; }
  html[data-brand="ib"] .ibc-item__icon { display:block; width:36px; height:36px; border-radius:10px; object-fit:cover; }
  html[data-brand="ib"] .ibc-item__icon--blank { background:var(--ibc-soft); }
  html[data-brand="ib"] .ibc-item__title { display:flex; flex-direction:column; min-width:0; gap:2px; }
  html[data-brand="ib"] .ibc-item__name { font-size:.92rem; font-weight:700; line-height:1.3; color:var(--ibc-ink); overflow-wrap:anywhere; }
  html[data-brand="ib"] .ibc-item__sub { display:flex; align-items:center; gap:6px; font-size:.76rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-chip { padding:1px 8px; border-radius:999px; background:var(--ibc-soft); color:var(--ibc-ink); font-size:.7rem; font-weight:700; }
  html[data-brand="ib"] .ibc-item__end { display:flex; flex-direction:column; align-items:flex-end; gap:4px; }
  html[data-brand="ib"] .ibc-item__price { font-size:.92rem; font-weight:800; letter-spacing:-.01em; }
  html[data-brand="ib"] .ibc-badge { display:inline-flex; align-items:center; justify-content:center; height:20px; border-radius:999px; font-size:.68rem; font-weight:700; }
  html[data-brand="ib"] .ibc-badge--ok { width:20px; background:#d1fae5; color:var(--ibc-ok); }
  html[data-brand="ib"] .ibc-badge--miss { padding:0 8px; background:var(--ibc-soft); color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-badge--miss.is-bad { background:#fee2e2; color:var(--ibc-bad); }
  html[data-brand="ib"] .ibc-item__done { display:flex; align-items:center; gap:12px; margin:0 14px; padding:10px 0 12px; border-top:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-item__summary { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.84rem; font-weight:600; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-item__body { margin:0 14px; padding:12px 0 14px; border-top:1px solid var(--ibc-soft); display:flex; flex-direction:column; gap:12px; }
  html[data-brand="ib"] .ibc-item__uses { margin:0; font-size:.86rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-item__uses strong { color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-item__foot { display:flex; justify-content:flex-end; margin:-4px 0 -4px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) :is(button, a).ibc-quiet-btn { display:inline-flex; align-items:center; gap:4px; flex:none; padding:4px 8px; margin:-4px -8px; border:0; border-radius:8px; background:none; color:var(--ibc-mute); font:inherit; font-size:.8rem; font-weight:600; cursor:pointer; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) :is(button, a).ibc-quiet-btn:hover { background:var(--ibc-soft); color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-own { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
  html[data-brand="ib"] .ibc-comments { display:flex; flex-direction:column; }

  /* posts picker */
  html[data-brand="ib"] .ibc-pp { display:flex; flex-direction:column; gap:10px; }
  html[data-brand="ib"] .ibc-pp__rule { margin:0; font-size:.8rem; font-weight:600; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-pp__note { display:flex; align-items:center; gap:8px; margin:0; padding:10px 12px; border-radius:12px; background:var(--ibc-soft); font-size:.82rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-pp__grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:8px; }
  html[data-brand="ib"] .ibc-post { display:flex; flex-direction:column; gap:6px; min-width:0; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-post__thumb { position:relative; display:block; width:100%; padding:0; border:2px solid transparent; border-radius:12px; overflow:hidden; background:var(--ibc-soft); cursor:pointer; aspect-ratio:1/1; transition:border-color .15s, transform .15s; }
  html[data-brand="ib"] .ibc-post__thumb img { width:100%; height:100%; object-fit:cover; display:block; }
  html[data-brand="ib"] .ibc-post.is-on .ibc-post__thumb { border-color:var(--ibc-pink); }
  html[data-brand="ib"] .ibc-post__check { position:absolute; top:6px; right:6px; display:grid; place-items:center; width:22px; height:22px; border-radius:999px; border:2px solid #fff; background:rgba(20,24,31,.35); color:transparent; }
  html[data-brand="ib"] .ibc-post__check svg { width:12px; height:12px; }
  html[data-brand="ib"] .ibc-post.is-on .ibc-post__check { background:var(--ibc-pink); color:#fff; }
  html[data-brand="ib"] .ibc-post__views { position:absolute; left:6px; bottom:6px; padding:1px 7px; border-radius:999px; background:rgba(20,24,31,.6); color:#fff; font-size:.66rem; font-weight:700; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) input.ibc-post__qty, html[data-brand="ib"] :is(.ibc, .ibc-pp) input.ibc-pp__qty { width:100%; height:34px; min-height:34px; margin:0; padding:0 8px; border:1.5px solid var(--ibc-line); border-radius:9px; background:#fff; color:var(--ibc-ink); font:inherit; font-size:16px; font-weight:700; text-align:center; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) input.ibc-pp__qty { width:88px; flex:none; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) input.ibc-post__qty:focus, html[data-brand="ib"] :is(.ibc, .ibc-pp) input.ibc-pp__qty:focus { outline:none; border-color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-pp__list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
  html[data-brand="ib"] .ibc-pp__row { display:flex; align-items:center; gap:8px; padding:6px 6px 6px 12px; border:1px solid var(--ibc-line); border-radius:12px; }
  html[data-brand="ib"] .ibc-pp__url { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.82rem; font-weight:600; }
  html[data-brand="ib"] .ibc-pp__add { display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pp__paste { align-self:flex-start; color:var(--ibc-mute); font-weight:600; }
  html[data-brand="ib"] .ibc-pp__sum { margin:0; font-size:.8rem; font-weight:700; }
  html[data-brand="ib"] .ibc-pp__sum.is-ok { color:var(--ibc-ok); }
  html[data-brand="ib"] .ibc-pp__sum.is-bad { color:var(--ibc-bad); }

  /* «Tus datos» account prompt (platform sign-in buttons) */
  html[data-brand="ib"] .ibc-account { margin-top:14px; padding-top:14px; border-top:1px solid var(--ibc-soft); }

  /* extras: order bump row + quiet coupon */
  html[data-brand="ib"] .ibc-bump { border-bottom:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-bump .ibk-xsell__row { font-family:inherit; padding:12px 0; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pp__more { align-self:flex-start; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-coupon > summary { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 0; list-style:none; font-size:.86rem; font-weight:600; color:var(--ibc-mute); cursor:pointer; }
  html[data-brand="ib"] .ibc-coupon > summary::-webkit-details-marker { display:none; }
  html[data-brand="ib"] .ibc-coupon[open] > summary svg { transform:rotate(180deg); }
  html[data-brand="ib"] .ibc-coupon__body { display:flex; gap:8px; padding:0 0 12px; }
  html[data-brand="ib"] .ibc-coupon > .ibc-help { margin:-4px 0 12px; }

  /* consent */
  html[data-brand="ib"] .ibc-consent { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; background:#fff; border:1px solid var(--ibc-line); border-radius:16px; font-size:.82rem; line-height:1.45; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-consent.is-bad { border-color:#fca5a5; }
  html[data-brand="ib"] .ibc-consent input { flex:none; width:20px; height:20px; margin:1px 0 0; accent-color:var(--ibc-pink); }
  html[data-brand="ib"] .ibc-consent label { margin:0; font-weight:500; }
  html[data-brand="ib"] .ibc-consent a { color:var(--ibc-ink); text-decoration:underline; }
  html[data-brand="ib"] .ibc-consent + .ibc-help { margin-top:-14px; }
  html[data-brand="ib"] .ibc-mock { margin:0; font-size:.76rem; color:var(--ibc-mute); }

  /* summary: collapsible bar (mobile) */
  html[data-brand="ib"] .ibc__side { display:contents; }
  html[data-brand="ib"] .ibc-sum { order:-1; margin:0 0 18px; background:#fff; border:1px solid var(--ibc-line); border-radius:16px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-sum__bar { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; padding:14px 16px; border:0; border-radius:16px; background:none; color:var(--ibc-ink); font:inherit; font-size:.88rem; font-weight:700; cursor:pointer; text-align:left; }
  html[data-brand="ib"] .ibc-sum__bar-total { display:inline-flex; align-items:center; gap:8px; font-weight:800; }
  html[data-brand="ib"] .ibc-sum__bar-total svg { transition:transform .2s; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-sum.is-open .ibc-sum__bar-total svg { transform:rotate(180deg); }
  html[data-brand="ib"] .ibc-sum__body { display:none; padding:0 16px 14px; }
  html[data-brand="ib"] .ibc-sum.is-open .ibc-sum__body { display:block; }
  html[data-brand="ib"] .ibc-sum__title { display:none; margin:0 0 12px; font-size:1rem; font-weight:800; letter-spacing:-.01em; }
  html[data-brand="ib"] .ibc-sum__items { list-style:none; margin:0; padding:12px 0 0; border-top:1px solid var(--ibc-soft); display:flex; flex-direction:column; gap:8px; font-size:.84rem; }
  html[data-brand="ib"] .ibc-sum__items li { display:flex; justify-content:space-between; gap:12px; }
  html[data-brand="ib"] .ibc-sum__items li > span:first-child { min-width:0; font-weight:600; }
  html[data-brand="ib"] .ibc-sum__rows { margin:12px 0 0; padding:12px 0 0; border-top:1px solid var(--ibc-soft); display:flex; flex-direction:column; gap:6px; font-size:.84rem; }
  html[data-brand="ib"] .ibc-sum__rows > div { display:flex; justify-content:space-between; gap:12px; }
  html[data-brand="ib"] .ibc-sum__rows dt { font-weight:500; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-sum__rows dd { margin:0; font-weight:700; }
  html[data-brand="ib"] .ibc-sum__rows .is-minus dd { color:var(--ibc-ok); }
  html[data-brand="ib"] .ibc-sum__total { align-items:baseline; margin-top:4px; }
  html[data-brand="ib"] .ibc-sum__total dt { color:var(--ibc-ink); font-weight:800; font-size:.95rem; }
  html[data-brand="ib"] .ibc-sum__total dt small { margin-left:4px; font-size:.72rem; font-weight:500; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-sum__total dd { font-size:1.3rem; font-weight:800; letter-spacing:-.02em; }
  html[data-brand="ib"] .ibc-trust { list-style:none; margin:14px 0 0; padding:12px 0 0; border-top:1px solid var(--ibc-soft); display:flex; flex-direction:column; gap:6px; font-size:.78rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-trust li { display:flex; align-items:center; gap:8px; }
  html[data-brand="ib"] .ibc-trust li::before { content:""; flex:none; width:14px; height:14px; background:no-repeat center/14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); }

  /* pay: fixed bottom bar (mobile) */
  html[data-brand="ib"] .ibc-pay { order:99; position:fixed; left:0; right:0; bottom:0; z-index:900; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:#fff; border-top:1px solid var(--ibc-line); box-shadow:0 -10px 30px -12px rgba(20,24,31,.18); }
  html[data-brand="ib"] body:has(.ibc-pay) { padding-bottom:var(--ibc-paybar, calc(124px + env(safe-area-inset-bottom))); }
  html[data-brand="ib"] .ibc-pay .ibc-alert { margin:0 0 8px; font-size:.8rem; }
  html[data-brand="ib"] .ibc-pay__row { display:flex; align-items:center; gap:12px; }
  html[data-brand="ib"] .ibc-pay__total { display:none; flex-direction:column; line-height:1.15; }
  html[data-brand="ib"] .ibc-pay__total span { font-size:.72rem; font-weight:600; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-pay__total strong { font-size:1.1rem; font-weight:800; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:8px; height:52px; padding:0 20px; border:0; border-radius:14px; background:var(--ibc-pink); color:#fff; font:inherit; font-size:1rem; font-weight:800; letter-spacing:-.01em; cursor:pointer; box-shadow:0 12px 24px -14px rgba(230,28,114,.9); transition:background-color .15s, box-shadow .15s, transform .15s; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn:hover { background:#cf1665; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn.is-missing { background:#f3a5c6; box-shadow:none; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn:disabled { opacity:.6; cursor:default; }
  html[data-brand="ib"] .ibc-pay__missing, html[data-brand="ib"] .ibc-pay__ok { margin:6px 0 0; text-align:center; font-size:.76rem; font-weight:600; }
  html[data-brand="ib"] .ibc-pay__missing { color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-pay__missing.is-bad { color:var(--ibc-bad); }
  html[data-brand="ib"] .ibc-pay__ok { color:var(--ibc-mute); }

  html[data-brand="ib"] .ibc-spin { display:inline-block; width:14px; height:14px; border:2px solid #d1d5db; border-top-color:var(--ibc-ink); border-radius:999px; animation:ibx-ibc-spin .7s linear infinite; }
  html[data-brand="ib"] .ibc-spin--light { border-color:rgba(255,255,255,.45); border-top-color:#fff; }
  @keyframes ibx-ibc-spin { to { transform:rotate(360deg); } }
  html[data-brand="ib"] .ibc-skel { height:120px; border-radius:16px; background:linear-gradient(90deg,#eef0f3 0%,#f6f7f9 50%,#eef0f3 100%) 0 0/200% 100%; animation:ibx-ibc-skel 1.2s ease-in-out infinite; }
  html[data-brand="ib"] .ibc-skel--sm { height:48px; border-radius:12px; }
  @keyframes ibx-ibc-skel { to { background-position:-200% 0; } }

  @media (min-width:640px) {
    html[data-brand="ib"] .ibc { padding:30px 0 56px; }
    html[data-brand="ib"] .ibc__inner { padding:0 24px; }
    html[data-brand="ib"] .ibc__h1 { font-size:1.8rem; margin-bottom:20px; }
    html[data-brand="ib"] .ibc-pp__grid { grid-template-columns:repeat(6, minmax(0,1fr)); }
    html[data-brand="ib"] .ibc-pay__total { display:flex; }
    html[data-brand="ib"] .ibc-pay__row { max-width:640px; margin:0 auto; }
    html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn { flex:none; min-width:260px; margin-left:auto; }
    html[data-brand="ib"] .ibc-pay__missing, html[data-brand="ib"] .ibc-pay__ok { max-width:640px; margin:6px auto 0; text-align:right; }
  }

  /* desktop: two columns, sticky summary with the pay button on the right */
  @media (min-width:1024px) {
    html[data-brand="ib"] .ibc { padding:118px 0 72px; }
    html[data-brand="ib"] .ibc__h1 { font-size:2rem; margin-bottom:24px; }
    html[data-brand="ib"] .ibc__grid { display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:28px; align-items:start; }
    html[data-brand="ib"] .ibc__main { grid-column:1; grid-row:1; }
    html[data-brand="ib"] .ibc__side { display:flex; flex-direction:column; gap:0; grid-column:2; grid-row:1; position:sticky; top:100px; background:#fff; border:1px solid var(--ibc-line); border-radius:18px; box-shadow:0 18px 40px -28px rgba(20,24,31,.25); }
    html[data-brand="ib"] .ibc-sum { margin:0; border:0; border-radius:18px 18px 0 0; background:none; }
    html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-sum__bar { display:none; }
    html[data-brand="ib"] .ibc-sum__body, html[data-brand="ib"] .ibc-sum.is-open .ibc-sum__body { display:block; padding:20px 20px 0; }
    html[data-brand="ib"] .ibc-sum__title { display:block; }
    html[data-brand="ib"] .ibc-pay { position:static; padding:16px 20px 20px; border:0; box-shadow:none; background:none; }
    html[data-brand="ib"] body:has(.ibc-pay) { padding-bottom:0; }
    html[data-brand="ib"] .ibc-pay__total { display:none; }
    html[data-brand="ib"] .ibc-pay__row { max-width:none; }
    html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn { flex:1; min-width:0; margin:0; }
    html[data-brand="ib"] .ibc-pay__missing { max-width:none; text-align:center; }
    html[data-brand="ib"] .ibc-pay__ok { display:none; }
    html[data-brand="ib"] .ibc-group--net { padding:18px 16px 16px; }
    html[data-brand="ib"] .ibc-card, html[data-brand="ib"] .ibc-acc { padding:18px 20px; }
    html[data-brand="ib"] .ibc-card--flush { padding:4px 20px; }
    html[data-brand="ib"] .ibc-item__head { padding:14px 10px 14px 18px; }
    html[data-brand="ib"] .ibc-item__done, html[data-brand="ib"] .ibc-item__body { margin:0 18px; }
    html[data-brand="ib"] .ibc-pp__grid { grid-template-columns:repeat(6, minmax(0,1fr)); }
  }
  @media (prefers-reduced-motion:reduce) {
    html[data-brand="ib"] :is(.ibc, .ibc-pp) *, html[data-brand="ib"] :is(.ibc, .ibc-pp) *::before { transition:none !important; animation:none !important; }
  }

  /* ════ Payment status pages (/checkout/success/<token>, /checkout/unsuccess) — redesign 2026-11-04
     (`.ibd`, on the `.ibc` tokens). Brand band (pink = paid, ink = failed) with the verdict, then a
     wide two-column page: main column + sticky aside. Phones: one column in reading order — the
     columns are `display:contents` and each block carries an `order` (.ibd-o-*). ════ */
  html[data-brand="ib"] .ibc.ibd { padding:0 0 48px; }
  html[data-brand="ib"] .ibd__inner { width:100%; max-width:1180px; margin:0 auto; padding:0 16px; }
  html[data-brand="ib"] .ibd p { margin:0; }
  html[data-brand="ib"] .ibd-muted { margin:4px 0 0 !important; font-size:.86rem; line-height:1.5; color:var(--ibc-mute); }

  /* buttons */
  html[data-brand="ib"] .ibd a.ibd-btn { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:50px; padding:0 22px; border-radius:999px; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); color:#fff; font-size:.95rem; font-weight:700; text-decoration:none; box-shadow:0 10px 22px -12px rgba(230,28,114,.8); transition:box-shadow .2s, filter .2s; }
  html[data-brand="ib"] .ibd a.ibd-btn:hover { color:#fff; filter:brightness(.96); box-shadow:0 14px 26px -12px rgba(230,28,114,.9); text-decoration:none; }
  html[data-brand="ib"] .ibd a.ibd-btn--quiet { background:#fff; color:var(--ibc-ink); border:1.5px solid var(--ibc-line); box-shadow:none; }
  html[data-brand="ib"] .ibd a.ibd-btn--quiet:hover { color:var(--ibc-pink); border-color:var(--ibc-pink); filter:none; box-shadow:none; }
  html[data-brand="ib"] .ibd a.ibd-btn--soft { min-height:44px; background:#fdeaf3; color:#c2185b; box-shadow:none; }
  html[data-brand="ib"] .ibd a.ibd-btn--soft:hover { background:var(--ibc-pink); color:#fff; filter:none; box-shadow:0 10px 22px -12px rgba(230,28,114,.8); }

  /* band */
  html[data-brand="ib"] .ibd-band { position:relative; overflow:hidden; padding:30px 0 74px; color:#fff; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); }
  html[data-brand="ib"] .ibd-band::after { content:""; position:absolute; right:-120px; top:-160px; width:460px; height:460px; border-radius:50%; background:radial-gradient(circle, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 70%); pointer-events:none; }
  html[data-brand="ib"] .ibd-band.is-wait { background:linear-gradient(135deg,#2a2233 0%,#4a2a40 100%); }
  html[data-brand="ib"] .ibd-band.is-fail { background:linear-gradient(135deg,#1c1822 0%,#3b2232 100%); }
  html[data-brand="ib"] .ibd-band.is-fail::after { background:radial-gradient(circle, rgba(230,28,114,.28) 0%, rgba(230,28,114,0) 70%); }
  html[data-brand="ib"] .ibd-band__inner { position:relative; z-index:1; }
  html[data-brand="ib"] .ibd-band__eyebrow { display:inline-flex; align-items:center; gap:8px; padding:5px 12px 5px 5px; border-radius:999px; background:rgba(255,255,255,.16); font-size:.74rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
  html[data-brand="ib"] .ibd-band__mark { display:grid; place-items:center; width:22px; height:22px; border-radius:999px; background:#fff; color:#059669; animation:ibx-ibd-pop .45s cubic-bezier(.2,1.4,.4,1) both; }
  html[data-brand="ib"] .ibd-band.is-fail .ibd-band__mark { color:#e11d48; }
  html[data-brand="ib"] .ibd-band.is-wait .ibd-band__mark { background:transparent; }
  html[data-brand="ib"] .ibd-band__mark .ibc-spin { width:16px; height:16px; border-color:rgba(255,255,255,.35); border-top-color:#fff; }
  @keyframes ibx-ibd-pop { from { transform:scale(.5); opacity:0; } to { transform:scale(1); opacity:1; } }
  html[data-brand="ib"] .ibd .ibd-band__title { margin:14px 0 0; max-width:18em; color:#fff; font-size:1.7rem; font-weight:800; line-height:1.12; letter-spacing:-.03em; }
  html[data-brand="ib"] .ibd .ibd-band__text { margin-top:10px; max-width:36em; color:rgba(255,255,255,.88); font-size:.95rem; line-height:1.55; }
  html[data-brand="ib"] .ibd-band__text strong { color:#fff; }

  /* layout */
  html[data-brand="ib"] .ibd-grid { position:relative; z-index:2; display:flex; flex-direction:column; gap:14px; margin-top:-50px; }
  html[data-brand="ib"] .ibd-main, html[data-brand="ib"] .ibd-side, html[data-brand="ib"] .ibd-side__stick { display:contents; }
  html[data-brand="ib"] .ibd-o-sum { order:1; } html[data-brand="ib"] .ibd-o-services { order:2; } html[data-brand="ib"] .ibd-o-offer { order:3; }
  html[data-brand="ib"] .ibd-o-next { order:4; } html[data-brand="ib"] .ibd-o-account { order:5; } html[data-brand="ib"] .ibd-o-more { order:6; } html[data-brand="ib"] .ibd-o-help { order:7; }

  /* cards */
  html[data-brand="ib"] .ibd-card { padding:18px; background:#fff; border:1px solid var(--ibc-line); border-radius:18px; box-shadow:0 1px 2px rgba(17,24,39,.04); }
  html[data-brand="ib"] .ibd-o-sum, html[data-brand="ib"] .ibd-retry { box-shadow:0 18px 40px -24px rgba(17,24,39,.35); }
  html[data-brand="ib"] .ibd-card__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:6px; }
  html[data-brand="ib"] .ibd .ibd-card__title { margin:0; font-size:1.02rem; font-weight:800; letter-spacing:-.015em; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibd-card__meta { font-size:.78rem; font-weight:600; color:var(--ibc-mute); }

  /* summary */
  html[data-brand="ib"] .ibd-sum__rows { margin:0 0 16px; }
  html[data-brand="ib"] .ibd-sum__rows > div { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:7px 0; font-size:.86rem; }
  html[data-brand="ib"] .ibd-sum__rows dt { font-weight:500; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-sum__rows dd { margin:0; font-weight:700; color:var(--ibc-ink); text-align:right; overflow-wrap:anywhere; }
  html[data-brand="ib"] .ibd-sum__rows .is-saved dd { color:var(--ibc-ok); }
  html[data-brand="ib"] .ibd-sum__rows .is-total { margin-top:6px; padding-top:13px; border-top:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibd-sum__rows .is-total dt { font-weight:700; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibd-sum__rows .is-total dd { font-size:1.35rem; font-weight:800; letter-spacing:-.02em; }

  /* service lines */
  html[data-brand="ib"] .ibd-lines { list-style:none; margin:0; padding:0; }
  html[data-brand="ib"] .ibd-line { display:grid; grid-template-columns:40px minmax(0,1fr); gap:14px; align-items:start; padding:14px 0; }
  html[data-brand="ib"] .ibd-line + .ibd-line { border-top:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibd-line:last-child { padding-bottom:2px; }
  html[data-brand="ib"] .ibd-line__icon { display:block; width:40px; height:40px; padding:6px; border-radius:12px; background:#f7f8fa; object-fit:contain; }
  html[data-brand="ib"] .ibd-line__icon--blank { background:var(--ibc-soft); }
  html[data-brand="ib"] .ibd-line__main { min-width:0; }
  html[data-brand="ib"] .ibd-line__head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
  html[data-brand="ib"] .ibd-line__name { font-size:.95rem; font-weight:700; line-height:1.3; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibd-line__sub { display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px; margin-top:4px !important; font-size:.78rem; font-weight:600; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-posts { list-style:none; margin:4px 0 0; padding:0; }
  html[data-brand="ib"] .ibd-posts.is-split { display:flex; flex-direction:column; gap:6px; margin-top:10px; }
  html[data-brand="ib"] .ibd-posts.is-split > li { padding:10px 12px; border-radius:12px; background:#f7f8fa; }
  html[data-brand="ib"] .ibd-line__target { display:flex; gap:8px; min-width:0; font-size:.82rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-line__target > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  html[data-brand="ib"] .ibd-line__target strong { flex:none; color:var(--ibc-ink); font-weight:700; }
  html[data-brand="ib"] .ibd-line__ref { display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; margin-top:4px !important; font-size:.75rem; color:#9ca3af; }
  html[data-brand="ib"] .ibd .ibd-line__ref a { color:var(--ibc-pink); font-weight:700; text-decoration:none; }
  html[data-brand="ib"] .ibd .ibd-line__ref a:hover { text-decoration:underline; }
  html[data-brand="ib"] .ibd-line__bar { display:block; height:4px; margin-top:8px; border-radius:999px; background:var(--ibc-soft); overflow:hidden; }
  html[data-brand="ib"] .ibd-line__bar > span { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#e61c72,#ff4d94); }
  html[data-brand="ib"] .ibd-badge { flex:none; padding:4px 10px; border-radius:999px; font-size:.7rem; font-weight:700; white-space:nowrap; }
  html[data-brand="ib"] .ibd-badge--live { background:#fdeaf3; color:#c2185b; }
  html[data-brand="ib"] .ibd-badge--ok { background:#d1fae5; color:#047857; }
  html[data-brand="ib"] .ibd-badge--wait { background:var(--ibc-soft); color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-badge--bad { background:#fef2f2; color:#b91c1c; }

  /* steps (vertical on phones, a horizontal tracker from 768 px) */
  html[data-brand="ib"] .ibd-steps { list-style:none; margin:10px 0 0; padding:0; display:flex; flex-direction:column; }
  html[data-brand="ib"] .ibd-step { position:relative; display:grid; grid-template-columns:28px minmax(0,1fr); gap:12px; padding:0 0 18px; }
  html[data-brand="ib"] .ibd-step:last-child { padding-bottom:0; }
  html[data-brand="ib"] .ibd-step:not(:last-child)::before { content:""; position:absolute; left:13px; top:32px; bottom:4px; width:2px; border-radius:2px; background:var(--ibc-soft); }
  html[data-brand="ib"] .ibd-step.is-done:not(:last-child)::before { background:#f7b3d0; }
  html[data-brand="ib"] .ibd-step__dot { display:grid; place-items:center; width:28px; height:28px; border-radius:999px; background:var(--ibc-soft); color:var(--ibc-mute); font-size:.76rem; font-weight:800; }
  html[data-brand="ib"] .ibd-step.is-done .ibd-step__dot { background:var(--ibc-pink); color:#fff; }
  html[data-brand="ib"] .ibd-step.is-current .ibd-step__dot { background:#fff; color:var(--ibc-pink); box-shadow:inset 0 0 0 2px var(--ibc-pink), 0 0 0 4px #fdeaf3; }
  html[data-brand="ib"] .ibd-step__when { font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-step.is-current .ibd-step__when { color:var(--ibc-pink); }
  html[data-brand="ib"] .ibd-step__title { margin-top:2px !important; font-size:.92rem; font-weight:700; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibd-step.is-upcoming .ibd-step__title { color:#4b5563; }
  html[data-brand="ib"] .ibd-step__text { margin-top:3px !important; font-size:.82rem; line-height:1.5; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-steps--plain .ibd-step__dot { background:#fdeaf3; color:#c2185b; }
  html[data-brand="ib"] .ibd-steps--plain .ibd-step__title { padding-top:4px; color:var(--ibc-ink); }

  /* offer */
  html[data-brand="ib"] .ibd-offer { display:flex; flex-direction:column; gap:14px; border-color:#f6c7db; background:linear-gradient(180deg,#fff7fb 0%,#fff 60%); }
  html[data-brand="ib"] .ibd-offer.is-expired { opacity:.6; }
  html[data-brand="ib"] .ibd-offer__head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
  html[data-brand="ib"] .ibd-offer__tag { font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--ibc-pink); }
  html[data-brand="ib"] .ibd-offer__time { font-size:.78rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-offer__time strong { color:var(--ibc-ink); font-weight:700; }
  html[data-brand="ib"] .ibd-offer__row { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:12px; }
  html[data-brand="ib"] .ibd-offer__row img { width:40px; height:40px; padding:6px; border-radius:12px; background:#fff; box-shadow:0 0 0 1px var(--ibc-soft); object-fit:contain; }
  html[data-brand="ib"] .ibd-offer__name { display:flex; flex-direction:column; gap:2px; font-size:.92rem; font-weight:700; line-height:1.3; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibd-offer__price { font-size:.86rem; font-weight:500; }
  html[data-brand="ib"] .ibd-offer__price s { color:#9ca3af; }
  html[data-brand="ib"] .ibd-offer__price strong { color:var(--ibc-pink); font-weight:800; }
  html[data-brand="ib"] .ibd-offer__pct { padding:5px 9px; border-radius:10px; background:var(--ibc-pink); color:#fff; font-size:.78rem; font-weight:800; }

  /* account */
  html[data-brand="ib"] .ibd-account .tw { margin-top:14px; }

  /* cross-sell tiles */
  html[data-brand="ib"] .ibd-more__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin:8px 2px 10px; }
  html[data-brand="ib"] .ibd a.ibd-more__all { flex:none; white-space:nowrap; font-size:.8rem; font-weight:700; color:var(--ibc-pink); text-decoration:none; }
  html[data-brand="ib"] .ibd a.ibd-more__all:hover { text-decoration:underline; }
  html[data-brand="ib"] .ibd-more { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
  html[data-brand="ib"] .ibd a.ibd-more__tile { display:grid; grid-template-columns:40px minmax(0,1fr) 32px; align-items:center; gap:12px; height:100%; padding:14px; background:#fff; border:1px solid var(--ibc-line); border-radius:16px; color:var(--ibc-ink); text-decoration:none; transition:border-color .2s, box-shadow .2s; }
  html[data-brand="ib"] .ibd a.ibd-more__tile:hover { border-color:#f4c3d8; box-shadow:0 10px 24px -16px rgba(230,28,114,.45); }
  html[data-brand="ib"] .ibd-more__tile img, html[data-brand="ib"] .ibd-more__blank { display:block; width:40px; height:40px; padding:6px; border-radius:12px; background:#f7f8fa; object-fit:contain; }
  html[data-brand="ib"] .ibd-more__text { display:flex; flex-direction:column; gap:2px; min-width:0; }
  html[data-brand="ib"] .ibd-more__name { font-size:.9rem; font-weight:700; line-height:1.3; }
  html[data-brand="ib"] .ibd-more__price { font-size:.8rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-more__go { display:grid; place-items:center; width:32px; height:32px; border-radius:999px; background:#f7f8fa; color:var(--ibc-mute); transition:background-color .2s, color .2s; }
  html[data-brand="ib"] .ibd a.ibd-more__tile:hover .ibd-more__go { background:var(--ibc-pink); color:#fff; }

  /* help */
  html[data-brand="ib"] .ibd-help { display:flex; flex-direction:column; gap:8px; padding:4px 4px 0; font-size:.84rem; line-height:1.55; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd .ibd-help a { color:var(--ibc-ink); font-weight:700; }
  html[data-brand="ib"] .ibd-help__hours { display:block; }
  html[data-brand="ib"] .ibd .ibd-help a.ibd-help__shop { color:var(--ibc-mute); font-weight:600; text-decoration:none; }
  html[data-brand="ib"] .ibd .ibd-help a.ibd-help__shop:hover { color:var(--ibc-pink); }

  /* failure: retry, reasons, support */
  html[data-brand="ib"] .ibd-retry__error { margin-top:14px; padding:12px 14px; border-radius:12px; background:#fff7ed; border:1px solid #fed7aa; }
  html[data-brand="ib"] .ibd-retry__error span { font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#b45309; }
  html[data-brand="ib"] .ibd-retry__error p { margin-top:3px !important; font-size:.86rem; color:#7c2d12; }
  html[data-brand="ib"] .ibd-retry__actions { display:flex; flex-direction:column; gap:10px; margin-top:18px; }
  html[data-brand="ib"] .ibd-reasons { list-style:none; margin:12px 0 0; padding:0; display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
  html[data-brand="ib"] .ibd-reasons li { display:flex; gap:12px; align-items:flex-start; padding:12px; border-radius:14px; background:#f7f8fa; font-size:.82rem; line-height:1.45; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-reasons strong { display:block; margin-bottom:1px; font-size:.88rem; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibd-reasons__icon { display:grid; place-items:center; flex:none; width:36px; height:36px; border-radius:11px; background:#fff; color:var(--ibc-pink); box-shadow:0 0 0 1px var(--ibc-soft); }
  html[data-brand="ib"] .ibd-support__links { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
  html[data-brand="ib"] .ibd .ibd-support__links a { display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border:1.5px solid var(--ibc-line); border-radius:999px; color:var(--ibc-ink); font-size:.86rem; font-weight:700; text-decoration:none; transition:border-color .2s, color .2s; }
  html[data-brand="ib"] .ibd .ibd-support__links a:hover { border-color:var(--ibc-pink); color:var(--ibc-pink); }
  html[data-brand="ib"] .ibd-trust { list-style:none; margin:16px 0 0; padding:14px 0 0; border-top:1px solid var(--ibc-soft); display:flex; flex-direction:column; gap:8px; }
  html[data-brand="ib"] .ibd-trust li { position:relative; padding-left:22px; font-size:.8rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibd-trust li::before { content:""; position:absolute; left:2px; top:4px; width:11px; height:6px; border-left:2px solid var(--ibc-ok); border-bottom:2px solid var(--ibc-ok); transform:rotate(-45deg); }

  @media (min-width:640px) {
    html[data-brand="ib"] .ibd__inner { padding:0 24px; }
    html[data-brand="ib"] .ibd-band { padding:44px 0 92px; }
    html[data-brand="ib"] .ibd .ibd-band__title { font-size:2.2rem; }
    html[data-brand="ib"] .ibd-grid { margin-top:-60px; gap:16px; }
    html[data-brand="ib"] .ibd-card { padding:22px 24px; }
    html[data-brand="ib"] .ibd-more { grid-template-columns:repeat(2, minmax(0,1fr)); }
    html[data-brand="ib"] .ibd-reasons { grid-template-columns:repeat(2, minmax(0,1fr)); }
    html[data-brand="ib"] .ibd-retry__actions { flex-direction:row; }
    html[data-brand="ib"] .ibd-retry__actions a.ibd-btn { width:auto; flex:1 1 0; }
  }
  @media (min-width:768px) {
    html[data-brand="ib"] .ibd-steps { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:18px; margin-top:16px; }
    html[data-brand="ib"] .ibd-step { grid-template-columns:minmax(0,1fr); align-content:start; gap:12px; padding:0; }
    html[data-brand="ib"] .ibd-step:not(:last-child)::before { left:40px; right:-6px; top:13px; bottom:auto; width:auto; height:2px; }
  }
  @media (min-width:1024px) {
    html[data-brand="ib"] .ibd-band { padding:136px 0 104px; }
    html[data-brand="ib"] .ibd .ibd-band__title { font-size:2.6rem; }
    html[data-brand="ib"] .ibd-band__inner { padding-right:400px; }
    html[data-brand="ib"] .ibd-grid { display:grid; grid-template-columns:minmax(0,1fr) 360px; align-items:start; gap:24px; margin-top:-64px; }
    html[data-brand="ib"] .ibd-main { display:flex; flex-direction:column; gap:20px; min-width:0; }
    html[data-brand="ib"] .ibd-side { display:block; margin-top:-120px; }
    html[data-brand="ib"] .ibd-side__stick { position:sticky; top:96px; display:flex; flex-direction:column; gap:16px; }
  }
  @media (prefers-reduced-motion:reduce) {
    html[data-brand="ib"] .ibd-band__mark { animation:none; }
  }

  /* ════ /checkout — MF structure in IB language (2026-10-30, owner): Contacto · Tu pedido · Pago
     on the left, Resumen on the right; overrides the earlier `.ibc` layout rules above. ════ */
  html[data-brand="ib"] .ibc__grid { display:flex; flex-direction:column; gap:16px; }
  html[data-brand="ib"] .ibc__main { gap:16px; }
  html[data-brand="ib"] .ibc__side { display:block; }
  html[data-brand="ib"] .ibc-block { display:flex; flex-direction:column; }
  html[data-brand="ib"] .ibc-block__title { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin:0 0 12px; font-size:1.05rem; font-weight:800; letter-spacing:-.015em; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-block__count { font-size:.76rem; font-weight:600; letter-spacing:0; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-account { margin:0 0 14px; padding:0 0 14px; border-top:0; border-bottom:1px solid var(--ibc-soft); }

  /* mobile top bar (collapsible order) */
  html[data-brand="ib"] .ibc-topsum { margin:0 0 16px; background:#fff; border:1px solid var(--ibc-line); border-radius:16px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-topsum__bar { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; padding:14px 16px; border:0; border-radius:16px; background:none; color:var(--ibc-ink); font:inherit; font-size:.88rem; font-weight:700; cursor:pointer; text-align:left; }
  html[data-brand="ib"] .ibc-topsum__total { display:inline-flex; align-items:center; gap:8px; font-weight:800; }
  html[data-brand="ib"] .ibc-topsum__total svg { transition:transform .2s; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-topsum.is-open .ibc-topsum__total svg { transform:rotate(180deg); }
  html[data-brand="ib"] .ibc-topsum__body { display:none; padding:0 16px 14px; }
  html[data-brand="ib"] .ibc-topsum.is-open .ibc-topsum__body { display:block; }

  /* «Tu pedido» lines */
  html[data-brand="ib"] .ibc-lines { list-style:none; margin:0; padding:0; }
  html[data-brand="ib"] .ibc-line { padding:14px 0; scroll-margin:96px 0 140px; }
  html[data-brand="ib"] .ibc-line:first-child { padding-top:2px; }
  html[data-brand="ib"] .ibc-line + .ibc-line { border-top:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-line__row { display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:12px; align-items:start; }
  html[data-brand="ib"] .ibc-line__icon { display:block; width:40px; height:40px; border-radius:11px; object-fit:cover; }
  html[data-brand="ib"] .ibc-line__icon--blank { background:var(--ibc-soft); }
  html[data-brand="ib"] .ibc-line__main { min-width:0; }
  html[data-brand="ib"] .ibc-line__main p { margin:0; }
  html[data-brand="ib"] .ibc-line__name { font-size:.92rem; font-weight:700; line-height:1.3; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-line__pack { margin-top:4px !important; }
  html[data-brand="ib"] .ibc-line__target { margin-top:3px !important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.8rem; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-line__missing { display:inline-flex; align-items:center; gap:6px; margin-top:4px !important; padding:2px 9px; border-radius:999px; background:var(--ibc-soft); font-size:.74rem; font-weight:700; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-line__missing.is-bad { background:#fee2e2; color:var(--ibc-bad); }
  html[data-brand="ib"] .ibc-line__price { font-size:.92rem; font-weight:800; letter-spacing:-.01em; }
  html[data-brand="ib"] .ibc-line__actions { display:flex; flex-wrap:wrap; gap:2px 14px; margin:6px 0 0 52px; }
  html[data-brand="ib"] .ibc-line__actions .ibc-quiet-btn { margin:0 -8px; }
  html[data-brand="ib"] .ibc-line__tier { margin:10px 0 0 52px; max-width:280px; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) select.ibc-select { appearance:auto; padding:0 10px; }
  html[data-brand="ib"] .ibc-line__edit { margin:12px 0 0 52px; padding:12px; border-radius:14px; background:#f7f8fa; border:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-line.is-bad .ibc-line__edit { border-color:#fca5a5; }
  html[data-brand="ib"] .ibc-editor { display:flex; flex-direction:column; gap:12px; }
  html[data-brand="ib"] .ibc-editor .ibc-acc, html[data-brand="ib"] .ibc-sheet .ibc-acc { padding:0; border:0; border-radius:0; background:none; }
  html[data-brand="ib"] .ibc-undo { margin:10px 0 0; font-size:.82rem; color:var(--ibc-mute); }

  /* «Pago» */
  html[data-brand="ib"] .ibc-payinfo p { margin:0; }
  html[data-brand="ib"] .ibc-payinfo .ibc-mock { margin-bottom:10px; }
  html[data-brand="ib"] .ibc-payinfo__lead { display:flex; align-items:center; gap:8px; font-size:.92rem; font-weight:700; color:var(--ibc-ink); }
  html[data-brand="ib"] .ibc-payinfo__lead svg { color:var(--ibc-ok); }
  html[data-brand="ib"] .ibc-payinfo__text { margin-top:4px !important; font-size:.84rem; line-height:1.5; color:var(--ibc-mute); }
  html[data-brand="ib"] .ibc-payinfo__methods { list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 0; padding:0; }
  html[data-brand="ib"] .ibc-payinfo__methods > li { display:inline-flex; align-items:center; gap:8px; padding:5px 12px 5px 6px; border:1px solid var(--ibc-line); border-radius:999px; background:#fff; font-size:.8rem; font-weight:600; color:var(--ibc-ink); white-space:nowrap; }

  /* «Resumen» */
  html[data-brand="ib"] .ibc-res { display:flex; flex-direction:column; }
  html[data-brand="ib"] .ibc-res__items { display:none; }
  html[data-brand="ib"] .ibc-res .ibc-sum__items { padding-top:0; border-top:0; }
  html[data-brand="ib"] .ibc-res .ibc-bump { margin:0; border-top:1px solid var(--ibc-soft); border-bottom:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-res .ibc-coupon { border-bottom:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-res .ibc-sum__rows { margin-top:12px; padding-top:0; border-top:0; }
  html[data-brand="ib"] .ibc-res .ibc-consent { margin-top:14px; padding:12px; border-radius:12px; background:#f7f8fa; border-color:var(--ibc-soft); }
  html[data-brand="ib"] .ibc-res .ibc-consent + .ibc-help { margin-top:6px; }
  html[data-brand="ib"] .ibc-res .ibc-trust { margin-top:14px; }
  html[data-brand="ib"] .ibc-legal { margin:12px 0 0; font-size:.72rem; line-height:1.5; color:#9ca3af; }
  html[data-brand="ib"] .ibc-legal a { color:var(--ibc-mute); text-decoration:underline; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn { display:flex; width:100%; gap:10px; font-size:.96rem; }
  html[data-brand="ib"] .ibc-pay__missing { text-align:center; }

  /* «Cambiar enlace» sheet: bottom sheet on mobile, dialog on desktop */
  html.ibc-noscroll, html.ibc-noscroll body { overflow:hidden; }
  html[data-brand="ib"] .ibc-sheet { position:fixed; inset:0; z-index:10050; display:flex; align-items:flex-end; justify-content:center; }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-sheet__overlay { position:absolute; inset:0; padding:0; border:0; background:rgba(16,17,20,.45); cursor:default; }
  html[data-brand="ib"] .ibc-sheet__box { position:relative; display:flex; flex-direction:column; width:100%; max-height:88vh; background:#fff; border-radius:20px 20px 0 0; box-shadow:0 -20px 50px -20px rgba(20,24,31,.35); animation:ibx-ibc-sheet .22s ease-out both; }
  @keyframes ibx-ibc-sheet { from { transform:translateY(24px); opacity:0; } to { transform:none; opacity:1; } }
  html[data-brand="ib"] .ibc-sheet__head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 16px 12px; border-bottom:1px solid var(--ibc-soft); }
  html[data-brand="ib"] .ibc-sheet__title { margin:0; font-size:1rem; font-weight:800; letter-spacing:-.01em; }
  html[data-brand="ib"] .ibc-sheet__body { flex:1; overflow-y:auto; overscroll-behavior:contain; padding:16px; display:flex; flex-direction:column; gap:12px; }
  html[data-brand="ib"] .ibc-sheet__foot { padding:12px 16px calc(12px + env(safe-area-inset-bottom)); border-top:1px solid var(--ibc-soft); }
  html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-sheet__done { width:100%; height:48px; border:0; border-radius:14px; background:var(--ibc-ink); color:#fff; font:inherit; font-size:.95rem; font-weight:800; cursor:pointer; }

  @media (min-width:640px) {
    html[data-brand="ib"] .ibc-sheet { align-items:center; padding:24px; }
    html[data-brand="ib"] .ibc-sheet__box { max-width:560px; max-height:82vh; border-radius:20px; }
    html[data-brand="ib"] .ibc-sheet__head { padding:18px 20px 14px; }
    html[data-brand="ib"] .ibc-sheet__body { padding:18px 20px; }
    html[data-brand="ib"] .ibc-sheet__foot { padding:14px 20px; }
  }
  @media (min-width:640px) and (max-width:1023.98px) {
    html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn { max-width:640px; min-width:0; margin:0 auto; }
    html[data-brand="ib"] .ibc-pay__missing { max-width:640px; margin:6px auto 0; text-align:center; }
  }
  @media (min-width:1024px) {
    html[data-brand="ib"] .ibc-topsum { display:none; }
    html[data-brand="ib"] :is(.ibc, .ibc-pp) button.ibc-pay__btn { max-width:none; min-width:0; margin:0; }
    html[data-brand="ib"] .ibc-pay__missing { max-width:none; text-align:center; }
    html[data-brand="ib"] .ibc__grid { display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:24px; align-items:start; }
    html[data-brand="ib"] .ibc__main { grid-column:1; grid-row:1; }
    html[data-brand="ib"] .ibc__side { grid-column:2; grid-row:1; position:sticky; top:100px; display:block; background:none; border:0; border-radius:0; box-shadow:none; }
    html[data-brand="ib"] .ibc-res { padding:20px; box-shadow:0 18px 40px -28px rgba(20,24,31,.25); }
    html[data-brand="ib"] .ibc-res__items { display:block; margin-bottom:12px; }
    html[data-brand="ib"] .ibc-res .ibc-pay { padding:0; margin-top:14px; }
    html[data-brand="ib"] .ibc-block { padding:20px 22px; }
  }
  @media (prefers-reduced-motion:reduce) {
    html[data-brand="ib"] .ibc-sheet__box { animation:none; }
  }

  /* ════ Search palette v2 (owner 2026-10-31: «se ve mal») — a calm command palette ════ */
  html[data-brand="ib"] .ibs-overlay { z-index:2147482000; }
  html[data-brand="ib"] .ibs { z-index:2147482001; top:12vh; width:min(640px, calc(100vw - 32px)); max-height:min(560px, 76vh); border:1px solid #eceef1; border-radius:16px; box-shadow:0 24px 70px rgba(17,24,39,.22), 0 2px 6px rgba(17,24,39,.06); }
  html[data-brand="ib"] .ibs::before { display:none; }
  html[data-brand="ib"] .ibs-head { gap:8px; padding:6px 10px 6px 16px; border-bottom:1px solid #f0f1f3; }
  html[data-brand="ib"] .ibs-field { height:52px; padding:0; border:0; border-radius:0; color:#9ca3af; }
  html[data-brand="ib"] .ibs-field:focus-within { box-shadow:none; color:#e61c72; }
  html[data-brand="ib"] .ibs-field input { font-size:16px; font-weight:500; }
  html[data-brand="ib"] .ibs-close { width:auto; height:26px; padding:0 8px; border:1px solid #e5e7eb; border-radius:6px; color:#6b7280; font-size:.7rem; font-weight:600; }
  html[data-brand="ib"] .ibs-close svg { display:none; }
  html[data-brand="ib"] .ibs-close::after { content:"Esc"; }
  html[data-brand="ib"] .ibs-close:hover { border-color:#d1d5db; color:#111827; }
  html[data-brand="ib"] .ibs-body { padding:10px 8px 10px; }
  html[data-brand="ib"] .ibs-bar { margin:4px 8px 6px; }
  html[data-brand="ib"] .ibs-eyebrow { color:#6b7280; font-size:.68rem; letter-spacing:.06em; }
  html[data-brand="ib"] .ibs-count { color:#9ca3af; font-size:.7rem; }
  /* networks: slim rows, two columns */
  html[data-brand="ib"] .ibs-tiles { grid-template-columns:repeat(2, minmax(0,1fr)); gap:2px 6px; }
  html[data-brand="ib"] .ibs-tile { gap:10px; padding:8px 10px; border:0; border-radius:10px; background:transparent; box-shadow:none; transform:none !important; }
  html[data-brand="ib"] .ibs-tile:hover, html[data-brand="ib"] .ibs-tile[data-active] { background:#fdf2f8; box-shadow:inset 3px 0 0 #e61c72; }
  html[data-brand="ib"] .ibs-tile .ibs-icon { width:22px !important; height:22px !important; }
  html[data-brand="ib"] .ibs-tile__text { flex-direction:row; align-items:baseline; justify-content:space-between; gap:8px; flex:1; }
  html[data-brand="ib"] .ibs-tile__name { font-size:.88rem; font-weight:600; }
  html[data-brand="ib"] .ibs-tile__meta { font-size:.72rem; color:#9ca3af; }
  /* results: one column list */
  html[data-brand="ib"] .ibs-cards { grid-template-columns:1fr; gap:2px; }
  html[data-brand="ib"] .ibs-card { padding:9px 10px; border:0; border-radius:10px; background:transparent; }
  html[data-brand="ib"] .ibs-card:hover, html[data-brand="ib"] .ibs-card[data-active] { background:#fdf2f8; box-shadow:inset 3px 0 0 #e61c72; }
  html[data-brand="ib"] .ibs-card .ibs-icon { width:22px !important; height:22px !important; }
  html[data-brand="ib"] .ibs-card__name { font-size:.88rem; }
  html[data-brand="ib"] .ibs-card__name mark { padding:0 1px; border-radius:3px; background:#fce7f3; color:#be185d; }
  html[data-brand="ib"] .ibs-card__price { font-size:.75rem; }
  html[data-brand="ib"] .ibs-foot { padding:9px 16px; background:#fff; border-top:1px solid #f0f1f3; color:#9ca3af; font-size:.72rem; }
  html[data-brand="ib"] .ibs-all { font-size:.78rem; }
  @media (max-width:640px) {
    html[data-brand="ib"] .ibs { top:0; width:100vw; max-height:none; height:100dvh; border:0; border-radius:0; }
    html[data-brand="ib"] .ibs-head { padding:8px 8px 8px 16px; }
    html[data-brand="ib"] .ibs-close { height:auto; padding:6px 8px; border:0; color:#e61c72; font-size:.9rem; }
    html[data-brand="ib"] .ibs-close::after { content:"Cancelar"; }
    html[data-brand="ib"] .ibs-tiles { grid-template-columns:1fr; }
    html[data-brand="ib"] .ibs-tile, html[data-brand="ib"] .ibs-card { padding:11px 10px; }
  }

  /* ════ Cart line field group (owner 2026-10-31): quantity | link in ONE control ════ */
  html[data-brand="ib"] .ibk-fields { display:flex; align-items:stretch; width:100%; max-width:340px; min-height:40px; margin-top:8px; border:1px solid #e2e5ea; border-radius:12px; background:#fff; overflow:hidden; transition:border-color .15s, box-shadow .15s; }
  html[data-brand="ib"] .ibk-fields:focus-within { border-color:#e61c72; box-shadow:0 0 0 3px rgba(230,28,114,.12); }
  html[data-brand="ib"] .ibk-fields--missing:not(:focus-within) { border-style:dashed; border-color:#e9b8cd; background:#fffafc; }
  html[data-brand="ib"] .ibk-fields__qty { flex:none; display:flex; align-items:center; margin:0 !important; padding:0 !important; border:0 !important; background:none !important; box-shadow:none !important; }
  html[data-brand="ib"] .ibk-fields__qty select { height:100%; min-height:38px; padding:0 26px 0 12px !important; border:0 !important; border-radius:0 !important; background-color:transparent !important; box-shadow:none !important; color:#111827; font:inherit; font-size:.82rem !important; font-weight:700; cursor:pointer; outline:none; }
  html[data-brand="ib"] span.ibk-fields__qty { padding:0 12px !important; color:#111827; font-size:.82rem; font-weight:700; }
  html[data-brand="ib"] .ibk-fields__sep { flex:none; width:1px; margin:8px 0; background:#e5e7eb; }
  html[data-brand="ib"] .ibk-fields__link { flex:1; min-width:0; display:flex; align-items:center; gap:7px; margin:0; padding:0 10px 0 11px; color:#9ca3af; font-size:.82rem; }
  html[data-brand="ib"] .ibk-fields__link input { flex:1; min-width:0; height:38px; padding:0; border:0; outline:0; background:transparent; color:#111827; font:inherit; font-size:16px; }
  @media (min-width:768px) { html[data-brand="ib"] .ibk-fields__link input { font-size:.85rem; } }
  html[data-brand="ib"] .ibk-fields__link input::placeholder { color:#9ca3af; font-size:.82rem; }
  html[data-brand="ib"] .ibk-fields__link.ibk-line__link { justify-content:space-between; margin:0; color:#374151; }
  html[data-brand="ib"] .ibk-fields__link .ibk-line__linktext { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  html[data-brand="ib"] .ibk-fields__link .ibk-line__editlink { flex:none; padding:4px 0 4px 8px; border:0; background:none; color:#e61c72; font:inherit; font-size:.78rem; font-weight:700; cursor:pointer; }
  html[data-brand="ib"] .ibk-fields__later { color:#9ca3af; font-style:normal; }
  html[data-brand="ib"] .ibk-line__meta { display:block; margin-top:6px; }

  /* ════ Search v3 (owner 2026-11-01: «rediséñalo por completo»): pink branded head + grey body of white cards ════ */
  html[data-brand="ib"] .ibs { top:10vh; width:min(720px, calc(100vw - 32px)); max-height:min(640px, 82vh); border:0; border-radius:22px; background:#f5f6f8; box-shadow:0 30px 80px rgba(17,24,39,.28); }
  html[data-brand="ib"] .ibs-head { display:block; padding:20px 22px 18px; border:0; background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%); color:#fff; }
  html[data-brand="ib"] .ibs-head__row { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
  html[data-brand="ib"] .ibs-head__title { margin:0; color:#fff; font-family:Montserrat,sans-serif; font-size:1.2rem; font-weight:800; letter-spacing:-.01em; }
  html[data-brand="ib"] .ibs-close { display:grid; place-items:center; width:34px; height:34px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.18); color:#fff; font-size:0; }
  html[data-brand="ib"] .ibs-close::after { content:none !important; }
  html[data-brand="ib"] .ibs-close svg { display:block !important; }
  html[data-brand="ib"] .ibs-close:hover { background:rgba(255,255,255,.3); color:#fff; border:0; }
  html[data-brand="ib"] .ibs-field { height:54px; padding:0 18px; border:0; border-radius:999px; background:#fff; color:#e61c72; box-shadow:0 10px 26px rgba(120,10,60,.22); }
  html[data-brand="ib"] .ibs-field:focus-within { box-shadow:0 10px 26px rgba(120,10,60,.22), 0 0 0 4px rgba(255,255,255,.35); color:#e61c72; }
  html[data-brand="ib"] .ibs-field input { font-size:16px; font-weight:500; }
  html[data-brand="ib"] .ibs-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
  html[data-brand="ib"] .ibs-chip { display:inline-flex; align-items:center; gap:6px; padding:6px 12px 6px 8px; border-radius:999px; background:rgba(255,255,255,.18); color:#fff !important; font-size:.78rem; font-weight:600; text-decoration:none !important; transition:background .15s; }
  html[data-brand="ib"] .ibs-chip:hover { background:#fff; color:#c2185b !important; }
  html[data-brand="ib"] .ibs-chip .ibs-icon { border-radius:50%; background:#fff; padding:1px; }
  html[data-brand="ib"] .ibs-body { padding:16px 18px 14px; background:#f5f6f8; }
  html[data-brand="ib"] .ibs-bar { margin:0 2px 10px; }
  html[data-brand="ib"] .ibs-eyebrow, html[data-brand="ib"] .ibs-back { color:#6b7280; font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
  html[data-brand="ib"] .ibs-back { color:#e61c72; text-transform:none; letter-spacing:0; font-size:.82rem; }
  html[data-brand="ib"] .ibs-tiles { grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; }
  html[data-brand="ib"] .ibs-tile { flex-direction:column; align-items:flex-start; gap:8px; padding:14px; border:1px solid #eceef1 !important; border-radius:14px; background:#fff !important; box-shadow:0 1px 3px rgba(17,24,39,.04) !important; transform:none !important; }
  html[data-brand="ib"] .ibs-tile:hover, html[data-brand="ib"] .ibs-tile[data-active] { border-color:#f4b6d0 !important; box-shadow:0 8px 20px rgba(230,28,114,.10) !important; }
  html[data-brand="ib"] .ibs-tile .ibs-icon { width:30px !important; height:30px !important; }
  html[data-brand="ib"] .ibs-tile__text { flex-direction:column; align-items:flex-start; gap:1px; }
  html[data-brand="ib"] .ibs-tile__name { font-size:.92rem; font-weight:700; color:#111827; }
  html[data-brand="ib"] .ibs-tile__meta { font-size:.72rem; color:#6b7280; white-space:normal; }
  html[data-brand="ib"] .ibs-cards { gap:8px; }
  html[data-brand="ib"] .ibs-card { padding:12px 14px; border:1px solid #eceef1 !important; border-radius:14px; background:#fff !important; box-shadow:none !important; }
  html[data-brand="ib"] .ibs-card:hover, html[data-brand="ib"] .ibs-card[data-active] { border-color:#f4b6d0 !important; box-shadow:0 8px 20px rgba(230,28,114,.10) !important; }
  html[data-brand="ib"] .ibs-card__price strong { color:#e61c72; }
  html[data-brand="ib"] .ibs-foot { padding:10px 20px; border-top:1px solid #eceef1; background:#fff; }
  @media (max-width:640px) {
    html[data-brand="ib"] .ibs { top:0; width:100vw; max-height:none; height:100dvh; border-radius:0; }
    html[data-brand="ib"] .ibs-head { padding:16px 16px 14px; }
    html[data-brand="ib"] .ibs-close { height:34px; padding:0; color:#fff; font-size:0; }
    html[data-brand="ib"] .ibs-close::after { content:none !important; }
    html[data-brand="ib"] .ibs-tiles { grid-template-columns:repeat(2, minmax(0,1fr)); }
    html[data-brand="ib"] .ibs-chips { flex-wrap:nowrap; overflow-x:auto; margin-right:-16px; padding-right:16px; scrollbar-width:none; }
    html[data-brand="ib"] .ibs-chip { flex:none; }
  }
}

@layer ib {
  html[data-brand="ib"] button.ibc-pp__retry, html[data-brand="ib"] button.pkd-multi-retry { padding: 0; border: 0; background: none; color: #e61c72; font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
}

@layer ib {
  html[data-brand="ib"] .ibc a.ibc-quiet-btn { text-decoration: none; }
  /* automatic service line: its setup next to the period chip */
  html[data-brand="ib"] .ibc-line__autosel { color: var(--ibc-mute); font-size: .8rem; font-weight: 600; }
}

/* /checkout before hydration: both the form and the empty state are in the HTML; the inline
   cart probe (src/features/checkout/cart-state.tsx) marks <html> before the first
   paint and only the matching one shows (no marker = JS off: the form, as before). After
   hydration the marker is "react" and only one state is rendered. */
@layer ib {
  html[data-brand="ib"]:not([data-ib-cart="empty"], [data-ib-cart="react"]) .ibc-pre--empty,
  html[data-brand="ib"][data-ib-cart="empty"] .ibc-pre--full { display: none; }
}

/* Cart line fields where the line is narrow (phone drawer, 420 px side drawer, phone /checkout):
   quantity on top and the link below, in the same card, so nothing is clipped (the select used
   to take the whole row: the @user vanished and «Cambiar» was cut). Wide lines keep one row. */
@layer ib {
  html[data-brand="ib"] .ibk-line__body { container-type: inline-size; }
  @container (max-width: 340px) {
    html[data-brand="ib"] .ibk-fields { flex-wrap: wrap; max-width: none; }
    html[data-brand="ib"] .ibk-fields__qty { flex: 1 0 100%; }
    html[data-brand="ib"] .ibk-fields__qty select { width: 100%; }
    html[data-brand="ib"] span.ibk-fields__qty { min-height: 38px; }
    html[data-brand="ib"] .ibk-fields__sep { display: none; }
    html[data-brand="ib"] .ibk-fields__link { box-sizing: border-box; flex: 1 0 100%; min-height: 38px; border-top: 1px solid #eef0f3; }
    html[data-brand="ib"] .ibk-fields__link .ibk-line__linktext { flex: 1; min-width: 0; }
    html[data-brand="ib"] .ibk-fields__qty, html[data-brand="ib"] .ibk-fields__qty select { box-sizing: border-box; }
  }
}
