@charset "UTF-8";

/* Source block: anonymous */
:root {
  --bg:#f7ead8;
  --bg2:#fff8ef;
  --surface:#ffffff;
  --surface2:#fffaf3;
  --card:#ffffff;
  --text:#10172f;
  --muted:#65708a;
  --line:rgba(20,28,52,.10);
  --accent:#ff9f1c;
  --accent2:#f47c12;
  --green:#22c55e;
  --danger:#ef4444;
  --shadow:0 20px 48px rgba(80,46,13,.13);
  --shadow2:0 12px 28px rgba(16,24,48,.10);
  --radius:28px;
}
html[data-theme="dark"] {
  --bg:#0c1020;
  --bg2:#151a2d;
  --surface:#11182b;
  --surface2:#182039;
  --card:#151d34;
  --text:#f7f9ff;
  --muted:#aab5cf;
  --line:rgba(255,255,255,.10);
  --accent:#ffb13d;
  --accent2:#ff8e1f;
  --green:#2dd36f;
  --danger:#fb7185;
  --shadow:0 24px 58px rgba(0,0,0,.35);
  --shadow2:0 16px 32px rgba(0,0,0,.24);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;scroll-behavior:smooth}
body{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,159,28,.18), transparent 32%),
    radial-gradient(circle at 90% 5%, rgba(34,197,94,.08), transparent 28%),
    linear-gradient(180deg,var(--bg2),var(--bg));
  color:var(--text);
  overflow-x:hidden;
}
body.drawer-open, body.modal-open{overflow:hidden}
button,input,textarea,select{font:inherit;-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%}
.hidden{display:none!important}
.app{max-width:1440px;margin:0 auto;padding:18px clamp(12px,2vw,28px) 120px}
.topbar{position:sticky;top:0;z-index:50;padding-top:10px}
.topbar-inner{
  display:grid;grid-template-columns:auto minmax(240px,1fr) auto;gap:14px;align-items:center;
  background:color-mix(in srgb,var(--surface) 92%, transparent);
  border:1px solid var(--line);border-radius:30px;padding:12px 14px;
  box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-logo{width:74px;height:74px;border-radius:24px;background:#fff;overflow:hidden;box-shadow:var(--shadow2);border:1px solid var(--line);flex:0 0 auto}
.brand-logo img{width:100%;height:100%;object-fit:contain;padding:4px}
.brand-title{font-weight:1000;font-size:clamp(28px,3.4vw,44px);line-height:.92;letter-spacing:-.055em}
.brand-tag{margin-top:6px;color:var(--muted);font-weight:800;font-size:clamp(14px,1.4vw,18px)}
.search{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:999px;min-height:60px;padding:0 18px;box-shadow:0 10px 24px rgba(0,0,0,.04)}
.search svg{width:22px;height:22px;color:var(--muted);flex:0 0 auto}
.search input{border:0;outline:0;background:transparent;color:var(--text);width:100%;font-weight:850;font-size:17px}
.search input::placeholder{color:var(--muted)}
.top-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.pill-btn{min-height:58px;border:1px solid var(--line);border-radius:21px;background:var(--card);color:var(--text);padding:0 16px;font-weight:950;display:inline-flex;align-items:center;gap:10px;box-shadow:var(--shadow2)}
.pill-btn svg{width:22px;height:22px}
.icon-btn{width:48px;height:48px;border-radius:16px;border:1px solid var(--line);background:var(--card);color:var(--text);display:grid;place-items:center;font-weight:900}
.cart-top{position:relative}
.badge{position:absolute;top:-7px;right:-7px;min-width:24px;height:24px;border-radius:999px;background:var(--accent);color:#1e1400;font-weight:1000;font-size:12px;display:grid;place-items:center;border:2px solid var(--surface)}
.hero{margin-top:18px;display:grid;grid-template-columns:1.1fr .9fr;gap:18px;border-radius:34px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 96%, transparent),color-mix(in srgb,var(--surface2) 94%, transparent));border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(18px,2.2vw,30px);overflow:hidden;position:relative}
.hero:before{content:"";position:absolute;inset:-40% auto auto -12%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,159,28,.18),transparent 62%)}
.hero > *{position:relative}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.05)}
.dot{width:10px;height:10px;border-radius:999px;background:var(--green);box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 18%, transparent)}
.hero h1{font-size:clamp(44px,6vw,82px);line-height:.9;letter-spacing:-.07em;margin:0 0 12px;max-width:11ch}
.hero p{margin:0;color:var(--muted);font-size:clamp(17px,1.6vw,22px);font-weight:800;max-width:42ch}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.btn{min-height:50px;border-radius:18px;border:1px solid var(--line);padding:0 18px;font-weight:950;background:var(--card);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none}
.btn.primary{border:0;background:linear-gradient(180deg,var(--accent),var(--accent2));color:#201100;box-shadow:0 16px 28px rgba(255,159,28,.25)}
.btn.success{border:0;background:linear-gradient(180deg,var(--green),#16a34a);color:white}
.info-grid{display:grid;gap:12px;align-content:start}
.info{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:23px;padding:16px 18px;box-shadow:0 10px 24px rgba(0,0,0,.05)}
.info svg{width:22px;height:22px;color:var(--accent)}
.info small{display:block;color:var(--muted);font-weight:900;margin-bottom:3px}
.info b{font-size:20px;line-height:1.15}
.notice{margin-top:18px;border-radius:28px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);padding:18px 22px}
.notice small{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,159,28,.12);font-weight:1000;letter-spacing:.09em;text-transform:uppercase}
.notice h2{margin:12px 0 4px;font-size:clamp(26px,3vw,38px);letter-spacing:-.045em}
.notice p{margin:0;color:var(--muted);font-weight:800}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin:28px 0 14px}
.section-head h2{margin:0;font-size:clamp(34px,4vw,58px);line-height:.95;letter-spacing:-.06em}
.section-head p{margin:6px 0 0;color:var(--muted);font-weight:800}
.categories{display:grid;gap:16px}
.category{background:color-mix(in srgb,var(--surface) 95%, transparent);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);overflow:hidden}
.category-header{width:100%;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;text-align:left;padding:20px 22px;background:transparent;color:var(--text);border:0}
.category-title{font-size:clamp(24px,2.3vw,34px);font-weight:1000;letter-spacing:-.05em;display:flex;align-items:center;gap:10px}
.category-meta{margin-top:4px;color:var(--muted);font-weight:850}
.chev{width:46px;height:46px;border-radius:17px;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;transition:.18s}
.category.open .chev{transform:rotate(180deg);background:rgba(255,159,28,.14)}
.category-body{display:none;padding:0 18px 18px}
.category.open .category-body{display:block}
.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.product{background:var(--card);border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:var(--shadow2);display:flex;flex-direction:column;min-width:0}
.product-media{aspect-ratio:4/3;background:linear-gradient(135deg,#243250,#111827);overflow:hidden}
.product-media img{width:100%;height:100%;object-fit:cover}
.product[data-cat="Bebidas"] .product-media img{object-fit:contain;padding:10px;background:#fff}
.product-body{padding:14px 14px 16px;display:grid;gap:9px;flex:1}
.product-top{display:flex;justify-content:space-between;gap:10px;align-items:start}
.product h3{margin:0;font-size:20px;line-height:1.08;letter-spacing:-.035em}
.price{font-weight:1000;color:var(--accent);font-size:19px;white-space:nowrap}
.desc{color:var(--muted);font-weight:750;line-height:1.35;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-actions{display:flex;gap:10px;margin-top:auto;align-items:center}
.add-btn{min-height:48px;flex:1;border:0;border-radius:17px;background:linear-gradient(180deg,var(--accent),var(--accent2));color:#211100;font-weight:1000;font-size:17px}
.tag{padding:8px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:900;white-space:nowrap}
.qty-control{display:inline-grid;grid-template-columns:42px minmax(38px,auto) 42px;align-items:center;border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden}
.qty-control button{height:42px;border:0;background:transparent;color:var(--text);font-size:20px;font-weight:1000}
.qty-control span{text-align:center;font-weight:1000}
.emp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.emp-row{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:12px 14px}
.emp-row.selected{border-color:rgba(34,197,94,.42);background:color-mix(in srgb,var(--green) 8%, var(--card))}
.emp-row b{display:block;line-height:1.2}
.emp-row small{display:block;color:var(--muted);font-weight:800;margin-top:4px}
.modal-backdrop{position:fixed;inset:0;background:rgba(6,10,20,.58);backdrop-filter:blur(8px);z-index:80;opacity:0;pointer-events:none;transition:.2s}
.modal-backdrop.show{opacity:1;pointer-events:auto}
.modal{position:fixed;z-index:81;inset:50% auto auto 50%;transform:translate(-50%,-48%) scale(.96);width:min(920px,calc(100vw - 22px));max-height:min(92dvh,900px);opacity:0;pointer-events:none;transition:.2s}
.modal.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}
.modal-card{background:var(--surface);border:1px solid var(--line);border-radius:32px;box-shadow:0 28px 80px rgba(0,0,0,.32);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:min(92dvh,900px)}
.modal-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid var(--line)}
.modal-product{display:grid;grid-template-columns:94px 1fr;gap:14px;align-items:center}
.modal-img{width:94px;height:94px;border-radius:24px;object-fit:cover;background:#111827}
.kicker{color:var(--accent);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:1000;margin-bottom:6px}
.modal h3{margin:0;font-size:clamp(26px,4vw,42px);line-height:.98;letter-spacing:-.055em}
.modal-sub{color:var(--muted);font-weight:800;margin-top:8px;line-height:1.35}
.modal-body{padding:18px 20px;overflow:auto;display:grid;gap:14px}
.choice{border:1px solid var(--line);background:var(--surface2);border-radius:24px;padding:16px}
.choice-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;align-items:flex-start}
.choice h4{margin:0;font-size:20px;letter-spacing:-.035em}
.choice p{margin:6px 0 0;color:var(--muted);font-weight:800}
.choice-status{border-radius:999px;background:rgba(255,159,28,.12);border:1px solid rgba(255,159,28,.24);padding:8px 12px;font-size:12px;font-weight:1000;white-space:nowrap}
.choice-status.ok{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.25)}
.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.option{min-height:62px;border-radius:18px;border:1px solid var(--line);background:var(--card);color:var(--text);padding:14px 15px;display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;font-weight:900}
.option.selected{background:var(--text);color:var(--surface);border-color:var(--text)}
.option .check{width:26px;height:26px;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;color:transparent;flex:0 0 auto}
.option.selected .check{background:var(--green);color:white;border-color:var(--green)}
.note-area{width:100%;min-height:96px;border-radius:18px;border:1px solid var(--line);background:var(--card);color:var(--text);padding:14px;resize:vertical}
.modal-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%, transparent)}
.modal-total small{display:block;color:var(--muted);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:1000}
.modal-total b{font-size:32px;letter-spacing:-.045em}
.modal-actions{display:flex;gap:10px;flex-wrap:wrap}
.drawer-backdrop{position:fixed;inset:0;background:rgba(6,10,20,.48);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:.2s;z-index:70}
.drawer-backdrop.show{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;z-index:71;width:min(520px,100vw);background:var(--surface);border-left:1px solid var(--line);box-shadow:-24px 0 60px rgba(0,0,0,.20);transform:translateX(105%);transition:transform .22s ease;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.drawer.show{transform:translateX(0)}
.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px;border-bottom:1px solid var(--line)}
.drawer-title{font-size:36px;font-weight:1000;letter-spacing:-.06em;line-height:.95}
.drawer-sub{color:var(--muted);font-weight:850;margin-top:4px}
.drawer-body{padding:16px 18px;overflow:auto;display:grid;gap:14px;align-content:start}
.cart-item{display:grid;grid-template-columns:74px 1fr auto;gap:12px;border:1px solid var(--line);background:var(--card);border-radius:22px;padding:10px}
.cart-thumb{width:74px;height:74px;border-radius:17px;object-fit:cover;background:#111827}
.cart-name{font-weight:1000;font-size:17px;line-height:1.14}
.cart-details{color:var(--muted);font-weight:750;font-size:13px;line-height:1.35;margin-top:4px}
.cart-price{font-size:18px;font-weight:1000;color:var(--accent);text-align:right;white-space:nowrap}
.cart-actions{display:flex;gap:8px;align-items:center;margin-top:9px}
.remove-btn{height:34px;padding:0 12px;border-radius:13px;border:1px solid var(--line);background:transparent;color:var(--muted);font-weight:900}
.checkout-panel{display:none;border:1px solid var(--line);border-radius:24px;background:var(--surface2);padding:16px;gap:12px}
.checkout-panel.show{display:grid}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{display:grid;gap:7px}
.field.span{grid-column:1/-1}
.field label{color:var(--muted);font-size:13px;font-weight:900}
.input,.textarea{width:100%;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--text);min-height:48px;padding:0 13px;font-weight:750}
.textarea{padding:13px;min-height:84px;resize:vertical}
.addons{border-top:1px solid var(--line);padding-top:12px}
.addons h4{margin:0 0 10px;font-size:20px;letter-spacing:-.035em}
.addon-tabs{display:flex;gap:8px;margin-bottom:10px;position:sticky;top:0;background:var(--surface);padding:4px 0;z-index:1}
.addon-tab{height:40px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);padding:0 14px;font-weight:1000}
.addon-tab.active{background:linear-gradient(180deg,var(--accent),var(--accent2));color:#211100;border:0}
.addon-list{display:grid;gap:8px}
.addon-item{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:17px;background:var(--card);padding:8px}
.addon-item img{width:48px;height:48px;border-radius:12px;object-fit:cover;background:#fff}
.drawer-foot{border-top:1px solid var(--line);padding:16px 18px calc(16px + env(safe-area-inset-bottom));display:grid;gap:10px;background:var(--surface)}
.total-row{display:flex;justify-content:space-between;gap:12px;align-items:center;font-weight:1000;font-size:20px}
.total-row.total{font-size:26px;letter-spacing:-.04em}
.shipping-box{padding:12px 14px;border-radius:17px;background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.20);font-weight:900}
.cart-float{position:fixed;right:18px;bottom:18px;z-index:62;height:62px;min-width:62px;border-radius:999px;border:0;background:linear-gradient(180deg,var(--accent),var(--accent2));color:#211100;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 18px;font-weight:1000;box-shadow:0 20px 36px rgba(255,127,18,.32)}
.cart-float svg{width:27px;height:27px}
.cart-float .badge{top:-6px;right:-6px}
.admin-modal{position:fixed;inset:0;z-index:90;background:rgba(6,10,20,.58);display:none;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(8px)}
.admin-modal.show{display:flex}
.admin-card{width:min(1100px,100%);max-height:92dvh;background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:0 28px 80px rgba(0,0,0,.28);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}
.admin-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}
.admin-body{overflow:auto;padding:18px 20px;display:grid;gap:14px}
.admin-grid{display:grid;grid-template-columns:320px 1fr;gap:14px}
.admin-list{display:grid;gap:8px;max-height:58dvh;overflow:auto;border:1px solid var(--line);border-radius:20px;padding:10px;background:var(--surface2)}
.admin-row{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;border:1px solid var(--line);background:var(--card);border-radius:16px;padding:8px;text-align:left;color:var(--text)}
.admin-row img{width:48px;height:48px;border-radius:12px;object-fit:cover}
.admin-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-row small{color:var(--muted);font-weight:800}
.admin-editor{border:1px solid var(--line);border-radius:20px;background:var(--surface2);padding:14px;display:grid;gap:12px}
.test-report{border:1px solid rgba(34,197,94,.25);background:rgba(34,197,94,.08);border-radius:20px;padding:14px;font-weight:800;color:var(--text)}
@media (max-width:1100px){.products{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{grid-template-columns:1fr}}
@media (max-width:840px){
  .app{padding:12px 12px 120px}
  .topbar-inner{grid-template-columns:1fr;gap:11px;border-radius:26px}
  .brand-logo{width:64px;height:64px;border-radius:20px}
  .top-actions{justify-content:space-between}
  .pill-btn{min-height:52px;border-radius:18px}
  .hero{border-radius:28px;padding:18px}
  .hero h1{font-size:clamp(38px,12vw,60px)}
  .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .emp-grid,.option-grid{grid-template-columns:1fr}
  .drawer{width:100%;border-left:0;top:auto;height:92dvh;border-radius:28px 28px 0 0;transform:translateY(105%)}
  .drawer.show{transform:translateY(0)}
  .checkout-grid,.admin-grid{grid-template-columns:1fr}
  .admin-list{max-height:260px}
  .modal{inset:auto 0 0 0;width:100%;max-height:94dvh;transform:translateY(105%)}
  .modal.show{transform:translateY(0)}
  .modal-card{border-radius:28px 28px 0 0;max-height:94dvh}
  .modal-product{grid-template-columns:76px 1fr}
  .modal-img{width:76px;height:76px;border-radius:20px}
  .modal-foot{display:grid}
  .modal-actions{display:grid;grid-template-columns:1fr}
  .cart-float{right:14px;bottom:14px;height:58px}
}
@media (max-width:560px){
  .products{grid-template-columns:1fr}
  .product h3{font-size:21px}
  .search{min-height:54px}
  .search input{font-size:16px}
  .category-header{padding:17px 16px}
  .category-body{padding:0 12px 12px}
  .hero-actions .btn{width:100%}
  .cart-item{grid-template-columns:62px 1fr}
  .cart-thumb{width:62px;height:62px}
  .cart-price{grid-column:1/-1;text-align:left}
}

/* v144 admin + catálogo real */
.follow-buy{border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--surface) 96%, transparent);padding:14px;display:grid;gap:12px}
.follow-buy-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.follow-buy-head h4{margin:0;font-size:22px;letter-spacing:-.03em}
.follow-buy-head p{margin:4px 0 0;color:var(--muted);font-weight:800;line-height:1.35}
.addon-tabs.hidden,.addon-list.hidden{display:none!important}
.addon-tabs{display:flex;gap:8px;flex-wrap:wrap}
.addon-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;color:var(--text)}
.addon-tab.active{background:var(--accent);border-color:var(--accent);color:#1b1000}
.addon-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:360px;overflow:auto;padding-right:4px}
.addon-item{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:18px;background:#fff;padding:10px}
.addon-item img{width:72px;height:72px;border-radius:14px;object-fit:contain;background:#fff}
.admin-actions-bar{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.btn.danger{background:#fff0f0;border-color:#ffd0d0;color:#b42318}
.admin-row.active{outline:3px solid color-mix(in srgb,var(--accent) 55%, transparent);background:color-mix(in srgb,var(--accent) 12%, white)}
.admin-editor .preview-box{aspect-ratio:4/3;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;margin-bottom:12px}
.admin-editor .preview-box img{width:100%;height:100%;object-fit:cover}
.admin-special{border:1px dashed var(--line);border-radius:18px;padding:12px;background:#fffaf1;display:grid;gap:10px}
.admin-editor-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
@media(max-width:760px){.addon-list{grid-template-columns:1fr}.addon-item{grid-template-columns:64px 1fr}.addon-item .btn{grid-column:1/-1}.follow-buy-head .btn{width:100%}}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v148-carrito-admin-final-style */
#openAdminQuick{display:none!important;visibility:hidden!important}
.hero-left p,.hero p:empty{display:none!important}
.drawer{width:min(640px,100vw)!important;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 94%, var(--surface2) 6%))!important}
.drawer-head{padding:22px 22px 16px!important}
.drawer-title{font-size:clamp(30px,4vw,42px)!important}
.drawer-body{padding:18px 22px!important;gap:16px!important}
.cart-item{grid-template-columns:82px minmax(0,1fr) auto!important;gap:14px!important;padding:12px!important;border-radius:24px!important;align-items:center!important}
.cart-thumb{width:82px!important;height:82px!important;border-radius:18px!important;background:#fff!important}
.cart-name{font-size:18px!important;letter-spacing:-.025em!important}
.cart-details{font-size:13px!important;line-height:1.42!important}
.cart-price{font-size:20px!important}
.cart-actions{flex-wrap:wrap!important}
.checkout-panel{border-radius:26px!important;padding:18px!important;background:color-mix(in srgb,var(--surface2) 90%, var(--card) 10%)!important}
.checkout-panel h3,.checkout-heading{font-size:24px!important;margin:0!important;letter-spacing:-.04em!important}
.checkout-grid{grid-template-columns:1fr 1fr!important}
#customerZone,#paymentMethod{display:none!important}
.field:has(#customerZone),.field:has(#paymentMethod){display:none!important}
#addressField{grid-column:1/-1!important}
#orderNotes{min-height:96px!important}
.drawer-foot{padding:16px 22px calc(18px + env(safe-area-inset-bottom))!important;gap:11px!important}
.total-row{font-size:18px!important}
.total-row.total{font-size:30px!important}
.drawer-foot .btn{min-height:54px!important;border-radius:18px!important}
.cloud-login{grid-template-columns:1fr 1fr auto auto!important}
.cloud-sync-box{border-radius:24px!important}
.cloud-actions .btn.success{font-size:16px!important;min-height:48px!important}
.admin-card{width:min(1180px,100%)!important}
.admin-body{padding:20px 22px!important}
.admin-grid{grid-template-columns:minmax(280px,360px) 1fr!important}
.admin-editor{min-width:0!important}
@media (max-width:760px){
  .drawer{left:0!important;right:0!important;top:auto!important;bottom:0!important;width:100vw!important;height:min(92dvh,820px)!important;border-radius:30px 30px 0 0!important;transform:translateY(105%)!important;border-left:0!important;border-top:1px solid var(--line)!important}
  .drawer.show{transform:translateY(0)!important}
  .drawer-body{padding:14px!important}
  .drawer-head{padding:16px 16px 12px!important}
  .cart-item{grid-template-columns:70px minmax(0,1fr)!important;align-items:start!important}
  .cart-thumb{width:70px!important;height:70px!important}
  .cart-price{grid-column:2!important;text-align:left!important;font-size:19px!important}
  .cart-actions{grid-column:1/-1!important;justify-content:space-between!important}
  .checkout-grid{grid-template-columns:1fr!important}
  .drawer-foot{padding:13px 14px calc(14px + env(safe-area-inset-bottom))!important}
  .total-row.total{font-size:26px!important}
  .cloud-login{grid-template-columns:1fr!important}
  .cloud-actions{display:grid!important}
  .cloud-actions .btn{width:100%!important}
  .admin-grid{grid-template-columns:1fr!important}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v149-fixes */
.cloud-sync-box.off, .cloud-sync-box.warn, .cloud-sync-box.ok{border-width:1px}
.cloud-sync-box .cloud-help{font-size:13px;line-height:1.45}
.product-media img[src*="undefined"], .cart-thumb img[src*="undefined"]{opacity:.25}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v160-mayo2026-fotos-pizzas-style */
.catering-notice{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,159,28,.20), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb,var(--surface) 95%, transparent), color-mix(in srgb,var(--surface2) 88%, var(--accent) 12%));
}
.product[data-cat="Catering para eventos"]{
  border-color:color-mix(in srgb,var(--accent) 45%, var(--line));
  box-shadow:0 20px 45px rgba(255,159,28,.20);
}
.product[data-cat="Catering para eventos"] .product-media{
  background:linear-gradient(135deg,#ff9f1c,#fff3df);
}
.catering-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.catering-list span{
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--card);
  padding:12px;
  font-weight:900;
}
.catering-qty{
  width:max-content;
  grid-template-columns:54px minmax(88px,auto) 54px;
}
.catering-qty button{
  height:52px;
}
@media(max-width:640px){
  .catering-list{grid-template-columns:1fr}
  .catering-qty{width:100%;grid-template-columns:64px 1fr 64px}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v160-hero-y-busqueda-cirujano */
/* v160: se conserva la frase principal, horarios, zona y pagos.
   Se eliminan solo los chips/botones marcados y se oculta la portada únicamente cuando hay búsqueda. */

.hero .chips,
.hero .hero-actions {
  display: none !important;
}

.hero {
  align-items: center;
}

.hero > div:first-child {
  min-height: 100%;
  display: grid;
  align-content: center;
}

.hero h1 {
  margin-bottom: 0 !important;
  max-width: 12ch;
}

.notice.catering-notice {
  background:
    radial-gradient(circle at 12% 0%, rgba(255,159,28,.20), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb,var(--surface) 95%, transparent), color-mix(in srgb,var(--surface2) 88%, var(--accent) 12%));
}

body.searching .hero,
body.searching .notice.catering-notice {
  display: none !important;
}

body.searching #menu {
  animation: tvSearchArrive .22s ease-out both;
  margin-top: 12px;
}

#menu {
  margin-top: 24px;
  scroll-margin-top: 122px;
}

#menuHead {
  align-items: center;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 28px;
  background:
    radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 38%),
    color-mix(in srgb, var(--surface) 94%, transparent);
  box-shadow: var(--shadow2);
}

#menuTitle {
  display: flex;
  align-items: center;
  gap: 10px;
}

#menuTitle::before {
  content: "🍽️";
  font-size: .72em;
  filter: drop-shadow(0 6px 12px rgba(0,0,0,.12));
}

body.searching #menuHead {
  border-color: color-mix(in srgb, var(--accent) 36%, var(--line));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--accent) 16%, var(--surface)), var(--surface));
}

body.searching #menuTitle::before {
  content: "🔎";
}

body.searching .category {
  border-radius: 26px;
}

body.searching .category-header {
  padding: 17px 18px;
}

body.searching .category-meta {
  color: var(--accent2);
}

.empty-search {
  border: 1px dashed color-mix(in srgb, var(--accent) 42%, var(--line));
  background:
    radial-gradient(circle at 0 0, color-mix(in srgb, var(--accent) 16%, transparent), transparent 36%),
    var(--surface);
  border-radius: 28px;
  padding: 24px;
  box-shadow: var(--shadow2);
  text-align: center;
  display: grid;
  gap: 10px;
}

.empty-search b {
  font-size: clamp(24px, 4vw, 34px);
  letter-spacing: -.045em;
}

.empty-search p {
  margin: 0;
  color: var(--muted);
  font-weight: 850;
}

@keyframes tvSearchArrive {
  from { opacity: .72; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 840px) {
  .app {
    padding: 10px 10px 110px !important;
  }

  .topbar-inner {
    gap: 10px !important;
  }

  .hero {
    margin-top: 12px;
    padding: 20px 18px;
    border-radius: 30px;
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .hero h1 {
    font-size: clamp(42px, 13vw, 66px);
    max-width: 10.8ch;
  }

  .info-grid {
    gap: 10px;
  }

  .info {
    border-radius: 22px;
    padding: 14px 15px;
  }

  .info b {
    font-size: 17px;
  }

  #menu {
    margin-top: 14px;
    scroll-margin-top: 205px;
  }

  #menuHead {
    padding: 15px 16px;
    border-radius: 24px;
  }

  #menuHead h2 {
    font-size: clamp(30px, 9.2vw, 44px);
  }

  #menuHead p {
    font-size: 14px;
    line-height: 1.35;
  }

  body.searching #menuHead {
    position: sticky;
    top: 138px;
    z-index: 38;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }

  body.searching .products {
    grid-template-columns: 1fr !important;
  }

  body.searching .product {
    border-radius: 24px;
  }

  body.searching .product-media {
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 560px) {
  .hero {
    margin-top: 10px;
    padding: 18px 15px;
  }

  .hero h1 {
    font-size: clamp(40px, 14.5vw, 58px);
    line-height: .92;
  }

  .info {
    grid-template-columns: 36px 1fr;
    min-height: 76px;
  }

  .info svg {
    width: 21px;
    height: 21px;
  }

  .info small {
    font-size: 12px;
  }

  .info b {
    font-size: 16px;
  }

  #menu {
    scroll-margin-top: 235px;
  }

  #menuHead {
    margin: 0 2px 12px;
  }

  body.searching #menuHead {
    top: 154px;
  }

  .empty-search {
    padding: 20px 16px;
    border-radius: 24px;
  }
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: app-launch-critical */
/* Critical: evita que se vea texto crudo antes de cargar todo el CSS */
.app-launch-splash{
  display:none;
  position:fixed;
  inset:0;
  z-index:9999;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 50% 16%,rgba(255,255,255,.08),transparent 28%),
    radial-gradient(circle at 30% 0%,rgba(237,28,42,.16),transparent 34%),
    radial-gradient(circle at 78% 5%,rgba(255,159,28,.14),transparent 32%),
    linear-gradient(180deg,#0a1020 0%,#111827 100%);
  color:#fff;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
html.app-launching .app-launch-splash{display:flex}
.app-launch-stage{
  width:min(340px,92vw);
  display:grid;
  justify-items:center;
  gap:12px;
  padding:30px 24px 26px;
  border-radius:38px;
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 90px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08);
}
.app-launch-glow{
  position:absolute;
  width:210px;
  height:210px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,159,28,.28),rgba(237,28,42,.10) 42%,transparent 70%);
  filter:blur(6px);
  top:22px;
  left:50%;
  transform:translateX(-50%);
  opacity:.86;
}
.app-launch-emblem{
  width:176px;
  height:176px;
  display:grid;
  place-items:center;
  position:relative;
  z-index:1;
  border-radius:42px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 42px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.08);
}
.app-launch-emblem img{
  width:164px;
  height:164px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.28));
}
.app-launch-copy{position:relative;z-index:1;display:grid;justify-items:center;gap:4px;text-align:center}
.app-launch-copy strong{font-size:34px;line-height:.95;letter-spacing:-.06em;color:#fff}
.app-launch-copy span{color:rgba(255,255,255,.75);font-size:14px;font-weight:850;letter-spacing:.01em}
.app-launch-bar{position:relative;z-index:1;width:100%;height:7px;margin-top:8px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.13)}
.app-launch-bar i{display:block;width:36%;height:100%;border-radius:999px;background:linear-gradient(90deg,#ed1c2a,#ff9f1c,#ffe0a3);animation:tvLaunchBar .70s ease-in-out infinite}
@keyframes tvLaunchBar{0%{transform:translateX(-115%)}100%{transform:translateX(285%)}}

/* Source block: app-launch-v205-critical */
/* v205 critical: cubre contenido y oculta instalar en modo app antes del JS completo */
@media (display-mode: standalone){
  #installBtn{display:none!important}
}
html.pwa-standalone #installBtn,
html.app-launching #installBtn{
  display:none!important;
}
html.app-launching,
html.app-launching body{
  width:100%;
  min-height:100%;
  overflow:hidden!important;
  background:#0a1020!important;
}
html.app-launching body > *:not(#appLaunchSplash):not(script){
  visibility:hidden!important;
}
html.app-launching #appLaunchSplash,
#appLaunchSplash.app-launch-pro{
  position:fixed!important;
  inset:0!important;
}
html.app-launching #appLaunchSplash.app-launch-pro{
  display:flex!important;
  visibility:visible!important;
  z-index:2147483647!important;
}
#appLaunchSplash.app-launch-pro{
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,255,255,.09),transparent 27%),
    radial-gradient(circle at 30% 0%,rgba(237,28,42,.17),transparent 35%),
    radial-gradient(circle at 78% 8%,rgba(255,159,28,.14),transparent 34%),
    linear-gradient(180deg,#090f1d 0%,#111827 100%);
  color:#fff;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
#appLaunchSplash.app-launch-pro.hide{opacity:0;transition:opacity .24s ease}
#appLaunchSplash .app-launch-stage{
  width:min(332px,92vw);
  display:grid;
  justify-items:center;
  gap:12px;
  padding:30px 24px 26px;
  border-radius:38px;
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 90px rgba(0,0,0,.50),inset 0 1px 0 rgba(255,255,255,.08);
}
#appLaunchSplash .app-launch-stage::before{
  content:"";
  position:absolute;
  inset:-40% -30%;
  background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.11) 50%,transparent 64%);
  animation:tvSplashSweep 1.18s ease-in-out infinite;
}
#appLaunchSplash .app-launch-orbit{
  position:absolute;
  width:214px;
  height:214px;
  top:20px;
  left:50%;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,159,28,.24),rgba(237,28,42,.10) 42%,transparent 70%);
  filter:blur(4px);
}
#appLaunchSplash .app-launch-emblem{
  width:174px;
  height:174px;
  display:grid;
  place-items:center;
  z-index:1;
  border-radius:42px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 42px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.08);
  animation:tvSplashLogo .82s cubic-bezier(.2,.9,.2,1) both;
}
#appLaunchSplash .app-launch-emblem img{
  width:162px;
  height:162px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 13px 18px rgba(0,0,0,.30));
}
#appLaunchSplash .app-launch-copy{
  z-index:1;
  display:grid;
  justify-items:center;
  gap:4px;
  text-align:center;
}
#appLaunchSplash .app-launch-copy strong{
  font-size:34px;
  line-height:.95;
  letter-spacing:-.06em;
  color:#fff;
}
#appLaunchSplash .app-launch-copy span{
  color:rgba(255,255,255,.76);
  font-size:14px;
  font-weight:850;
}
#appLaunchSplash .app-launch-bar{
  z-index:1;
  width:100%;
  height:7px;
  margin-top:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.13);
}
#appLaunchSplash .app-launch-bar i{
  display:block;
  width:34%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#ed1c2a,#ff9f1c,#ffe0a3);
  animation:tvSplashBar .72s ease-in-out infinite;
}
@keyframes tvSplashLogo{
  0%{opacity:0;transform:translateY(8px) scale(.94)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes tvSplashBar{
  0%{transform:translateX(-120%)}
  100%{transform:translateX(300%)}
}
@keyframes tvSplashSweep{
  0%{transform:translateX(-110%) rotate(7deg)}
  100%{transform:translateX(110%) rotate(7deg)}
}
@media(max-width:760px){
  #appLaunchSplash .app-launch-stage{width:min(304px,92vw);padding:27px 19px 23px;border-radius:34px}
  #appLaunchSplash .app-launch-emblem{width:150px;height:150px;border-radius:36px}
  #appLaunchSplash .app-launch-emblem img{width:142px;height:142px}
  #appLaunchSplash .app-launch-copy strong{font-size:30px}
}

/* Source block: app-launch-v206-zoom-critical */
@media (display-mode: standalone){#installBtn{display:none!important}}
html.pwa-standalone #installBtn,
html.pwa-installed #installBtn,
html.app-launching #installBtn{display:none!important}
html.app-launching,
html.app-launching body{
  width:100%;
  min-height:100%;
  overflow:hidden!important;
  background:#090f1d!important;
}
html.app-launching body > *:not(#appLaunchSplash):not(script){
  visibility:hidden!important;
}
#appLaunchSplash.app-launch-zoom{
  display:none;
  position:fixed!important;
  inset:0!important;
  z-index:2147483647!important;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 42%,rgba(255,159,28,.18),transparent 30%),
    radial-gradient(circle at 50% 55%,rgba(237,28,42,.10),transparent 40%),
    linear-gradient(180deg,#070b16 0%,#111827 100%);
  color:#fff;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  overflow:hidden!important;
}
html.app-launching #appLaunchSplash.app-launch-zoom{
  display:flex!important;
  visibility:visible!important;
}
#appLaunchSplash.app-launch-zoom.hide{
  opacity:0;
  transition:opacity .16s ease;
}
.app-launch-zoom-stage{
  position:relative;
  width:100vw;
  height:100dvh;
  display:grid;
  place-items:center;
  overflow:hidden;
}
.app-launch-zoom-logo{
  position:absolute;
  display:grid;
  place-items:center;
  width:min(46vw,230px);
  height:min(46vw,230px);
  border-radius:999px;
  transform-origin:center;
  animation:tvLogoZoomCover .82s cubic-bezier(.18,.92,.25,1) forwards;
  will-change:transform,opacity,filter;
  filter:drop-shadow(0 24px 42px rgba(0,0,0,.40));
}
.app-launch-zoom-logo::before{
  content:"";
  position:absolute;
  inset:-14%;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,159,28,.28),rgba(237,28,42,.12) 42%,transparent 70%);
  filter:blur(10px);
  z-index:-1;
}
.app-launch-zoom-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.app-launch-zoom-copy{
  position:absolute;
  bottom:calc(18vh + env(safe-area-inset-bottom));
  display:grid;
  justify-items:center;
  gap:4px;
  text-align:center;
  animation:tvLaunchCopyFade .52s ease both;
}
.app-launch-zoom-copy strong{
  font-size:clamp(30px,8vw,46px);
  line-height:.95;
  letter-spacing:-.06em;
  color:#fff;
}
.app-launch-zoom-copy span{
  color:rgba(255,255,255,.72);
  font-size:14px;
  font-weight:850;
}
.app-launch-zoom-bar{
  position:absolute;
  bottom:calc(11vh + env(safe-area-inset-bottom));
  width:min(260px,64vw);
  height:6px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.14);
  animation:tvLaunchCopyFade .52s ease both;
}
.app-launch-zoom-bar i{
  display:block;
  width:42%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#ed1c2a,#ff9f1c,#ffe5b5);
  animation:tvLaunchQuickBar .55s ease-in-out infinite;
}
@keyframes tvLogoZoomCover{
  0%{transform:scale(.34);opacity:0;filter:blur(2px) drop-shadow(0 20px 38px rgba(0,0,0,.32))}
  20%{opacity:1}
  58%{transform:scale(1);opacity:1;filter:blur(0) drop-shadow(0 24px 42px rgba(0,0,0,.40))}
  100%{transform:scale(9.4);opacity:1;filter:blur(.25px) drop-shadow(0 0 0 rgba(0,0,0,0))}
}
@keyframes tvLaunchCopyFade{
  0%{opacity:0;transform:translateY(8px)}
  100%{opacity:1;transform:translateY(0)}
}
@keyframes tvLaunchQuickBar{
  0%{transform:translateX(-120%)}
  100%{transform:translateX(255%)}
}
@media(max-width:480px){
  .app-launch-zoom-logo{width:170px;height:170px}
  @keyframes tvLogoZoomCover{
    0%{transform:scale(.36);opacity:0;filter:blur(2px) drop-shadow(0 20px 38px rgba(0,0,0,.32))}
    20%{opacity:1}
    58%{transform:scale(1);opacity:1;filter:blur(0) drop-shadow(0 24px 42px rgba(0,0,0,.40))}
    100%{transform:scale(8.8);opacity:1;filter:blur(.25px)}
  }
}
@media (prefers-reduced-motion:reduce){
  .app-launch-zoom-logo{animation:none!important;transform:scale(1.15)}
  .app-launch-zoom-bar i{animation:none!important}
}

/* Source block: tv-v222-inicio-limpio-neon-verde */
/* v222 · Inicio limpio: se quitan solo textos/estadísticas marcados y se resalta info con neón verde. */
.tv-home-ux .home-eyebrow,
.tv-home-ux .home-lead,
.tv-home-ux .home-actions,
.tv-home-ux .home-proof-row{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.tv-home-ux{
  align-items:center!important;
  min-height:clamp(270px,28vw,360px)!important;
}
.tv-home-ux .hero-copy{
  justify-content:center!important;
}
.tv-home-ux h1{
  margin:0!important;
}
.home-info .info{
  position:relative!important;
  overflow:hidden!important;
  border-color:rgba(32,255,89,.74)!important;
  background:
    radial-gradient(circle at 8% 50%, rgba(32,255,89,.16), transparent 34%),
    linear-gradient(135deg, rgba(32,255,89,.10), color-mix(in srgb,var(--card) 94%, transparent))!important;
  box-shadow:
    0 0 0 1px rgba(32,255,89,.26),
    0 0 18px rgba(32,255,89,.30),
    0 0 42px rgba(32,255,89,.18),
    0 14px 34px rgba(0,0,0,.10)!important;
  animation:tvInfoNeonBreath 2.9s ease-in-out infinite;
}
.home-info .info::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background:linear-gradient(115deg, transparent 0%, rgba(83,255,115,.06) 28%, rgba(83,255,115,.34) 48%, rgba(83,255,115,.08) 66%, transparent 100%);
  transform:translateX(-125%);
  opacity:.8;
  pointer-events:none;
  animation:tvInfoNeonSweep 4.2s ease-in-out infinite;
}
.home-info .info > *{
  position:relative;
  z-index:1;
}
.home-info .info svg{
  color:#19ff5f!important;
  filter:drop-shadow(0 0 8px rgba(32,255,89,.68));
}
.home-info .info small{
  color:color-mix(in srgb,var(--green) 70%, var(--muted) 30%)!important;
}
.home-info .info b{
  text-shadow:0 0 12px rgba(32,255,89,.24);
}
.home-info .info:hover{
  border-color:rgba(32,255,89,.92)!important;
  box-shadow:
    0 0 0 1px rgba(32,255,89,.36),
    0 0 24px rgba(32,255,89,.42),
    0 0 58px rgba(32,255,89,.26),
    0 18px 38px rgba(0,0,0,.12)!important;
}
@keyframes tvInfoNeonBreath{
  0%,100%{box-shadow:0 0 0 1px rgba(32,255,89,.24),0 0 16px rgba(32,255,89,.24),0 0 38px rgba(32,255,89,.14),0 14px 34px rgba(0,0,0,.10)}
  50%{box-shadow:0 0 0 1px rgba(32,255,89,.38),0 0 24px rgba(32,255,89,.42),0 0 58px rgba(32,255,89,.24),0 16px 36px rgba(0,0,0,.11)}
}
@keyframes tvInfoNeonSweep{
  0%{transform:translateX(-125%)}
  42%,100%{transform:translateX(125%)}
}
@media(max-width:560px){
  .tv-home-ux{min-height:0!important}
  .home-info .info{box-shadow:0 0 0 1px rgba(32,255,89,.28),0 0 16px rgba(32,255,89,.24),0 10px 26px rgba(0,0,0,.08)!important}
}
@media(prefers-reduced-motion:reduce){
  .home-info .info,
  .home-info .info::before{animation:none!important}
}

/* Source block: tv-v226-css-polish-final */
/* v226 · Pulido CSS final: corrige accesos rápidos, hero, neón naranja y carrito flotante sin tocar lógica ni productos. */
:root{
  --tv-orange:#ff9500;
  --tv-orange-2:#ffb347;
  --tv-card-radius:26px;
}
html body .tv-home-ux{
  align-items:center!important;
  gap:clamp(18px,2.4vw,34px)!important;
  min-height:clamp(280px,28vw,390px)!important;
  margin-top:clamp(14px,2vw,22px)!important;
  margin-bottom:clamp(16px,2vw,24px)!important;
  border-radius:34px!important;
  overflow:hidden!important;
}
html body .tv-home-ux .home-eyebrow,
html body .tv-home-ux .home-lead,
html body .tv-home-ux .home-actions,
html body .tv-home-ux .home-proof-row{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html body .tv-home-ux .hero-copy{
  justify-content:center!important;
  min-height:100%!important;
}
html body .tv-home-ux h1{
  margin:0!important;
  max-width:12ch!important;
  text-wrap:balance!important;
}
html body .home-info{
  display:grid!important;
  gap:14px!important;
  align-content:center!important;
}
html body .home-info .info{
  position:relative!important;
  overflow:hidden!important;
  min-height:78px!important;
  border:1px solid rgba(255,149,0,.88)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 9% 50%, rgba(255,149,0,.18), transparent 36%),
    linear-gradient(135deg, rgba(255,149,0,.10), color-mix(in srgb,var(--card) 95%, transparent))!important;
  box-shadow:
    0 0 0 1px rgba(255,149,0,.30),
    0 0 20px rgba(255,149,0,.36),
    0 0 54px rgba(255,149,0,.20),
    0 14px 34px rgba(0,0,0,.10)!important;
  transform:translateZ(0)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
  animation:tvV226OrangeBreath 3s ease-in-out infinite!important;
}
html body .home-info .info::before{
  content:""!important;
  position:absolute!important;
  inset:-2px!important;
  border-radius:inherit!important;
  background:linear-gradient(115deg, transparent 0%, rgba(255,190,88,.08) 28%, rgba(255,190,88,.42) 48%, rgba(255,190,88,.10) 66%, transparent 100%)!important;
  transform:translateX(-125%)!important;
  opacity:.85!important;
  pointer-events:none!important;
  animation:tvV226OrangeSweep 4.2s ease-in-out infinite!important;
}
html body .home-info .info > *{position:relative!important;z-index:1!important}
html body .home-info .info svg{color:var(--tv-orange)!important;filter:drop-shadow(0 0 9px rgba(255,149,0,.75))!important}
html body .home-info .info small{color:color-mix(in srgb,var(--tv-orange) 76%, var(--muted) 24%)!important}
html body .home-info .info b{text-shadow:0 0 14px rgba(255,149,0,.28)!important}
html body .home-info .info:hover,
html body .home-info .info:focus-within{
  transform:translateY(-2px)!important;
  border-color:rgba(255,190,88,.98)!important;
  box-shadow:
    0 0 0 1px rgba(255,149,0,.44),
    0 0 30px rgba(255,149,0,.50),
    0 0 70px rgba(255,149,0,.28),
    0 18px 38px rgba(0,0,0,.13)!important;
}
html body .home-quick-nav{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  width:min(100%,1384px)!important;
  margin:clamp(12px,1.6vw,22px) auto clamp(14px,1.8vw,24px)!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .home-quick-nav button{
  -webkit-appearance:none!important;
  appearance:none!important;
  border:1px solid color-mix(in srgb,var(--tv-orange) 38%, var(--line))!important;
  outline:0!important;
  min-height:86px!important;
  width:100%!important;
  margin:0!important;
  padding:14px 15px!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 18% 50%, rgba(255,149,0,.16), transparent 32%),
    linear-gradient(135deg, color-mix(in srgb,var(--surface) 96%, transparent), color-mix(in srgb,var(--surface2) 93%, var(--tv-orange) 7%))!important;
  color:var(--text)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.14)!important;
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:3px!important;
  align-items:center!important;
  align-content:center!important;
  justify-content:start!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
  user-select:none!important;
  position:relative!important;
  overflow:hidden!important;
  transform:translateZ(0)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease!important;
}
html body .home-quick-nav button::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg, transparent 0%, rgba(255,255,255,.18) 42%, transparent 70%)!important;
  opacity:0!important;
  transform:translateX(-45%)!important;
  transition:opacity .18s ease, transform .45s ease!important;
  pointer-events:none!important;
}
html body .home-quick-nav button:hover,
html body .home-quick-nav button:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(255,149,0,.78)!important;
  box-shadow:0 0 0 1px rgba(255,149,0,.20),0 0 26px rgba(255,149,0,.22),0 18px 38px rgba(0,0,0,.12)!important;
}
html body .home-quick-nav button:hover::after,
html body .home-quick-nav button:focus-visible::after{opacity:1!important;transform:translateX(70%)!important}
html body .home-quick-nav button:active{transform:translateY(0) scale(.985)!important}
html body .home-quick-nav button > span{
  grid-row:1 / span 2!important;
  width:50px!important;
  height:50px!important;
  border-radius:18px!important;
  display:grid!important;
  place-items:center!important;
  font-size:23px!important;
  line-height:1!important;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.30), transparent 38%),
    color-mix(in srgb,var(--tv-orange) 24%, var(--card))!important;
  border:1px solid rgba(255,149,0,.42)!important;
  box-shadow:0 0 0 1px rgba(255,149,0,.14),0 0 18px rgba(255,149,0,.20),0 10px 20px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body .home-quick-nav button > b{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:16px!important;
  font-weight:1000!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
}
html body .home-quick-nav button > small{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.16!important;
}
html body #promoBanners:empty{
  display:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body #categoryMenuBtn{position:relative!important}
html body #categoryMenuBtn #cartBadge{display:none!important}
html body #cartFloatBtn.cart-float{
  --cart-float-size:76px;
  width:var(--cart-float-size)!important;
  min-width:var(--cart-float-size)!important;
  max-width:var(--cart-float-size)!important;
  height:var(--cart-float-size)!important;
  padding:0!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  gap:0!important;
  right:18px!important;
  bottom:18px!important;
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;
  box-shadow:0 0 0 1px rgba(255,149,0,.24),0 18px 38px rgba(255,127,18,.34),0 0 28px rgba(255,149,0,.22)!important;
}
html body #cartFloatBtn.cart-float > span:not(.badge){display:none!important}
html body #cartFloatBtn.cart-float svg{
  width:calc(var(--cart-float-size) * .48)!important;
  height:calc(var(--cart-float-size) * .48)!important;
  display:block!important;
}
html body #cartFloatBtn.cart-float .badge{
  display:grid!important;
  top:-7px!important;
  right:-7px!important;
  min-width:27px!important;
  height:27px!important;
  padding:0 7px!important;
  font-size:12px!important;
  border-radius:999px!important;
}
html body #cartFloatBtn.cart-float .badge.hidden{display:none!important}
@keyframes tvV226OrangeBreath{
  0%,100%{box-shadow:0 0 0 1px rgba(255,149,0,.28),0 0 18px rgba(255,149,0,.30),0 0 46px rgba(255,149,0,.18),0 14px 34px rgba(0,0,0,.10)}
  50%{box-shadow:0 0 0 1px rgba(255,149,0,.46),0 0 28px rgba(255,149,0,.48),0 0 68px rgba(255,149,0,.28),0 16px 36px rgba(0,0,0,.11)}
}
@keyframes tvV226OrangeSweep{
  0%{transform:translateX(-125%)}
  42%,100%{transform:translateX(125%)}
}
@media(max-width:1100px){
  html body .home-quick-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body .home-info{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  html body .tv-home-ux{border-radius:28px!important;padding:20px!important;min-height:0!important}
  html body .home-info{grid-template-columns:1fr!important}
  html body .home-quick-nav{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    padding:2px 2px 8px!important;
    margin-top:12px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .home-quick-nav::-webkit-scrollbar{height:0!important}
  html body .home-quick-nav button{
    min-width:210px!important;
    min-height:80px!important;
    scroll-snap-align:start!important;
    border-radius:22px!important;
  }
  html body #cartFloatBtn.cart-float{--cart-float-size:70px;right:16px!important;bottom:16px!important}
}
@media(max-width:520px){
  html body .tv-home-ux h1{font-size:clamp(40px,12vw,58px)!important;max-width:10.5ch!important}
  html body .home-info .info{min-height:70px!important;padding:14px 15px!important}
  html body .home-info .info b{font-size:17px!important}
  html body .home-quick-nav button{min-width:190px!important;grid-template-columns:46px minmax(0,1fr)!important;padding:12px!important}
  html body .home-quick-nav button > span{width:46px!important;height:46px!important;border-radius:16px!important}
}
@media(prefers-reduced-motion:reduce){
  html body .home-info .info,
  html body .home-info .info::before,
  html body .home-quick-nav button,
  html body .home-quick-nav button::after{animation:none!important;transition:none!important}
}

/* Source block: tv-v227-epic-intro-logo */
/* v227 · Entrada épica profesional basada en el logo. Solo intro visual. */
html.app-launching,
html.app-launching body{
  width:100%;
  min-height:100%;
  overflow:hidden!important;
  background:#080b18!important;
}
html.app-launching body > *:not(#appLaunchSplash):not(script){
  visibility:hidden!important;
}
#appLaunchSplash.tv-epic-intro{
  position:fixed!important;
  inset:0!important;
  z-index:2147483647!important;
  display:none;
  align-items:center;
  justify-content:center;
  padding:clamp(18px,4vw,36px);
  color:#fff;
  overflow:hidden!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,159,28,.20), transparent 26%),
    radial-gradient(circle at 14% 8%, rgba(237,28,42,.24), transparent 32%),
    radial-gradient(circle at 88% 10%, rgba(255,213,148,.16), transparent 30%),
    linear-gradient(145deg,#070a16 0%,#101832 48%,#20120b 100%);
  opacity:1;
  transition:opacity .42s ease, transform .42s ease, filter .42s ease;
}
html.app-launching #appLaunchSplash.tv-epic-intro{
  display:flex!important;
  visibility:visible!important;
}
#appLaunchSplash.tv-epic-intro.hide{
  opacity:0!important;
  transform:scale(1.035);
  filter:blur(7px);
  pointer-events:none;
}
#appLaunchSplash.tv-epic-intro::before,
#appLaunchSplash.tv-epic-intro::after{
  content:"";
  position:absolute;
  inset:auto;
  border-radius:999px;
  pointer-events:none;
}
#appLaunchSplash.tv-epic-intro::before{
  width:min(92vw,740px);
  height:min(92vw,740px);
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle, rgba(255,159,28,.22), rgba(237,28,42,.10) 36%, transparent 67%);
  filter:blur(18px);
  animation:tvIntroBreath 2.2s ease-in-out infinite;
}
#appLaunchSplash.tv-epic-intro::after{
  width:150vw;
  height:150vw;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  background:
    conic-gradient(from 0deg, transparent 0 16%, rgba(255,255,255,.08) 18%, transparent 20% 48%, rgba(255,159,28,.13) 50%, transparent 53% 100%);
  opacity:.55;
  animation:tvIntroSlowSpin 8s linear infinite;
}
.tv-intro-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.tv-intro-bg i{position:absolute;display:block;width:6px;height:6px;border-radius:999px;background:rgba(255,231,189,.92);box-shadow:0 0 16px rgba(255,159,28,.72);opacity:0;animation:tvIntroParticle 1.7s ease-in-out infinite}
.tv-intro-bg i:nth-child(1){left:16%;top:30%;animation-delay:.10s}
.tv-intro-bg i:nth-child(2){left:78%;top:23%;animation-delay:.22s;transform:scale(.7)}
.tv-intro-bg i:nth-child(3){left:28%;top:74%;animation-delay:.34s;transform:scale(.55)}
.tv-intro-bg i:nth-child(4){left:67%;top:72%;animation-delay:.48s;transform:scale(.8)}
.tv-intro-bg i:nth-child(5){left:88%;top:54%;animation-delay:.62s;transform:scale(.48)}
.tv-intro-bg i:nth-child(6){left:8%;top:58%;animation-delay:.78s;transform:scale(.68)}
.tv-intro-card{
  position:relative;
  z-index:2;
  width:min(430px,92vw);
  min-height:520px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:20px;
  padding:42px 30px 34px;
  border-radius:44px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.055));
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 36px 110px rgba(0,0,0,.54), inset 0 1px 0 rgba(255,255,255,.15);
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
  animation:tvIntroCardIn .72s cubic-bezier(.19,1,.22,1) both;
}
.tv-intro-card::before{
  content:"";
  position:absolute;
  inset:-45% -30%;
  background:linear-gradient(115deg, transparent 36%, rgba(255,255,255,.18) 48%, rgba(255,237,199,.17) 50%, transparent 64%);
  transform:translateX(-120%) rotate(3deg);
  animation:tvIntroSweep 1.25s ease .24s both;
}
.tv-intro-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 14%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(180deg,rgba(255,159,28,.12),transparent 42%);
  pointer-events:none;
}
.tv-intro-logo-shell{
  position:relative;
  z-index:2;
  width:min(48vw,210px);
  height:min(48vw,210px);
  min-width:160px;
  min-height:160px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:radial-gradient(circle at 50% 35%,#ffffff 0 44%,#fff5e7 56%,#ffd18b 100%);
  box-shadow:0 20px 54px rgba(0,0,0,.38),0 0 0 10px rgba(255,159,28,.10),0 0 68px rgba(255,159,28,.42);
  animation:tvIntroLogoPop .86s cubic-bezier(.18,1.18,.26,1) both;
}
.tv-intro-logo-shell img{
  width:86%;
  height:86%;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 11px 18px rgba(0,0,0,.30));
  animation:tvIntroLogoFloat 2.15s ease-in-out infinite;
}
.tv-intro-ring{
  position:absolute;
  inset:-16px;
  border-radius:999px;
  border:2px solid rgba(255,184,73,.72);
  border-left-color:transparent;
  border-bottom-color:rgba(237,28,42,.72);
  filter:drop-shadow(0 0 16px rgba(255,159,28,.60));
  animation:tvIntroRingSpin 2.1s linear infinite;
}
.tv-intro-ring.ring-2{
  inset:-29px;
  border-color:rgba(255,255,255,.24);
  border-top-color:rgba(255,159,28,.90);
  border-right-color:transparent;
  animation-duration:3.4s;
  animation-direction:reverse;
}
.tv-intro-steam{
  position:absolute;
  z-index:3;
  top:-42px;
  width:18px;
  height:62px;
  border-radius:999px;
  border-left:3px solid rgba(255,255,255,.55);
  filter:blur(.15px) drop-shadow(0 0 8px rgba(255,255,255,.35));
  opacity:0;
  animation:tvIntroSteam 1.75s ease-in-out infinite;
}
.tv-intro-steam.steam-1{left:34%;animation-delay:.15s}
.tv-intro-steam.steam-2{left:50%;height:72px;animation-delay:.34s}
.tv-intro-steam.steam-3{left:66%;animation-delay:.52s}
.tv-intro-spark{
  position:absolute;
  z-index:4;
  color:#ffe2a4;
  font-weight:1000;
  text-shadow:0 0 16px rgba(255,159,28,.95);
  animation:tvIntroSpark 1.38s ease-in-out infinite;
}
.tv-intro-spark.spark-1{right:-4px;top:22%;font-size:22px;animation-delay:.18s}
.tv-intro-spark.spark-2{left:-8px;bottom:24%;font-size:18px;animation-delay:.45s}
.tv-intro-spark.spark-3{right:14%;bottom:-10px;font-size:16px;animation-delay:.68s}
.tv-intro-copy{
  position:relative;
  z-index:2;
  display:grid;
  justify-items:center;
  gap:7px;
  text-align:center;
}
.tv-intro-copy small{
  padding:8px 12px;
  border-radius:999px;
  color:#ffe1b0;
  background:rgba(255,159,28,.13);
  border:1px solid rgba(255,159,28,.22);
  font-size:12px;
  font-weight:1000;
  letter-spacing:.07em;
  text-transform:uppercase;
  box-shadow:0 0 22px rgba(255,159,28,.14);
  animation:tvIntroTextIn .56s ease .22s both;
}
.tv-intro-copy strong{
  color:#fff;
  font-size:clamp(38px,9vw,58px);
  line-height:.92;
  letter-spacing:-.075em;
  text-shadow:0 14px 32px rgba(0,0,0,.35);
  animation:tvIntroTextIn .56s ease .32s both;
}
.tv-intro-copy span{
  color:rgba(255,255,255,.78);
  font-size:15px;
  font-weight:900;
  animation:tvIntroTextIn .56s ease .42s both;
}
.tv-intro-progress{
  position:relative;
  z-index:2;
  width:min(286px,72vw);
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 3px rgba(0,0,0,.20);
}
.tv-intro-progress i{
  display:block;
  height:100%;
  width:44%;
  border-radius:999px;
  background:linear-gradient(90deg,#ed1c2a,#ff9f1c,#fff0bf);
  box-shadow:0 0 22px rgba(255,159,28,.80);
  animation:tvIntroBar 1.02s ease-in-out infinite;
}
@keyframes tvIntroCardIn{0%{opacity:0;transform:translateY(18px) scale(.965)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes tvIntroBreath{0%,100%{opacity:.72;transform:translate(-50%,-50%) scale(.96)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}}
@keyframes tvIntroSlowSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes tvIntroSweep{0%{transform:translateX(-120%) rotate(3deg)}100%{transform:translateX(120%) rotate(3deg)}}
@keyframes tvIntroLogoPop{0%{opacity:0;transform:scale(.58) rotate(-6deg);filter:blur(4px)}70%{opacity:1;transform:scale(1.04) rotate(1deg);filter:blur(0)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes tvIntroLogoFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.018)}}
@keyframes tvIntroRingSpin{to{transform:rotate(360deg)}}
@keyframes tvIntroSteam{0%{opacity:0;transform:translateY(18px) scale(.82)}38%{opacity:.75}100%{opacity:0;transform:translateY(-18px) scale(1.14)}}
@keyframes tvIntroSpark{0%,100%{opacity:.24;transform:scale(.72) rotate(0)}50%{opacity:1;transform:scale(1.18) rotate(14deg)}}
@keyframes tvIntroParticle{0%{opacity:0;transform:translateY(12px) scale(.7)}35%{opacity:.92}100%{opacity:0;transform:translateY(-18px) scale(1.15)}}
@keyframes tvIntroTextIn{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}
@keyframes tvIntroBar{0%{transform:translateX(-120%)}100%{transform:translateX(255%)}}
@media(max-width:520px){
  #appLaunchSplash.tv-epic-intro{padding:16px}
  .tv-intro-card{width:min(360px,94vw);min-height:500px;padding:34px 22px 28px;border-radius:38px}
  .tv-intro-logo-shell{width:178px;height:178px;min-width:178px;min-height:178px}
  .tv-intro-copy small{font-size:10px;letter-spacing:.05em}
}
@media (prefers-reduced-motion:reduce){
  #appLaunchSplash.tv-epic-intro,
  #appLaunchSplash.tv-epic-intro *{animation:none!important;transition:none!important}
}

/* Source block: tv-v228-botones-intro-logo-elegante */
/* v228 · Botones más ordenados + intro solo logo. No toca catálogo, precios ni lógica. */
:root{
  --tv-v228-radius:24px;
  --tv-v228-soft-shadow:0 14px 32px rgba(88,51,16,.10);
  --tv-v228-strong-shadow:0 18px 42px rgba(88,51,16,.16);
}

/* Header: botones alineados, respirados y con tamaños consistentes */
html body .top-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  min-width:max-content!important;
}
html body .top-actions .pill-btn{
  height:58px!important;
  min-height:58px!important;
  border-radius:22px!important;
  padding:0 18px!important;
  border:1px solid color-mix(in srgb,var(--line) 78%, rgba(255,159,28,.22))!important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--card) 98%, transparent),color-mix(in srgb,var(--surface2) 88%, var(--card) 12%))!important;
  color:var(--text)!important;
  box-shadow:var(--tv-v228-soft-shadow), inset 0 1px 0 rgba(255,255,255,.18)!important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, filter .16s ease!important;
  white-space:nowrap!important;
}
html body .top-actions .pill-btn:hover,
html body .top-actions .pill-btn:focus-visible{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--accent) 58%, var(--line))!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 14%, transparent), var(--tv-v228-strong-shadow)!important;
}
html body .top-actions .pill-btn:active{transform:translateY(0) scale(.985)!important}

html body #categoryMenuBtn{
  min-width:112px!important;
  padding-inline:18px!important;
  gap:10px!important;
}
html body #categoryMenuBtn .hamburger-lines{
  width:22px!important;
  height:18px!important;
  gap:4px!important;
}
html body #categoryMenuBtn .hamburger-lines i{
  height:3px!important;
  background:var(--accent)!important;
  box-shadow:0 0 12px color-mix(in srgb,var(--accent) 42%, transparent)!important;
}
html body #categoryMenuBtn .category-menu-label{
  font-size:16px!important;
  letter-spacing:-.015em!important;
}

html body #themeBtn.tv-theme-switch{
  min-width:142px!important;
  height:58px!important;
  padding:7px 14px 7px 7px!important;
  border-radius:999px!important;
}
html body #themeBtn.tv-theme-switch .theme-orb{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
}
html body #themeBtn.tv-theme-switch .theme-text small{font-size:10px!important}
html body #themeBtn.tv-theme-switch .theme-text b{font-size:15px!important}

html body #installBtn.install-cta{
  min-width:154px!important;
  height:58px!important;
  border-radius:999px!important;
  padding:0 20px!important;
  justify-content:center!important;
}

/* Accesos rápidos: cards premium, no botones nativos, bien alineadas */
html body .home-quick-nav{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  width:min(100%,1384px)!important;
  margin:clamp(14px,1.8vw,24px) auto clamp(16px,2vw,28px)!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .home-quick-nav button{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-height:88px!important;
  width:100%!important;
  margin:0!important;
  padding:15px 16px!important;
  border-radius:26px!important;
  border:1px solid color-mix(in srgb,var(--accent) 34%, var(--line))!important;
  background:
    radial-gradient(circle at 18% 50%, color-mix(in srgb,var(--accent) 18%, transparent), transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--surface) 96%, transparent),color-mix(in srgb,var(--surface2) 90%, var(--accent) 10%))!important;
  color:var(--text)!important;
  box-shadow:0 14px 34px rgba(88,51,16,.10), inset 0 1px 0 rgba(255,255,255,.18)!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  align-content:center!important;
  gap:4px 12px!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
  position:relative!important;
  overflow:hidden!important;
  transform:translateZ(0)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
}
html body .home-quick-nav button::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.22) 48%,transparent 72%)!important;
  opacity:0!important;
  transform:translateX(-58%)!important;
  transition:opacity .18s ease, transform .48s ease!important;
  pointer-events:none!important;
}
html body .home-quick-nav button:hover,
html body .home-quick-nav button:focus-visible{
  transform:translateY(-2px)!important;
  border-color:color-mix(in srgb,var(--accent) 78%, var(--line))!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%, transparent),0 18px 42px rgba(88,51,16,.14),0 0 30px color-mix(in srgb,var(--accent) 18%, transparent)!important;
}
html body .home-quick-nav button:hover::before,
html body .home-quick-nav button:focus-visible::before{opacity:1!important;transform:translateX(65%)!important}
html body .home-quick-nav button > span{
  grid-row:1 / span 2!important;
  width:52px!important;
  height:52px!important;
  border-radius:20px!important;
  display:grid!important;
  place-items:center!important;
  font-size:24px!important;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.36), transparent 38%),
    color-mix(in srgb,var(--accent) 22%, var(--card))!important;
  border:1px solid color-mix(in srgb,var(--accent) 42%, var(--line))!important;
  box-shadow:0 10px 22px rgba(0,0,0,.10),0 0 18px color-mix(in srgb,var(--accent) 20%, transparent), inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body .home-quick-nav button > b{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:16px!important;
  line-height:1.06!important;
  font-weight:1000!important;
  letter-spacing:-.02em!important;
}
html body .home-quick-nav button > small{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:13px!important;
  line-height:1.16!important;
  font-weight:850!important;
}

/* Botones generales más consistentes sin alterar funciones */
html body .btn,
html body .add-btn,
html body .option,
html body .remove-btn,
html body .addon-tab,
html body .addon-add-btn{
  touch-action:manipulation!important;
}
html body .btn{border-radius:18px!important;font-weight:950!important}
html body .btn.primary,
html body .add-btn{
  box-shadow:0 14px 28px color-mix(in srgb,var(--accent) 24%, transparent)!important;
}

/* Intro: solo el logo con el mismo efecto elegante */
#appLaunchSplash.tv-epic-intro{
  background:
    radial-gradient(circle at 50% 42%, rgba(255,159,28,.24), transparent 27%),
    radial-gradient(circle at 16% 12%, rgba(237,28,42,.18), transparent 34%),
    radial-gradient(circle at 84% 18%, rgba(255,221,161,.14), transparent 32%),
    linear-gradient(145deg,#070a16 0%,#101832 52%,#1b120d 100%)!important;
}
#appLaunchSplash.tv-epic-intro .tv-intro-card{
  width:min(360px,86vw)!important;
  min-height:0!important;
  padding:0!important;
  gap:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:visible!important;
}
#appLaunchSplash.tv-epic-intro .tv-intro-card::before,
#appLaunchSplash.tv-epic-intro .tv-intro-card::after,
#appLaunchSplash.tv-epic-intro .tv-intro-copy,
#appLaunchSplash.tv-epic-intro .tv-intro-progress{
  display:none!important;
}
#appLaunchSplash.tv-epic-intro .tv-intro-logo-shell{
  width:min(54vw,230px)!important;
  height:min(54vw,230px)!important;
  min-width:174px!important;
  min-height:174px!important;
  background:radial-gradient(circle at 50% 36%,#fff 0 44%,#fff4e5 58%,#ffd28a 100%)!important;
  box-shadow:
    0 28px 72px rgba(0,0,0,.45),
    0 0 0 12px rgba(255,159,28,.10),
    0 0 82px rgba(255,159,28,.48),
    0 0 140px rgba(237,28,42,.16)!important;
}
#appLaunchSplash.tv-epic-intro .tv-intro-logo-shell img{
  width:88%!important;
  height:88%!important;
}
#appLaunchSplash.tv-epic-intro .tv-intro-ring{inset:-18px!important}
#appLaunchSplash.tv-epic-intro .tv-intro-ring.ring-2{inset:-32px!important}

@media(max-width:980px){
  html body .topbar-inner{grid-template-columns:1fr!important;gap:12px!important}
  html body .search{order:2;width:100%!important}
  html body .top-actions{order:3;width:100%!important;display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:9px!important;min-width:0!important}
  html body #categoryMenuBtn,
  html body #themeBtn.tv-theme-switch,
  html body #installBtn.install-cta{width:100%!important;min-width:0!important;justify-content:center!important}
}
@media(max-width:760px){
  html body .top-actions{grid-template-columns:1fr 1fr!important}
  html body #installBtn.install-cta{grid-column:1 / -1!important}
  html body .top-actions .pill-btn{height:54px!important;min-height:54px!important;border-radius:20px!important;padding-inline:12px!important}
  html body #categoryMenuBtn{min-width:0!important}
  html body .home-quick-nav{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:10px!important;
    padding:2px 2px 8px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .home-quick-nav::-webkit-scrollbar{height:0!important}
  html body .home-quick-nav button{
    min-width:218px!important;
    min-height:82px!important;
    border-radius:22px!important;
    scroll-snap-align:start!important;
  }
}
@media(max-width:430px){
  html body .top-actions{grid-template-columns:56px minmax(0,1fr)!important}
  html body #categoryMenuBtn{width:56px!important;min-width:56px!important;padding:0!important}
  html body #categoryMenuBtn .category-menu-label{display:none!important}
  html body #themeBtn.tv-theme-switch{padding:6px 10px 6px 6px!important}
  html body #installBtn.install-cta{grid-column:1 / -1!important;height:52px!important;min-height:52px!important}
  html body .home-quick-nav button{min-width:200px!important;grid-template-columns:48px minmax(0,1fr)!important}
  html body .home-quick-nav button > span{width:48px!important;height:48px!important;border-radius:18px!important}
}
@media(prefers-reduced-motion:reduce){
  html body .top-actions .pill-btn,
  html body .home-quick-nav button,
  html body .home-quick-nav button::before{transition:none!important;animation:none!important}
}

/* Source block: tv-v240-banner-logo-fixes */
/* V240 · banner de inicio, logo nítido, botón día/noche refinado */
html body .brand-logo{
  width:76px!important;
  height:76px!important;
  border-radius:24px!important;
  background:#ffffff!important;
  border:1px solid rgba(255,181,74,.26)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.92)!important;
}
html body .brand-logo img{
  padding:1px!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
  image-rendering:auto!important;
}
html body .topbar-inner{
  background:color-mix(in srgb,var(--surface) 96%, transparent)!important;
}

html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  width:76px!important;
  min-width:76px!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  border:1px solid color-mix(in srgb,var(--accent) 28%, var(--line))!important;
  box-shadow:0 10px 22px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.18)!important;
}
html body #themeBtn .theme-switch-track{
  width:56px!important;
  height:30px!important;
  box-shadow:inset 0 2px 6px rgba(0,0,0,.10), 0 0 0 1px rgba(255,255,255,.08)!important;
}
html body #themeBtn .theme-switch-thumb{
  top:3px!important;
  left:3px!important;
  width:24px!important;
  height:24px!important;
  box-shadow:0 4px 12px rgba(0,0,0,.22)!important;
}
html[data-theme="dark"] body #themeBtn .theme-switch-thumb{
  transform:translateX(26px)!important;
}

html body .tv-home-banner{
  display:block!important;
  padding:14px!important;
  min-height:0!important;
  gap:0!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 98%, transparent),color-mix(in srgb,var(--surface2) 96%, transparent))!important;
}
html body .tv-home-banner::before{
  display:none!important;
}
html body .tv-home-banner .hero-banner-card{
  width:100%!important;
  border-radius:28px!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--accent) 28%, var(--line))!important;
  background:#09112b!important;
  box-shadow:0 20px 44px rgba(0,0,0,.16)!important;
}
html body .tv-home-banner .hero-banner-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
}
html body .tv-home-banner > *{
  position:relative!important;
}
/* Si vuelve a aparecer contenido viejo, lo ocultamos */
html body .tv-home-banner .hero-copy,
html body .tv-home-banner .home-info,
html body .tv-home-banner .home-proof-row,
html body .tv-home-banner .home-actions,
html body .tv-home-banner .home-eyebrow,
html body .tv-home-banner .home-lead{display:none!important}

html body .product[data-id="sandwich-hamburg-comun"] .product-media img,
html body .product[data-product-id="sandwich-hamburg-comun"] .product-media img{
  object-position:center center!important;
}

@media(max-width:760px){
  html body .brand-logo{width:62px!important;height:62px!important;border-radius:20px!important}
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{width:58px!important;min-width:58px!important;height:42px!important;min-height:42px!important;padding:0 5px!important}
  html body #themeBtn .theme-switch-track{width:46px!important;height:26px!important}
  html body #themeBtn .theme-switch-thumb{width:20px!important;height:20px!important;top:3px!important;left:3px!important;font-size:12px!important}
  html[data-theme="dark"] body #themeBtn .theme-switch-thumb{transform:translateX(20px)!important}
  html body .tv-home-banner{margin-top:10px!important;padding:10px!important;border-radius:24px!important}
  html body .tv-home-banner .hero-banner-card{border-radius:22px!important}
}

/* Source block: tv-v242-open-map-buttons */
/* V242 · estado abierto/cerrado + ubicación clickeable + botones estables */
.brand-copy{min-width:0;display:grid;align-content:center;gap:4px}
.brand-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:2px}
.store-status{
  display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;
  font-weight:1000;font-size:13px;line-height:1;border:1px solid transparent;
}
.store-status::before{content:"";width:10px;height:10px;border-radius:999px;flex:0 0 10px}
.store-status.is-open{background:rgba(34,197,94,.12);color:#15803d;border-color:rgba(34,197,94,.24)}
.store-status.is-open::before{background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.16)}
.store-status.is-closed{background:rgba(220,38,38,.10);color:#b91c1c;border-color:rgba(220,38,38,.20)}
.store-status.is-closed::before{background:#ef4444;box-shadow:0 0 0 5px rgba(239,68,68,.12)}
.store-status-hint{font-size:12px;font-weight:900;color:var(--muted);white-space:nowrap}
.location-chip{
  display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;
  border:1px solid color-mix(in srgb,var(--accent) 30%, var(--line));background:color-mix(in srgb,var(--card) 96%, transparent);
  color:var(--text);text-decoration:none;font-weight:950;box-shadow:0 8px 18px rgba(0,0,0,.06)
}
.location-chip:hover,.location-chip:focus-visible{border-color:color-mix(in srgb,var(--accent) 50%, var(--line));transform:translateY(-1px)}
.hero-banner-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;margin-top:16px}
.hero-map-btn{background:color-mix(in srgb,var(--card) 98%, transparent)!important}
.hero-map-btn,.hero-menu-btn{min-height:52px!important;padding-inline:18px!important;border-radius:18px!important}

/* Botones de productos bien firmes */
.product{height:100%}
.product-body{display:flex!important;flex-direction:column!important;gap:10px!important}
.product-top{align-items:flex-start!important}
.desc{flex:1 1 auto}
.product-actions{display:grid!important;grid-template-columns:minmax(96px,.82fr) minmax(128px,1.18fr)!important;gap:10px!important;align-items:stretch!important;margin-top:auto!important}
.details-btn,.add-btn,.card-buy-control,.product-actions .card-control-slot{width:100%!important}
.details-btn,.add-btn{min-height:48px!important;border-radius:16px!important;font-weight:1000!important}
.details-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 14px!important;background:color-mix(in srgb,var(--card) 98%, transparent)!important;border:1px solid var(--line)!important;color:var(--text)!important}
.add-btn{box-shadow:0 14px 24px rgba(255,159,28,.22)!important}
.card-buy-control{min-height:48px!important;height:48px!important;border-radius:16px!important;overflow:hidden!important}
.card-buy-control.is-active{display:grid!important;grid-template-columns:46px minmax(34px,1fr) 46px!important;align-items:center!important}
.card-qty-btn{height:48px!important}
.card-qty-number{display:grid!important;place-items:center!important;font-weight:1000!important}

@media (max-width:980px){
  .brand-tag{display:none!important}
  .store-status-hint{white-space:normal}
}
@media (max-width:760px){
  .brand-copy{gap:3px}
  .brand-status-row{gap:6px 8px}
  .store-status{font-size:12px;padding:6px 10px}
  .store-status-hint{width:100%;font-size:11px;order:3}
  .location-chip{min-height:32px;padding:0 11px;font-size:12px}
  .hero-banner-actions{margin-top:12px;gap:10px}
  .hero-map-btn,.hero-menu-btn{min-height:46px!important;font-size:14px!important;padding-inline:14px!important}
  .product-actions{grid-template-columns:1fr 1fr!important;gap:8px!important}
}
@media (max-width:560px){
  .product-actions{grid-template-columns:1fr!important}
  .details-btn,.add-btn,.card-buy-control{min-height:46px!important;height:46px!important}
  .card-buy-control.is-active{grid-template-columns:44px minmax(34px,1fr) 44px!important}
  .card-qty-btn{height:46px!important}
}

/* Source block: tv-v252-zero-errors-mobile */
/* V254 · Mobile perfect: header, banner, categorías y productos optimizados */

html,
body{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  -webkit-text-size-adjust:100%!important;
  text-size-adjust:100%!important;
}

@supports (overflow:clip){
  html,body{overflow-x:clip!important;}
}

html body *,
html body *::before,
html body *::after{
  box-sizing:border-box!important;
  min-width:0;
}

html body img,
html body svg,
html body video,
html body canvas{
  max-width:100%!important;
}

html body .app{
  width:min(100%, 1180px)!important;
  margin-inline:auto!important;
  padding-left:max(12px, env(safe-area-inset-left))!important;
  padding-right:max(12px, env(safe-area-inset-right))!important;
  padding-bottom:calc(110px + env(safe-area-inset-bottom))!important;
}

html body .topbar{
  padding-top:max(8px, env(safe-area-inset-top))!important;
}

html body .topbar-inner{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) auto!important;
  grid-template-areas:
    "brand actions"
    "search search"!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  padding:14px!important;
  border-radius:26px!important;
}

html body .brand{
  grid-area:brand!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
}

html body .brand-logo,
html body #brandTap .brand-logo{
  width:64px!important;
  height:64px!important;
  flex:0 0 64px!important;
  border-radius:18px!important;
  overflow:hidden!important;
}

html body .brand-logo img,
html body #brandTap .brand-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:0!important;
  margin:0!important;
}

html body .brand-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  gap:0!important;
}

html body .brand-title{
  font-size:clamp(26px, 5vw, 40px)!important;
  line-height:.95!important;
  letter-spacing:-.04em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .brand-tag{
  margin-top:4px!important;
  font-size:12px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  opacity:.92!important;
}

html body .brand-status-row{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:7px!important;
}

html body .store-status,
html body .location-chip{
  max-width:100%!important;
  font-size:12px!important;
  line-height:1.1!important;
  padding:6px 10px!important;
}

html body .location-chip{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .top-actions{
  grid-area:actions!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
}

html body .search{
  grid-area:search!important;
  width:100%!important;
  max-width:100%!important;
  min-height:54px!important;
  margin:0!important;
  border-radius:18px!important;
  padding:0 15px!important;
}

html body .search input{
  min-width:0!important;
  width:100%!important;
  font-size:16px!important;
}

html body #categoryMenuBtn{
  min-width:52px!important;
}

html body .hero.tv-home-banner{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:14px!important;
  padding:12px!important;
  border-radius:26px!important;
  overflow:hidden!important;
}

html body .hero-banner-card{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:0 16px 36px rgba(17,24,39,.16)!important;
}

html body .hero-banner-card img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:16 / 9!important;
  object-fit:cover!important;
}

html body .quick-nav-wrap{
  margin-top:14px!important;
}

html body .quick-nav-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:8px!important;
}

html body .quick-nav-kicker{
  font-size:11px!important;
  letter-spacing:.12em!important;
}

html body .home-quick-nav{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(136px, 76%)!important;
  gap:10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 1px 6px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
}

html body .home-quick-nav::-webkit-scrollbar{
  display:none!important;
}

html body .home-quick-nav button{
  scroll-snap-align:start!important;
  min-height:78px!important;
  padding:12px!important;
  border-radius:18px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0, 1fr)!important;
  align-items:center!important;
  gap:10px!important;
}

html body .home-quick-nav button > span{
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  font-size:17px!important;
}

html body .home-quick-nav button > b{
  font-size:14px!important;
  line-height:1.08!important;
  text-align:left!important;
}

html body .home-quick-nav button > small{
  display:none!important;
}

html body .promo-banners,
html body #promoBanners{
  display:grid!important;
  gap:10px!important;
}

html body .promo-banners > *,
html body #promoBanners > *{
  width:100%!important;
  max-width:100%!important;
}

html body .section-head{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) auto!important;
  align-items:end!important;
  gap:10px!important;
  margin:20px 0 12px!important;
}

html body .section-head h2{
  font-size:clamp(30px, 8vw, 44px)!important;
  line-height:.98!important;
  margin:0!important;
}

html body .section-head p,
html body #menuLead{
  display:none!important;
}

html body .close-categories-btn{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  padding:0!important;
  border-radius:14px!important;
}

html body .close-categories-label{
  display:none!important;
}

html body .categories,
html body #categoryList{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr)!important;
  gap:10px!important;
  width:100%!important;
}

html body .category{
  width:100%!important;
  max-width:100%!important;
  border-radius:24px!important;
  overflow:hidden!important;
}

html body .category-header,
html body .category-header-with-logo{
  display:grid!important;
  grid-template-columns:48px minmax(0, 1fr) 42px!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  padding:14px 12px!important;
}

html body .category-logo{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  font-size:17px!important;
}

html body .category-copy{
  min-width:0!important;
}

html body .category-title{
  font-size:22px!important;
  line-height:1.05!important;
  margin:0!important;
}

html body .category-meta{
  font-size:12px!important;
  line-height:1.2!important;
  margin-top:4px!important;
}

html body .chev{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border-radius:14px!important;
}

html body .category-body{
  padding:0 12px 12px!important;
}

html body .products{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr)!important;
  gap:12px!important;
  width:100%!important;
}

html body .product{
  width:100%!important;
  max-width:100%!important;
  border-radius:22px!important;
  overflow:hidden!important;
}

html body .product-media{
  aspect-ratio:16 / 10!important;
  min-height:0!important;
}

html body .product-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

html body .product-body{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  padding:14px!important;
  min-width:0!important;
}

html body .product-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}

html body .product h3{
  font-size:20px!important;
  line-height:1.05!important;
  margin:0!important;
}

html body .price{
  font-size:18px!important;
  white-space:nowrap!important;
}

html body .desc{
  min-height:0!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.35!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

html body .product-actions{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr)!important;
  gap:8px!important;
  align-items:stretch!important;
  margin-top:auto!important;
}

html body .details-btn,
html body .add-btn,
html body .card-buy-control,
html body .product-actions .card-control-slot{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

html body .details-btn,
html body .add-btn{
  min-height:46px!important;
  border-radius:16px!important;
}

html body .card-buy-control{
  min-height:46px!important;
  height:46px!important;
}

html body .card-buy-control.is-active,
html body .qty-control{
  grid-template-columns:44px minmax(0, 1fr) 44px!important;
}

html body .drawer,
html body .modal,
html body .modal-card,
html body .choice,
html body .checkout-panel,
html body .addon-list,
html body .admin-card{
  max-width:100%!important;
}

html body #cartFloatBtn{
  right:max(14px, env(safe-area-inset-right))!important;
  bottom:calc(18px + env(safe-area-inset-bottom))!important;
}

@media (max-width:760px){
  html body .topbar .cart-top{
    display:none!important;
  }

  html body #categoryMenuBtn{
    width:52px!important;
    padding:0!important;
    justify-content:center!important;
  }

  html body #categoryMenuBtn .category-menu-label{
    display:none!important;
  }

  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    width:50px!important;
    min-width:50px!important;
    height:50px!important;
  }

  html body .brand-tag{
    display:none!important;
  }

  html body .store-status,
  html body .location-chip{
    font-size:11.5px!important;
    padding:5px 9px!important;
  }
}

@media (max-width:430px){
  html body .app{
    padding-left:max(10px, env(safe-area-inset-left))!important;
    padding-right:max(10px, env(safe-area-inset-right))!important;
  }

  html body .topbar-inner{
    padding:12px!important;
    gap:10px!important;
    border-radius:22px!important;
  }

  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:56px!important;
    height:56px!important;
    flex-basis:56px!important;
  }

  html body .brand-title{
    font-size:clamp(22px, 7vw, 30px)!important;
  }

  html body .search{
    min-height:50px!important;
    padding:0 14px!important;
  }

  html body .hero.tv-home-banner{
    padding:10px!important;
    border-radius:22px!important;
  }

  html body .hero-banner-card{
    border-radius:18px!important;
  }

  html body .home-quick-nav{
    grid-auto-columns:minmax(132px, 82%)!important;
  }

  html body .section-head{
    margin:18px 0 10px!important;
  }

  html body .category-header,
  html body .category-header-with-logo{
    grid-template-columns:44px minmax(0, 1fr) 40px!important;
    padding:12px!important;
  }

  html body .category-title{
    font-size:20px!important;
  }

  html body .product-body{
    padding:12px!important;
  }
}

@media (min-width:761px) and (max-width:1024px){
  html body .topbar-inner{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "brand actions"
      "search search"!important;
  }

  html body .home-quick-nav{
    grid-template-columns:repeat(3, minmax(0, 1fr))!important;
    grid-auto-flow:row!important;
    overflow:visible!important;
  }

  html body .products{
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
  }
}

@media (min-width:1025px){
  html body .products{
    grid-template-columns:repeat(3, minmax(0, 1fr))!important;
  }
}

/* Source block: tv-v253-mobile-first-final */
:root{
  --tv-page-gap:clamp(10px,2.8vw,22px);
  --tv-header-radius:22px;
  --tv-card-radius:18px;
  --tv-touch:44px;
}

*,*::before,*::after{box-sizing:border-box}

html{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-padding-top:118px;
}

body{
  width:100%;
  min-width:280px;
  max-width:100%;
  overflow-x:hidden!important;
  overscroll-behavior-x:none;
}

@supports (overflow:clip){
  html,body{overflow-x:clip!important}
}

img,svg,video,canvas{
  display:block;
  max-width:100%;
}

button,a,input,select,textarea{
  -webkit-tap-highlight-color:transparent;
}

button,a{
  touch-action:manipulation;
}

input,select,textarea{
  font-size:16px!important;
}

/* Inicio inmediato: nunca ocultar la aplicación detrás de una intro. */
html.app-launching,
html.app-launching body{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:var(--bg)!important;
}

html.app-launching body > *{
  visibility:visible!important;
}

#appLaunchSplash,
.app-launch-splash,
.tv-epic-intro{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

html body .app{
  width:min(100%,1180px)!important;
  min-width:0!important;
  max-width:1180px!important;
  margin-inline:auto!important;
  padding:
    max(8px,env(safe-area-inset-top))
    max(var(--tv-page-gap),env(safe-area-inset-right))
    calc(104px + env(safe-area-inset-bottom))
    max(var(--tv-page-gap),env(safe-area-inset-left))!important;
}

/* HEADER */
html body .topbar{
  position:sticky!important;
  top:0!important;
  z-index:60!important;
  width:100%!important;
  padding:0!important;
  margin:0 0 10px!important;
}

html body .topbar-inner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "brand actions"
    "search search"!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:12px!important;
  border-radius:var(--tv-header-radius)!important;
  overflow:hidden!important;
  background:color-mix(in srgb,var(--surface) 96%,transparent)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

html body .brand{
  grid-area:brand!important;
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}

html body .brand-logo,
html body #brandTap .brand-logo{
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  flex:0 0 56px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:16px!important;
  background:transparent!important;
  box-shadow:none!important;
}

html body .brand-logo img,
html body #brandTap .brand-logo img{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}

html body .brand-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:0!important;
  min-width:0!important;
  overflow:hidden!important;
}

html body .brand-title{
  margin:0!important;
  font-size:clamp(22px,7vw,30px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .brand-tag{
  display:none!important;
}

html body .brand-status-row{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px 9px!important;
  min-width:0!important;
  margin-top:6px!important;
}

html body .store-status{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:0!important;
  max-width:100%!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}

html body .store-status::before{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  box-shadow:none!important;
}

html body .location-chip{
  display:inline-flex!important;
  align-items:center!important;
  min-height:0!important;
  max-width:100%!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--muted)!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .location-chip::before{
  margin-right:4px!important;
}

html body .top-actions{
  grid-area:actions!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
}

html body #installBtn{
  display:none!important;
}

html body #categoryMenuBtn,
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:15px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}

html body #categoryMenuBtn .category-menu-label,
html body #themeBtn .theme-text{
  display:none!important;
}

html body #categoryMenuBtn .hamburger-lines{
  width:20px!important;
}

html body #themeBtn .theme-switch-track{
  margin:auto!important;
}

html body .search{
  grid-area:search!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 14px!important;
  gap:10px!important;
  border-radius:17px!important;
  box-shadow:none!important;
}

html body .search svg{
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
}

html body .search input{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  font-size:16px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* BANNER PRINCIPAL */
html body .hero.tv-home-banner{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:8px 0 12px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

html body .hero.tv-home-banner::before,
html body .hero.tv-home-banner::after{
  display:none!important;
  content:none!important;
}

html body .hero-banner-card{
  display:block!important;
  width:min(100%,860px)!important;
  min-width:0!important;
  max-width:860px!important;
  margin-inline:auto!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:17px!important;
  border:1px solid rgba(212,166,86,.40)!important;
  background:#071537!important;
  box-shadow:0 12px 28px rgba(4,10,28,.16)!important;
  aspect-ratio:1354 / 601!important;
}

html body .hero-banner-picture{
  display:block!important;
  width:100%!important;
  height:100%!important;
}

html body .hero-banner-card img,
html body .hero-banner-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  padding:0!important;
  margin:0!important;
  object-fit:cover!important;
  object-position:center!important;
  background:#071537!important;
}

/* ACCESOS RÁPIDOS */
html body .quick-nav-wrap{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:12px 0 10px!important;
  display:grid!important;
  gap:7px!important;
}

html body .quick-nav-head{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:0!important;
  padding:0 2px!important;
  margin:0!important;
}

html body .quick-nav-kicker{
  display:block!important;
  margin:0!important;
  color:var(--accent)!important;
  font-size:10px!important;
  font-weight:1000!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

html body .quick-nav-title,
html body .quick-nav-swipe-hint,
html body .quick-nav-wrap::after{
  display:none!important;
  content:none!important;
}

html body .home-quick-nav{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:142px!important;
  grid-template-columns:none!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:1px 1px 6px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  overscroll-behavior-inline:contain!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch!important;
}

html body .home-quick-nav::-webkit-scrollbar{
  display:none!important;
}

html body .home-quick-nav button{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:9px!important;
  width:142px!important;
  min-width:142px!important;
  max-width:142px!important;
  min-height:66px!important;
  margin:0!important;
  padding:10px!important;
  overflow:hidden!important;
  scroll-snap-align:start!important;
  border-radius:16px!important;
  border:1px solid var(--line)!important;
  background:color-mix(in srgb,var(--surface) 97%,transparent)!important;
  box-shadow:none!important;
  text-align:left!important;
}

html body .home-quick-nav button::before,
html body .home-quick-nav button::after{
  display:none!important;
  content:none!important;
}

html body .home-quick-nav button > span{
  grid-row:auto!important;
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  border-radius:12px!important;
  font-size:16px!important;
}

html body .home-quick-nav button > b{
  min-width:0!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.08!important;
  white-space:normal!important;
}

html body .home-quick-nav button > small{
  display:none!important;
}

/* PUBLICIDADES */
html body .promo-banners,
html body #promoBanners{
  display:grid!important;
  width:min(100%,960px)!important;
  min-width:0!important;
  max-width:960px!important;
  margin:10px auto 0!important;
  gap:10px!important;
  overflow:hidden!important;
}

html body .promo-banners > *,
html body #promoBanners > *,
html body .promo-premium-shell,
html body .promo-premium-track,
html body .promo-premium-slide{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

html body .promo-premium-shell{
  border-radius:17px!important;
  overflow:hidden!important;
  box-shadow:0 10px 24px rgba(0,0,0,.10)!important;
}

html body .promo-premium-slide img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:3 / 1!important;
  object-fit:cover!important;
}

/* MENÚ Y APARTADOS */
html body #menu{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

html body .section-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 42px!important;
  align-items:end!important;
  gap:10px!important;
  width:100%!important;
  margin:18px 0 10px!important;
}

html body .section-kicker{
  display:block!important;
  margin-bottom:5px!important;
  font-size:10px!important;
  line-height:1!important;
}

html body .section-head h2{
  margin:0!important;
  font-size:clamp(29px,8vw,38px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}

html body .section-head p,
html body #menuLead{
  display:none!important;
}

html body .close-categories-btn{
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border-radius:13px!important;
  box-shadow:none!important;
}

html body .close-categories-label{
  display:none!important;
}

html body .categories,
html body #categoryList{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

html body .category{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  border-radius:18px!important;
  border:1px solid var(--line)!important;
  box-shadow:none!important;
  background:color-mix(in srgb,var(--surface) 98%,transparent)!important;
}

html body .category.open{
  border-color:color-mix(in srgb,var(--accent) 25%,var(--line))!important;
  box-shadow:0 8px 20px rgba(0,0,0,.07)!important;
}

html body .category-header,
html body .category-header-with-logo{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 38px!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:64px!important;
  padding:10px!important;
  text-align:left!important;
}

html body .category-logo{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border-radius:13px!important;
  font-size:17px!important;
}

html body .category-copy{
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}

html body .category-title{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  font-size:clamp(18px,5.2vw,21px)!important;
  line-height:1.05!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

html body .category-meta{
  width:100%!important;
  min-width:0!important;
  margin-top:4px!important;
  color:var(--muted)!important;
  font-size:11px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .chev{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  border-radius:12px!important;
  box-shadow:none!important;
}

html body .category-body{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0 8px 8px!important;
  overflow:hidden!important;
}

/* PRODUCTOS */
html body .products{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}

html body .product,
html body .compact-product{
  display:grid!important;
  grid-template-columns:108px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:154px!important;
  height:auto!important;
  overflow:hidden!important;
  border-radius:16px!important;
  border:1px solid var(--line)!important;
  background:var(--card)!important;
  box-shadow:none!important;
}

html body .product-media{
  width:100%!important;
  height:100%!important;
  min-height:154px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  background:#fff!important;
}

html body .product-media img{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  object-fit:cover!important;
  object-position:center!important;
}

html body .product[data-cat="Bebidas"] .product-media img{
  padding:7px!important;
  object-fit:contain!important;
  background:#fff!important;
}

html body .product-body{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:10px!important;
  gap:7px!important;
}

html body .product-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  gap:5px!important;
  min-width:0!important;
}

html body .product h3{
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  font-size:17px!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}

html body .price{
  min-width:0!important;
  margin:0!important;
  font-size:17px!important;
  line-height:1!important;
  white-space:nowrap!important;
}

html body .desc{
  display:none!important;
}

html body .product-actions{
  display:grid!important;
  grid-template-columns:minmax(54px,.58fr) minmax(92px,1fr)!important;
  align-items:stretch!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  margin-top:auto!important;
}

html body .details-btn,
html body .add-btn,
html body .card-buy-control,
html body .product-actions .card-control-slot{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}

html body .details-btn,
html body .add-btn{
  min-height:42px!important;
  height:42px!important;
  padding:0 8px!important;
  border-radius:12px!important;
  font-size:13px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  box-shadow:none!important;
}

html body .card-buy-control{
  min-height:42px!important;
  height:42px!important;
  border-radius:12px!important;
  overflow:hidden!important;
}

html body .card-buy-control.is-active{
  display:grid!important;
  grid-template-columns:40px minmax(28px,1fr) 40px!important;
}

html body .card-qty-btn{
  height:42px!important;
  min-width:0!important;
}

/* CARRITO, MODALES Y FORMULARIOS */
html body #cartFloatBtn{
  right:max(12px,env(safe-area-inset-right))!important;
  bottom:calc(14px + env(safe-area-inset-bottom))!important;
  width:56px!important;
  min-width:56px!important;
  height:56px!important;
  padding:0!important;
  border-radius:18px!important;
  box-shadow:0 14px 28px rgba(255,127,18,.28)!important;
}

html body #cartFloatBtn > span:not(.badge){
  display:none!important;
}

html body .drawer,
html body .modal,
html body .modal-card,
html body .admin-card,
html body .checkout-panel,
html body .choice,
html body .addon-list,
html body .addon-item{
  min-width:0!important;
  max-width:100%!important;
}

html body .drawer-body,
html body .modal-body,
html body .admin-body{
  overscroll-behavior:contain!important;
}

html body .btn,
html body .icon-btn,
html body .pill-btn,
html body .option,
html body .remove-btn{
  min-height:var(--tv-touch)!important;
}

html body .input,
html body .textarea,
html body select{
  width:100%!important;
  max-width:100%!important;
  font-size:16px!important;
}

/* Pantallas extremadamente angostas */
@media (max-width:340px){
  html body .app{
    padding-left:max(7px,env(safe-area-inset-left))!important;
    padding-right:max(7px,env(safe-area-inset-right))!important;
  }

  html body .topbar-inner{
    padding:9px!important;
    border-radius:18px!important;
  }

  html body .brand{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:7px!important;
  }

  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    flex-basis:48px!important;
  }

  html body .brand-title{
    font-size:21px!important;
  }

  html body .location-chip{
    display:none!important;
  }

  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
  }

  html body .product,
  html body .compact-product{
    grid-template-columns:94px minmax(0,1fr)!important;
  }

  html body .product h3{
    font-size:16px!important;
  }

  html body .product-actions{
    grid-template-columns:52px minmax(84px,1fr)!important;
    gap:5px!important;
  }
}

/* Celulares grandes */
@media (min-width:480px) and (max-width:760px){
  html body .product,
  html body .compact-product{
    grid-template-columns:142px minmax(0,1fr)!important;
    min-height:170px!important;
  }

  html body .product-media{
    min-height:170px!important;
  }

  html body .product h3{
    font-size:19px!important;
  }

  html body .price{
    font-size:18px!important;
  }

  html body .desc{
    display:-webkit-box!important;
    min-height:0!important;
    font-size:12px!important;
    line-height:1.3!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
}

/* Tablets */
@media (min-width:761px){
  html body .topbar-inner{
    grid-template-columns:minmax(0,1fr) minmax(280px,.9fr) auto!important;
    grid-template-areas:"brand search actions"!important;
    gap:14px!important;
    padding:13px 15px!important;
  }

  html body .brand{
    grid-template-columns:64px minmax(0,1fr)!important;
  }

  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    flex-basis:64px!important;
  }

  html body .brand-title{
    font-size:30px!important;
  }

  html body .brand-tag{
    display:block!important;
    margin-top:3px!important;
    color:var(--muted)!important;
    font-size:12px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body #categoryMenuBtn{
    width:50px!important;
    min-width:50px!important;
    max-width:50px!important;
    height:50px!important;
  }

  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:50px!important;
  }

  html body .home-quick-nav{
    grid-auto-flow:row!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    grid-auto-columns:auto!important;
    overflow:visible!important;
    gap:10px!important;
  }

  html body .home-quick-nav button{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }

  html body .products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  html body .product,
  html body .compact-product{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
  }

  html body .product-media{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/10!important;
  }

  html body .product-body{
    padding:12px!important;
  }

  html body .desc{
    display:-webkit-box!important;
    min-height:2.6em!important;
    font-size:12px!important;
    line-height:1.3!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }

  html body .product-actions{
    grid-template-columns:minmax(70px,.65fr) minmax(110px,1fr)!important;
  }
}

/* Escritorio */
@media (min-width:1050px){
  html body #installBtn{
    display:none!important;
  }

  html body .products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  html body .hero-banner-card{
    max-width:860px!important;
  }
}

/* Movimiento reducido */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}

/* Source block: tv-v254-header-banner-perfect */
/* V254 · corrección quirúrgica de cabecera, banner e inicio móvil */

:root{
  --tv254-gap:10px;
  --tv254-header-bg:color-mix(in srgb,var(--surface) 96%,transparent);
}

html,body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}

@supports (overflow:clip){
  html,body{overflow-x:clip!important}
}

html body .app{
  width:100%!important;
  max-width:1180px!important;
  margin-inline:auto!important;
  padding-left:max(8px,env(safe-area-inset-left))!important;
  padding-right:max(8px,env(safe-area-inset-right))!important;
}

/* ---------- CABECERA ---------- */
html body .topbar{
  width:100%!important;
  margin:0 0 8px!important;
  padding:0!important;
}

html body .topbar-inner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "brand actions"
    "search search"!important;
  align-items:center!important;
  column-gap:8px!important;
  row-gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:10px!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:var(--tv254-header-bg)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.12)!important;
}

html body .brand{
  grid-area:brand!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}

/* El logo se pinta como fondo para que ninguna regla vieja pueda achicarlo. */
html body .brand-logo,
html body #brandTap .brand-logo{
  position:relative!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  flex:0 0 46px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:13px!important;
  overflow:visible!important;
  background:
    url("assets/icons/app-logo-v256.png")
    center / contain
    no-repeat!important;
  box-shadow:none!important;
}

html body .brand-logo img,
html body #brandTap .brand-logo img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  opacity:0!important;
  pointer-events:none!important;
}

html body .brand-copy{
  display:grid!important;
  align-content:center!important;
  gap:4px!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}

html body .brand-title{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  font-size:clamp(21px,6.8vw,25px)!important;
  line-height:.95!important;
  letter-spacing:-.04em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .brand-tag{
  display:none!important;
}

html body .brand-status-row{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
}

html body .store-status{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:10px!important;
  font-weight:1000!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}

html body .store-status::before{
  width:6px!important;
  height:6px!important;
  flex:0 0 6px!important;
  box-shadow:none!important;
}

html body .location-chip{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--muted)!important;
  font-size:10px!important;
  font-weight:850!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

html body .location-chip::before{
  display:none!important;
  content:none!important;
}

html body .top-actions{
  grid-area:actions!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  min-width:0!important;
}

html body #installBtn{
  display:none!important;
}

html body #categoryMenuBtn,
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  padding:0!important;
  margin:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}

html body #categoryMenuBtn .category-menu-label,
html body #themeBtn .theme-text{
  display:none!important;
}

html body #categoryMenuBtn .hamburger-lines{
  width:18px!important;
  height:15px!important;
}

html body #themeBtn .theme-switch-track{
  transform:scale(.88)!important;
  transform-origin:center!important;
}

html body .search{
  grid-area:search!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:44px!important;
  height:44px!important;
  margin:0!important;
  padding:0 13px!important;
  border-radius:15px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}

html body .search svg{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px!important;
}

html body .search input{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* ---------- BANNER PRINCIPAL ---------- */
html body .hero.tv-home-banner{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:7px 0 10px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
  box-shadow:none!important;
}

html body .hero.tv-home-banner::before,
html body .hero.tv-home-banner::after{
  display:none!important;
  content:none!important;
}

html body .hero-banner-card{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  aspect-ratio:1354 / 601!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:17px!important;
  border:1px solid rgba(212,166,86,.48)!important;
  background:#071537!important;
  box-shadow:0 10px 24px rgba(4,10,28,.16)!important;
}

html body .hero-banner-art{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background-image:url("assets/banners/hero-catering-v256-480.webp?v=256")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%!important;
}

/* ---------- ACCESOS RÁPIDOS SIN TARJETAS CORTADAS ---------- */
html body .quick-nav-wrap{
  width:100%!important;
  margin:10px 0!important;
  gap:7px!important;
}

html body .quick-nav-head,
html body .quick-nav-wrap::after{
  display:none!important;
  content:none!important;
}

html body .home-quick-nav{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-columns:auto!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

html body .home-quick-nav button{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:58px!important;
  padding:8px!important;
  margin:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  box-shadow:none!important;
}

html body .home-quick-nav button:last-child:nth-child(odd){
  grid-column:1 / -1!important;
}

html body .home-quick-nav button > span{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:11px!important;
  font-size:15px!important;
}

html body .home-quick-nav button > b{
  min-width:0!important;
  font-size:12px!important;
  line-height:1.08!important;
}

html body .home-quick-nav button > small{
  display:none!important;
}

/* ---------- PUBLICIDAD Y MENÚ ---------- */
html body .promo-banners,
html body #promoBanners{
  width:100%!important;
  max-width:100%!important;
  margin-top:8px!important;
}

html body .promo-premium-shell{
  border-radius:16px!important;
  overflow:hidden!important;
}

html body .promo-premium-slide img{
  width:100%!important;
  height:auto!important;
  object-fit:cover!important;
}

html body .section-head{
  margin:16px 0 9px!important;
}

html body .section-head h2{
  font-size:clamp(28px,8.5vw,35px)!important;
}

/* El carrito no tapa títulos ni flechas. */
html body #cartFloatBtn{
  width:52px!important;
  min-width:52px!important;
  height:52px!important;
  right:max(10px,env(safe-area-inset-right))!important;
  bottom:calc(12px + env(safe-area-inset-bottom))!important;
  border-radius:17px!important;
}

/* ---------- BREAKPOINTS ---------- */
@media (max-width:340px){
  html body .topbar-inner{
    padding:8px!important;
    column-gap:5px!important;
  }

  html body .brand{
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:6px!important;
  }

  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    max-width:40px!important;
  }

  html body .brand-title{
    font-size:20px!important;
  }

  html body .location-chip{
    display:none!important;
  }

  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    width:39px!important;
    min-width:39px!important;
    max-width:39px!important;
    height:39px!important;
    min-height:39px!important;
    max-height:39px!important;
  }

  html body .search{
    height:42px!important;
    min-height:42px!important;
  }
}

@media (min-width:341px) and (max-width:430px){
  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    max-width:48px!important;
  }

  html body .brand{
    grid-template-columns:48px minmax(0,1fr)!important;
  }
}

@media (min-width:431px) and (max-width:760px){
  html body .topbar-inner{
    padding:12px!important;
  }

  html body .brand{
    grid-template-columns:54px minmax(0,1fr)!important;
  }

  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    max-width:54px!important;
  }

  html body .brand-title{
    font-size:27px!important;
  }

  html body .search{
    min-height:48px!important;
    height:48px!important;
  }

  html body .hero-banner-art{
    background-image:url("assets/banners/hero-catering-v256-768.webp?v=256")!important;
  }
}

@media (min-width:761px){
  html body .topbar-inner{
    grid-template-columns:minmax(0,1fr) minmax(280px,.9fr) auto!important;
    grid-template-areas:"brand search actions"!important;
    padding:13px 15px!important;
    gap:14px!important;
  }

  html body .brand{
    grid-template-columns:62px minmax(0,1fr)!important;
  }

  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    max-width:62px!important;
  }

  html body .brand-title{
    font-size:31px!important;
  }

  html body .brand-tag{
    display:block!important;
    margin:0!important;
    color:var(--muted)!important;
    font-size:12px!important;
    line-height:1.1!important;
  }

  html body .search{
    min-height:48px!important;
    height:48px!important;
  }

  html body .hero-banner-card{
    width:min(100%,900px)!important;
    margin-inline:auto!important;
  }

  html body .hero-banner-art{
    background-image:url("assets/banners/hero-catering-v256-1024.webp?v=256")!important;
  }

  html body .home-quick-nav{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }

  html body .home-quick-nav button:last-child:nth-child(odd){
    grid-column:auto!important;
  }
}

@media (min-width:1100px){
  html body .hero-banner-art{
    background-image:url("assets/banners/hero-catering-v256-1600.webp?v=256")!important;
  }
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}

/* Source block: tv-v143-real-final-style */
#cartAddonsSection{display:none!important}
.product[data-cat="Empanadas"] .price::before{content:"Desde ";font-size:12px;color:var(--muted);font-weight:900;margin-right:3px}
.product[data-cat="Pizzanesas"] .price::before{content:"Desde ";font-size:12px;color:var(--muted);font-weight:900;margin-right:3px}
.product[data-cat="Bandejas"]{border:1px solid rgba(239,155,52,.22);box-shadow:0 16px 34px rgba(122,74,25,.11)}
.product[data-cat="Bandejas"] .product-media{position:relative}
.product[data-cat="Bandejas"] .product-media:after{content:"Bandeja completa";position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:#251709;font-weight:900;font-size:12px}
.tv-v143-builder{display:grid;gap:16px}
.tv-v143-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tv-v143-mode-card{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 95%, transparent);border-radius:20px;padding:16px;text-align:left;display:grid;gap:7px;cursor:pointer;transition:.18s;min-height:112px}
.tv-v143-mode-card strong{font-size:20px;line-height:1.1;letter-spacing:-.03em}
.tv-v143-mode-card small{font-size:13px;color:var(--muted);font-weight:800;line-height:1.35}
.tv-v143-mode-card .tv-v143-price{font-size:20px;font-weight:900;color:var(--accent)}
.tv-v143-mode-card.active{border-color:rgba(239,155,52,.42);box-shadow:0 12px 28px rgba(139,81,23,.12);background:linear-gradient(180deg,rgba(239,155,52,.14),color-mix(in srgb,var(--card) 96%, transparent))}
.tv-v143-flavor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tv-v143-flavor-card{border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--card) 97%, transparent);padding:14px;display:grid;gap:10px}
.tv-v143-flavor-name{font-weight:900;font-size:18px;line-height:1.2}
.tv-v143-flavor-price{font-size:13px;color:var(--muted);font-weight:850}
.tv-v143-counter{display:flex;align-items:center;justify-content:flex-end;gap:10px;border:1px solid var(--line);border-radius:16px;padding:8px 10px;min-width:124px;margin-left:auto}
.tv-v143-counter button{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--text);font-size:22px;font-weight:900;cursor:pointer;line-height:1}
.tv-v143-counter span{min-width:20px;text-align:center;font-weight:900;font-size:18px}
.tv-v143-pill-row{display:flex;flex-wrap:wrap;gap:10px}
.tv-v143-pill{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 94%, transparent);font-weight:900}
.tv-v143-pill.ok{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.20)}
.tv-v143-pill.warn{background:rgba(249,115,22,.11);border-color:rgba(249,115,22,.24)}
.tv-v143-note{padding:14px 16px;border-radius:18px;border:1px dashed var(--line);background:color-mix(in srgb,var(--card) 93%, transparent);color:var(--muted);font-weight:800;line-height:1.4}
.tv-v143-pizz-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tv-v143-pizz-card{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 96%, transparent);border-radius:22px;padding:18px;text-align:left;cursor:pointer;display:grid;gap:8px;min-height:128px}
.tv-v143-pizz-card strong{font-size:24px;letter-spacing:-.04em}
.tv-v143-pizz-card span{font-size:22px;font-weight:900;color:var(--accent)}
.tv-v143-pizz-card small{color:var(--muted);font-weight:800;line-height:1.35}
.tv-v143-pizz-card.active{border-color:rgba(239,155,52,.44);background:linear-gradient(180deg,rgba(239,155,52,.14),color-mix(in srgb,var(--card) 95%, transparent));box-shadow:0 14px 28px rgba(125,76,24,.12)}
.tv-v143-follow{margin:8px 0 4px;padding:16px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--card) 98%, transparent),color-mix(in srgb,var(--card) 92%, transparent));display:grid;gap:14px}
.tv-v143-follow-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tv-v143-follow-title{font-size:22px;font-weight:900;letter-spacing:-.04em}
.tv-v143-follow-help{color:var(--muted);font-weight:800;line-height:1.35}
.tv-v143-follow-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tv-v143-follow-choice{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 97%, transparent);border-radius:16px;padding:14px;cursor:pointer;display:grid;gap:6px;text-align:left;font-weight:900;color:var(--text)}
.tv-v143-follow-choice small{font-size:12px;color:var(--muted);font-weight:800;line-height:1.25}
.tv-v143-follow-choice.active{border-color:rgba(239,155,52,.46);background:rgba(239,155,52,.12)}
.tv-v143-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tv-v143-addon-card{border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--card) 96%, transparent);overflow:hidden;display:grid}
.tv-v143-addon-media{aspect-ratio:1.35/1;overflow:hidden;background:#fff}
.tv-v143-addon-media img{width:100%;height:100%;object-fit:contain;display:block;padding:10px}
.tv-v143-addon-body{padding:12px;display:grid;gap:8px}
.tv-v143-addon-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.tv-v143-addon-name{font-weight:900;line-height:1.15}
.tv-v143-addon-price{font-weight:900;color:var(--accent);white-space:nowrap}
.tv-v143-addon-desc{font-size:13px;color:var(--muted);line-height:1.35;font-weight:800}
.tv-v143-empty{padding:14px;border:1px dashed var(--line);border-radius:18px;color:var(--muted);font-weight:800}
@media (max-width:880px){
  .tv-v143-mode-grid,.tv-v143-follow-choices{grid-template-columns:1fr}
  .tv-v143-flavor-grid,.tv-v143-catalog,.tv-v143-pizz-choice{grid-template-columns:1fr}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v145-admin-pro-style */
#themeBtn{gap:9px;min-width:104px;justify-content:center}
#themeBtn .theme-icon{font-size:20px;line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.12))}
html[data-theme="dark"] #themeBtn{background:linear-gradient(180deg,rgba(52,64,105,.94),rgba(23,31,58,.94));border-color:rgba(255,255,255,.10)}
html[data-theme="light"] #themeBtn{background:linear-gradient(180deg,#fff7df,#ffe8b7);border-color:rgba(239,155,52,.25)}
.btn.success{background:linear-gradient(180deg,#2fdb6d,#18a34a);color:white;border:0}
.admin-pro-top{display:grid;grid-template-columns:190px 1fr;gap:16px;align-items:stretch}
.admin-preview{min-height:170px}
.admin-preview img{object-fit:contain;background:#fff}
.admin-pro-summary{border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--card) 96%, transparent);padding:16px;display:grid;align-content:start;gap:10px}
.admin-pro-summary h3{margin:0;font-size:28px;line-height:1;letter-spacing:-.045em}
.admin-pro-summary p{margin:0;color:var(--muted);font-weight:850}
.admin-chip{display:inline-flex;width:max-content;padding:8px 11px;border-radius:999px;background:rgba(239,155,52,.14);border:1px solid rgba(239,155,52,.24);font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.07em}
.admin-pro-mini-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.admin-pro-panel{border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--card) 96%, transparent);padding:16px;margin-top:14px;display:grid;gap:12px}
.admin-pro-panel>b{font-size:18px;letter-spacing:-.03em}
.admin-help{color:var(--muted);font-weight:800;font-size:13px;line-height:1.38}
.admin-pro-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(0,0,0,0),var(--surface) 18%);padding-top:16px;margin-top:14px}
.admin-row small{display:block;line-height:1.25}
@media (max-width:760px){
  .admin-pro-top{grid-template-columns:1fr}
  .admin-preview{min-height:220px}
  .admin-pro-actions{display:grid}
  .admin-pro-actions .btn{width:100%}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v146-admin-oculto-firebase-style */
#openAdminQuick{display:none !important;visibility:hidden !important}
.cloud-sync-panel{margin:0 0 14px}
.cloud-sync-box{border:1px solid var(--line);border-radius:22px;background:var(--surface2);padding:14px;display:grid;gap:12px}
.cloud-sync-box.ok{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.06)}
.cloud-sync-box.warn{border-color:rgba(245,158,11,.30);background:rgba(245,158,11,.07)}
.cloud-sync-box.off{opacity:.92}
.cloud-sync-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.cloud-sync-top b{display:block;font-size:18px;letter-spacing:-.02em}
.cloud-sync-top span{display:block;color:var(--muted);font-weight:850;margin-top:3px;line-height:1.35}
.cloud-sync-top small{display:block;color:var(--muted);font-weight:800;margin-top:6px}
.cloud-badge{padding:8px 11px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-weight:1000;white-space:nowrap}
.cloud-login{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}
.cloud-user{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.cloud-actions{display:flex;gap:10px;flex-wrap:wrap}
.cloud-help{font-size:13px;color:var(--muted);font-weight:800;line-height:1.38}
.cloud-help code{background:rgba(0,0,0,.08);padding:2px 6px;border-radius:7px}
@media (max-width:760px){
  .cloud-login{grid-template-columns:1fr}
  .cloud-sync-top{display:grid}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v160-agregados-tema-mobile-style */
:root{
  color-scheme:light;
  --bg:#f7e7d2;
  --bg2:#fff8ec;
  --surface:#fffdf8;
  --surface2:#fff4e5;
  --card:#ffffff;
  --text:#171421;
  --muted:#6d6372;
  --line:rgba(81,50,22,.13);
  --accent:#ff9f1c;
  --accent2:#ef7d10;
  --green:#20b85a;
  --shadow:0 22px 52px rgba(88,51,16,.14);
  --shadow2:0 12px 28px rgba(88,51,16,.09);
}
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0b1020;
  --bg2:#131a2d;
  --surface:#121a2d;
  --surface2:#17213a;
  --card:#18233c;
  --text:#fff8ec;
  --muted:#c6bcd2;
  --line:rgba(255,244,226,.14);
  --accent:#ffb64a;
  --accent2:#ff8a1f;
  --green:#34d477;
  --shadow:0 26px 70px rgba(0,0,0,.42);
  --shadow2:0 14px 34px rgba(0,0,0,.30);
}
body{transition:background .06s linear,color .06s linear}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,182,74,.18), transparent 31%),
    radial-gradient(circle at 88% 6%, rgba(52,212,119,.10), transparent 28%),
    linear-gradient(180deg,var(--bg2),var(--bg));
}
.topbar-inner,.hero,.category,.drawer,.modal-card,.product,.checkout-panel,.follow-buy,.info,.notice{
  transition:background .06s linear,border-color .06s linear,box-shadow .06s linear,color .06s linear;
}
#themeBtn.tv-theme-switch{
  position:relative;
  min-width:132px;
  justify-content:flex-start;
  gap:10px;
  padding:7px 12px 7px 8px;
  border-radius:999px;
  overflow:hidden;
  isolation:isolate;
}
#themeBtn.tv-theme-switch:before{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,0));
  opacity:.75;
  z-index:-1;
}
.theme-orb{
  width:42px;height:42px;border-radius:999px;display:grid;place-items:center;flex:0 0 auto;font-size:21px;
  background:rgba(255,255,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.70),0 8px 18px rgba(0,0,0,.10);
}
html[data-theme="dark"] .theme-orb{
  background:rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 22px rgba(0,0,0,.32);
}
.theme-text{display:grid;line-height:1.03;text-align:left}
.theme-text small{color:var(--muted);font-size:10px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}
.theme-text b{color:var(--text);font-size:15px;letter-spacing:-.02em}
html[data-theme="light"] #themeBtn.tv-theme-switch{
  background:linear-gradient(180deg,#fff8df,#ffe0a3)!important;
  border-color:rgba(239,155,52,.28)!important;
}
html[data-theme="dark"] #themeBtn.tv-theme-switch{
  background:linear-gradient(180deg,#263454,#151d34)!important;
  border-color:rgba(255,255,255,.14)!important;
}
.follow-buy{
  position:relative;
  overflow:hidden;
  border-radius:28px!important;
  padding:16px!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(255,159,28,.18),transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--surface) 94%, transparent),color-mix(in srgb,var(--surface2) 86%, var(--accent) 14%))!important;
}
html[data-theme="dark"] .follow-buy{
  background:
    radial-gradient(circle at 10% 0%,rgba(255,182,74,.20),transparent 35%),
    linear-gradient(135deg,color-mix(in srgb,var(--surface) 92%, transparent),color-mix(in srgb,var(--surface2) 78%, #000 22%))!important;
}
.addon-kicker{
  display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:7px 10px;border-radius:999px;
  background:rgba(255,159,28,.14);border:1px solid rgba(255,159,28,.22);color:var(--text);
  font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;
}
.follow-buy-head h4{font-size:clamp(24px,5vw,32px)!important;letter-spacing:-.055em!important;line-height:.96!important}
.follow-buy-head p{max-width:42ch;font-size:14px}
.addon-reveal-btn{min-height:48px;border-radius:999px!important;white-space:nowrap;box-shadow:0 12px 24px rgba(255,159,28,.22)}
.addon-tabs{
  display:flex!important;gap:9px!important;flex-wrap:nowrap!important;overflow-x:auto!important;padding:4px 2px 8px!important;
  margin:0!important;background:transparent!important;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;
}
.addon-tabs.hidden,.addon-list.hidden{display:none!important}
.addon-tab{
  flex:0 0 auto;min-height:44px;height:auto!important;border-radius:999px!important;padding:10px 14px!important;
  background:color-mix(in srgb,var(--card) 92%, transparent)!important;color:var(--text)!important;border:1px solid var(--line)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.05);scroll-snap-align:start;
}
.addon-tab.active{
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;color:#211100!important;border-color:transparent!important;
  box-shadow:0 12px 24px rgba(255,159,28,.24);
}
.addon-list{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;max-height:380px!important;
  overflow:auto!important;padding:2px 2px 6px!important;
}
.addon-list.hidden{display:none!important}
.addon-item{
  position:relative;display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
  gap:10px 12px!important;align-items:center!important;border-radius:22px!important;padding:10px!important;
  background:color-mix(in srgb,var(--card) 94%, transparent)!important;border:1px solid var(--line)!important;box-shadow:0 12px 24px rgba(0,0,0,.06);
}
html[data-theme="dark"] .addon-item{box-shadow:0 14px 30px rgba(0,0,0,.28)}
.addon-thumb-wrap{
  width:72px;height:72px;position:relative;border-radius:18px;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,239,214,.78));
  border:1px solid rgba(255,255,255,.55);overflow:hidden;display:grid;place-items:center;
}
html[data-theme="dark"] .addon-thumb-wrap{background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,182,74,.10));border-color:rgba(255,255,255,.10)}
.addon-thumb-wrap img{width:100%!important;height:100%!important;object-fit:contain!important;padding:7px!important;background:transparent!important}
.addon-float-icon{
  position:absolute;right:-2px;bottom:-2px;min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;
  background:var(--surface);border:1px solid var(--line);box-shadow:0 6px 14px rgba(0,0,0,.14);font-size:15px;
}
.addon-copy{min-width:0;display:grid;gap:3px}
.addon-copy b{
  color:var(--text);font-size:16px;line-height:1.08;letter-spacing:-.025em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
}
.addon-copy small{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.addon-copy strong{color:var(--accent);font-size:18px;font-weight:1000}
.addon-add-btn{grid-column:1/-1;min-height:44px!important;border-radius:16px!important;display:flex!important;justify-content:center!important;gap:7px!important;font-size:15px!important}
.addon-empty{grid-column:1/-1;border-radius:22px!important}
html[data-theme="dark"] .product-media,
html[data-theme="dark"] .search,
html[data-theme="dark"] .input,
html[data-theme="dark"] .textarea,
html[data-theme="dark"] .addon-tab,
html[data-theme="dark"] .admin-special,
html[data-theme="dark"] .admin-editor .preview-box{
  background:var(--card)!important;color:var(--text)!important;
}
html[data-theme="dark"] .product[data-cat="Bebidas"] .product-media img,
html[data-theme="dark"] .addon-item img,
html[data-theme="dark"] .admin-preview img,
html[data-theme="dark"] .admin-editor .preview-box img{background:transparent!important}
html[data-theme="dark"] .product-body,
html[data-theme="dark"] .cart-item,
html[data-theme="dark"] .emp-row,
html[data-theme="dark"] .option{background:color-mix(in srgb,var(--card) 96%, transparent)!important}
html[data-theme="dark"] .option.selected{background:#fff8ec!important;color:#121827!important;border-color:#fff8ec!important}
html[data-theme="dark"] .badge{border-color:var(--surface)!important}
@media(max-width:840px){
  .topbar{padding-top:max(8px,env(safe-area-inset-top))}
  .topbar-inner{border-radius:26px!important;padding:10px!important;gap:10px!important}
  .top-actions{
    display:grid!important;grid-template-columns:minmax(112px,.9fr) minmax(118px,1fr) 58px!important;gap:8px!important;align-items:center!important;
  }
  .top-actions .pill-btn{min-height:52px!important;border-radius:999px!important;padding:0 12px!important;box-shadow:0 8px 18px rgba(0,0,0,.06)!important}
  #themeBtn.tv-theme-switch{min-width:0!important;width:100%!important;padding:6px 10px 6px 6px!important}
  .theme-orb{width:38px;height:38px;font-size:19px}
  .theme-text b{font-size:14px}
  #installBtn{justify-content:center!important;font-size:14px!important}
  #cartTopBtn{min-width:58px!important;width:58px!important;padding:0!important}
  .drawer-body{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%, transparent),color-mix(in srgb,var(--surface2) 84%, transparent))}
  .follow-buy-head{display:grid!important;align-items:start!important}
  .addon-reveal-btn{width:100%}
  .addon-list{grid-template-columns:1fr!important;max-height:42dvh!important}
  .addon-item{grid-template-columns:68px minmax(0,1fr) auto!important;grid-template-rows:auto!important;padding:9px!important}
  .addon-thumb-wrap{width:68px;height:68px}
  .addon-add-btn{grid-column:auto!important;min-width:82px!important;min-height:46px!important;padding:0 12px!important;align-self:stretch!important}
  .addon-add-btn span:first-child{display:none}
}
@media(max-width:420px){
  .top-actions{grid-template-columns:1fr 1fr 54px!important}
  .theme-text small{display:none}
  .theme-text b{font-size:13px}
  .theme-orb{width:34px;height:34px;font-size:17px}
  .top-actions .pill-btn{min-height:48px!important;font-size:13px!important}
  .addon-item{grid-template-columns:62px minmax(0,1fr) 64px!important;gap:8px!important}
  .addon-thumb-wrap{width:62px;height:62px;border-radius:16px}
  .addon-copy b{font-size:15px}
  .addon-copy strong{font-size:17px}
  .addon-add-btn{min-width:64px!important;border-radius:15px!important}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v161-agregados-organizados-style */
.follow-buy{
  gap:14px!important;
  border:1px solid color-mix(in srgb,var(--accent) 24%, var(--line))!important;
  box-shadow:0 18px 42px rgba(88,51,16,.10)!important;
}
.follow-buy:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,255,255,.50),transparent 28%),
    radial-gradient(circle at 0% 100%,rgba(255,159,28,.12),transparent 34%);
}
html[data-theme="dark"] .follow-buy{
  box-shadow:0 20px 48px rgba(0,0,0,.30)!important;
}
.follow-buy-head{
  position:relative;
  z-index:1;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center!important;
  gap:14px!important;
}
.follow-buy-head h4{
  margin-bottom:2px!important;
}
.follow-buy-head p{
  max-width:48ch;
}
.addon-reveal-btn{
  min-width:164px;
}
.addon-tabs{
  position:sticky!important;
  top:-16px;
  z-index:3;
  border:1px solid var(--line);
  border-radius:999px;
  background:color-mix(in srgb,var(--surface) 92%, transparent)!important;
  backdrop-filter:blur(10px);
  padding:6px!important;
  box-shadow:0 12px 24px rgba(0,0,0,.06);
}
.addon-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:max-content;
  min-height:42px!important;
  padding:10px 16px!important;
  font-size:14px!important;
}
.addon-tab:focus-visible,
.addon-add-btn:focus-visible{
  outline:3px solid color-mix(in srgb,var(--accent) 54%, transparent);
  outline-offset:2px;
}
.addon-list{
  position:relative;
  z-index:1;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  max-height:min(430px,48dvh)!important;
  padding:2px 4px 8px!important;
  scrollbar-width:thin;
}
.addon-section-title{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:20px;
  background:color-mix(in srgb,var(--card) 88%, transparent);
}
.addon-section-copy{
  display:flex;
  align-items:center;
  min-width:0;
  gap:10px;
}
.addon-section-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:15px;
  background:color-mix(in srgb,var(--accent) 18%, var(--card));
  border:1px solid color-mix(in srgb,var(--accent) 24%, var(--line));
  font-size:22px;
}
.addon-section-title b{
  display:block;
  color:var(--text);
  font-size:18px;
  line-height:1.05;
  letter-spacing:-.03em;
}
.addon-section-title small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
  line-height:1.25;
}
.addon-section-pill{
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(32,184,90,.12);
  border:1px solid rgba(32,184,90,.22);
  color:var(--text);
  font-size:12px;
  font-weight:1000;
}
.addon-item{
  grid-template-columns:82px minmax(0,1fr)!important;
  grid-template-rows:1fr auto!important;
  align-items:stretch!important;
  min-height:154px;
  padding:12px!important;
  border-radius:24px!important;
  overflow:hidden;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.addon-item:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--accent) 42%, var(--line))!important;
  box-shadow:0 18px 34px rgba(88,51,16,.12)!important;
}
html[data-theme="dark"] .addon-item:hover{
  box-shadow:0 20px 36px rgba(0,0,0,.34)!important;
}
.addon-thumb-wrap{
  width:82px!important;
  height:82px!important;
  align-self:start;
}
.addon-copy{
  align-self:start;
  gap:4px!important;
}
.addon-copy small{
  color:color-mix(in srgb,var(--muted) 86%, var(--accent));
  font-size:10px!important;
}
.addon-copy b{
  font-size:17px!important;
  line-height:1.08!important;
}
.addon-copy p{
  margin:0;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  line-height:1.28;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.addon-copy strong{
  margin-top:2px;
  display:inline-flex;
  width:max-content;
  max-width:100%;
  padding:4px 9px;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 12%, transparent);
  color:var(--accent2)!important;
  font-size:17px!important;
  line-height:1;
}
html[data-theme="dark"] .addon-copy strong{
  color:var(--accent)!important;
}
.addon-add-btn{
  grid-column:1/-1!important;
  min-height:42px!important;
  border-radius:17px!important;
  box-shadow:0 10px 20px rgba(255,159,28,.18)!important;
}
@media(max-width:840px){
  .follow-buy{
    padding:14px!important;
    border-radius:26px!important;
  }
  .follow-buy-head{
    grid-template-columns:1fr!important;
  }
  .addon-reveal-btn{
    width:100%;
    min-width:0;
  }
  .addon-tabs{
    top:-14px;
    border-radius:22px;
  }
  .addon-list{
    grid-template-columns:1fr!important;
    max-height:46dvh!important;
    gap:10px!important;
  }
  .addon-section-title{
    border-radius:19px;
    padding:9px;
  }
  .addon-section-icon{
    width:38px;
    height:38px;
    border-radius:14px;
    font-size:20px;
  }
  .addon-section-title b{
    font-size:17px;
  }
  .addon-section-title small{
    font-size:11px;
  }
  .addon-item{
    grid-template-columns:68px minmax(0,1fr) 54px!important;
    grid-template-rows:auto!important;
    min-height:0;
    gap:10px!important;
    align-items:center!important;
    padding:10px!important;
    border-radius:21px!important;
  }
  .addon-thumb-wrap{
    width:68px!important;
    height:68px!important;
  }
  .addon-copy p{
    display:none;
  }
  .addon-copy b{
    font-size:15.5px!important;
    -webkit-line-clamp:2;
  }
  .addon-copy strong{
    font-size:16px!important;
    padding:3px 8px;
  }
  .addon-add-btn{
    grid-column:auto!important;
    align-self:stretch!important;
    min-width:54px!important;
    min-height:54px!important;
    padding:0!important;
    border-radius:17px!important;
  }
  .addon-add-btn span:first-child{
    display:none;
  }
}
@media(max-width:420px){
  .addon-tabs{
    padding:5px!important;
  }
  .addon-tab{
    min-height:39px!important;
    padding:9px 12px!important;
    font-size:13px!important;
  }
  .addon-section-pill{
    display:none;
  }
  .addon-item{
    grid-template-columns:62px minmax(0,1fr) 50px!important;
  }
  .addon-thumb-wrap{
    width:62px!important;
    height:62px!important;
  }
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v162-layout-compacto-style */
#menu{
  margin-top:14px!important;
}
#menuHead,
.follow-buy-head,
.addon-kicker,
.addon-reveal-btn,
.addon-section-title{
  display:none!important;
}
.follow-buy.compact-addons{
  margin-top:10px!important;
  padding:10px!important;
  gap:10px!important;
  border-radius:22px!important;
  background:color-mix(in srgb,var(--surface) 94%, transparent)!important;
  box-shadow:none!important;
}
.follow-buy.compact-addons::before{
  display:none!important;
}
.follow-buy.compact-addons .addon-tabs{
  position:static!important;
  top:auto!important;
  display:flex!important;
  gap:7px!important;
  padding:4px!important;
  margin:0!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--card) 88%, transparent)!important;
  border:1px solid var(--line)!important;
  box-shadow:none!important;
}
.follow-buy.compact-addons .addon-tab{
  min-height:38px!important;
  padding:8px 11px!important;
  border-radius:14px!important;
  font-size:13px!important;
  box-shadow:none!important;
}
.follow-buy.compact-addons .addon-list{
  max-height:min(390px,46dvh)!important;
  gap:8px!important;
  padding:0 2px 4px!important;
}
.follow-buy.compact-addons .addon-item{
  min-height:0!important;
  padding:9px!important;
  border-radius:18px!important;
  gap:8px!important;
}
.follow-buy.compact-addons .addon-copy p{
  display:none!important;
}
.follow-buy.compact-addons .addon-add-btn{
  box-shadow:none!important;
}
@media(max-width:840px){
  .follow-buy.compact-addons{
    padding:8px!important;
    border-radius:20px!important;
  }
  .follow-buy.compact-addons .addon-tabs{
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    scrollbar-width:thin;
  }
  .follow-buy.compact-addons .addon-item{
    grid-template-columns:58px minmax(0,1fr) 48px!important;
    padding:8px!important;
  }
  .follow-buy.compact-addons .addon-thumb-wrap{
    width:58px!important;
    height:58px!important;
  }
  .follow-buy.compact-addons .addon-copy small{
    display:none!important;
  }
  .follow-buy.compact-addons .addon-copy b{
    font-size:15px!important;
  }
  .follow-buy.compact-addons .addon-copy strong{
    font-size:15px!important;
  }
  .follow-buy.compact-addons .addon-add-btn{
    min-width:48px!important;
    min-height:48px!important;
  }
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v163-agregados-estables-style */
#addonsPanel.compact-addons{
  display:grid!important;
  gap:8px!important;
  margin-top:8px!important;
  padding:9px!important;
  border-radius:18px!important;
  border:1px solid var(--line)!important;
  background:color-mix(in srgb,var(--card) 96%, transparent)!important;
  box-shadow:none!important;
  overflow:visible!important;
}
#addonsPanel.compact-addons::before,
#addonsPanel .addon-kicker,
#addonsPanel .follow-buy-head,
#addonsPanel .addon-section-title,
#addonsPanel .addon-float-icon{
  display:none!important;
}
#addonsPanel[hidden]{
  display:none!important;
}
#addonsPanel.compact-addons #addonTabs{
  position:static!important;
  top:auto!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(0,1fr))!important;
  gap:6px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  backdrop-filter:none!important;
}
#addonsPanel.compact-addons #addonTabs .addon-tab{
  width:100%!important;
  min-width:0!important;
  min-height:38px!important;
  height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 8px!important;
  border-radius:12px!important;
  border:1px solid var(--line)!important;
  background:color-mix(in srgb,var(--surface) 94%, transparent)!important;
  color:var(--text)!important;
  box-shadow:none!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#addonsPanel.compact-addons #addonTabs .addon-tab.active{
  border-color:transparent!important;
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;
  color:#211100!important;
}
#addonsPanel.compact-addons #addonList{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
  max-height:min(330px,42dvh)!important;
  overflow:auto!important;
  padding:0 2px 2px!important;
  scrollbar-width:thin!important;
}
#addonsPanel.compact-addons .addon-item{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) 78px!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:8px!important;
  min-height:64px!important;
  padding:7px!important;
  border-radius:15px!important;
  border:1px solid var(--line)!important;
  background:color-mix(in srgb,var(--surface) 92%, var(--card) 8%)!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transform:none!important;
}
#addonsPanel.compact-addons .addon-item:hover{
  transform:none!important;
  box-shadow:none!important;
  border-color:color-mix(in srgb,var(--accent) 36%, var(--line))!important;
}
#addonsPanel.compact-addons .addon-thumb-wrap{
  width:52px!important;
  height:52px!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  align-self:center!important;
  background:#fff!important;
  border:1px solid color-mix(in srgb,var(--line) 70%, transparent)!important;
}
#addonsPanel.compact-addons .addon-thumb-wrap img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  padding:5px!important;
  border-radius:0!important;
  background:transparent!important;
}
#addonsPanel.compact-addons .addon-copy{
  min-width:0!important;
  display:grid!important;
  gap:2px!important;
  align-self:center!important;
}
#addonsPanel.compact-addons .addon-copy small,
#addonsPanel.compact-addons .addon-copy p{
  display:none!important;
}
#addonsPanel.compact-addons .addon-copy b{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  color:var(--text)!important;
  font-size:14.5px!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
}
#addonsPanel.compact-addons .addon-copy strong{
  width:max-content!important;
  max-width:100%!important;
  display:inline-flex!important;
  margin:0!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--accent2)!important;
  font-size:14px!important;
  line-height:1.05!important;
  font-weight:1000!important;
}
html[data-theme="dark"] #addonsPanel.compact-addons .addon-copy strong{
  color:var(--accent)!important;
}
#addonsPanel.compact-addons .addon-add-btn{
  grid-column:auto!important;
  align-self:stretch!important;
  width:78px!important;
  min-width:78px!important;
  min-height:46px!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  margin:0!important;
  padding:0 8px!important;
  border-radius:13px!important;
  box-shadow:none!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:1000!important;
  white-space:nowrap!important;
}
@media(max-width:560px){
  #addonsPanel.compact-addons{
    margin-top:6px!important;
    padding:7px!important;
    gap:7px!important;
    border-radius:16px!important;
  }
  #addonsPanel.compact-addons #addonTabs{
    grid-template-columns:repeat(auto-fit,minmax(92px,1fr))!important;
    gap:5px!important;
  }
  #addonsPanel.compact-addons #addonTabs .addon-tab{
    height:36px!important;
    min-height:36px!important;
    padding:0 6px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
  #addonsPanel.compact-addons #addonList{
    gap:5px!important;
    max-height:min(300px,38dvh)!important;
    padding:0!important;
  }
  #addonsPanel.compact-addons .addon-item{
    grid-template-columns:46px minmax(0,1fr) 42px!important;
    min-height:58px!important;
    gap:7px!important;
    padding:6px!important;
    border-radius:14px!important;
  }
  #addonsPanel.compact-addons .addon-thumb-wrap{
    width:46px!important;
    height:46px!important;
    border-radius:11px!important;
  }
  #addonsPanel.compact-addons .addon-copy b{
    font-size:13.5px!important;
    -webkit-line-clamp:2!important;
  }
  #addonsPanel.compact-addons .addon-copy strong{
    font-size:13px!important;
  }
  #addonsPanel.compact-addons .addon-add-btn{
    width:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:12px!important;
    font-size:18px!important;
  }
  #addonsPanel.compact-addons .addon-add-btn span:first-child{
    display:none!important;
  }
}
@media(max-width:360px){
  #addonsPanel.compact-addons #addonTabs{
    grid-template-columns:1fr 1fr!important;
  }
  #addonsPanel.compact-addons .addon-item{
    grid-template-columns:42px minmax(0,1fr) 40px!important;
  }
  #addonsPanel.compact-addons .addon-thumb-wrap{
    width:42px!important;
    height:42px!important;
  }
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v164-admin-simple-txhouse-style */
.admin-modal{
  background:
    radial-gradient(circle at 10% 8%, rgba(255,159,28,.22), transparent 30%),
    radial-gradient(circle at 90% 0%, rgba(99,102,241,.20), transparent 28%),
    rgba(7,10,20,.72)!important;
}
.admin-card{
  width:min(1240px,calc(100vw - 22px))!important;
  max-height:min(94dvh,980px)!important;
  border-radius:34px!important;
  border:1px solid color-mix(in srgb,var(--accent) 24%, var(--line))!important;
  box-shadow:0 34px 100px rgba(0,0,0,.34)!important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%, transparent),var(--surface))!important;
}
.admin-epic-head{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:16px!important;
  padding:20px 22px!important;
  border-bottom:1px solid color-mix(in srgb,var(--accent) 28%, var(--line))!important;
  background:
    radial-gradient(circle at 0% 0%, rgba(255,159,28,.28), transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--surface2) 86%, var(--accent) 14%),color-mix(in srgb,var(--surface) 92%, transparent))!important;
}
.admin-title-block{
  min-width:0;
  display:grid;
  gap:5px;
}
.admin-title-block .admin-kicker{
  width:max-content;
  padding:6px 10px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--accent),var(--accent2));
  color:#251100;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.admin-title-block>b{
  font-size:clamp(30px,4vw,46px)!important;
  line-height:.92;
  letter-spacing:-.06em;
}
.admin-title-block>div{
  color:var(--muted)!important;
  font-weight:900!important;
  line-height:1.35;
}
.txhouse-brand{
  width:106px;
  min-height:104px;
  display:grid;
  place-items:center;
  gap:5px;
  text-decoration:none;
  color:var(--text);
  border:1px solid color-mix(in srgb,var(--accent) 28%, var(--line));
  border-radius:26px;
  background:color-mix(in srgb,var(--card) 86%, transparent);
  box-shadow:0 16px 40px rgba(0,0,0,.10);
  transition:transform .18s ease, box-shadow .18s ease;
}
.txhouse-brand:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 52px rgba(0,0,0,.16);
}
.txhouse-brand img{
  width:58px;
  height:58px;
  object-fit:contain;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.18));
}
.txhouse-brand span{
  font-weight:1000;
  letter-spacing:-.03em;
}
.admin-close-epic{
  align-self:start;
}
.admin-body{
  padding:18px!important;
  gap:12px!important;
}
.admin-save-status{
  margin:0!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(34,197,94,.10),color-mix(in srgb,var(--surface2) 92%, transparent))!important;
}
.admin-simple-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,1.4fr) minmax(220px,.8fr);
  gap:12px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:24px;
  background:color-mix(in srgb,var(--surface2) 76%, var(--card) 24%);
}
.admin-simple-toolbar .field{
  margin:0;
}
.admin-simple-cloud{
  margin:0!important;
  padding:12px!important;
  border-radius:24px!important;
}
.admin-simple-cloud .cloud-sync-top b{
  font-size:18px!important;
}
.admin-simple-cloud .cloud-sync-top span{
  font-size:14px!important;
}
.admin-cloud-login{
  grid-template-columns:minmax(180px,1fr) minmax(160px,1fr) auto!important;
  align-items:center;
}
.admin-cloud-user{
  border-radius:18px!important;
}
.admin-cloud-user span{
  display:grid;
  gap:2px;
}
.admin-cloud-user small{
  color:var(--muted);
  font-weight:850;
}
.admin-main-actions{
  margin:0!important;
  align-items:center;
}
.admin-main-actions>.btn{
  min-height:50px;
  border-radius:18px;
}
.admin-grid{
  grid-template-columns:minmax(300px,380px) minmax(0,1fr)!important;
  gap:12px!important;
  min-height:0;
}
.admin-list{
  max-height:calc(94dvh - 360px)!important;
  border-radius:24px!important;
  background:color-mix(in srgb,var(--surface2) 80%, var(--card) 20%)!important;
}
.admin-row{
  grid-template-columns:54px minmax(0,1fr)!important;
  padding:10px!important;
  border-radius:18px!important;
  transition:transform .16s ease, border-color .16s ease, background .16s ease;
}
.admin-row:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--accent) 42%, var(--line));
}
.admin-row img{
  width:54px!important;
  height:54px!important;
  border-radius:15px!important;
}
.admin-row.active{
  outline:0!important;
  border-color:color-mix(in srgb,var(--accent) 64%, var(--line))!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%, var(--card)),var(--card))!important;
}
.admin-editor{
  border-radius:24px!important;
  padding:14px!important;
  background:color-mix(in srgb,var(--surface2) 72%, var(--card) 28%)!important;
}
.admin-pro-top{
  grid-template-columns:minmax(160px,210px) minmax(0,1fr)!important;
  gap:12px!important;
}
.admin-pro-summary,
.admin-pro-panel{
  border-radius:24px!important;
  background:var(--card)!important;
}
.admin-pro-summary h3{
  font-size:clamp(24px,3vw,34px)!important;
}
.admin-pro-mini-actions .btn{
  min-height:42px;
  border-radius:15px;
}
.admin-pro-actions{
  display:grid!important;
  grid-template-columns:1.2fr 1.1fr repeat(3,auto);
  gap:8px!important;
  align-items:center;
  padding:12px 0 0!important;
}
.admin-pro-actions .btn{
  min-height:50px;
  border-radius:18px;
}
.admin-pro-actions #saveProductBtn,
.admin-pro-actions #saveAsAddonBtn{
  font-weight:1000;
}
html[data-theme="dark"] .admin-card{
  background:
    radial-gradient(circle at 15% 0%, rgba(255,182,74,.12), transparent 36%),
    linear-gradient(180deg,#121a2d,#0e1628)!important;
}
html[data-theme="dark"] .txhouse-brand,
html[data-theme="dark"] .admin-pro-summary,
html[data-theme="dark"] .admin-pro-panel{
  background:color-mix(in srgb,var(--card) 92%, black 8%)!important;
}
@media(max-width:880px){
  .admin-card{
    width:100vw!important;
    max-height:100dvh!important;
    height:100dvh!important;
    border-radius:0!important;
  }
  .admin-epic-head{
    grid-template-columns:1fr auto!important;
    padding:14px!important;
  }
  .txhouse-brand{
    width:84px;
    min-height:86px;
    border-radius:22px;
  }
  .txhouse-brand img{
    width:44px;
    height:44px;
  }
  .admin-close-epic{
    position:absolute;
    right:10px;
    top:10px;
  }
  .admin-title-block>b{
    padding-right:44px;
  }
  .admin-simple-toolbar,
  .admin-cloud-login,
  .admin-grid,
  .admin-pro-top,
  .admin-pro-actions{
    grid-template-columns:1fr!important;
  }
  .admin-main-actions>.btn{
    width:100%;
    justify-content:center;
  }
  .admin-list{
    max-height:250px!important;
  }
  .admin-pro-mini-actions,
  .admin-actions-bar{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .admin-pro-mini-actions .btn,
  .admin-pro-actions .btn{
    width:100%;
  }
}
@media(max-width:520px){
  .admin-body{
    padding:12px!important;
  }
  .admin-title-block>b{
    font-size:30px!important;
  }
  .admin-title-block>div{
    font-size:13px;
  }
  .txhouse-brand{
    width:74px;
    min-height:78px;
    font-size:13px;
  }
  .txhouse-brand img{
    width:38px;
    height:38px;
  }
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v165-admin-obligatorio-simple */
.admin-card{
  width:min(1180px,calc(100vw - 24px))!important;
}
.admin-epic-head{
  min-height:auto!important;
  padding:16px 18px!important;
}
.admin-title-block .admin-kicker{
  font-size:10px!important;
  padding:5px 9px!important;
}
.admin-title-block>b{
  font-size:clamp(28px,3.2vw,40px)!important;
}
.admin-title-block>div{
  max-width:720px;
  font-size:13px!important;
}
.txhouse-brand{
  width:88px!important;
  min-height:86px!important;
  border-radius:22px!important;
}
.txhouse-brand img{
  width:48px!important;
  height:48px!important;
}
.admin-body{
  min-height:0;
}
.admin-workspace{
  display:grid;
  gap:12px;
  min-height:0;
}
.admin-modal.admin-locked .admin-workspace{
  display:none!important;
}
.admin-modal.admin-locked .admin-body{
  min-height:420px;
  align-content:center;
  justify-content:center;
}
.admin-modal.admin-unlocked #cloudSyncPanel{
  display:none!important;
}
.admin-login-card{
  width:min(560px,100%)!important;
  margin:auto!important;
  padding:22px!important;
  display:grid!important;
  gap:16px!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,159,28,.18), transparent 42%),
    color-mix(in srgb,var(--surface2) 86%, var(--card) 14%)!important;
}
.admin-login-card .admin-login-copy{
  display:grid!important;
  gap:7px!important;
  text-align:center!important;
}
.admin-login-card .admin-login-copy b{
  font-size:clamp(24px,4vw,34px)!important;
  letter-spacing:-.04em;
}
.admin-login-card .admin-login-copy span{
  color:var(--muted);
  font-weight:900;
}
.admin-login-card .admin-cloud-login{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
}
.admin-login-card .input,
.admin-login-card .btn{
  width:100%!important;
  min-height:56px!important;
  border-radius:18px!important;
  font-size:16px!important;
}
.admin-login-card .btn{
  justify-content:center!important;
  font-size:18px!important;
}
.admin-save-status{
  min-height:44px!important;
  padding:11px 14px!important;
  display:flex;
  align-items:center;
}
.admin-main-actions{
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.admin-main-actions #firebaseLogoutBtn{
  margin-left:auto;
}
.admin-pro-actions{
  display:grid!important;
  grid-template-columns:minmax(160px,1fr) repeat(3,auto)!important;
}
.admin-pro-actions #saveProductBtn{
  font-size:17px!important;
}
@media(max-width:880px){
  .admin-card{
    width:100vw!important;
  }
  .admin-epic-head{
    grid-template-columns:1fr auto!important;
    gap:10px!important;
  }
  .admin-title-block>div{
    display:none!important;
  }
  .admin-main-actions,
  .admin-pro-actions{
    grid-template-columns:1fr!important;
    display:grid!important;
  }
  .admin-main-actions #firebaseLogoutBtn{
    margin-left:0;
  }
  .admin-modal.admin-locked .admin-body{
    min-height:calc(100dvh - 116px);
  }
  .admin-login-card{
    padding:18px!important;
  }
}
@media(max-width:520px){
  .admin-epic-head{
    padding:12px!important;
  }
  .admin-title-block>b{
    font-size:27px!important;
  }
  .txhouse-brand{
    width:68px!important;
    min-height:70px!important;
    font-size:12px!important;
  }
  .txhouse-brand img{
    width:34px!important;
    height:34px!important;
  }
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v167-admin-acceso-corregido */
#brandLogo,
#brandTap .brand-logo{
  cursor:pointer!important;
  user-select:none!important;
}
.admin-login-status{
  min-height:22px;
  padding:9px 11px;
  border-radius:14px;
  background:color-mix(in srgb,var(--surface) 78%, transparent);
  border:1px solid var(--line);
  color:var(--muted);
  font-size:13px;
  font-weight:900;
  text-align:center;
}
.admin-modal.admin-locked .admin-session-bar{
  display:none!important;
}
.admin-modal.admin-locked .admin-workspace{
  display:none!important;
}
.admin-modal.admin-unlocked .admin-workspace{
  display:grid!important;
}
.admin-login-card #firebaseLogoutBtn{
  width:100%!important;
  justify-content:center!important;
  min-height:54px!important;
  border-radius:18px!important;
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v176-publicidades-premium-style */
/* V176 · publicidades premium arriba del menú + carrito sin botón Otros */
.promo-banners{margin:18px 0 10px!important;border-radius:30px!important;overflow:hidden!important;border:1px solid color-mix(in srgb,var(--line) 78%, rgba(255,255,255,.28))!important;background:linear-gradient(135deg,rgba(15,23,42,.18),rgba(255,255,255,.05))!important;box-shadow:0 24px 60px rgba(0,0,0,.18),0 0 0 1px rgba(255,255,255,.04) inset!important;position:relative!important}
.promo-banners:before{content:"";position:absolute;inset:-60px 15% auto 15%;height:120px;background:radial-gradient(circle,rgba(255,159,28,.32),transparent 66%);filter:blur(24px);pointer-events:none;z-index:0}
.promo-premium-shell{position:relative;z-index:1;overflow:hidden;border-radius:inherit;background:#0b1326}
.promo-premium-track{display:flex!important;width:100%!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scroll-behavior:smooth!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
.promo-premium-track::-webkit-scrollbar{display:none!important}
.promo-premium-slide{flex:0 0 100%!important;scroll-snap-align:start!important;aspect-ratio:2048/650!important;min-height:160px!important;position:relative!important;background:linear-gradient(135deg,#0b1326,#18213a)!important}
.promo-premium-slide img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important}
.promo-premium-hint{position:absolute!important;left:14px!important;right:14px!important;bottom:12px!important;display:flex!important;justify-content:space-between!important;gap:10px!important;pointer-events:none!important;color:#fff!important;text-shadow:0 3px 12px rgba(0,0,0,.46)!important;font-weight:1000!important;font-size:12px!important}
.promo-premium-hint span,.promo-premium-hint b{border-radius:999px!important;padding:7px 11px!important;background:rgba(7,12,27,.42)!important;border:1px solid rgba(255,255,255,.18)!important;backdrop-filter:blur(8px)!important}
body.searching .promo-banners{display:none!important}
.admin-settings-mount{display:grid;gap:12px}
.admin-ads-panel{background:linear-gradient(135deg,rgba(255,159,28,.10),rgba(37,99,235,.08)),var(--surface)!important;border-color:color-mix(in srgb,var(--accent) 32%, var(--line))!important}
.admin-panel-title-row{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin-bottom:12px!important}
.admin-panel-title-row b{display:block!important;font-size:24px!important;letter-spacing:-.035em!important}
.admin-panel-title-row small{display:block!important;color:var(--muted)!important;font-weight:850!important;margin-top:4px!important}
.admin-ad-preview-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:10px 0 14px!important}
.admin-ad-preview{position:relative!important;overflow:hidden!important;border-radius:18px!important;border:1px solid var(--line)!important;background:#081225!important;aspect-ratio:2048/650!important;box-shadow:0 16px 30px rgba(0,0,0,.14)!important}
.admin-ad-preview img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.admin-ad-preview span{position:absolute!important;left:10px!important;bottom:10px!important;background:rgba(0,0,0,.50)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:999px!important;padding:6px 10px!important;font-size:12px!important;font-weight:1000!important}
.compact-textarea{min-height:72px!important}
#addonTabs .addon-tab[data-addon-tab="Agregados"]{display:none!important}
@media(max-width:760px){.promo-banners{border-radius:22px!important;margin-top:14px!important}.promo-premium-slide{aspect-ratio:16/7!important;min-height:138px!important}.promo-premium-slide img{object-fit:cover!important}.promo-premium-hint{display:none!important}.admin-panel-title-row{display:grid!important}.admin-panel-title-row .btn{width:100%!important}.admin-ad-preview-grid{grid-template-columns:1fr!important}}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v177-detalles-menu-style */
/* V177 · botón Detalles + ficha completa de cada producto */
.product-body{gap:10px!important}
.desc{-webkit-line-clamp:3!important;min-height:4.05em!important;font-size:14px!important}
.product-actions{display:grid!important;grid-template-columns:minmax(92px,.45fr) minmax(120px,1fr)!important;gap:10px!important;align-items:center!important;margin-top:auto!important}
.product-actions .tag-mini{grid-column:1/-1;width:max-content;background:rgba(255,159,28,.10);border-color:rgba(255,159,28,.24);color:var(--muted)}
.details-btn{min-height:48px;border-radius:17px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 86%, transparent);color:var(--text);font-weight:1000;font-size:15px;box-shadow:0 10px 20px rgba(0,0,0,.04);cursor:pointer}
.details-btn:hover{border-color:color-mix(in srgb,var(--accent) 45%, var(--line));background:color-mix(in srgb,var(--accent) 12%, var(--surface));transform:translateY(-1px)}
.add-btn{cursor:pointer}
.detail-modal{display:grid;gap:14px}
.detail-hero-box{border:1px solid color-mix(in srgb,var(--accent) 28%, var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 12%, var(--surface)),color-mix(in srgb,var(--card) 96%, transparent));border-radius:24px;padding:16px;display:grid;gap:12px}
.detail-badge-row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.detail-badge-row span{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border-radius:999px;background:rgba(255,159,28,.13);border:1px solid rgba(255,159,28,.22);font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}
.detail-hero-box p{margin:0;color:var(--text);font-size:17px;line-height:1.45;font-weight:850}
.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.detail-facts div{border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--card) 94%, transparent);padding:12px}
.detail-facts b{display:block;font-size:22px;letter-spacing:-.035em;color:var(--accent);line-height:1.05}
.detail-facts small{display:block;color:var(--muted);font-weight:900;margin-top:4px}
.detail-section{border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--card) 96%, transparent);padding:15px;display:grid;gap:10px}
.detail-section h4{margin:0;font-size:18px;letter-spacing:-.025em}
.detail-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.detail-list li{position:relative;padding-left:28px;color:var(--text);font-weight:850;line-height:1.35}
.detail-list li:before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:999px;background:rgba(34,197,94,.13);color:var(--green);display:grid;place-items:center;font-size:12px;font-weight:1000}
.detail-pills{display:flex;flex-wrap:wrap;gap:8px}
.detail-pills span{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%, transparent);border-radius:999px;padding:9px 11px;font-weight:900;font-size:13px;color:var(--text)}
.detail-note{margin:0;color:var(--muted);font-weight:850;line-height:1.42}
.detail-warning{border:1px dashed color-mix(in srgb,var(--accent) 46%, var(--line));background:rgba(255,159,28,.10);border-radius:20px;padding:13px 14px;font-weight:900;color:var(--text);line-height:1.35}
html[data-theme="dark"] .details-btn{background:rgba(255,255,255,.06)}
html[data-theme="dark"] .detail-section,html[data-theme="dark"] .detail-facts div{background:rgba(255,255,255,.045)!important}
@media(max-width:760px){
  .products{gap:14px!important}
  .product{border-radius:24px!important}
  .product-body{padding:13px!important}
  .product-actions{grid-template-columns:1fr 1.15fr!important;gap:8px!important}
  .details-btn,.add-btn{min-height:46px!important;font-size:15px!important;border-radius:16px!important}
  .desc{font-size:13.5px!important;line-height:1.32!important}
  .detail-facts{grid-template-columns:1fr!important}
  .detail-hero-box p{font-size:15px!important}
}

/* V178 · promos con formulario + PWA real */
.promo-premium-slide{border:0!important;padding:0!important;cursor:pointer!important;text-align:initial!important;color:inherit!important;font:inherit!important;appearance:none!important;-webkit-appearance:none!important}
.promo-premium-slide:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 70%, white)!important;outline-offset:-6px!important}
.promo-click-chip{position:absolute;right:14px;bottom:12px;z-index:3;border-radius:999px;background:rgba(7,12,27,.72);border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 12px;font-size:12px;font-weight:1000;letter-spacing:.02em;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.24)}
.promo-form-modal{display:grid;gap:14px}.promo-form-grid{margin-top:2px}.ios-install-tip{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;width:min(420px,calc(100vw - 24px));border-radius:24px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:16px 48px 16px 16px;box-shadow:0 28px 80px rgba(0,0,0,.38);font-weight:850}.ios-install-tip b{display:block;font-size:18px;letter-spacing:-.02em}.ios-install-tip p{margin:6px 0 0;color:rgba(255,255,255,.86);line-height:1.35}.ios-install-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.hidden{display:none!important}
@media(max-width:760px){.promo-click-chip{right:10px;bottom:10px;font-size:11px;padding:7px 10px}.ios-install-tip{bottom:calc(84px + env(safe-area-inset-bottom))}}

/* Source block: tv-v180-fluid-choice-snow */
/* Cambio día/noche más directo */
body,.topbar-inner,.hero,.category,.drawer,.modal-card,.product,.checkout-panel,.follow-buy,.info,.notice{transition-duration:.06s!important;transition-timing-function:linear!important}

/* Botón elegir opciones más evidente */
#modalAddBtn.modal-choice-boom,
.add-btn.choice-boom{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  animation:tvChoiceBoom 1.15s ease-in-out infinite;
  box-shadow:0 18px 34px rgba(255,143,31,.34),0 0 0 0 rgba(255,177,61,.34)!important;
}
#modalAddBtn.modal-choice-boom::before,
.add-btn.choice-boom::before{
  content:"";
  position:absolute;
  inset:-40% -80%;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);
  transform:translateX(-45%);
  animation:tvChoiceShine 1.7s linear infinite;
  z-index:-1;
}
#modalAddBtn.modal-choice-boom::after{
  content:" →";
  font-size:1.1em;
  animation:tvChoiceArrow .75s ease-in-out infinite;
}
@keyframes tvChoiceBoom{
  0%,100%{transform:translateY(0) scale(1);filter:saturate(1)}
  50%{transform:translateY(-2px) scale(1.045);filter:saturate(1.28)}
}
@keyframes tvChoiceShine{to{transform:translateX(45%)}}
@keyframes tvChoiceArrow{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}

/* Admin toggle visual */
.admin-toggle{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:center;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--card) 96%, transparent);padding:13px;cursor:pointer}
.admin-toggle input{position:absolute;opacity:0;pointer-events:none}
.admin-toggle span{width:54px;height:31px;border-radius:999px;background:rgba(100,116,139,.28);border:1px solid var(--line);position:relative;transition:.12s}
.admin-toggle span::after{content:"";position:absolute;top:3px;left:3px;width:23px;height:23px;border-radius:999px;background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.18);transition:.12s}
.admin-toggle input:checked + span{background:linear-gradient(180deg,var(--accent),var(--accent2));border-color:transparent}
.admin-toggle input:checked + span::after{transform:translateX(23px)}
.admin-toggle b{font-size:15px;line-height:1.1}
.admin-toggle small{grid-column:2;color:var(--muted);font-weight:850;line-height:1.25}

/* Nieve modo noche */
.night-snow-layer{position:fixed;inset:0;z-index:56;pointer-events:none;overflow:hidden;opacity:1;contain:strict}
.night-snow-layer span{position:absolute;top:-8vh;left:var(--x);width:var(--s);height:var(--s);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 0 10px rgba(255,255,255,.5);opacity:var(--o);animation:tvSnowFall var(--d) linear infinite;animation-delay:var(--delay);will-change:transform,opacity}
@keyframes tvSnowFall{
  0%{transform:translate3d(0,-8vh,0);opacity:0}
  12%{opacity:var(--o)}
  100%{transform:translate3d(var(--drift),108vh,0);opacity:0}
}
@media (prefers-reduced-motion:reduce){#modalAddBtn.modal-choice-boom,.add-btn.choice-boom{animation:none}.night-snow-layer{display:none}}

/* CTA instalar app más llamativo */
#installBtn.install-cta{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate;
  min-width:132px;
  padding:8px 14px!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#ffbf4d,#ff9f1c)!important;
  border:1px solid rgba(255,196,92,.52)!important;
  color:#1f1402!important;
  box-shadow:0 14px 30px rgba(255,159,28,.34),0 0 0 0 rgba(255,191,77,.32)!important;
  animation:tvInstallPulse 1.2s ease-in-out infinite;
}
#installBtn.install-cta::before{
  content:"";
  position:absolute;
  inset:-35% -70%;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.65) 50%,transparent 62%);
  transform:translateX(-55%);
  animation:tvInstallShine 1.85s linear infinite;
  z-index:-1;
}
#installBtn.install-cta .install-cta-wrap{display:grid;line-height:1.02;text-align:left}
#installBtn.install-cta .install-cta-wrap small{font-size:9px;letter-spacing:.16em;font-weight:1000;opacity:.82}
#installBtn.install-cta .install-cta-wrap b{font-size:15px;font-weight:1000;letter-spacing:-.02em}
@keyframes tvInstallPulse{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-1px) scale(1.04)}}
@keyframes tvInstallShine{to{transform:translateX(55%)}}

/* Tutorial iPhone mejorado */
.ios-install-guide{
  width:min(470px,calc(100vw - 22px))!important;
  padding:18px 18px 16px 18px!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,#0f172a,#131f3b)!important;
  border:1px solid rgba(255,255,255,.16)!important;
}
.ios-install-head{padding-right:28px}
.ios-install-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);font-size:11px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.ios-install-guide b{font-size:22px!important;line-height:1.02}
.ios-install-guide p{margin:7px 0 0!important;color:rgba(255,255,255,.82)!important}
.ios-install-steps{list-style:none;display:grid;gap:10px;margin:14px 0 0;padding:0}
.ios-install-steps li{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:start;padding:10px 12px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.ios-install-steps li span{display:grid;place-items:center;width:36px;height:36px;border-radius:999px;background:linear-gradient(180deg,#ffbf4d,#ff9f1c);color:#271700;font-weight:1000}
.ios-install-steps li strong{display:block;font-size:15px;line-height:1.1}
.ios-install-steps li small{display:block;margin-top:4px;color:rgba(255,255,255,.76);line-height:1.22;font-weight:850}
.ios-install-actions{display:flex;justify-content:flex-end;margin-top:14px}
.ios-install-ok{border:none;border-radius:16px;padding:12px 16px;background:linear-gradient(180deg,#ffbf4d,#ff9f1c);color:#241300;font-weight:1000;cursor:pointer;box-shadow:0 10px 24px rgba(255,159,28,.28)}
@media(max-width:760px){
  #installBtn.install-cta{padding:8px 10px!important}
  #installBtn.install-cta .install-cta-wrap b{font-size:13px}
  .ios-install-guide{bottom:calc(82px + env(safe-area-inset-bottom))!important;padding:16px 14px 14px 14px!important}
  .ios-install-guide b{font-size:20px!important}
  .ios-install-steps li{padding:10px}
}
@media (prefers-reduced-motion:reduce){#installBtn.install-cta{animation:none}#installBtn.install-cta::before{animation:none}}


/* v185 · Botón instalar definitivo: sin texto duplicado y más llamativo */
#installBtn.install-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-width:146px!important;
  height:58px!important;
  padding:0 18px!important;
  border-radius:24px!important;
  color:#1f1300!important;
  background:
    radial-gradient(circle at 20% 0%,rgba(255,255,255,.58),transparent 30%),
    linear-gradient(180deg,#ffd267 0%,#ffab25 45%,#ff8f12 100%)!important;
  border:1px solid rgba(255,210,103,.75)!important;
  box-shadow:
    0 18px 36px rgba(255,143,18,.40),
    0 0 0 3px rgba(255,190,70,.16),
    0 0 28px rgba(255,167,40,.28)!important;
  text-transform:none!important;
  letter-spacing:-.02em!important;
  animation:tvInstallHeroPulse 1.05s ease-in-out infinite!important;
}
#installBtn.install-cta::before{
  content:"";
  position:absolute;
  inset:-55% -85%;
  background:linear-gradient(110deg,transparent 37%,rgba(255,255,255,.78) 50%,transparent 63%);
  transform:translateX(-58%);
  animation:tvInstallHeroShine 1.35s linear infinite!important;
  z-index:-1;
}
#installBtn.install-cta::after{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:29px;
  border:2px solid rgba(255,185,52,.50);
  animation:tvInstallHeroRing 1.05s ease-out infinite;
  pointer-events:none;
}
#installBtn.install-cta .install-cta-icon{
  width:30px;
  height:30px;
  border-radius:999px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  font-size:22px;
  line-height:1;
  font-weight:1000;
  background:rgba(255,255,255,.44);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 7px 15px rgba(88,45,0,.16);
  animation:tvInstallIconBounce .72s ease-in-out infinite;
}
#installBtn.install-cta .install-cta-label{
  font-size:16px;
  font-weight:1000;
  line-height:1;
  white-space:nowrap;
}
@keyframes tvInstallHeroPulse{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-2px) scale(1.055)}
}
@keyframes tvInstallHeroShine{
  to{transform:translateX(58%)}
}
@keyframes tvInstallHeroRing{
  0%{opacity:.65;transform:scale(.94)}
  100%{opacity:0;transform:scale(1.12)}
}
@keyframes tvInstallIconBounce{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(3px)}
}
@media(max-width:760px){
  #installBtn.install-cta{
    min-width:132px!important;
    height:52px!important;
    padding:0 13px!important;
    gap:7px!important;
  }
  #installBtn.install-cta .install-cta-icon{
    width:27px;
    height:27px;
    font-size:20px;
  }
  #installBtn.install-cta .install-cta-label{
    font-size:14px;
  }
}
@media (prefers-reduced-motion:reduce){
  #installBtn.install-cta,
  #installBtn.install-cta::before,
  #installBtn.install-cta::after,
  #installBtn.install-cta .install-cta-icon{
    animation:none!important;
  }
}


/* v186 · Tutorial iPhone visual, confiable y organizado */
.ios-install-premium{
  top:50%!important;
  bottom:auto!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(860px,calc(100vw - 22px))!important;
  max-height:min(88vh,820px)!important;
  overflow:auto!important;
  padding:20px!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(255,194,84,.22),transparent 34%),
    linear-gradient(180deg,#101a32,#0b1224)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 34px 110px rgba(0,0,0,.58),0 0 0 9999px rgba(0,0,0,.48)!important;
  color:#fff!important;
}
.ios-install-premium .ios-install-close{
  right:14px!important;
  top:14px!important;
  width:40px!important;
  height:40px!important;
  z-index:4;
}
.ios-install-brand{
  display:grid;
  grid-template-columns:76px 1fr;
  gap:14px;
  align-items:center;
  padding-right:42px;
}
.ios-install-brand img{
  width:76px;
  height:76px;
  border-radius:22px;
  background:#fff;
  padding:6px;
  box-shadow:0 14px 34px rgba(0,0,0,.32);
}
.ios-install-premium .ios-install-badge{
  display:inline-flex;
  width:max-content;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(34,197,94,.14);
  border:1px solid rgba(74,222,128,.28);
  color:#bbf7d0;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.ios-install-premium b{
  display:block;
  font-size:clamp(25px,4vw,38px)!important;
  line-height:.98!important;
  letter-spacing:-.055em;
}
.ios-install-premium p{
  margin:8px 0 0!important;
  color:rgba(255,255,255,.80)!important;
  font-weight:850;
  line-height:1.32;
}
.ios-install-trust{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:16px 0;
}
.ios-install-trust span{
  display:inline-flex;
  align-items:center;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.88);
  font-size:12px;
  font-weight:1000;
}
.ios-install-visual-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.ios-install-visual-grid article{
  display:grid;
  gap:10px;
  padding:10px;
  border-radius:24px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.ios-install-visual-grid article img{
  width:100%;
  aspect-ratio:3/2;
  object-fit:cover;
  border-radius:18px;
  background:#0f172a;
  border:1px solid rgba(255,255,255,.10);
}
.ios-install-visual-grid article div{
  display:grid;
  grid-template-columns:34px 1fr;
  column-gap:9px;
  align-items:start;
}
.ios-install-visual-grid article span{
  grid-row:1/3;
  width:34px;
  height:34px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(180deg,#ffd267,#ff9f1c);
  color:#241300;
  font-weight:1000;
  box-shadow:0 10px 22px rgba(255,159,28,.24);
}
.ios-install-visual-grid article strong{
  font-size:15px;
  line-height:1.08;
  font-weight:1000;
  color:#fff;
}
.ios-install-visual-grid article small{
  margin-top:5px;
  color:rgba(255,255,255,.72);
  font-weight:850;
  line-height:1.22;
}
.ios-install-note{
  margin-top:14px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,159,28,.12);
  border:1px dashed rgba(255,191,77,.38);
  color:rgba(255,255,255,.86);
  font-weight:850;
  line-height:1.32;
}
.ios-install-note b{
  display:inline!important;
  font-size:inherit!important;
  letter-spacing:0;
}
.ios-install-premium .ios-install-actions{
  justify-content:flex-end;
  margin-top:14px;
}
.ios-install-premium .ios-install-ok{
  min-width:150px;
  border-radius:18px!important;
  padding:14px 18px!important;
  background:linear-gradient(180deg,#ffd267,#ff9f1c)!important;
  color:#241300!important;
  font-weight:1000!important;
  border:none!important;
  box-shadow:0 14px 28px rgba(255,159,28,.28)!important;
}
@media(max-width:760px){
  .ios-install-premium{
    width:calc(100vw - 18px)!important;
    max-height:90vh!important;
    padding:16px!important;
    border-radius:26px!important;
  }
  .ios-install-brand{
    grid-template-columns:58px 1fr;
    gap:11px;
    padding-right:38px;
  }
  .ios-install-brand img{
    width:58px;
    height:58px;
    border-radius:18px;
  }
  .ios-install-visual-grid{
    grid-template-columns:1fr;
  }
  .ios-install-visual-grid article{
    grid-template-columns:116px 1fr;
    align-items:center;
  }
  .ios-install-visual-grid article img{
    height:88px;
    aspect-ratio:auto;
  }
  .ios-install-visual-grid article div{
    grid-template-columns:30px 1fr;
  }
  .ios-install-visual-grid article span{
    width:30px;
    height:30px;
  }
  .ios-install-visual-grid article strong{
    font-size:14px;
  }
  .ios-install-trust span{
    font-size:11px;
    padding:7px 9px;
  }
}


/* v187 · Detalles premium: menú elegante con logo, ordenado para PC y celular */
#productModal[data-type="details"] .modal-card{
  width:min(920px,calc(100vw - 22px));
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,159,28,.08),transparent 36%),
    linear-gradient(180deg,#fffdfa,#fff7ec);
}
#productModal[data-type="details"] .modal-head{
  position:relative;
  padding:20px 22px;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,159,28,.10),transparent 34%),
    linear-gradient(180deg,#fffdfa,#fff7ee);
  border-bottom:1px solid rgba(88,64,28,.12);
}
#productModal[data-type="details"] .modal-head::after{
  content:"";
  position:absolute;
  right:84px;
  top:8px;
  width:126px;
  height:126px;
  background:url("assets/icons/app-logo-v256.png") center/contain no-repeat;
  opacity:.075;
  pointer-events:none;
  transform:rotate(-5deg);
}
#productModal[data-type="details"] .modal-product{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:18px;
  align-items:center;
  padding-right:56px;
}
#productModal[data-type="details"] .modal-img{
  width:92px;
  height:92px;
  border-radius:26px;
  object-fit:cover;
  border:1px solid rgba(88,64,28,.14);
  box-shadow:0 14px 34px rgba(48,31,10,.16);
  background:#fff;
}
#productModal[data-type="details"] #modalKicker{
  color:#ff8f12;
  font-size:11px;
  letter-spacing:.17em;
  font-weight:1000;
}
#productModal[data-type="details"] #modalTitle{
  font-size:clamp(32px,4.6vw,52px);
  line-height:.94;
  letter-spacing:-.065em;
  max-width:680px;
}
#productModal[data-type="details"] .modal-body{
  padding:18px 22px;
  background:#fffaf2;
}
.detail-premium-menu{
  display:grid;
  gap:14px;
}
.detail-menu-panel{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:22px;
  background:
    radial-gradient(circle at 100% 0%,rgba(237,28,42,.08),transparent 34%),
    linear-gradient(180deg,#ffffff,#fffaf2);
  border:1px solid rgba(88,64,28,.13);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}
.detail-menu-panel::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:23px;
  border:1px dashed rgba(255,159,28,.20);
  pointer-events:none;
}
.detail-menu-top{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) 92px;
  gap:16px;
  align-items:center;
  margin-bottom:18px;
}
.detail-menu-kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,159,28,.12);
  border:1px solid rgba(255,159,28,.20);
  color:#a15300;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.detail-menu-top h4{
  margin:10px 0 0;
  font-size:clamp(28px,4vw,42px);
  line-height:.95;
  letter-spacing:-.055em;
}
.detail-menu-top p{
  margin:8px 0 0;
  color:#796f67;
  font-weight:850;
}
.detail-menu-logo{
  justify-self:end;
  width:88px;
  height:88px;
  border-radius:26px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid rgba(88,64,28,.12);
  box-shadow:0 12px 28px rgba(48,31,10,.12);
  transform:rotate(2deg);
}
.detail-menu-logo img{
  width:78px;
  height:78px;
  object-fit:contain;
}
.detail-menu-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.detail-menu-grid li{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#fff8ee);
  border:1px solid rgba(88,64,28,.12);
  color:#171321;
  box-shadow:0 8px 18px rgba(48,31,10,.045);
}
.detail-menu-grid li b{
  font-size:15px;
  line-height:1.18;
  letter-spacing:-.015em;
}
.detail-check{
  width:25px;
  height:25px;
  border-radius:999px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:linear-gradient(180deg,#d9ffe7,#b9f7cd);
  color:#0d9a44;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.detail-menu-note{
  border-radius:22px;
  padding:14px 16px;
  background:rgba(255,159,28,.08);
  border:1px dashed rgba(255,159,28,.28);
}
.detail-menu-note b{
  display:block;
  margin-bottom:8px;
  color:#171321;
}
.detail-menu-note ul{
  margin:0;
  padding-left:18px;
  color:#5f544c;
  font-weight:850;
}
#productModal[data-type="details"] .modal-foot{
  background:#fff7ec;
  border-top:1px solid rgba(88,64,28,.12);
}
html[data-theme="dark"] #productModal[data-type="details"] .modal-card,
html[data-theme="dark"] #productModal[data-type="details"] .modal-head,
html[data-theme="dark"] #productModal[data-type="details"] .modal-body,
html[data-theme="dark"] #productModal[data-type="details"] .modal-foot{
  background:
    radial-gradient(circle at 100% 0%,rgba(255,159,28,.10),transparent 36%),
    linear-gradient(180deg,#111a30,#0f172a);
}
html[data-theme="dark"] .detail-menu-panel{
  background:
    radial-gradient(circle at 100% 0%,rgba(255,159,28,.10),transparent 36%),
    linear-gradient(180deg,#16213a,#121a2d);
  border-color:rgba(255,255,255,.10);
}
html[data-theme="dark"] .detail-menu-grid li{
  background:linear-gradient(180deg,#19243b,#141d31);
  border-color:rgba(255,255,255,.10);
  color:#fff7ed;
}
html[data-theme="dark"] .detail-menu-top p,
html[data-theme="dark"] .detail-menu-note ul{
  color:rgba(255,255,255,.72);
}
html[data-theme="dark"] .detail-menu-logo{
  background:rgba(255,255,255,.92);
}
html[data-theme="dark"] .detail-menu-note{
  background:rgba(255,159,28,.10);
  border-color:rgba(255,159,28,.22);
}
@media(max-width:760px){
  #productModal[data-type="details"] .modal-card{
    width:calc(100vw - 14px);
    border-radius:26px;
  }
  #productModal[data-type="details"] .modal-head{
    padding:16px;
  }
  #productModal[data-type="details"] .modal-head::after{
    right:54px;
    top:16px;
    width:88px;
    height:88px;
    opacity:.06;
  }
  #productModal[data-type="details"] .modal-product{
    grid-template-columns:74px minmax(0,1fr);
    gap:12px;
    padding-right:44px;
  }
  #productModal[data-type="details"] .modal-img{
    width:74px;
    height:74px;
    border-radius:22px;
  }
  #productModal[data-type="details"] #modalTitle{
    font-size:clamp(29px,8.4vw,40px);
  }
  #productModal[data-type="details"] .modal-body{
    padding:12px;
  }
  .detail-menu-panel{
    padding:16px;
    border-radius:24px;
  }
  .detail-menu-top{
    grid-template-columns:1fr 64px;
    gap:10px;
    margin-bottom:14px;
  }
  .detail-menu-top h4{
    font-size:30px;
  }
  .detail-menu-top p{
    font-size:13px;
  }
  .detail-menu-logo{
    width:62px;
    height:62px;
    border-radius:19px;
  }
  .detail-menu-logo img{
    width:54px;
    height:54px;
  }
  .detail-menu-grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  .detail-menu-grid li{
    min-height:44px;
    padding:11px 12px;
    border-radius:16px;
  }
  .detail-menu-grid li b{
    font-size:14px;
  }
}


/* v188 · Detalles finales: limpio, elegante, sin textos innecesarios */
#productModal[data-type="details"] .modal-head{
  padding:20px 22px!important;
}
#productModal[data-type="details"] .modal-head::after{
  background:url("assets/icons/app-logo-v256.png") center/contain no-repeat!important;
  opacity:.06!important;
}
#productModal[data-type="details"] .modal-body{
  padding:18px 22px!important;
}
.detail-premium-menu{
  gap:0!important;
}
.detail-menu-panel{
  padding:22px!important;
  border-radius:28px!important;
}
.detail-menu-top{
  grid-template-columns:1fr 86px!important;
  margin-bottom:16px!important;
  align-items:center!important;
}
.detail-menu-top h4{
  margin:0!important;
  font-size:clamp(34px,4.2vw,48px)!important;
  line-height:.92!important;
  letter-spacing:-.06em!important;
}
.detail-menu-top p,
.detail-menu-kicker{
  display:none!important;
}
.detail-menu-logo{
  width:78px!important;
  height:78px!important;
  border-radius:24px!important;
  overflow:hidden!important;
}
.detail-menu-logo img{
  width:70px!important;
  height:70px!important;
  object-fit:contain!important;
}
.detail-menu-logo.no-img::before{
  content:"TV";
  display:grid;
  place-items:center;
  width:70px;
  height:70px;
  border-radius:20px;
  background:linear-gradient(180deg,#ed1c2a,#b80f20);
  color:#fff;
  font-size:22px;
  font-weight:1000;
  font-family:Georgia,serif;
}
.detail-menu-logo.no-img img{
  display:none!important;
}
.detail-menu-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.detail-menu-grid li{
  min-height:50px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#fff9f0)!important;
}
.detail-menu-grid li b{
  font-size:15px!important;
  line-height:1.16!important;
}
.detail-check{
  width:25px!important;
  height:25px!important;
  font-size:14px!important;
}
@media(max-width:760px){
  #productModal[data-type="details"] .modal-body{
    padding:12px!important;
  }
  .detail-menu-panel{
    padding:16px!important;
    border-radius:24px!important;
  }
  .detail-menu-top{
    grid-template-columns:1fr 58px!important;
    margin-bottom:12px!important;
  }
  .detail-menu-top h4{
    font-size:32px!important;
  }
  .detail-menu-logo{
    width:58px!important;
    height:58px!important;
    border-radius:18px!important;
  }
  .detail-menu-logo img{
    width:51px!important;
    height:51px!important;
  }
  .detail-menu-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .detail-menu-grid li{
    min-height:44px!important;
    padding:11px 12px!important;
    border-radius:16px!important;
  }
  .detail-menu-grid li b{
    font-size:14px!important;
  }
}


/* v189 · Nieve modo noche corregida y forzada */
.night-snow-layer.night-snow-force{
  position:fixed!important;
  inset:0!important;
  z-index:63!important;
  pointer-events:none!important;
  overflow:hidden!important;
  display:block!important;
  opacity:1!important;
  contain:layout paint!important;
}
.night-snow-layer.night-snow-force .night-flake{
  position:absolute!important;
  top:-10vh!important;
  left:var(--x)!important;
  width:auto!important;
  height:auto!important;
  display:block!important;
  color:rgba(255,255,255,.96)!important;
  font-size:var(--s)!important;
  line-height:1!important;
  text-shadow:0 0 10px rgba(255,255,255,.78),0 0 18px rgba(255,255,255,.35)!important;
  opacity:var(--o)!important;
  animation:tvSnowForceFall var(--d) linear infinite!important;
  animation-delay:var(--delay)!important;
  will-change:transform,opacity!important;
}
@keyframes tvSnowForceFall{
  0%{transform:translate3d(0,-12vh,0) rotate(0deg);opacity:0}
  10%{opacity:var(--o)}
  100%{transform:translate3d(var(--drift),112vh,0) rotate(240deg);opacity:0}
}
/* Aunque el celular tenga “reducir movimiento”, la nieve queda visible si el admin la activó */
@media (prefers-reduced-motion:reduce){
  .night-snow-layer.night-snow-force{display:block!important}
  .night-snow-layer.night-snow-force .night-flake{animation:tvSnowForceFall 14s linear infinite!important}
}


/* v190 · Nieve realista: copos pequeños y luces suaves */
.night-snow-layer.realistic-snow-layer{
  position:fixed!important;
  inset:0!important;
  z-index:63!important;
  pointer-events:none!important;
  overflow:hidden!important;
  display:block!important;
  opacity:1!important;
  contain:layout paint!important;
  mix-blend-mode:screen;
}
.realistic-snow-canvas{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  filter:drop-shadow(0 0 4px rgba(255,255,255,.28));
}
html[data-theme="dark"].night-snow-active body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:62;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,245,218,.055),transparent 16%),
    radial-gradient(circle at 80% 8%,rgba(210,232,255,.045),transparent 18%),
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0) 38%);
}
@media (prefers-reduced-motion:reduce){
  .night-snow-layer.realistic-snow-layer{display:block!important}
}


/* v191 · Corrección modo noche en Detalles + nieve lenta controlable */
html[data-theme="dark"] #productModal[data-type="details"] .detail-menu-grid li,
html[data-theme="dark"] #productModal[data-type="details"] .detail-menu-grid li b,
html[data-theme="dark"] .detail-menu-grid li,
html[data-theme="dark"] .detail-menu-grid li b{
  color:#171321!important;
}
html[data-theme="dark"] #productModal[data-type="details"] .detail-menu-grid li{
  background:linear-gradient(180deg,#fffdf8,#fff6ea)!important;
  border-color:rgba(255,210,138,.26)!important;
}
html[data-theme="dark"] #productModal[data-type="details"] .detail-check{
  color:#0b9341!important;
  background:linear-gradient(180deg,#dfffe9,#bdf4ce)!important;
}
.night-snow-layer.realistic-snow-layer{
  mix-blend-mode:screen;
  opacity:.92!important;
}
.realistic-snow-canvas{
  filter:drop-shadow(0 0 2px rgba(255,255,255,.18))!important;
}
html[data-theme="dark"].night-snow-active body::after{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,245,218,.035),transparent 16%),
    radial-gradient(circle at 80% 8%,rgba(210,232,255,.032),transparent 18%),
    linear-gradient(180deg,rgba(255,255,255,.014),rgba(255,255,255,0) 38%)!important;
}


/* v192 · Tutorial iPhone sin mensaje técnico innecesario */
.ios-install-note{display:none!important}
.ios-install-premium{
  box-shadow:0 34px 110px rgba(0,0,0,.58),0 0 0 9999px rgba(0,0,0,.52)!important;
}
.ios-install-premium .ios-install-actions{
  margin-top:16px!important;
}
.ios-install-premium .ios-install-ok{
  min-width:170px!important;
}


/* v193 · Detalles simples: sin Importante ni textos de más */
#productModal[data-type="details"] .detail-menu-note,
#productModal[data-type="details"] .detail-note,
#productModal[data-type="details"] .detail-warning{
  display:none!important;
}
#productModal[data-type="details"] .detail-premium-menu{
  gap:0!important;
}
#productModal[data-type="details"] .detail-menu-panel{
  margin-bottom:0!important;
}


/* v194 · Botón iPhone: Bajar app con flecha hacia abajo */
#installBtn.install-cta .install-cta-icon{
  animation:tvInstallDownloadArrow .78s ease-in-out infinite!important;
}
#installBtn.install-cta .install-cta-label{
  text-transform:none!important;
}
@keyframes tvInstallDownloadArrow{
  0%,100%{transform:translateY(-1px)}
  50%{transform:translateY(4px)}
}
@media (prefers-reduced-motion:reduce){
  #installBtn.install-cta .install-cta-icon{animation:none!important}
}


/* v195 · Optimización fuerte para celulares de gama baja */
html.perf-lite *,
html.perf-lite *::before,
html.perf-lite *::after{
  scroll-behavior:auto!important;
}
html.perf-lite body,
html.perf-lite .topbar-inner,
html.perf-lite .hero,
html.perf-lite .category,
html.perf-lite .product,
html.perf-lite .modal-card,
html.perf-lite .drawer{
  transition:none!important;
}
html.perf-lite .add-btn.choice-boom,
html.perf-lite #modalAddBtn.modal-choice-boom,
html.perf-lite #installBtn.install-cta{
  animation:none!important;
}
html.perf-lite .add-btn.choice-boom::before,
html.perf-lite #modalAddBtn.modal-choice-boom::before,
html.perf-lite #installBtn.install-cta::before,
html.perf-lite #installBtn.install-cta::after{
  animation:none!important;
  display:none!important;
}
html.perf-lite .product,
html.perf-lite .category,
html.perf-lite .hero,
html.perf-lite .topbar-inner,
html.perf-lite .modal-card,
html.perf-lite .drawer,
html.perf-lite .cart-float{
  box-shadow:0 8px 18px rgba(0,0,0,.16)!important;
}
html.perf-lite .modal-backdrop,
html.perf-lite .drawer-backdrop,
html.perf-lite .admin-modal{
  backdrop-filter:none!important;
}
html.perf-lite .promo-premium-track{
  animation:none!important;
}
html.perf-lite .promo-premium-slide{
  min-height:180px!important;
}
html.perf-lite .product-media img,
html.perf-lite .promo-premium-slide img{
  content-visibility:auto;
}
html.perf-lite .realistic-snow-canvas{
  filter:none!important;
}
html.perf-lite .night-snow-layer.realistic-snow-layer{
  opacity:.72!important;
}
@media(max-width:760px){
  .products{gap:10px!important}
  .product{content-visibility:auto;contain-intrinsic-size:260px}
  .category-body{content-visibility:auto}
}


/* v196 · App rápida + logo PNG elegante */
#brandLogo,
.modal-img,
.ios-install-brand img,
.detail-menu-logo img{
  image-rendering:auto;
}
html.perf-lite .promo-premium-slide{
  min-height:150px!important;
}
html.perf-lite .promo-premium-slide img{
  object-fit:cover!important;
}


/* v197 · Ocultar instalar app cuando ya está instalada */
#installBtn[hidden],
#installBtn.hidden{
  display:none!important;
}
.ios-install-actions{
  gap:10px!important;
  flex-wrap:wrap!important;
}
.ios-install-done{
  min-width:170px;
  border:none;
  border-radius:18px;
  padding:14px 18px;
  background:linear-gradient(180deg,#22c55e,#16a34a);
  color:#ffffff;
  font-weight:1000;
  cursor:pointer;
  box-shadow:0 14px 28px rgba(34,197,94,.24);
}
.ios-install-ok{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
}


/* v198 · Entrada rápida tipo app + logo PNG perfecto */
.app-launch-splash{
  display:none;
  position:fixed;
  inset:0;
  z-index:9999;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.18),transparent 34%),
    radial-gradient(circle at 86% 10%,rgba(237,28,42,.12),transparent 30%),
    linear-gradient(180deg,#0e172b,#111827);
  color:#fff;
}
html.app-launching .app-launch-splash{display:flex}
.app-launch-splash.hide{opacity:0;transition:opacity .22s ease}
.app-launch-card{
  width:min(320px,92vw);
  display:grid;
  justify-items:center;
  gap:10px;
  padding:26px 22px 24px;
  border-radius:34px;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.055));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 28px 80px rgba(0,0,0,.42);
}
.app-launch-card img{
  width:112px;
  height:112px;
  object-fit:contain;
  border-radius:24px;
  padding:2px;
  filter:drop-shadow(0 14px 22px rgba(0,0,0,.28));
}
.app-launch-card strong{
  font-size:30px;
  line-height:1;
  letter-spacing:-.055em;
}
.app-launch-card span{
  color:rgba(255,255,255,.78);
  font-weight:850;
  font-size:14px;
}
.app-launch-bar{
  margin-top:8px;
  width:100%;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.app-launch-bar i{
  display:block;
  width:48%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#ff9f1c,#ffd267,#ed1c2a);
  animation:appLaunchLoad .72s ease-in-out infinite;
}
@keyframes appLaunchLoad{
  0%{transform:translateX(-105%)}
  100%{transform:translateX(225%)}
}
#brandLogo,
.ios-install-brand img,
.detail-menu-logo img,
.app-launch-card img{
  image-rendering:auto!important;
}
@media(max-width:760px){
  .app-launch-card{width:min(288px,92vw);padding:24px 18px 22px}
  .app-launch-card img{width:96px;height:96px}
  .app-launch-card strong{font-size:27px}
}
html.perf-lite .app-launch-card{box-shadow:0 18px 48px rgba(0,0,0,.34)!important}


/* v199 · Publicidades responsive por resolución de celular */
.promo-banners{
  width:100%!important;
  overflow:hidden!important;
}
.promo-premium-shell{
  width:100%!important;
  border-radius:inherit!important;
}
.promo-premium-slide{
  width:100%!important;
  height:auto!important;
  aspect-ratio:3/1!important;
  min-height:clamp(150px,22vw,330px)!important;
  max-height:360px!important;
}
.promo-picture{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.promo-picture img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
}
@media(max-width:900px){
  .promo-premium-slide{
    aspect-ratio:2.25/1!important;
    min-height:clamp(150px,34vw,260px)!important;
  }
}
@media(max-width:560px){
  .promo-banners{
    margin-top:12px!important;
    border-radius:20px!important;
  }
  .promo-premium-slide{
    aspect-ratio:1.55/1!important;
    min-height:clamp(210px,64vw,340px)!important;
    max-height:360px!important;
  }
  .promo-picture img{
    object-fit:contain!important;
    object-position:center!important;
    background:
      radial-gradient(circle at 18% 0%,rgba(255,159,28,.18),transparent 36%),
      linear-gradient(135deg,#0b1326,#18213a)!important;
  }
  .promo-click-chip{
    right:10px!important;
    bottom:10px!important;
    padding:7px 10px!important;
    font-size:11px!important;
  }
}
@media(max-width:380px){
  .promo-premium-slide{
    min-height:220px!important;
  }
}

/* v258 · instalación, ubicación, búsqueda, promos y agregados */
html body .topbar-inner{
  grid-template-columns:auto minmax(280px,1fr) auto!important;
  align-items:center!important;
}
html body .brand-status-row{grid-template-columns:auto!important;width:max-content!important}
html body .location-chip{display:none!important}
html body .search{
  position:relative!important;
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr) 36px!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  min-height:52px!important;
  padding:0 10px 0 16px!important;
  border:1px solid var(--line)!important;
  border-radius:17px!important;
  background:var(--card)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4)!important;
  transition:border-color .15s ease,box-shadow .15s ease!important;
}
html body .search:focus-within{
  border-color:color-mix(in srgb,var(--accent) 64%,var(--line))!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)!important;
}
html body .search svg{width:21px!important;height:21px!important;color:var(--muted)!important}
html body .search input{width:100%!important;min-width:0!important;border:0!important;outline:0!important;background:transparent!important;color:var(--text)!important;font-weight:850!important;font-size:15px!important}
html body .search input::placeholder{color:var(--muted)!important;opacity:.86!important}
html body .search-clear{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;padding:0!important;border:0!important;border-radius:11px!important;background:var(--surface2)!important;color:var(--muted)!important;font-size:22px!important;line-height:1!important;cursor:pointer!important}
html body .search-clear.hidden{display:none!important}
html body #installBtn:not(.hidden){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:132px!important;height:52px!important;padding:0 16px!important;border-radius:17px!important;background:linear-gradient(180deg,#ffad32,#ff870b)!important;color:#261300!important;border:1px solid rgba(255,136,0,.46)!important;box-shadow:0 10px 22px rgba(255,135,11,.25)!important;font-weight:1000!important;font-size:14px!important;overflow:visible!important}
html body #installBtn::before,
html body #installBtn::after{content:none!important;display:none!important}
html body #installBtn .install-cta-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;border-radius:999px!important;background:rgba(255,255,255,.42)!important;font-size:16px!important}
html body #installBtn .install-cta-label{display:inline!important;white-space:nowrap!important}

html body .hero-banner-copy p,
html body .hero-banner-copy p::before,
html body .hero-banner-copy p::after{border:0!important;text-decoration:none!important;box-shadow:none!important;background:none!important}
html body .hero-banner-copy p::before,
html body .hero-banner-copy p::after{content:none!important;display:none!important}
html body .hero-location-row{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;justify-self:start!important;max-width:100%!important}
html body .hero-city{display:inline-flex!important;align-items:center!important;min-height:32px!important;padding:6px 11px!important;border-radius:999px!important;background:rgba(5,16,40,.56)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;font-size:12px!important;font-weight:950!important;line-height:1!important;backdrop-filter:blur(8px)!important}
html body .hero-location-btn{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:34px!important;padding:6px 10px 6px 12px!important;border-radius:999px!important;background:linear-gradient(180deg,#ffb84b,#ff9220)!important;border:1px solid rgba(255,207,123,.7)!important;color:#211100!important;text-decoration:none!important;box-shadow:0 8px 20px rgba(0,0,0,.20)!important;font-size:11px!important;font-weight:900!important;line-height:1!important;white-space:nowrap!important}
html body .hero-location-btn b{font-weight:1000!important}
html body .hero-location-btn i{display:grid!important;place-items:center!important;width:21px!important;height:21px!important;border-radius:999px!important;background:rgba(255,255,255,.46)!important;font-style:normal!important}
html body .hero-location-btn:hover,
html body .hero-location-btn:focus-visible{transform:translateY(-1px)!important;filter:brightness(1.04)!important}

html body .home-quick-nav{scroll-behavior:auto!important;overscroll-behavior-inline:contain!important}
html body #promoBanners .promo-premium-shell{position:relative!important}
html body #promoBanners .promo-premium-track{scroll-behavior:smooth!important;scroll-snap-type:x mandatory!important;overscroll-behavior-inline:contain!important}
html body #promoBanners .promo-premium-slide{scroll-snap-align:start!important}
html body .promo-dots{position:absolute!important;left:50%!important;bottom:10px!important;z-index:8!important;display:flex!important;gap:7px!important;transform:translateX(-50%)!important;padding:6px 8px!important;border-radius:999px!important;background:rgba(3,10,24,.42)!important;backdrop-filter:blur(7px)!important}
html body .promo-dots button{width:9px!important;height:9px!important;padding:0!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.55)!important;box-shadow:0 0 0 1px rgba(0,0,0,.12)!important;cursor:pointer!important;transition:width .18s ease,background .18s ease!important}
html body .promo-dots button.active{width:25px!important;background:#ff9f1c!important}

html body .addon-item{grid-template-columns:74px minmax(0,1fr) 132px!important;align-items:center!important}
html body .addon-add-btn{grid-column:auto!important;width:132px!important;min-width:132px!important;min-height:48px!important;border-radius:15px!important;font-size:14px!important}
html body .addon-buy-control{display:grid!important;grid-template-columns:42px 42px 42px!important;align-items:center!important;justify-content:end!important;gap:3px!important;width:132px!important;min-width:132px!important;padding:4px!important;border-radius:16px!important;background:color-mix(in srgb,var(--accent) 14%,var(--surface2))!important;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line))!important}
html body .addon-buy-control button{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:0!important;border:0!important;border-radius:12px!important;background:var(--card)!important;color:var(--text)!important;font-size:24px!important;font-weight:1000!important;cursor:pointer!important;box-shadow:0 4px 10px rgba(15,23,42,.08)!important}
html body .addon-buy-control span{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;color:var(--text)!important;font-size:18px!important;font-weight:1000!important}

@media(max-width:760px){
  html body .topbar-inner{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"brand actions" "search search"!important;gap:10px!important;padding:11px 12px!important}
  html body .brand{grid-area:brand!important;min-width:0!important}
  html body .search{grid-area:search!important;width:100%!important;min-height:48px!important;border-radius:15px!important}
  html body .top-actions{grid-area:actions!important;display:flex!important;align-items:center!important;gap:6px!important}
  html body #installBtn:not(.hidden){width:auto!important;min-width:96px!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:0 10px!important;border-radius:14px!important;font-size:12px!important}
  html body #installBtn .install-cta-icon{width:22px!important;height:22px!important;font-size:14px!important}
  html body #installBtn .install-cta-label{display:inline!important}
  html body .hero-location-row{gap:5px!important}
  html body .hero-city{min-height:25px!important;padding:4px 8px!important;font-size:9px!important}
  html body .hero-location-btn{min-height:27px!important;padding:4px 6px 4px 8px!important;gap:4px!important;font-size:8px!important}
  html body .hero-location-btn i{width:17px!important;height:17px!important}
  html body .hero-location-btn b{display:none!important}
  html body .promo-dots{bottom:6px!important;padding:4px 6px!important}
  html body .addon-item{grid-template-columns:64px minmax(0,1fr) 112px!important;gap:8px!important}
  html body .addon-add-btn{width:112px!important;min-width:112px!important;min-height:46px!important}
  html body .addon-buy-control{grid-template-columns:34px 34px 34px!important;width:112px!important;min-width:112px!important;gap:2px!important}
  html body .addon-buy-control button,
  html body .addon-buy-control span{width:34px!important;height:38px!important}
}

@media(max-width:520px){
  html body .topbar-inner{grid-template-columns:1fr!important;grid-template-areas:"brand" "search" "actions"!important}
  html body .top-actions{display:grid!important;grid-template-columns:1fr 1fr 1.35fr!important;width:100%!important}
  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #installBtn:not(.hidden){width:100%!important;min-width:0!important;max-width:none!important;height:44px!important}
  html body #installBtn .install-cta-label{display:inline!important}
  html body .addon-item{grid-template-columns:58px minmax(0,1fr)!important;align-items:start!important}
  html body .addon-add-btn,
  html body .addon-buy-control{grid-column:1 / -1!important;width:100%!important;min-width:0!important;justify-content:center!important}
  html body .addon-buy-control{grid-template-columns:44px minmax(44px,70px) 44px!important}
  html body .addon-buy-control button,
  html body .addon-buy-control span{width:44px!important;height:42px!important}
}

@media(max-width:360px){
  html body #installBtn:not(.hidden){display:inline-flex!important}
  html body #installBtn .install-cta-icon{display:none!important}
  html body .hero-location-btn span{max-width:82px!important;overflow:hidden!important;text-overflow:ellipsis!important}
}

@media(prefers-reduced-motion:reduce){
  html body #promoBanners .promo-premium-track{scroll-behavior:auto!important}
}
html.perf-lite .promo-premium-slide{
  min-height:clamp(140px,44vw,240px)!important;
}
html.perf-lite .promo-picture img{
  content-visibility:auto;
}


/* v200 · Logo profesional + entrada app premium rápida */
.app-launch-splash{
  display:none;
  position:fixed;
  inset:0;
  z-index:9999;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.20),transparent 30%),
    radial-gradient(circle at 82% 10%,rgba(237,28,42,.16),transparent 31%),
    linear-gradient(180deg,#0b1224 0%,#111827 100%);
  color:#fff;
}
html.app-launching .app-launch-splash{display:flex}
.app-launch-splash.hide{opacity:0;transition:opacity .20s ease}
.app-launch-card{
  width:min(330px,92vw);
  display:grid;
  justify-items:center;
  gap:9px;
  padding:28px 24px 25px;
  border-radius:36px;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.13),transparent 48%),
    linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.052));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 30px 90px rgba(0,0,0,.48);
  overflow:hidden;
  position:relative;
}
.app-launch-card::before{
  content:"";
  position:absolute;
  inset:-45% -30% auto -30%;
  height:80%;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.14),transparent 65%);
  animation:appLaunchShine .95s ease-in-out infinite;
}
.app-launch-logo-wrap{
  width:138px;
  height:138px;
  display:grid;
  place-items:center;
  border-radius:34px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 38px rgba(0,0,0,.24);
  z-index:1;
}
.app-launch-card img{
  width:132px;
  height:132px;
  object-fit:contain;
  filter:drop-shadow(0 13px 18px rgba(0,0,0,.30));
}
.app-launch-card strong{
  z-index:1;
  font-size:32px;
  line-height:.95;
  letter-spacing:-.06em;
}
.app-launch-card span{
  z-index:1;
  color:rgba(255,255,255,.78);
  font-weight:850;
  font-size:14px;
}
.app-launch-bar{
  z-index:1;
  margin-top:9px;
  width:100%;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.13);
}
.app-launch-bar i{
  display:block;
  width:42%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#ff9f1c,#ffd267,#ed1c2a);
  animation:appLaunchLoad .62s ease-in-out infinite;
}
@keyframes appLaunchLoad{
  0%{transform:translateX(-110%)}
  100%{transform:translateX(250%)}
}
@keyframes appLaunchShine{
  0%{transform:translateX(-40%) rotate(8deg);opacity:.15}
  50%{opacity:.32}
  100%{transform:translateX(40%) rotate(8deg);opacity:.15}
}
#brandLogo,
.ios-install-brand img,
.detail-menu-logo img,
.app-launch-card img{
  image-rendering:auto!important;
}
@media(max-width:760px){
  .app-launch-card{width:min(304px,92vw);padding:25px 19px 22px}
  .app-launch-logo-wrap{width:120px;height:120px;border-radius:30px}
  .app-launch-card img{width:116px;height:116px}
  .app-launch-card strong{font-size:29px}
}
html.perf-lite .app-launch-card::before{animation:none!important;opacity:.12}
html.perf-lite .app-launch-card{box-shadow:0 18px 54px rgba(0,0,0,.38)!important}


/* v201 · Entrada profesional equilibrada + logo sin deformación */
.app-launch-splash.app-launch-pro{
  display:none;
  position:fixed;
  inset:0;
  z-index:9999;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 50% 16%,rgba(255,255,255,.08),transparent 28%),
    radial-gradient(circle at 30% 0%,rgba(237,28,42,.16),transparent 34%),
    radial-gradient(circle at 78% 5%,rgba(255,159,28,.14),transparent 32%),
    linear-gradient(180deg,#0a1020 0%,#111827 100%);
  color:#fff;
}
html.app-launching .app-launch-splash.app-launch-pro{display:flex}
.app-launch-splash.app-launch-pro.hide{opacity:0;transition:opacity .22s ease}
.app-launch-stage{
  width:min(340px,92vw);
  display:grid;
  justify-items:center;
  gap:12px;
  padding:30px 24px 26px;
  border-radius:38px;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 90px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08);
}
.app-launch-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.09) 44%,transparent 68%);
  transform:translateX(-110%);
  animation:tvLaunchSweep 1.05s ease-in-out infinite;
}
.app-launch-glow{
  position:absolute;
  width:210px;
  height:210px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,159,28,.28),rgba(237,28,42,.10) 42%,transparent 70%);
  filter:blur(6px);
  top:22px;
  left:50%;
  transform:translateX(-50%);
  opacity:.86;
}
.app-launch-emblem{
  width:176px;
  height:176px;
  display:grid;
  place-items:center;
  position:relative;
  z-index:1;
  border-radius:42px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 42px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.08);
  animation:tvLaunchLogoIn .72s cubic-bezier(.2,.9,.2,1) both;
}
.app-launch-emblem img{
  width:164px;
  height:164px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.28));
}
.app-launch-copy{
  position:relative;
  z-index:1;
  display:grid;
  justify-items:center;
  gap:4px;
  text-align:center;
}
.app-launch-copy strong{
  font-size:34px;
  line-height:.95;
  letter-spacing:-.06em;
}
.app-launch-copy span{
  color:rgba(255,255,255,.75);
  font-size:14px;
  font-weight:850;
  letter-spacing:.01em;
}
.app-launch-bar{
  position:relative;
  z-index:1;
  width:100%;
  height:7px;
  margin-top:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.13);
}
.app-launch-bar i{
  display:block;
  width:36%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#ed1c2a,#ff9f1c,#ffe0a3);
  animation:tvLaunchBar .70s ease-in-out infinite;
}
@keyframes tvLaunchLogoIn{
  0%{opacity:0;transform:translateY(8px) scale(.94)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes tvLaunchBar{
  0%{transform:translateX(-115%)}
  100%{transform:translateX(285%)}
}
@keyframes tvLaunchSweep{
  0%{transform:translateX(-120%)}
  100%{transform:translateX(120%)}
}
#brandLogo,
.ios-install-brand img,
.detail-menu-logo img,
.app-launch-emblem img{
  image-rendering:auto!important;
}
@media(max-width:760px){
  .app-launch-stage{width:min(312px,92vw);padding:27px 19px 23px;border-radius:34px}
  .app-launch-emblem{width:150px;height:150px;border-radius:36px}
  .app-launch-emblem img{width:142px;height:142px}
  .app-launch-copy strong{font-size:30px}
}
html.perf-lite .app-launch-stage::before{animation:none!important;opacity:.16}
html.perf-lite .app-launch-emblem{animation:none!important}
@media (prefers-reduced-motion:reduce){
  .app-launch-stage::before,
  .app-launch-emblem,
  .app-launch-bar i{animation:none!important}
}


/* v204 · Botones animados restaurados + carrito centrado */
#installBtn.install-cta{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-height:52px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#ffd36b 0%,#ffab29 46%,#ff8c12 100%)!important;
  border:1px solid rgba(255,200,92,.72)!important;
  color:#1f1300!important;
  box-shadow:0 14px 30px rgba(255,143,18,.32),0 0 0 3px rgba(255,190,70,.13)!important;
  animation:tvInstallAlive 1.15s ease-in-out infinite!important;
}
#installBtn.install-cta::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-45% -90%!important;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.72) 50%,transparent 62%)!important;
  transform:translateX(-60%)!important;
  animation:tvInstallAliveShine 1.55s linear infinite!important;
  z-index:-1!important;
}
#installBtn.install-cta::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-5px!important;
  border-radius:999px!important;
  border:2px solid rgba(255,190,70,.42)!important;
  animation:tvInstallAliveRing 1.15s ease-out infinite!important;
  pointer-events:none!important;
}
#installBtn.install-cta .install-cta-icon{
  width:28px!important;
  height:28px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 28px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.44)!important;
  font-size:20px!important;
  font-weight:1000!important;
  line-height:1!important;
  animation:tvInstallArrowDown .76s ease-in-out infinite!important;
}
#installBtn.install-cta .install-cta-label{
  white-space:nowrap!important;
  font-weight:1000!important;
  font-size:15px!important;
  line-height:1!important;
}

/* Rehabilitar animaciones aunque esté activo modo rendimiento */
html.perf-lite #installBtn.install-cta,
html.perf-lite .add-btn.choice-boom,
html.perf-lite #modalAddBtn.modal-choice-boom{
  animation:tvInstallAlive 1.35s ease-in-out infinite!important;
}
html.perf-lite #installBtn.install-cta::before,
html.perf-lite .add-btn.choice-boom::before,
html.perf-lite #modalAddBtn.modal-choice-boom::before{
  display:block!important;
  animation:tvInstallAliveShine 1.75s linear infinite!important;
}
html.perf-lite #installBtn.install-cta::after{
  display:block!important;
  animation:tvInstallAliveRing 1.35s ease-out infinite!important;
}
html.perf-lite #installBtn.install-cta .install-cta-icon{
  animation:tvInstallArrowDown .9s ease-in-out infinite!important;
}

/* Botones de elegir opciones / agregar con movimiento visible pero liviano */
.add-btn.choice-boom,
#modalAddBtn.modal-choice-boom{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  animation:tvChoiceAlive 1.18s ease-in-out infinite!important;
  box-shadow:0 16px 30px rgba(255,143,31,.30)!important;
}
.add-btn.choice-boom::before,
#modalAddBtn.modal-choice-boom::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-45% -85%!important;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.58) 50%,transparent 62%)!important;
  animation:tvInstallAliveShine 1.6s linear infinite!important;
  z-index:-1!important;
}

/* Carrito superior perfectamente centrado */
#cartTopBtn.cart-top{
  width:56px!important;
  min-width:56px!important;
  height:56px!important;
  min-height:56px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  place-items:center!important;
  flex:0 0 56px!important;
  border-radius:19px!important;
  line-height:0!important;
}
#cartTopBtn.cart-top svg{
  width:25px!important;
  height:25px!important;
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  transform:translateX(-1px)!important;
}
#cartTopBtn.cart-top .badge{
  top:-7px!important;
  right:-7px!important;
  transform:none!important;
  animation:tvCartBadgePulse 1.1s ease-in-out infinite!important;
}

/* Carrito flotante también centrado */
#cartFloatBtn.cart-float{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
}
#cartFloatBtn.cart-float svg{
  width:27px!important;
  height:27px!important;
  flex:0 0 auto!important;
  margin:0!important;
  transform:translateX(-1px)!important;
}
#cartFloatBtn.cart-float .badge{
  animation:tvCartBadgePulse 1.1s ease-in-out infinite!important;
}

@keyframes tvInstallAlive{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-1px) scale(1.035)}
}
@keyframes tvInstallAliveShine{
  to{transform:translateX(60%)}
}
@keyframes tvInstallAliveRing{
  0%{opacity:.55;transform:scale(.96)}
  100%{opacity:0;transform:scale(1.10)}
}
@keyframes tvInstallArrowDown{
  0%,100%{transform:translateY(-1px)}
  50%{transform:translateY(4px)}
}
@keyframes tvChoiceAlive{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-1px) scale(1.025)}
}
@keyframes tvCartBadgePulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.12)}
}

@media(max-width:840px){
  .top-actions{
    grid-template-columns:minmax(108px,.9fr) minmax(118px,1fr) 56px!important;
    align-items:center!important;
  }
  #cartTopBtn.cart-top{
    width:56px!important;
    min-width:56px!important;
    height:52px!important;
    min-height:52px!important;
    border-radius:18px!important;
  }
}
@media(max-width:420px){
  .top-actions{
    grid-template-columns:minmax(96px,.88fr) minmax(116px,1fr) 54px!important;
    gap:7px!important;
  }
  #cartTopBtn.cart-top{
    width:54px!important;
    min-width:54px!important;
    height:50px!important;
    min-height:50px!important;
  }
  #cartTopBtn.cart-top svg{
    width:24px!important;
    height:24px!important;
  }
  #installBtn.install-cta{
    padding:0 12px!important;
    gap:7px!important;
  }
  #installBtn.install-cta .install-cta-icon{
    width:25px!important;
    height:25px!important;
    flex-basis:25px!important;
    font-size:18px!important;
  }
  #installBtn.install-cta .install-cta-label{
    font-size:14px!important;
  }
}
@media (prefers-reduced-motion:reduce){
  #installBtn.install-cta,
  #installBtn.install-cta::before,
  #installBtn.install-cta::after,
  #installBtn.install-cta .install-cta-icon,
  .add-btn.choice-boom,
  .add-btn.choice-boom::before,
  #modalAddBtn.modal-choice-boom,
  #modalAddBtn.modal-choice-boom::before,
  #cartTopBtn.cart-top .badge,
  #cartFloatBtn.cart-float .badge{
    animation:none!important;
  }
}


/* v205 · Banners completos y adaptables en cualquier resolución */
.promo-banners{
  width:100%!important;
  overflow:hidden!important;
}
.promo-premium-shell,
.promo-premium-track,
.promo-premium-slide{
  width:100%!important;
}
.promo-premium-slide{
  aspect-ratio:2048/682!important;
  min-height:0!important;
  max-height:none!important;
  height:auto!important;
  position:relative!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.18),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
.promo-picture{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.promo-picture img,
.promo-premium-slide > img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.18),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
@media(max-width:560px){
  .promo-banners{border-radius:20px!important;margin-top:12px!important}
  .promo-premium-slide{
    aspect-ratio:2048/682!important;
    min-height:0!important;
  }
  .promo-click-chip{
    right:8px!important;
    bottom:7px!important;
    padding:6px 9px!important;
    font-size:10px!important;
  }
}
@media(max-width:380px){
  .promo-click-chip{display:none!important}
}

/* v205 · Nunca mostrar instalar en app instalada */
@media (display-mode: standalone){
  #installBtn{display:none!important}
}
html.pwa-standalone #installBtn,
html.pwa-installed #installBtn,
html.app-launching #installBtn{
  display:none!important;
}


/* v206 final: entrada zoom rápida y sin ver contenido detrás */
html.app-launching body > *:not(#appLaunchSplash):not(script){visibility:hidden!important}
html.app-launching #appLaunchSplash.app-launch-zoom{display:flex!important;visibility:visible!important}
#appLaunchSplash.app-launch-pro{display:none!important}
#appLaunchSplash.app-launch-zoom{position:fixed!important;inset:0!important}


/* v207 · Modal de opciones móvil más compacto y libre */
@media(max-width:760px){
  .modal{
    inset:max(6px,env(safe-area-inset-top)) 6px auto 6px!important;
    width:auto!important;
    max-height:calc(100dvh - 12px - env(safe-area-inset-top))!important;
    transform:translateY(8px) scale(.985)!important;
  }
  .modal.show{
    transform:translateY(0) scale(1)!important;
  }
  .modal-card{
    max-height:calc(100dvh - 12px - env(safe-area-inset-top))!important;
    border-radius:24px!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
  }
  .modal-head{
    padding:10px 12px!important;
    gap:10px!important;
    align-items:center!important;
  }
  .modal-product{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    min-width:0!important;
  }
  .modal-img{
    width:58px!important;
    height:58px!important;
    border-radius:16px!important;
  }
  .kicker{
    font-size:10px!important;
    margin-bottom:3px!important;
    letter-spacing:.11em!important;
  }
  .modal h3{
    font-size:clamp(21px,7vw,28px)!important;
    line-height:.96!important;
    letter-spacing:-.045em!important;
  }
  .modal-sub{
    margin-top:4px!important;
    font-size:12px!important;
    line-height:1.25!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  #modalCloseBtn{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    border-radius:15px!important;
    font-size:19px!important;
  }
  .modal-body{
    padding:10px 12px!important;
    gap:10px!important;
  }
  .choice{
    padding:12px!important;
    border-radius:19px!important;
  }
  .choice-top{
    margin-bottom:9px!important;
    gap:8px!important;
  }
  .choice h4{
    font-size:16px!important;
    line-height:1.05!important;
  }
  .choice p{
    margin-top:4px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  .choice-status{
    padding:6px 9px!important;
    font-size:10px!important;
  }
  .option-grid{
    gap:8px!important;
  }
  .option{
    min-height:50px!important;
    border-radius:15px!important;
    padding:10px 11px!important;
    gap:8px!important;
    font-size:13px!important;
  }
  .option small{
    font-size:10px!important;
    line-height:1.15!important;
  }
  .option .check{
    width:22px!important;
    height:22px!important;
    flex-basis:22px!important;
  }
  .qty-row{
    min-height:46px!important;
    padding:8px 10px!important;
    border-radius:15px!important;
  }
  .qty-control{
    height:36px!important;
  }
  .qty-control button{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }
  .qty-control input{
    width:38px!important;
    height:34px!important;
  }
  .note-area{
    min-height:68px!important;
    border-radius:15px!important;
    padding:10px!important;
    font-size:13px!important;
  }

  /* Pie inferior: total a la izquierda y botones juntos a la derecha */
  .modal-foot{
    display:grid!important;
    grid-template-columns:minmax(82px,.72fr) minmax(0,1.55fr)!important;
    gap:8px!important;
    align-items:end!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
  }
  .modal-total{
    min-width:0!important;
  }
  .modal-total small{
    font-size:9px!important;
    letter-spacing:.09em!important;
    line-height:1.05!important;
  }
  .modal-total b{
    font-size:25px!important;
    line-height:1!important;
  }
  .modal-actions{
    display:grid!important;
    grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
    align-items:end!important;
  }
  .modal-actions .btn{
    min-height:44px!important;
    height:44px!important;
    padding:0 8px!important;
    border-radius:15px!important;
    font-size:12.5px!important;
    line-height:1.05!important;
    width:100%!important;
    justify-content:center!important;
    white-space:normal!important;
    text-align:center!important;
  }
  #modalCancelBtn{
    background:var(--card)!important;
  }
  #modalAddBtn{
    font-size:12.5px!important;
    box-shadow:0 10px 22px rgba(255,143,31,.25)!important;
  }
}

@media(max-width:360px){
  .modal-foot{
    grid-template-columns:76px minmax(0,1fr)!important;
    gap:6px!important;
    padding-left:9px!important;
    padding-right:9px!important;
  }
  .modal-actions{
    gap:6px!important;
  }
  .modal-actions .btn{
    min-height:42px!important;
    height:42px!important;
    padding:0 6px!important;
    font-size:11.5px!important;
  }
  .modal-total b{
    font-size:22px!important;
  }
  .option{
    font-size:12.5px!important;
  }
}


/* v208 · Agregar con efecto + volver home + banners completos */
#modalAddBtn,
#modalAddBtn.modal-choice-boom,
.add-btn.choice-boom{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:linear-gradient(180deg,#ffbd45,#ff8a12)!important;
  color:#211100!important;
  box-shadow:0 14px 30px rgba(255,143,31,.34),0 0 0 3px rgba(255,178,63,.13)!important;
  animation:tvAddPulse208 1.08s ease-in-out infinite!important;
}
#modalAddBtn::before,
.add-btn.choice-boom::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-48% -90%!important;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.64) 50%,transparent 62%)!important;
  transform:translateX(-58%)!important;
  animation:tvAddShine208 1.45s linear infinite!important;
  z-index:-1!important;
}
#modalAddBtn::after{
  content:" →"!important;
  font-weight:1000!important;
  animation:tvAddArrow208 .72s ease-in-out infinite!important;
}
html.perf-lite #modalAddBtn,
html.perf-lite .add-btn.choice-boom{
  animation:tvAddPulse208 1.22s ease-in-out infinite!important;
}
html.perf-lite #modalAddBtn::before,
html.perf-lite .add-btn.choice-boom::before{
  display:block!important;
  animation:tvAddShine208 1.65s linear infinite!important;
}
@keyframes tvAddPulse208{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-1px) scale(1.035)}
}
@keyframes tvAddShine208{to{transform:translateX(58%)}}
@keyframes tvAddArrow208{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
body.cart-added-home #cartFloatBtn{
  animation:tvCartConfirm208 .6s ease-out 1!important;
}
@keyframes tvCartConfirm208{
  0%{transform:scale(1)}
  45%{transform:scale(1.12)}
  100%{transform:scale(1)}
}

/* Publicidades: siempre completas, sin recorte, en cualquier resolución */
.promo-banners,
.promo-premium-shell,
.promo-premium-track{
  width:100%!important;
  overflow:hidden!important;
}
.promo-premium-slide{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:2048/682!important;
  padding:0!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.16),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
.promo-picture{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.promo-picture img,
.promo-premium-slide > img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.16),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
@media(max-width:560px){
  .promo-banners{border-radius:20px!important;margin-top:12px!important}
  .promo-premium-slide{
    aspect-ratio:2048/682!important;
    min-height:0!important;
  }
  .promo-click-chip{
    right:8px!important;
    bottom:7px!important;
    padding:6px 9px!important;
    font-size:10px!important;
  }
}
@media(max-width:380px){
  .promo-click-chip{display:none!important}
}
@media (prefers-reduced-motion:reduce){
  #modalAddBtn,
  #modalAddBtn::before,
  #modalAddBtn::after,
  .add-btn.choice-boom,
  .add-btn.choice-boom::before{
    animation:none!important;
  }
}


/* v209 · Publicidades realmente adaptables + sin botones duplicados */
.promo-click-chip,
.promo-premium-hint{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* El contenedor no debe forzar alto ni recortar */
#promoBanners.promo-banners{
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  border-radius:22px!important;
}
#promoBanners .promo-premium-shell,
#promoBanners .promo-premium-track{
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  display:block!important;
  transform:none!important;
}
#promoBanners .promo-premium-slide{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}

/* El picture define el tamaño real por proporción del banner */
#promoBanners .promo-picture{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:2048/682!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
#promoBanners .promo-picture img,
#promoBanners .promo-premium-slide > img,
html.perf-lite #promoBanners .promo-picture img,
html.perf-lite #promoBanners .promo-premium-slide img{
  width:100%!important;
  max-width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}

/* En pantallas muy angostas: mantener completa, no alto fijo */
@media(max-width:560px){
  #promoBanners.promo-banners{
    margin-top:12px!important;
    border-radius:20px!important;
  }
  #promoBanners .promo-premium-slide{
    border-radius:20px!important;
  }
  #promoBanners .promo-picture{
    aspect-ratio:2048/682!important;
    min-height:0!important;
  }
}

/* Anula reglas anteriores que metían cover/min-height en modo rendimiento */
html.perf-lite #promoBanners .promo-premium-slide{
  min-height:0!important;
  aspect-ratio:auto!important;
}
html.perf-lite #promoBanners .promo-picture{
  aspect-ratio:2048/682!important;
}
html.perf-lite #promoBanners .promo-picture img{
  object-fit:contain!important;
  content-visibility:auto;
}


/* v210 · Corrección crítica: publicidades NO apiladas + banner completo */
#promoBanners.promo-banners{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  border-radius:22px!important;
  position:relative!important;
}

/* El shell vuelve a comportarse como visor, no como columna */
#promoBanners .promo-premium-shell{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  position:relative!important;
  display:block!important;
  border-radius:22px!important;
}

/* El track debe ser horizontal; esto corrige que una publicidad quede debajo de la otra */
#promoBanners .promo-premium-track{
  width:100%!important;
  max-width:100%!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  overflow:visible!important;
  gap:0!important;
  transform:none;
}

/* Cada publicidad ocupa exactamente una pantalla del carrusel */
#promoBanners .promo-premium-slide{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  position:relative!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}

/* El picture define la proporción real del banner */
#promoBanners .promo-picture{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:2048/682!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}

/* Sin recorte. Siempre se ve completo */
#promoBanners .promo-picture img,
#promoBanners .promo-premium-slide > img,
html.perf-lite #promoBanners .promo-picture img,
html.perf-lite #promoBanners .promo-premium-slide img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}

/* Ocultar botones/avisos superpuestos de publicidad */
#promoBanners .promo-click-chip,
#promoBanners .promo-premium-hint,
.promo-click-chip,
.promo-premium-hint{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Móvil: mantiene completo y evita alto artificial */
@media(max-width:760px){
  #promoBanners.promo-banners{
    margin-top:12px!important;
    border-radius:20px!important;
  }
  #promoBanners .promo-premium-shell,
  #promoBanners .promo-premium-slide{
    border-radius:20px!important;
  }
  #promoBanners .promo-picture{
    aspect-ratio:2048/682!important;
    min-height:0!important;
    height:auto!important;
  }
}

/* Anula reglas viejas que metían cover/min-height en modo rendimiento */
html.perf-lite #promoBanners .promo-premium-slide{
  min-height:0!important;
  aspect-ratio:auto!important;
}
html.perf-lite #promoBanners .promo-picture{
  aspect-ratio:2048/682!important;
}
html.perf-lite #promoBanners .promo-picture img{
  object-fit:contain!important;
  content-visibility:auto;
}


/* v211 · Promo con logo + botón PEDIR + logo sin recarga */
#productModal[data-type="promo-form"] .modal-img{
  object-fit:contain!important;
  background:#ffffff!important;
  padding:7px!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
#productModal[data-type="promo-form"] .modal-head{
  align-items:center!important;
}
#productModal[data-type="promo-form"] .kicker{
  color:#ffb32c!important;
}
#brandTap{
  cursor:default!important;
}

/* Publicidad: carrusel horizontal, una sola visible, imagen completa */
#promoBanners.promo-banners{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  border-radius:22px!important;
  position:relative!important;
}
#promoBanners .promo-premium-shell{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  position:relative!important;
  display:block!important;
  border-radius:22px!important;
  background:#0b1326!important;
}
#promoBanners .promo-premium-track{
  width:100%!important;
  max-width:100%!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  gap:0!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch!important;
}
#promoBanners .promo-premium-track::-webkit-scrollbar{
  display:none!important;
}
#promoBanners .promo-premium-slide{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  position:relative!important;
  scroll-snap-align:start!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
#promoBanners .promo-picture{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:2048/682!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}
#promoBanners .promo-picture img,
#promoBanners .promo-premium-slide > img,
html.perf-lite #promoBanners .promo-picture img,
html.perf-lite #promoBanners .promo-premium-slide img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,159,28,.12),transparent 36%),
    linear-gradient(135deg,#0b1326,#18213a)!important;
}

/* Botón pedido único sobre la publicidad */
#promoBanners .promo-order-btn{
  position:absolute!important;
  right:12px!important;
  bottom:10px!important;
  z-index:4!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#ffbd45,#ff8a12)!important;
  color:#1e1100!important;
  font-size:13px!important;
  font-weight:1000!important;
  letter-spacing:.06em!important;
  box-shadow:0 12px 24px rgba(255,143,18,.35),0 0 0 2px rgba(255,255,255,.24) inset!important;
  pointer-events:none!important;
}
#promoBanners .promo-order-btn::after{
  content:" →";
  margin-left:5px;
}

/* Ocultar etiquetas viejas definitivamente */
#promoBanners .promo-click-chip,
#promoBanners .promo-premium-hint,
.promo-click-chip,
.promo-premium-hint{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Móvil: siempre completo, sin apilar, sin alto artificial */
@media(max-width:760px){
  #promoBanners.promo-banners{
    margin-top:12px!important;
    border-radius:20px!important;
  }
  #promoBanners .promo-premium-shell,
  #promoBanners .promo-premium-slide{
    border-radius:20px!important;
  }
  #promoBanners .promo-picture{
    aspect-ratio:2048/682!important;
    min-height:0!important;
    height:auto!important;
  }
  #promoBanners .promo-order-btn{
    right:8px!important;
    bottom:7px!important;
    min-height:30px!important;
    padding:0 13px!important;
    font-size:11px!important;
  }
}
@media(max-width:360px){
  #promoBanners .promo-order-btn{
    min-height:28px!important;
    padding:0 11px!important;
    font-size:10px!important;
  }
}

/* Anular reglas viejas de modo rendimiento */
html.perf-lite #promoBanners .promo-premium-slide{
  min-height:0!important;
  aspect-ratio:auto!important;
}
html.perf-lite #promoBanners .promo-picture{
  aspect-ratio:2048/682!important;
}
html.perf-lite #promoBanners .promo-picture img{
  object-fit:contain!important;
  content-visibility:auto;
}


/* v212 · Menú de categorías a la izquierda + sin carrito superior */
#cartTopBtn,
.cart-top{
  display:none!important;
}
#categoryMenuBtn{
  position:relative!important;
  min-width:64px!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 14px!important;
}
#categoryMenuBtn #cartBadge{
  display:none!important;
}
.hamburger-lines{
  width:23px;
  height:18px;
  display:inline-grid;
  gap:4px;
  align-content:center;
  justify-content:stretch;
  flex:0 0 23px;
}
.hamburger-lines i{
  display:block;
  height:3px;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 10px rgba(255,159,28,.18);
}
.category-menu-label{
  font-weight:1000;
}
@media(max-width:760px){
  .top-actions{
    display:grid!important;
    grid-template-columns:64px minmax(88px,.82fr) minmax(118px,1fr)!important;
    gap:7px!important;
    align-items:center!important;
  }
  #categoryMenuBtn,
  #themeBtn,
  #installBtn{
    min-height:50px!important;
    height:50px!important;
    border-radius:18px!important;
  }
  #themeBtn{padding:0 10px!important}
  #installBtn{padding:0 12px!important}
}
@media(max-width:370px){
  .top-actions{
    grid-template-columns:54px minmax(78px,.72fr) minmax(112px,1fr)!important;
    gap:6px!important;
  }
  #categoryMenuBtn{
    min-width:54px!important;
    padding:0!important;
  }
  #categoryMenuBtn .category-menu-label{
    display:none!important;
  }
  .hamburger-lines{
    width:24px;
    height:19px;
    flex-basis:24px;
  }
}

/* v234: categorías tipo acordeón real. Una sola categoría activa por vez. */
.category.is-active{
  border-color:color-mix(in srgb,var(--brand) 72%,var(--line) 28%)!important;
  box-shadow:0 18px 48px rgba(255,159,28,.20), var(--shadow)!important;
}
.category.is-active .category-header{
  background:linear-gradient(90deg,rgba(255,159,28,.13),rgba(255,159,28,.03))!important;
}
.category-selected-pulse{
  animation:tvCategorySelected234 .9s ease-out 1;
}
@keyframes tvCategorySelected234{
  0%{outline:0 solid rgba(255,159,28,.45)}
  35%{outline:8px solid rgba(255,159,28,.18)}
  100%{outline:0 solid rgba(255,159,28,0)}
}
.category-jump-btn.is-active{
  border-color:color-mix(in srgb,var(--brand) 76%,var(--line) 24%)!important;
  background:linear-gradient(90deg,rgba(255,159,28,.18),var(--card))!important;
}
.category-jump-btn.is-active small{
  background:var(--brand)!important;
  color:#1d1200!important;
}
.category-jump-btn > *{pointer-events:none;}
.category-menu-backdrop{
  position:fixed;
  inset:0;
  z-index:74;
  background:rgba(6,10,20,.42);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}
.category-menu-backdrop.show{
  opacity:1;
  pointer-events:auto;
}
.category-menu-drawer{
  position:fixed;
  z-index:75;
  left:0;
  top:0;
  bottom:0;
  width:min(360px,88vw);
  background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface2) 82%,var(--surface) 18%));
  border-right:1px solid var(--line);
  box-shadow:24px 0 70px rgba(0,0,0,.34);
  transform:translateX(-105%);
  transition:transform .22s ease;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
.category-menu-drawer.show{
  transform:translateX(0);
}
.category-menu-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:20px 18px 14px;
  border-bottom:1px solid var(--line);
}
.category-menu-head b{
  display:block;
  font-size:30px;
  line-height:.95;
  letter-spacing:-.055em;
}
.category-menu-head span{
  display:block;
  color:var(--muted);
  font-size:13px;
  font-weight:850;
  margin-top:5px;
}
.category-menu-list{
  overflow:auto;
  padding:14px;
  display:grid;
  gap:9px;
  align-content:start;
}
.category-jump-btn{
  width:100%;
  min-height:52px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--card);
  color:var(--text);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  text-align:left;
  font-weight:1000;
  box-shadow:0 8px 18px rgba(0,0,0,.08);
}
.category-jump-btn span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.category-jump-btn small{
  min-width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,159,28,.16);
  color:var(--text);
  font-size:12px;
  font-weight:1000;
}

/* Al agregar: no recarga ni manda al Home. Solo confirma carrito */
body.cart-added-home #cartFloatBtn{
  animation:tvCartConfirm212 .55s ease-out 1!important;
}
@keyframes tvCartConfirm212{
  0%{transform:scale(1)}
  45%{transform:scale(1.10)}
  100%{transform:scale(1)}
}

/* Mantener banners completos y sin apilar */
#promoBanners .promo-premium-track{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  gap:0!important;
  scroll-snap-type:x mandatory!important;
}
#promoBanners .promo-premium-slide{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  scroll-snap-align:start!important;
}
#promoBanners .promo-picture{
  display:block!important;
  width:100%!important;
  aspect-ratio:2048/682!important;
}
#promoBanners .promo-picture img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* Source block: tv-v218-card-quantity-morph-style */
/* v218 · Control de cantidad en cards manteniendo el aspecto original */
.product-actions .card-control-slot{min-width:0;width:100%;display:block}
.product-actions .card-control-slot>.add-btn,
.product-actions .card-buy-control{width:100%!important;min-height:48px!important;height:48px!important}
.card-buy-control{position:relative;isolation:isolate;overflow:hidden;border-radius:17px;display:grid;align-items:center;transform-origin:center;will-change:transform,opacity}
.card-buy-control.is-empty{display:block;background:transparent;box-shadow:none}
.card-buy-control .card-add-main{width:100%!important;height:48px!important;min-height:48px!important;border-radius:17px!important;display:grid!important;place-items:center!important;text-align:center!important}
.card-buy-control.is-active{grid-template-columns:46px minmax(38px,1fr) 46px;background:linear-gradient(180deg,var(--accent),var(--accent2));box-shadow:0 14px 25px color-mix(in srgb,var(--accent) 24%, transparent);border:0;color:#fff;animation:tvCardMorphIn .22s cubic-bezier(.2,.86,.2,1)}
.card-buy-control.is-active::after{content:"";position:absolute;inset:-45% -30%;z-index:-1;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.24),transparent 70%);transform:translateX(-130%) rotate(8deg);opacity:0}
.card-buy-control.is-active.qty-step-plus::after{animation:tvCardShine .42s ease-out}
.card-buy-control.is-active.qty-step-minus{animation:tvCardMinus .22s ease-out}
.card-qty-btn{height:48px;border:0;background:rgba(255,255,255,.10);color:#fff;font-size:25px;line-height:1;font-weight:1000;cursor:pointer;display:grid;place-items:center;touch-action:manipulation;transition:transform .14s ease,background .14s ease}
.card-qty-btn:hover{background:rgba(255,255,255,.18)}
.card-qty-btn:active{transform:scale(.88);background:rgba(0,0,0,.10)}
.card-qty-minus{border-right:1px solid rgba(255,255,255,.16)}
.card-qty-plus{border-left:1px solid rgba(255,255,255,.16)}
.card-qty-number{min-width:38px;text-align:center;color:#fff;font-size:17px;font-weight:1000;letter-spacing:-.02em;display:grid;place-items:center;font-variant-numeric:tabular-nums;text-shadow:0 1px 8px rgba(0,0,0,.16)}
.card-qty-number.qty-pop{animation:tvQtyPop .25s cubic-bezier(.2,.95,.25,1.35)}
@keyframes tvCardMorphIn{0%{opacity:.64;transform:scale(.88)}70%{opacity:1;transform:scale(1.04)}100%{opacity:1;transform:scale(1)}}
@keyframes tvQtyPop{0%{transform:scale(.72)}60%{transform:scale(1.22)}100%{transform:scale(1)}}
@keyframes tvCardShine{0%{opacity:0;transform:translateX(-130%) rotate(8deg)}18%{opacity:1}100%{opacity:0;transform:translateX(130%) rotate(8deg)}}
@keyframes tvCardMinus{0%{transform:scale(1)}45%{transform:scale(.94)}100%{transform:scale(1)}}
@media(max-width:760px){.product-actions .card-control-slot>.add-btn,.product-actions .card-buy-control{height:46px!important;min-height:46px!important}.card-buy-control.is-active{grid-template-columns:44px minmax(34px,1fr) 44px}.card-qty-btn{height:46px;font-size:24px}.card-qty-number{font-size:16px}}

/* Source block: tv-v219-cart-logo-size-style */
/* v219 · Carrito flotante solo icono, más visible y tamaño configurable desde admin */
:root{--cart-float-size:76px;--cart-float-icon-size:36px}
#cartFloatBtn.cart-float{
  width:var(--cart-float-size)!important;
  min-width:var(--cart-float-size)!important;
  height:var(--cart-float-size)!important;
  padding:0!important;
  gap:0!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  box-shadow:0 22px 44px rgba(255,127,18,.42),0 0 0 4px rgba(255,255,255,.12)!important;
}
#cartFloatBtn.cart-float>span:not(.badge){display:none!important}
#cartFloatBtn.cart-float svg{width:var(--cart-float-icon-size)!important;height:var(--cart-float-icon-size)!important;display:block!important}
#cartFloatBtn.cart-float .badge{top:-7px!important;right:-7px!important;min-width:26px!important;height:26px!important;font-size:12px!important}
@media(max-width:760px){#cartFloatBtn.cart-float{right:16px!important;bottom:16px!important}}

/* Source block: tv-v221-menu-category-logos */
/* v221 · Logos/íconos visuales en el menú y en el panel de categorías */
.category-header.category-header-with-logo{
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
}
.category-logo,
.category-jump-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:52px;
  height:52px;
  border-radius:18px;
  background:
    radial-gradient(circle at 34% 28%,rgba(255,255,255,.22),transparent 38%),
    color-mix(in srgb,var(--accent) 18%, var(--card));
  border:1px solid color-mix(in srgb,var(--accent) 36%, var(--line));
  box-shadow:
    0 12px 24px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.14);
  font-size:25px;
  line-height:1;
}
.category-copy{min-width:0}
.category-title{line-height:1.02}
.category-header:hover .category-logo,
.category-jump-btn:hover .category-jump-icon{
  transform:translateY(-1px) scale(1.03);
  border-color:color-mix(in srgb,var(--accent) 58%, var(--line));
}
.category-logo,
.category-jump-icon{transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.category-jump-btn{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  justify-content:stretch!important;
  min-height:66px!important;
  padding:9px 10px!important;
  border-radius:22px!important;
}
.category-jump-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.category-jump-btn small{
  justify-self:end;
}
@media(max-width:560px){
  .category-header.category-header-with-logo{
    gap:11px!important;
    padding:15px 14px!important;
  }
  .category-logo,
  .category-jump-icon{
    width:46px;
    height:46px;
    border-radius:16px;
    font-size:22px;
  }
  .category-title{
    font-size:clamp(22px,7vw,30px)!important;
  }
  .category-meta{
    font-size:12px!important;
  }
  .category-jump-btn{
    min-height:60px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .category-logo,
  .category-jump-icon{transition:none!important}
  .category-header:hover .category-logo,
  .category-jump-btn:hover .category-jump-icon{transform:none!important}
}

/* Source block: tv-v220-home-ux-style */
/* v220 · Home UX: jerarquía clara, accesos rápidos y CTAs sin tocar catálogo ni carrito */
.tv-home-ux{
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
  align-items:stretch!important;
  gap:22px!important;
  padding:clamp(22px,3vw,42px)!important;
  min-height:318px;
  background:
    radial-gradient(circle at 10% 4%, color-mix(in srgb,var(--accent) 24%, transparent), transparent 34%),
    radial-gradient(circle at 96% 12%, color-mix(in srgb,var(--green) 12%, transparent), transparent 28%),
    linear-gradient(135deg,color-mix(in srgb,var(--surface) 96%, transparent),color-mix(in srgb,var(--surface2) 92%, var(--accent) 8%))!important;
}
.tv-home-ux::after{
  content:"";position:absolute;right:-90px;bottom:-130px;width:360px;height:360px;border-radius:999px;
  background:radial-gradient(circle,color-mix(in srgb,var(--accent) 16%, transparent),transparent 68%);
  pointer-events:none;
}
.hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:1}
.home-eyebrow{width:max-content;max-width:100%;display:inline-flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:18px;border-radius:999px;background:color-mix(in srgb,var(--card) 94%, transparent);border:1px solid var(--line);box-shadow:0 10px 24px rgba(0,0,0,.06);color:var(--muted);font-weight:1000;font-size:13px;letter-spacing:.02em}
.home-live-dot{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px color-mix(in srgb,var(--green) 17%, transparent);flex:0 0 auto}
.tv-home-ux h1{max-width:12ch!important;margin-bottom:14px!important;text-wrap:balance}
.home-lead{display:block!important;margin:0!important;color:var(--muted)!important;font-size:clamp(18px,1.55vw,23px)!important;font-weight:850!important;line-height:1.36!important;max-width:55ch!important;text-wrap:pretty}
.home-actions{margin-top:24px!important;gap:12px!important}.home-actions .btn{min-height:58px;border-radius:20px;padding:0 22px}.home-cta{font-size:18px}.home-cta-secondary{background:color-mix(in srgb,var(--card) 96%, transparent);box-shadow:var(--shadow2)}
.home-proof-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px;max-width:720px}.home-proof{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 92%, transparent);border-radius:20px;padding:13px 14px;box-shadow:0 10px 24px rgba(0,0,0,.04)}.home-proof b{display:block;font-size:clamp(24px,2.5vw,34px);line-height:.95;letter-spacing:-.05em;color:var(--accent)}.home-proof span{display:block;margin-top:5px;color:var(--muted);font-weight:900;font-size:13px;line-height:1.2}
.home-info{position:relative;z-index:1;align-content:center!important}.home-info .info{min-height:78px;border-radius:24px;padding:18px 20px;transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease}.home-info .info:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 32%, var(--line));box-shadow:0 16px 34px rgba(0,0,0,.08)}
.home-quick-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0 6px}.home-quick-nav button{min-height:88px;border-radius:24px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%, transparent);color:var(--text);box-shadow:var(--shadow2);display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-content:center;align-items:center;text-align:left;padding:14px;transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease}.home-quick-nav button:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 38%, var(--line));box-shadow:0 18px 36px rgba(0,0,0,.11)}.home-quick-nav button:active{transform:scale(.98)}.home-quick-nav span{grid-row:1/3;width:42px;height:42px;border-radius:16px;background:color-mix(in srgb,var(--accent) 17%, transparent);display:grid;place-items:center;font-size:22px}.home-quick-nav b{font-size:16px;line-height:1.05;letter-spacing:-.02em}.home-quick-nav small{margin-top:3px;color:var(--muted);font-weight:850;line-height:1.15}
#promoBanners{margin-top:18px!important}.promo-premium-shell{border-radius:30px!important;overflow:hidden!important;background:color-mix(in srgb,var(--surface) 92%, transparent)!important;border:1px solid var(--line)!important;box-shadow:var(--shadow)!important}.promo-premium-slide{position:relative!important;min-height:168px!important}.promo-premium-slide::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.22),transparent 34%,rgba(0,0,0,.10));opacity:.36}.promo-order-btn{z-index:4!important;right:18px!important;bottom:16px!important;border-radius:999px!important;padding:10px 15px!important;background:linear-gradient(180deg,var(--accent),var(--accent2))!important;color:#211100!important;box-shadow:0 14px 28px rgba(0,0,0,.22)!important}.promo-premium-slide.is-img-broken{display:grid!important;place-items:center!important;min-height:190px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%, var(--surface)),color-mix(in srgb,var(--surface2) 92%, var(--accent) 8%))!important}.promo-premium-slide.is-img-broken .promo-picture{display:none!important}.promo-premium-slide.is-img-broken::before{content:attr(data-fallback-title);font-size:clamp(24px,4vw,42px);font-weight:1000;letter-spacing:-.05em;color:var(--text);text-align:center;padding:28px;max-width:760px;line-height:.96}.promo-premium-slide.is-img-broken::after{opacity:.08}
.search:focus-within{border-color:color-mix(in srgb,var(--accent) 54%, var(--line));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%, transparent),0 12px 28px rgba(0,0,0,.06)}.pill-btn:focus-visible,.home-quick-nav button:focus-visible,.home-actions .btn:focus-visible{outline:4px solid color-mix(in srgb,var(--accent) 34%, transparent);outline-offset:3px}
@media(max-width:1100px){.tv-home-ux{grid-template-columns:1fr!important}.home-info{grid-template-columns:repeat(3,minmax(0,1fr))}.home-info .info{align-items:start}.home-quick-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:840px){.topbar-inner{align-items:stretch}.tv-home-ux{padding:22px!important;border-radius:28px!important}.home-eyebrow{font-size:12px;margin-bottom:14px}.home-actions{display:grid!important;grid-template-columns:1fr 1fr}.home-actions .btn{width:100%;padding:0 14px}.home-proof-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-info{grid-template-columns:1fr}.home-quick-nav{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;-webkit-overflow-scrolling:touch}.home-quick-nav button{min-width:186px;scroll-snap-align:start}.promo-premium-slide{min-height:148px!important}}
@media(max-width:560px){.tv-home-ux{gap:18px!important;min-height:0}.tv-home-ux h1{font-size:clamp(40px,12vw,58px)!important;max-width:10.5ch!important}.home-lead{font-size:16px!important;line-height:1.42!important}.home-actions{grid-template-columns:1fr}.home-proof-row{grid-template-columns:1fr}.home-proof{display:flex;align-items:center;gap:10px;padding:11px 12px}.home-proof b{min-width:42px}.home-proof span{margin-top:0}.home-info .info{min-height:70px;padding:14px 15px}.home-info .info b{font-size:17px}.home-quick-nav{margin-top:12px}.home-quick-nav button{min-width:172px;min-height:78px;border-radius:20px}.promo-premium-shell{border-radius:24px!important}.promo-premium-slide{min-height:132px!important}.promo-order-btn{right:12px!important;bottom:10px!important;padding:8px 12px!important;font-size:12px!important}}
.category.ux-focus-category{outline:4px solid color-mix(in srgb,var(--accent) 44%, transparent);outline-offset:5px;animation:tvUxCategoryPulse .9s ease-out}
@keyframes tvUxCategoryPulse{0%{transform:scale(.99)}42%{transform:scale(1.01)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.home-info .info,.home-quick-nav button{transition:none!important}.home-info .info:hover,.home-quick-nav button:hover{transform:none!important}}

/* Source block: tv-v225-neon-naranja-limpia-carrito-pedido */
/* v225 · Inicio neón naranja + Snacks/Helados visibles + magia al agregar al carrito */
.tv-home-ux .home-eyebrow,
.tv-home-ux .home-lead,
.tv-home-ux .home-actions,
.tv-home-ux .home-proof-row{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
.home-info .info{
  position:relative!important;
  overflow:hidden!important;
  border-color:rgba(255,145,0,.88)!important;
  background:
    radial-gradient(circle at 8% 50%, rgba(255,145,0,.18), transparent 34%),
    linear-gradient(135deg, rgba(255,145,0,.12), color-mix(in srgb,var(--card) 94%, transparent))!important;
  box-shadow:
    0 0 0 1px rgba(255,145,0,.32),
    0 0 20px rgba(255,145,0,.38),
    0 0 52px rgba(255,145,0,.22),
    0 14px 34px rgba(0,0,0,.11)!important;
  animation:tvInfoOrangeBreath 2.8s ease-in-out infinite!important;
}
.home-info .info::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background:linear-gradient(115deg, transparent 0%, rgba(255,184,77,.08) 28%, rgba(255,184,77,.42) 48%, rgba(255,184,77,.10) 66%, transparent 100%)!important;
  transform:translateX(-125%);
  opacity:.86;
  pointer-events:none;
  animation:tvInfoOrangeSweep 4s ease-in-out infinite!important;
}
.home-info .info svg{color:#ff9500!important;filter:drop-shadow(0 0 9px rgba(255,145,0,.72))!important}
.home-info .info small{color:color-mix(in srgb,#ff9500 74%, var(--muted) 26%)!important}
.home-info .info b{text-shadow:0 0 13px rgba(255,145,0,.30)!important}
.home-info .info:hover{
  border-color:rgba(255,179,64,.98)!important;
  box-shadow:0 0 0 1px rgba(255,145,0,.46),0 0 28px rgba(255,145,0,.50),0 0 68px rgba(255,145,0,.30),0 18px 38px rgba(0,0,0,.12)!important;
}
.category[data-cat="Snacks"] .category-logo,
.category[data-cat="Helados"] .category-logo,
.category[data-cat="Bebidas"] .category-logo,
.category-jump-btn[data-cat-jump="Snacks"] .category-jump-icon,
.category-jump-btn[data-cat-jump="Helados"] .category-jump-icon,
.category-jump-btn[data-cat-jump="Bebidas"] .category-jump-icon{
  background:radial-gradient(circle at 34% 28%, rgba(255,255,255,.26), transparent 38%), color-mix(in srgb,#ff9500 22%, var(--card))!important;
  border-color:rgba(255,145,0,.55)!important;
  box-shadow:0 0 0 1px rgba(255,145,0,.18),0 0 22px rgba(255,145,0,.24),0 12px 24px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.cart-magic-flyer{
  position:fixed;
  z-index:9999;
  width:54px;
  height:54px;
  margin:-27px 0 0 -27px;
  border-radius:18px;
  pointer-events:none;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(234,246,255,.86));
  border:1px solid rgba(255,145,0,.46);
  box-shadow:0 0 0 4px rgba(255,145,0,.10),0 0 32px rgba(255,145,0,.42),0 16px 34px rgba(0,0,0,.22);
  animation:tvCartMagicFly .86s cubic-bezier(.16,.85,.24,1) forwards;
  will-change:transform,opacity,filter;
}
.cart-magic-flyer img{width:100%;height:100%;object-fit:cover;display:block}.cart-magic-flyer span{font-size:26px}
.cart-magic-spark{
  position:fixed;
  z-index:9998;
  width:7px;
  height:7px;
  margin:-3.5px 0 0 -3.5px;
  border-radius:999px;
  pointer-events:none;
  background:#ffb347;
  box-shadow:0 0 10px rgba(255,179,71,.90),0 0 20px rgba(255,179,71,.46);
  animation:tvCartSpark .66s ease-out forwards;
}
#cartFloatBtn.cart-float.cart-magic-pulse{animation:tvCartPulse .72s cubic-bezier(.2,.95,.2,1)!important;box-shadow:0 0 0 7px rgba(255,145,0,.18),0 0 34px rgba(255,145,0,.48),0 22px 44px rgba(255,127,18,.42)!important}
@keyframes tvInfoOrangeBreath{0%,100%{box-shadow:0 0 0 1px rgba(255,145,0,.28),0 0 18px rgba(255,145,0,.30),0 0 46px rgba(255,145,0,.18),0 14px 34px rgba(0,0,0,.10)}50%{box-shadow:0 0 0 1px rgba(255,145,0,.46),0 0 28px rgba(255,145,0,.48),0 0 68px rgba(255,145,0,.28),0 16px 36px rgba(0,0,0,.11)}}
@keyframes tvInfoOrangeSweep{0%{transform:translateX(-125%)}42%,100%{transform:translateX(125%)}}
@keyframes tvCartMagicFly{0%{opacity:0;transform:translate3d(0,0,0) scale(.62) rotate(-8deg);filter:blur(1px)}12%{opacity:1;transform:translate3d(0,-10px,0) scale(1) rotate(0);filter:blur(0)}72%{opacity:1;transform:translate3d(calc(var(--dx) * .82),calc(var(--dy) * .82 - 18px),0) scale(.48) rotate(12deg)}100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(.20) rotate(20deg);filter:blur(.5px)}}
@keyframes tvCartSpark{0%{opacity:1;transform:translate3d(0,0,0) scale(1)}100%{opacity:0;transform:translate3d(var(--sx),var(--sy),0) scale(.15)}}
@keyframes tvCartPulse{0%{transform:scale(1)}34%{transform:scale(1.14)}64%{transform:scale(.96)}100%{transform:scale(1)}}
@media(max-width:560px){.cart-magic-flyer{width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:16px}.home-info .info{box-shadow:0 0 0 1px rgba(255,145,0,.30),0 0 18px rgba(255,145,0,.30),0 10px 26px rgba(0,0,0,.08)!important}}
@media(prefers-reduced-motion:reduce){.home-info .info,.home-info .info::before,.cart-magic-flyer,.cart-magic-spark,#cartFloatBtn.cart-float.cart-magic-pulse{animation:none!important}}

/* Source block: tv-v226-css-polish-final-secondary */
/* v226 · Pulido CSS final: corrige accesos rápidos, hero, neón naranja y carrito flotante sin tocar lógica ni productos. */
:root{
  --tv-orange:#ff9500;
  --tv-orange-2:#ffb347;
  --tv-card-radius:26px;
}
html body .tv-home-ux{
  align-items:center!important;
  gap:clamp(18px,2.4vw,34px)!important;
  min-height:clamp(280px,28vw,390px)!important;
  margin-top:clamp(14px,2vw,22px)!important;
  margin-bottom:clamp(16px,2vw,24px)!important;
  border-radius:34px!important;
  overflow:hidden!important;
}
html body .tv-home-ux .home-eyebrow,
html body .tv-home-ux .home-lead,
html body .tv-home-ux .home-actions,
html body .tv-home-ux .home-proof-row{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html body .tv-home-ux .hero-copy{
  justify-content:center!important;
  min-height:100%!important;
}
html body .tv-home-ux h1{
  margin:0!important;
  max-width:12ch!important;
  text-wrap:balance!important;
}
html body .home-info{
  display:grid!important;
  gap:14px!important;
  align-content:center!important;
}
html body .home-info .info{
  position:relative!important;
  overflow:hidden!important;
  min-height:78px!important;
  border:1px solid rgba(255,149,0,.88)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 9% 50%, rgba(255,149,0,.18), transparent 36%),
    linear-gradient(135deg, rgba(255,149,0,.10), color-mix(in srgb,var(--card) 95%, transparent))!important;
  box-shadow:
    0 0 0 1px rgba(255,149,0,.30),
    0 0 20px rgba(255,149,0,.36),
    0 0 54px rgba(255,149,0,.20),
    0 14px 34px rgba(0,0,0,.10)!important;
  transform:translateZ(0)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
  animation:tvV226OrangeBreath 3s ease-in-out infinite!important;
}
html body .home-info .info::before{
  content:""!important;
  position:absolute!important;
  inset:-2px!important;
  border-radius:inherit!important;
  background:linear-gradient(115deg, transparent 0%, rgba(255,190,88,.08) 28%, rgba(255,190,88,.42) 48%, rgba(255,190,88,.10) 66%, transparent 100%)!important;
  transform:translateX(-125%)!important;
  opacity:.85!important;
  pointer-events:none!important;
  animation:tvV226OrangeSweep 4.2s ease-in-out infinite!important;
}
html body .home-info .info > *{position:relative!important;z-index:1!important}
html body .home-info .info svg{color:var(--tv-orange)!important;filter:drop-shadow(0 0 9px rgba(255,149,0,.75))!important}
html body .home-info .info small{color:color-mix(in srgb,var(--tv-orange) 76%, var(--muted) 24%)!important}
html body .home-info .info b{text-shadow:0 0 14px rgba(255,149,0,.28)!important}
html body .home-info .info:hover,
html body .home-info .info:focus-within{
  transform:translateY(-2px)!important;
  border-color:rgba(255,190,88,.98)!important;
  box-shadow:
    0 0 0 1px rgba(255,149,0,.44),
    0 0 30px rgba(255,149,0,.50),
    0 0 70px rgba(255,149,0,.28),
    0 18px 38px rgba(0,0,0,.13)!important;
}
html body .home-quick-nav{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  width:min(100%,1384px)!important;
  margin:clamp(12px,1.6vw,22px) auto clamp(14px,1.8vw,24px)!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .home-quick-nav button{
  -webkit-appearance:none!important;
  appearance:none!important;
  border:1px solid color-mix(in srgb,var(--tv-orange) 38%, var(--line))!important;
  outline:0!important;
  min-height:86px!important;
  width:100%!important;
  margin:0!important;
  padding:14px 15px!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 18% 50%, rgba(255,149,0,.16), transparent 32%),
    linear-gradient(135deg, color-mix(in srgb,var(--surface) 96%, transparent), color-mix(in srgb,var(--surface2) 93%, var(--tv-orange) 7%))!important;
  color:var(--text)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.14)!important;
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:3px!important;
  align-items:center!important;
  align-content:center!important;
  justify-content:start!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
  user-select:none!important;
  position:relative!important;
  overflow:hidden!important;
  transform:translateZ(0)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease!important;
}
html body .home-quick-nav button::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg, transparent 0%, rgba(255,255,255,.18) 42%, transparent 70%)!important;
  opacity:0!important;
  transform:translateX(-45%)!important;
  transition:opacity .18s ease, transform .45s ease!important;
  pointer-events:none!important;
}
html body .home-quick-nav button:hover,
html body .home-quick-nav button:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(255,149,0,.78)!important;
  box-shadow:0 0 0 1px rgba(255,149,0,.20),0 0 26px rgba(255,149,0,.22),0 18px 38px rgba(0,0,0,.12)!important;
}
html body .home-quick-nav button:hover::after,
html body .home-quick-nav button:focus-visible::after{opacity:1!important;transform:translateX(70%)!important}
html body .home-quick-nav button:active{transform:translateY(0) scale(.985)!important}
html body .home-quick-nav button > span{
  grid-row:1 / span 2!important;
  width:50px!important;
  height:50px!important;
  border-radius:18px!important;
  display:grid!important;
  place-items:center!important;
  font-size:23px!important;
  line-height:1!important;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.30), transparent 38%),
    color-mix(in srgb,var(--tv-orange) 24%, var(--card))!important;
  border:1px solid rgba(255,149,0,.42)!important;
  box-shadow:0 0 0 1px rgba(255,149,0,.14),0 0 18px rgba(255,149,0,.20),0 10px 20px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body .home-quick-nav button > b{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:16px!important;
  font-weight:1000!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
}
html body .home-quick-nav button > small{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.16!important;
}
html body #promoBanners:empty{
  display:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body #categoryMenuBtn{position:relative!important}
html body #categoryMenuBtn #cartBadge{display:none!important}
html body #cartFloatBtn.cart-float{
  --cart-float-size:76px;
  width:var(--cart-float-size)!important;
  min-width:var(--cart-float-size)!important;
  max-width:var(--cart-float-size)!important;
  height:var(--cart-float-size)!important;
  padding:0!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  gap:0!important;
  right:18px!important;
  bottom:18px!important;
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;
  box-shadow:0 0 0 1px rgba(255,149,0,.24),0 18px 38px rgba(255,127,18,.34),0 0 28px rgba(255,149,0,.22)!important;
}
html body #cartFloatBtn.cart-float > span:not(.badge){display:none!important}
html body #cartFloatBtn.cart-float svg{
  width:calc(var(--cart-float-size) * .48)!important;
  height:calc(var(--cart-float-size) * .48)!important;
  display:block!important;
}
html body #cartFloatBtn.cart-float .badge{
  display:grid!important;
  top:-7px!important;
  right:-7px!important;
  min-width:27px!important;
  height:27px!important;
  padding:0 7px!important;
  font-size:12px!important;
  border-radius:999px!important;
}
html body #cartFloatBtn.cart-float .badge.hidden{display:none!important}
@keyframes tvV226OrangeBreath{
  0%,100%{box-shadow:0 0 0 1px rgba(255,149,0,.28),0 0 18px rgba(255,149,0,.30),0 0 46px rgba(255,149,0,.18),0 14px 34px rgba(0,0,0,.10)}
  50%{box-shadow:0 0 0 1px rgba(255,149,0,.46),0 0 28px rgba(255,149,0,.48),0 0 68px rgba(255,149,0,.28),0 16px 36px rgba(0,0,0,.11)}
}
@keyframes tvV226OrangeSweep{
  0%{transform:translateX(-125%)}
  42%,100%{transform:translateX(125%)}
}
@media(max-width:1100px){
  html body .home-quick-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body .home-info{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  html body .tv-home-ux{border-radius:28px!important;padding:20px!important;min-height:0!important}
  html body .home-info{grid-template-columns:1fr!important}
  html body .home-quick-nav{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    padding:2px 2px 8px!important;
    margin-top:12px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .home-quick-nav::-webkit-scrollbar{height:0!important}
  html body .home-quick-nav button{
    min-width:210px!important;
    min-height:80px!important;
    scroll-snap-align:start!important;
    border-radius:22px!important;
  }
  html body #cartFloatBtn.cart-float{--cart-float-size:70px;right:16px!important;bottom:16px!important}
}
@media(max-width:520px){
  html body .tv-home-ux h1{font-size:clamp(40px,12vw,58px)!important;max-width:10.5ch!important}
  html body .home-info .info{min-height:70px!important;padding:14px 15px!important}
  html body .home-info .info b{font-size:17px!important}
  html body .home-quick-nav button{min-width:190px!important;grid-template-columns:46px minmax(0,1fr)!important;padding:12px!important}
  html body .home-quick-nav button > span{width:46px!important;height:46px!important;border-radius:16px!important}
}
@media(prefers-reduced-motion:reduce){
  html body .home-info .info,
  html body .home-info .info::before,
  html body .home-quick-nav button,
  html body .home-quick-nav button::after{animation:none!important;transition:none!important}
}

/* v231 · Optimización real: imágenes externas, apartados más claros y menos trabajo visual en celulares. */
.category{content-visibility:auto;contain-intrinsic-size:420px;}
.category-header{min-height:86px;}
.category-title{line-height:1.02;}
.products{align-items:stretch;}
.product{contain:layout paint;}
.product-media img{content-visibility:auto;}
.perf-lite .hero:before,.perf-lite .home-bg-orb,.perf-lite .promo-premium-shell:before{display:none!important;}
.perf-lite .product,.perf-lite .category,.perf-lite .info,.perf-lite .notice{box-shadow:0 8px 22px rgba(0,0,0,.08)!important;}
.perf-lite *{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;}
@media(max-width:760px){
  .section-head{align-items:flex-start;margin-top:22px;}
  .category-header{padding:17px 16px;min-height:78px;}
  .category-meta{font-size:13px;}
  .category-body{padding:0 12px 14px;}
  .products{gap:12px;}
  .product{border-radius:22px;}
  .product-body{padding:12px;}
  .product h3{font-size:18px;}
  .price{font-size:18px;}
}

/* Source block: tv-v234-horario-minutos */
/* v234 · Horario personalizado con hora, minutos 01-59 y AM/PM, sin reloj nativo. */
.order-time-card{
  border:1px solid var(--line);
  border-radius:18px;
  background:color-mix(in srgb,var(--card) 82%, var(--accent) 5%);
  padding:12px;
}
.order-time-card.active{
  border-color:color-mix(in srgb,var(--accent) 52%, var(--line));
  box-shadow:0 12px 28px rgba(255,127,18,.12);
}
.order-time-toggle{
  display:flex;
  align-items:center;
  gap:12px;
  cursor:pointer;
  color:var(--text);
}
.order-time-toggle input{
  width:22px;
  height:22px;
  accent-color:var(--accent);
  flex:0 0 auto;
}
.order-time-toggle b{
  display:block;
  font-size:15px;
  line-height:1.15;
}
.order-time-toggle small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
  font-weight:850;
}
.order-time-picker{
  display:grid;
  gap:8px;
  margin-top:12px;
}
.order-time-picker.hidden{display:none!important;}
.order-time-selects{
  display:grid;
  grid-template-columns:minmax(74px,1fr) 14px minmax(74px,1fr) 96px;
  gap:8px;
  align-items:center;
}
.order-hour-select,.order-minute-select,.order-ampm-select{
  text-align:center;
  text-align-last:center;
  font-size:22px;
  font-weight:1000;
  letter-spacing:.03em;
  appearance:none;
  -webkit-appearance:none;
  background-image:none!important;
}
.order-time-colon{
  text-align:center;
  font-size:24px;
  font-weight:1000;
  color:var(--text);
}
.order-ampm-select{font-size:18px;}
.order-time-hint{
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
@media(max-width:520px){
  .order-time-selects{grid-template-columns:minmax(64px,1fr) 12px minmax(64px,1fr) 82px;gap:6px;}
  .order-hour-select,.order-minute-select{font-size:24px;}
  .order-ampm-select{font-size:16px;}
}

/* Source block: tv-v235-compact-speed-theme */
/* v235 · Vista compacta rápida + modo día/noche solo icono sol/luna. */
html body .topbar-inner{position:relative!important;}
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  position:absolute!important;
  top:10px!important;
  right:12px!important;
  z-index:8!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  padding:0!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  gap:0!important;
  box-shadow:0 12px 24px rgba(0,0,0,.10),0 0 0 1px color-mix(in srgb,var(--accent) 24%, transparent)!important;
  background:color-mix(in srgb,var(--card) 88%, var(--accent) 12%)!important;
}
html body #themeBtn .theme-text,
html body #themeBtn .theme-text small,
html body #themeBtn .theme-text b{display:none!important;}
html body #themeBtn .theme-orb{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  border-radius:999px!important;
  font-size:22px!important;
  line-height:1!important;
  background:linear-gradient(180deg,#fff7dc,#ffd36d)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55),0 8px 18px rgba(255,159,28,.18)!important;
}
html[data-theme="dark"] body #themeBtn .theme-orb{
  background:linear-gradient(180deg,#202944,#0f172a)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 8px 20px rgba(0,0,0,.28)!important;
}
html body .top-actions{padding-right:58px!important;}
html body #installBtn.install-cta{white-space:nowrap!important;}

/* Menos trabajo visual sin perder estética */
html body .product,
html body .category,
html body .promo-banners,
html body .home-quick-nav button{content-visibility:auto;}
html body .product{contain:layout paint;contain-intrinsic-size:230px;}
html body .category{contain-intrinsic-size:320px;}
html body .product-media img{transform:translateZ(0);backface-visibility:hidden;}
@media(max-width:980px){
  html body .app{padding:8px 8px 96px!important;}
  html body .topbar{padding-top:4px!important;}
  html body .topbar-inner{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:8px!important;
    padding-right:62px!important;
    border-radius:24px!important;
    box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
  }
  html body .brand{gap:9px!important;min-height:46px!important;padding-right:0!important;}
  html body .brand-logo{width:46px!important;height:46px!important;border-radius:16px!important;}
  html body .brand-logo img{padding:3px!important;}
  html body .brand-title{font-size:28px!important;letter-spacing:-.045em!important;line-height:.94!important;}
  html body .brand-tag{font-size:12px!important;margin-top:3px!important;line-height:1.15!important;}
  html body .search{order:2!important;min-height:46px!important;border-radius:20px!important;padding:0 13px!important;gap:9px!important;}
  html body .search svg{width:18px!important;height:18px!important;}
  html body .search input{font-size:14.5px!important;letter-spacing:-.015em!important;}
  html body .top-actions{
    order:3!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
    gap:8px!important;
    padding-right:0!important;
  }
  html body #categoryMenuBtn,
  html body #installBtn.install-cta{
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    border-radius:18px!important;
    padding:0 12px!important;
    justify-content:center!important;
    box-shadow:0 8px 18px rgba(0,0,0,.08)!important;
  }
  html body #installBtn.install-cta{grid-column:auto!important;font-size:14px!important;}
  html body #categoryMenuBtn .category-menu-label{display:inline!important;font-size:14px!important;}
  html body #categoryMenuBtn .hamburger-lines{width:20px!important;height:16px!important;}
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{top:8px!important;right:8px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;}
  html body #themeBtn .theme-orb{width:34px!important;height:34px!important;flex-basis:34px!important;font-size:20px!important;}
}
@media(max-width:760px){
  html body .hero.tv-home-ux{margin-top:10px!important;border-radius:22px!important;padding:12px!important;}
  html body .tv-home-ux h1{font-size:clamp(27px,8vw,40px)!important;line-height:.95!important;max-width:12ch!important;margin-bottom:6px!important;}
  html body .hero p{font-size:14px!important;line-height:1.25!important;}
  html body .home-info{display:none!important;}
  html body .home-quick-nav{gap:8px!important;margin-top:8px!important;padding-bottom:6px!important;}
  html body .home-quick-nav button{min-width:148px!important;min-height:58px!important;border-radius:17px!important;padding:8px!important;grid-template-columns:36px minmax(0,1fr)!important;}
  html body .home-quick-nav button > span{width:36px!important;height:36px!important;border-radius:13px!important;font-size:18px!important;}
  html body .home-quick-nav b{font-size:13px!important;}
  html body .home-quick-nav small{font-size:10px!important;}
  html body .promo-banners{margin:10px 0 8px!important;border-radius:18px!important;}
  html body .promo-premium-slide{min-height:92px!important;aspect-ratio:16/6.2!important;}
  html body .section-head{margin:14px 0 8px!important;}
  html body .section-head h2{font-size:28px!important;line-height:1!important;}
  html body .section-head p{font-size:12px!important;line-height:1.25!important;}
  html body .categories{gap:10px!important;}
  html body .category{border-radius:20px!important;box-shadow:0 8px 18px rgba(0,0,0,.08)!important;}
  html body .category-header{min-height:58px!important;padding:11px 12px!important;}
  html body .category-title{font-size:20px!important;gap:8px!important;}
  html body .category-meta{font-size:11.5px!important;margin-top:2px!important;}
  html body .chev{width:38px!important;height:38px!important;border-radius:14px!important;}
  html body .category-body{padding:0 8px 10px!important;}
  html body .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  html body .product{border-radius:18px!important;box-shadow:0 7px 16px rgba(0,0,0,.08)!important;contain-intrinsic-size:215px!important;}
  html body .product-media{aspect-ratio:1.55/1!important;}
  html body .product[data-cat="Bebidas"] .product-media img{padding:6px!important;}
  html body .product-body{padding:9px!important;gap:7px!important;}
  html body .product-top{gap:6px!important;align-items:flex-start!important;}
  html body .product h3{font-size:14.5px!important;line-height:1.08!important;letter-spacing:-.025em!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  html body .price{font-size:14.5px!important;line-height:1.1!important;}
  html body .product-actions{grid-template-columns:1fr 1fr!important;gap:6px!important;}
  html body .details-btn,
  html body .add-btn{min-height:38px!important;border-radius:13px!important;font-size:13px!important;padding:0 8px!important;}
  html body .card-buy-control.is-active{min-height:38px!important;border-radius:13px!important;}
  html body .card-qty-btn{height:38px!important;min-width:32px!important;font-size:18px!important;}
  html body .card-qty-number{font-size:14px!important;}
  html body #cartFloatBtn.cart-float{--cart-float-size:62px!important;right:12px!important;bottom:12px!important;}
  html body #cartFloatBtn.cart-float .badge{min-width:24px!important;height:24px!important;font-size:11px!important;}
}
@media(max-width:560px){
  html body .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .product h3{font-size:13.5px!important;}
  html body .price{font-size:13.5px!important;}
  html body .details-btn,
  html body .add-btn{font-size:12.5px!important;}
}
@media(max-width:370px){
  html body .product-actions{grid-template-columns:1fr!important;}
  html body .product-media{aspect-ratio:1.35/1!important;}
}

/* Source block: tv-v236-premium-system */
/* v236 · Sistema visual unificado, legible y responsive */
:root{
  --bg:#f3eee6;
  --bg2:#fffaf2;
  --surface:#fffdf9;
  --surface2:#f8f2e9;
  --card:#ffffff;
  --text:#171b2d;
  --muted:#6e6d76;
  --line:rgba(31,27,24,.11);
  --accent:#f49318;
  --accent2:#e56f0f;
  --green:#1fa55b;
  --shadow:0 18px 50px rgba(57,39,22,.10);
  --shadow2:0 10px 28px rgba(34,27,20,.08);
}
html[data-theme="dark"]{
  --bg:#101421;
  --bg2:#171c2b;
  --surface:#171d2d;
  --surface2:#1d2436;
  --card:#20283b;
  --text:#f8f7f4;
  --muted:#b5b6c0;
  --line:rgba(255,255,255,.11);
  --shadow:0 20px 52px rgba(0,0,0,.30);
  --shadow2:0 12px 30px rgba(0,0,0,.22);
}
html body{
  background:
    radial-gradient(circle at 8% 2%,rgba(244,147,24,.12),transparent 28%),
    linear-gradient(180deg,var(--bg2),var(--bg))!important;
  color:var(--text)!important;
  letter-spacing:-.01em;
}
html body .app{max-width:1320px!important;padding:12px 18px 110px!important}

/* Cabecera */
html body .topbar{top:8px!important;padding:0!important}
html body .topbar-inner{
  grid-template-columns:minmax(275px,auto) minmax(270px,1fr) auto!important;
  gap:16px!important;
  align-items:center!important;
  padding:10px 12px!important;
  border:1px solid color-mix(in srgb,var(--line) 82%, transparent)!important;
  border-radius:24px!important;
  background:color-mix(in srgb,var(--surface) 92%, transparent)!important;
  box-shadow:0 12px 34px rgba(42,31,22,.11)!important;
  backdrop-filter:blur(20px) saturate(1.25)!important;
}
html body .brand{gap:11px!important;min-width:0!important}
html body .brand-logo{
  width:58px!important;height:58px!important;border-radius:18px!important;
  padding:2px!important;background:#fff!important;border:1px solid rgba(28,34,58,.09)!important;
  box-shadow:0 8px 20px rgba(28,25,23,.10)!important;
}
html body .brand-logo img{width:100%!important;height:100%!important;padding:0!important;object-fit:contain!important;transform:scale(1.58)!important}
html body .brand-title{font-size:32px!important;line-height:.94!important;letter-spacing:-.055em!important}
html body .brand-tag{margin-top:4px!important;font-size:13px!important;line-height:1.2!important;color:var(--muted)!important}
html body .search{
  min-height:52px!important;border-radius:18px!important;padding:0 16px!important;gap:11px!important;
  background:color-mix(in srgb,var(--card) 96%, transparent)!important;
  box-shadow:none!important;transition:border-color .18s ease,box-shadow .18s ease!important;
}
html body .search input{font-size:15px!important;font-weight:800!important}
html body .search:focus-within{border-color:color-mix(in srgb,var(--accent) 62%, var(--line))!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%, transparent)!important}
html body .top-actions{display:flex!important;width:auto!important;gap:8px!important;padding:0!important;align-items:center!important}
html body .top-actions .pill-btn,
html body #categoryMenuBtn,
html body #installBtn.install-cta{
  position:static!important;min-height:52px!important;height:52px!important;border-radius:17px!important;
  padding:0 15px!important;background:var(--card)!important;border:1px solid var(--line)!important;
  box-shadow:none!important;color:var(--text)!important;font-size:14px!important;white-space:nowrap!important;
}
html body #categoryMenuBtn{min-width:98px!important;justify-content:center!important}
html body #installBtn.install-cta{min-width:136px!important;background:linear-gradient(180deg,var(--accent),var(--accent2))!important;border:0!important;color:#251307!important;box-shadow:0 9px 22px rgba(229,111,15,.20)!important}
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  position:static!important;top:auto!important;right:auto!important;z-index:auto!important;
  width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;
  padding:0!important;border-radius:17px!important;background:var(--card)!important;border:1px solid var(--line)!important;
  box-shadow:none!important;
}
html body #themeBtn .theme-orb{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:20px!important;box-shadow:none!important}
html body .hamburger-lines i{height:2px!important;border-radius:99px!important}

/* Hero */
html body .hero.tv-home-ux{
  margin-top:20px!important;min-height:400px!important;
  grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)!important;
  gap:34px!important;align-items:center!important;padding:46px!important;border-radius:32px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:
    radial-gradient(circle at 88% 10%,rgba(244,147,24,.30),transparent 27%),
    radial-gradient(circle at 15% 90%,rgba(255,255,255,.07),transparent 32%),
    linear-gradient(135deg,#171b30 0%,#292c45 62%,#343044 100%)!important;
  box-shadow:0 24px 58px rgba(27,24,32,.22)!important;
}
html body .hero.tv-home-ux::before{display:none!important}
html body .hero.tv-home-ux::after{width:420px!important;height:420px!important;right:-140px!important;bottom:-190px!important;background:radial-gradient(circle,rgba(244,147,24,.22),transparent 68%)!important}
html body .tv-home-ux .home-eyebrow{display:inline-flex!important;visibility:visible!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.13)!important;color:rgba(255,255,255,.78)!important;box-shadow:none!important}
html body .tv-home-ux h1{color:#fff!important;font-size:clamp(54px,5.6vw,78px)!important;line-height:.91!important;max-width:10.5ch!important;margin:0 0 16px!important;text-shadow:none!important}
html body .tv-home-ux .home-lead{display:block!important;visibility:visible!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;color:rgba(255,255,255,.75)!important;font-size:clamp(17px,1.45vw,21px)!important;line-height:1.42!important;max-width:48ch!important;text-shadow:none!important}
html body .tv-home-ux .home-actions{display:flex!important;visibility:visible!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;margin:24px 0 0!important;padding:0!important;gap:10px!important}
html body .home-actions .btn{min-height:54px!important;border-radius:16px!important;padding:0 20px!important}
html body .home-cta-secondary{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.16)!important;color:#fff!important;box-shadow:none!important}
html body .tv-home-ux .home-proof-row{display:grid!important;visibility:visible!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;margin:20px 0 0!important;padding:0!important;gap:8px!important}
html body .tv-home-ux .home-proof{padding:11px 12px!important;border-radius:15px!important;background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.11)!important;box-shadow:none!important}
html body .tv-home-ux .home-proof b{font-size:24px!important;color:#ffb044!important}
html body .tv-home-ux .home-proof span{color:rgba(255,255,255,.67)!important;font-size:11px!important}
html body .home-info{display:grid!important;gap:10px!important;align-content:center!important}
html body .home-info .info{
  min-height:82px!important;padding:16px 18px!important;border-radius:19px!important;
  border:1px solid rgba(255,255,255,.13)!important;background:rgba(255,255,255,.08)!important;
  box-shadow:none!important;animation:none!important;backdrop-filter:blur(10px)!important;
}
html body .home-info .info::before{display:none!important;animation:none!important}
html body .home-info .info svg{color:#ffad3b!important;filter:none!important}
html body .home-info .info small{color:rgba(255,255,255,.56)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.08em!important}
html body .home-info .info b{color:#fff!important;font-size:18px!important;text-shadow:none!important}
html body .home-info .info:hover{transform:translateY(-2px)!important;border-color:rgba(255,176,68,.45)!important;box-shadow:none!important}

/* Accesos rápidos y promociones */
html body .home-quick-nav{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;
  width:100%!important;margin:14px 0!important;padding:0!important;overflow:visible!important;
}
html body .home-quick-nav button{
  min-width:0!important;min-height:82px!important;width:100%!important;padding:13px!important;
  grid-template-columns:44px minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:2px 10px!important;
  border:1px solid var(--line)!important;border-radius:20px!important;
  background:var(--surface)!important;box-shadow:0 8px 22px rgba(43,32,22,.07)!important;
  color:var(--text)!important;animation:none!important;content-visibility:visible!important;
}
html body .home-quick-nav button::before,
html body .home-quick-nav button::after{display:none!important;animation:none!important}
html body .home-quick-nav button > span{
  grid-row:1/3!important;width:44px!important;height:44px!important;border-radius:14px!important;
  font-size:21px!important;background:color-mix(in srgb,var(--accent) 13%, var(--card))!important;
  border:1px solid color-mix(in srgb,var(--accent) 24%, var(--line))!important;box-shadow:none!important;
}
html body .home-quick-nav button > b{font-size:15px!important;line-height:1.1!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
html body .home-quick-nav button > small{font-size:12px!important;line-height:1.15!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
html body .home-quick-nav button:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--accent) 45%, var(--line))!important;box-shadow:0 12px 28px rgba(43,32,22,.10)!important}
html body .home-quick-nav button[data-home-category="Empanadas"]{border-color:color-mix(in srgb,var(--accent) 40%, var(--line))!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%, var(--surface)),var(--surface))!important}
html body #promoBanners.promo-banners{margin:14px 0 24px!important;border-radius:24px!important;border:1px solid var(--line)!important;background:var(--surface)!important;box-shadow:var(--shadow2)!important;content-visibility:visible!important}
html body #promoBanners .promo-picture{aspect-ratio:3/1!important}
html body #promoBanners .promo-picture img{object-fit:cover!important}
html body .promo-premium-slide::after{opacity:.14!important}

/* Menú y apartados */
html body .section-head{margin:32px 2px 16px!important;align-items:flex-end!important}
html body .section-kicker{display:block;margin-bottom:8px;color:var(--accent2);font-size:12px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}
html body .section-head h2{font-size:clamp(36px,4.2vw,56px)!important;line-height:.95!important;letter-spacing:-.06em!important}
html body #menuTitle::before{display:none!important}
html body .section-head p{font-size:15px!important;margin-top:8px!important}
html body .categories{gap:12px!important}
html body .category{
  border:1px solid var(--line)!important;border-radius:22px!important;background:var(--surface)!important;
  box-shadow:0 8px 24px rgba(47,35,25,.065)!important;
  content-visibility:visible!important;contain:none!important;contain-intrinsic-size:auto!important;
  scroll-margin-top:112px!important;transition:border-color .18s ease,box-shadow .18s ease!important;
}
html body .category.open{border-color:color-mix(in srgb,var(--accent) 28%, var(--line))!important;box-shadow:0 14px 36px rgba(47,35,25,.09)!important}
html body .category-header{
  min-height:76px!important;padding:12px 15px!important;gap:13px!important;
  grid-template-columns:48px minmax(0,1fr) 42px!important;border-radius:22px!important;
}
html body .category-header:hover{background:color-mix(in srgb,var(--accent) 4%, transparent)!important}
html body .category-logo,
html body .category-jump-icon{
  width:48px!important;height:48px!important;border-radius:15px!important;font-size:22px!important;
  background:color-mix(in srgb,var(--accent) 12%, var(--card))!important;
  border:1px solid color-mix(in srgb,var(--accent) 24%, var(--line))!important;box-shadow:none!important;
}
html body .category-title{font-size:24px!important;line-height:1.04!important;letter-spacing:-.035em!important}
html body .category-meta{font-size:12px!important;margin-top:4px!important;color:var(--muted)!important}
html body .chev{width:42px!important;height:42px!important;border-radius:14px!important;box-shadow:none!important}
html body .category.open .chev{background:color-mix(in srgb,var(--accent) 12%, var(--card))!important;color:var(--accent2)!important}
html body .category-body{padding:0 14px 14px!important}
html body .products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important}
html body .product{
  border:1px solid var(--line)!important;border-radius:20px!important;background:var(--card)!important;
  box-shadow:0 7px 20px rgba(37,29,22,.07)!important;overflow:hidden!important;
  content-visibility:visible!important;contain:none!important;contain-intrinsic-size:auto!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
html body .product:hover{transform:translateY(-3px)!important;border-color:color-mix(in srgb,var(--accent) 28%, var(--line))!important;box-shadow:0 14px 30px rgba(37,29,22,.11)!important}
html body .product-media{aspect-ratio:1.28/1!important;background:var(--surface2)!important}
html body .product-media img{width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;content-visibility:visible!important}
html body .product[data-cat="Bebidas"] .product-media img{object-fit:contain!important;padding:14px!important;background:#fff!important}
html body .product-body{padding:13px!important;gap:9px!important}
html body .product-top{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;align-items:start!important}
html body .product h3{font-size:18px!important;line-height:1.12!important;letter-spacing:-.025em!important;min-height:2.25em!important}
html body .price{font-size:18px!important;color:var(--accent2)!important;line-height:1!important}
html body .desc{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;min-height:2.7em!important;color:var(--muted)!important;font-size:12px!important;font-weight:750!important;line-height:1.35!important}
html body .product-actions{display:grid!important;grid-template-columns:minmax(78px,.75fr) minmax(118px,1.25fr)!important;gap:7px!important;margin-top:auto!important}
html body .details-btn,
html body .add-btn,
html body .product-actions .card-buy-control{min-height:44px!important;height:44px!important;border-radius:14px!important;font-size:13px!important}
html body .details-btn{background:transparent!important;box-shadow:none!important}
html body .add-btn{background:linear-gradient(180deg,var(--accent),var(--accent2))!important;color:#251307!important;box-shadow:0 8px 18px rgba(229,111,15,.18)!important}
html body .card-qty-btn{height:44px!important}

/* Empanadas: tarjeta protagonista y CTA claro */
html body .product[data-cat="Empanadas"]{
  grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(240px,34%) minmax(0,1fr)!important;
  min-height:250px!important;border-color:color-mix(in srgb,var(--accent) 35%, var(--line))!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%, var(--card)),var(--card))!important;
}
html body .product[data-cat="Empanadas"] .product-media{height:100%!important;min-height:250px!important;aspect-ratio:auto!important}
html body .product[data-cat="Empanadas"] .product-body{padding:28px!important;align-content:center!important;gap:14px!important}
html body .product[data-cat="Empanadas"] h3{font-size:32px!important;min-height:0!important}
html body .product[data-cat="Empanadas"] .price{font-size:24px!important}
html body .product[data-cat="Empanadas"] .desc{font-size:15px!important;line-height:1.45!important;min-height:0!important;-webkit-line-clamp:3!important;max-width:62ch!important}
html body .product[data-cat="Empanadas"] .product-actions{grid-template-columns:140px minmax(180px,240px)!important;justify-content:start!important;margin-top:4px!important}
html body .product[data-cat="Empanadas"] .details-btn,
html body .product[data-cat="Empanadas"] .add-btn{height:50px!important;min-height:50px!important;font-size:15px!important;border-radius:16px!important}

/* Modales, carrito y formularios */
html body .modal-card{border-radius:26px!important;border-color:var(--line)!important;background:var(--surface)!important;box-shadow:0 32px 90px rgba(0,0,0,.34)!important}
html body .modal-head{padding:16px 18px!important}
html body .modal-img{border-radius:18px!important}
html body .modal-body{padding:16px 18px!important}
html body .choice{border-radius:20px!important;background:var(--surface2)!important;padding:15px!important}
html body .option{border-radius:15px!important;min-height:66px!important}
html body .option.selected{background:#20263a!important;color:#fff!important;border-color:#20263a!important;box-shadow:0 8px 20px rgba(27,32,50,.16)!important}
html body #productModal[data-type="empanadas"] .option-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
html body #productModal[data-type="empanadas"] .emp-grid{gap:9px!important}
html body #productModal[data-type="empanadas"] .emp-row{border-radius:15px!important;padding:11px 12px!important}
html body #productModal[data-type="empanadas"] .qty-control{border-radius:13px!important}
html body .modal-foot{padding:14px 18px calc(14px + env(safe-area-inset-bottom))!important}
html body .modal-total b{font-size:28px!important}
html body .modal-actions .btn:disabled{opacity:.46!important;cursor:not-allowed!important;box-shadow:none!important;filter:saturate(.45)!important}
html body .drawer{width:min(480px,100vw)!important;background:var(--surface)!important}
html body .drawer-head{padding:18px!important}
html body .drawer-title{font-size:32px!important}
html body .drawer-body{padding:14px 16px!important}
html body .cart-item{border-radius:18px!important}
html body .checkout-panel{border-radius:20px!important}
html body .input,
html body .textarea{border-radius:13px!important;background:var(--card)!important}
html body #cartFloatBtn.cart-float{
  --cart-float-size:64px!important;width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;
  right:18px!important;bottom:18px!important;border:1px solid rgba(255,255,255,.30)!important;
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;
  box-shadow:0 14px 30px rgba(229,111,15,.32)!important;animation:none!important;
}
html body #cartFloatBtn.cart-float svg{width:28px!important;height:28px!important}
html body .category-menu-drawer{background:var(--surface)!important}
html body .category-jump-btn{border-radius:15px!important;box-shadow:none!important;background:var(--card)!important}
html body .txhouse-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#1f2a44,#35466f);color:#fff;font-size:18px;font-weight:1000;letter-spacing:-.04em;box-shadow:0 8px 18px rgba(20,28,48,.18)}

/* Accesibilidad */
html body button:focus-visible,
html body a:focus-visible,
html body input:focus-visible,
html body select:focus-visible,
html body textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 46%, transparent)!important;outline-offset:3px!important}

@media(max-width:1120px){
  html body .topbar-inner{grid-template-columns:minmax(250px,auto) minmax(220px,1fr) auto!important;gap:10px!important}
  html body .brand-title{font-size:28px!important}
  html body #installBtn.install-cta{min-width:52px!important;width:52px!important;padding:0!important;font-size:0!important}
  html body #installBtn.install-cta::before{content:"↓";font-size:20px;font-weight:1000}
  html body .hero.tv-home-ux{grid-template-columns:1fr!important;min-height:0!important}
  html body .home-info{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body .product[data-cat="Empanadas"]{grid-column:1/-1!important}
}

@media(max-width:760px){
  html body .app{padding:7px 8px 90px!important}
  html body .topbar{top:5px!important;padding-top:0!important}
  html body .topbar-inner{
    grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;
    gap:8px 7px!important;padding:8px!important;border-radius:20px!important;padding-right:8px!important;
  }
  html body .brand{min-height:46px!important;gap:8px!important}
  html body .brand-logo{width:46px!important;height:46px!important;border-radius:14px!important}
  html body .brand-title{font-size:25px!important;line-height:.95!important}
  html body .brand-tag{font-size:11px!important;margin-top:3px!important;white-space:nowrap!important}
  html body .search{grid-column:1/-1!important;grid-row:2!important;order:initial!important;min-height:44px!important;height:44px!important;border-radius:15px!important;padding:0 12px!important}
  html body .search input{font-size:14px!important}
  html body .top-actions{grid-column:2!important;grid-row:1!important;order:initial!important;width:auto!important;display:flex!important;gap:5px!important;padding:0!important}
  html body #categoryMenuBtn,
  html body #installBtn.install-cta,
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{height:42px!important;min-height:42px!important;border-radius:14px!important}
  html body #categoryMenuBtn{width:68px!important;min-width:68px!important;padding:0 8px!important;gap:7px!important}
  html body #categoryMenuBtn .category-menu-label{display:inline!important;font-size:12px!important}
  html body #categoryMenuBtn .hamburger-lines{width:17px!important;height:14px!important}
  html body #installBtn.install-cta{display:none!important}
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{position:static!important;width:42px!important;min-width:42px!important;padding:0!important}
  html body #themeBtn .theme-orb{width:32px!important;height:32px!important;flex-basis:32px!important;font-size:18px!important}

  html body .hero.tv-home-ux{margin-top:12px!important;padding:25px 21px!important;border-radius:24px!important;gap:0!important}
  html body .tv-home-ux .home-eyebrow{display:none!important}
  html body .tv-home-ux h1{font-size:clamp(39px,11.2vw,54px)!important;line-height:.92!important;margin-bottom:12px!important;max-width:10.5ch!important}
  html body .tv-home-ux .home-lead{font-size:15px!important;line-height:1.4!important;display:block!important}
  html body .tv-home-ux .home-actions{display:grid!important;grid-template-columns:1fr!important;margin-top:18px!important}
  html body .home-actions .btn{min-height:48px!important}
  html body .home-cta-secondary{display:none!important}
  html body .tv-home-ux .home-proof-row,
  html body .home-info{display:none!important}

  html body .home-quick-nav{
    display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;
    gap:8px!important;margin:10px 0 12px!important;padding:1px 1px 7px!important;
  }
  html body .home-quick-nav button{flex:0 0 178px!important;min-width:178px!important;min-height:70px!important;padding:10px!important;border-radius:17px!important;scroll-snap-align:start!important}
  html body .home-quick-nav button > span{width:40px!important;height:40px!important;border-radius:13px!important;font-size:19px!important}
  html body .home-quick-nav button > b{font-size:14px!important}
  html body .home-quick-nav button > small{font-size:11px!important}
  html body #promoBanners.promo-banners{margin:8px 0 18px!important;border-radius:19px!important}
  html body #promoBanners .promo-picture{aspect-ratio:3/1!important}
  html body .promo-premium-slide{min-height:0!important;aspect-ratio:3/1!important}

  html body .section-head{margin:24px 3px 12px!important}
  html body .section-kicker{font-size:10px!important;margin-bottom:6px!important}
  html body .section-head h2{font-size:34px!important}
  html body .section-head p{font-size:13px!important;margin-top:6px!important}
  html body .categories{gap:9px!important}
  html body .category{border-radius:18px!important;scroll-margin-top:118px!important}
  html body .category-header{min-height:66px!important;padding:9px 10px!important;grid-template-columns:42px minmax(0,1fr) 38px!important;gap:10px!important}
  html body .category-logo{width:42px!important;height:42px!important;border-radius:13px!important;font-size:19px!important}
  html body .category-title{font-size:19px!important;line-height:1.06!important}
  html body .category-meta{font-size:11px!important;margin-top:3px!important}
  html body .chev{width:38px!important;height:38px!important;border-radius:12px!important}
  html body .category-body{padding:0 8px 8px!important}
  html body .products{grid-template-columns:1fr!important;gap:8px!important}

  html body .product,
  html body .product[data-cat="Empanadas"]{
    grid-column:auto!important;display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;
    min-height:150px!important;border-radius:17px!important;transform:none!important;
  }
  html body .product-media,
  html body .product[data-cat="Empanadas"] .product-media{height:100%!important;min-height:150px!important;aspect-ratio:auto!important}
  html body .product-body,
  html body .product[data-cat="Empanadas"] .product-body{padding:11px!important;gap:7px!important;align-content:stretch!important}
  html body .product h3,
  html body .product[data-cat="Empanadas"] h3{font-size:17px!important;min-height:0!important;line-height:1.08!important;-webkit-line-clamp:2!important}
  html body .price,
  html body .product[data-cat="Empanadas"] .price{font-size:16px!important}
  html body .desc,
  html body .product[data-cat="Empanadas"] .desc{font-size:11.5px!important;line-height:1.3!important;min-height:2.6em!important;-webkit-line-clamp:2!important}
  html body .product-actions,
  html body .product[data-cat="Empanadas"] .product-actions{grid-template-columns:minmax(70px,.75fr) minmax(108px,1.25fr)!important;gap:6px!important;margin-top:auto!important}
  html body .details-btn,
  html body .add-btn,
  html body .product[data-cat="Empanadas"] .details-btn,
  html body .product[data-cat="Empanadas"] .add-btn,
  html body .product-actions .card-buy-control{height:40px!important;min-height:40px!important;border-radius:12px!important;font-size:12px!important;padding:0 7px!important}
  html body .card-qty-btn{height:40px!important}

  html body .modal{inset:auto 0 0 0!important;transform:translateY(105%)!important;width:100%!important;max-height:94dvh!important}
  html body .modal.show{transform:translateY(0)!important}
  html body .modal-card{border-radius:24px 24px 0 0!important;max-height:94dvh!important;border-bottom:0!important}
  html body .modal-product{grid-template-columns:66px 1fr!important}
  html body .modal-img{width:66px!important;height:66px!important;border-radius:16px!important}
  html body .modal h3{font-size:27px!important}
  html body .modal-sub{font-size:12px!important;margin-top:5px!important}
  html body .modal-body{padding:12px!important;gap:10px!important}
  html body .choice{padding:12px!important;border-radius:17px!important}
  html body .choice-top{margin-bottom:9px!important}
  html body .choice h4{font-size:18px!important}
  html body .choice p{font-size:12px!important}
  html body #productModal[data-type="empanadas"] .option-grid{grid-template-columns:1fr!important}
  html body #productModal[data-type="empanadas"] .emp-grid{grid-template-columns:1fr!important}
  html body .emp-row{padding:9px 10px!important}
  html body .modal-foot{gap:8px!important;padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important}
  html body .modal-total b{font-size:23px!important}
  html body .modal-actions{gap:6px!important}
  html body .modal-actions .btn{min-height:44px!important;padding:0 12px!important;font-size:13px!important}
  html body .checkout-grid{grid-template-columns:1fr!important}
  html body .field.span{grid-column:auto!important}
  html body #cartFloatBtn.cart-float{--cart-float-size:58px!important;width:58px!important;min-width:58px!important;max-width:58px!important;height:58px!important;right:12px!important;bottom:12px!important}
  html body #cartFloatBtn.cart-float svg{width:25px!important;height:25px!important}
}

@media(max-width:390px){
  html body .brand-tag{max-width:150px!important;overflow:hidden!important;text-overflow:ellipsis!important}
  html body .product,
  html body .product[data-cat="Empanadas"]{grid-template-columns:102px minmax(0,1fr)!important}
  html body .product-actions,
  html body .product[data-cat="Empanadas"] .product-actions{grid-template-columns:70px minmax(96px,1fr)!important}
}

@media(prefers-reduced-motion:reduce){
  html body *,html body *::before,html body *::after{animation:none!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* Source block: tv-v237-cart-and-product-polish */
/* v237 · Productos reales y carrito guiado */
html body .section-head{display:flex!important;justify-content:space-between!important;gap:18px!important}
html body .close-categories-btn{
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:0 14px;
  border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--text);font-size:12px;font-weight:950;
  box-shadow:0 6px 16px rgba(37,29,22,.055);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
html body .close-categories-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 38%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--card))}
html body .close-categories-btn span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--surface2);color:var(--accent2);font-size:14px}
html body .category-body{
  display:grid!important;grid-template-rows:0fr;opacity:0;visibility:hidden;padding:0 14px!important;
  transition:grid-template-rows .24s ease,opacity .18s ease,padding .24s ease,visibility 0s linear .24s!important;
}
html body .category-body > .products{min-height:0!important;overflow:hidden!important}
html body .category.open .category-body{
  grid-template-rows:1fr;opacity:1;visibility:visible;padding:0 14px 14px!important;
  transition:grid-template-rows .28s ease,opacity .22s ease,padding .28s ease,visibility 0s!important;
}
html body .category-header[aria-expanded="true"] .category-meta{color:var(--accent2)!important}
html body .product[data-cat="Bebidas"] .product-media{
  position:relative!important;
  background:radial-gradient(circle at 50% 42%,#fff 0 44%,#f6f1e9 76%,#ece5db 100%)!important;
}
html body .product[data-cat="Bebidas"] .product-media::after{
  content:"Foto ilustrativa";position:absolute;right:9px;bottom:8px;padding:4px 7px;border-radius:999px;
  background:rgba(21,27,45,.78);color:#fff;font-size:9px;font-weight:900;letter-spacing:.04em;
  box-shadow:0 3px 10px rgba(0,0,0,.12);pointer-events:none;
}
html body .product[data-cat="Bebidas"] .product-media img{
  object-fit:contain!important;padding:10px 12px!important;background:transparent!important;
  filter:drop-shadow(0 12px 12px rgba(25,28,38,.14));
}
html body .product[data-id="sandwich-hamburg-comun"] .product-media,
html body .product[data-id="sandwich-hamburg-especial"] .product-media{position:relative!important}
html body .product[data-id="sandwich-hamburg-comun"] .product-media::after,
html body .product[data-id="sandwich-hamburg-especial"] .product-media::after{
  position:absolute;left:10px;bottom:10px;padding:7px 10px;border-radius:999px;background:rgba(20,25,40,.88);
  color:#fff;font-size:11px;font-weight:1000;line-height:1;box-shadow:0 7px 16px rgba(0,0,0,.18);
}
html body .product[data-id="sandwich-hamburg-comun"] .product-media::after{content:"1 hamburguesa"}
html body .product[data-id="sandwich-hamburg-especial"] .product-media::after{content:"2 hamburguesas";background:linear-gradient(180deg,var(--accent),var(--accent2));color:#251307}

html body .drawer{
  width:min(540px,100vw)!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;
  background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface2) 50%,var(--surface)))!important;
}
html body .drawer-head{padding:19px 20px 13px!important;border-bottom:0!important;align-items:center!important}
html body .drawer-eyebrow{display:block;margin-bottom:4px;color:var(--accent2);font-size:10px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}
html body .drawer-title{font-size:34px!important;line-height:.92!important}
html body .drawer-sub{margin-top:6px!important;font-size:12px!important;color:var(--muted)!important}
html body .drawer-head .icon-btn{width:42px!important;height:42px!important;border-radius:14px!important;background:var(--card)!important;border:1px solid var(--line)!important;font-size:24px!important}
html body .cart-steps{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:9px;padding:0 20px 15px;border-bottom:1px solid var(--line)}
html body .cart-step{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;white-space:nowrap}
html body .cart-step span{width:25px;height:25px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--card);font-size:10px;font-weight:1000}
html body .cart-step b{font-size:11px;font-weight:900}
html body .cart-step.active{color:var(--text)}
html body .cart-step.active span{border-color:var(--accent);background:var(--accent);color:#281606;box-shadow:0 5px 12px rgba(229,111,15,.20)}
html body .cart-step.done span{border-color:#26a765;background:#26a765;color:#fff}
html body .cart-steps > i{height:1px;background:var(--line)}
html body .drawer[data-step="2"] .cart-steps > i:first-of-type{background:#26a765}
html body .drawer-body{padding:14px 16px 18px!important;gap:13px!important}
html body .drawer[data-step="2"] #cartItems,
html body .drawer[data-step="2"] #addonsPanel{display:none!important}
html body .drawer.cart-empty-state #addonsPanel{display:none!important}

html body .cart-empty{min-height:230px;display:grid;place-items:center;align-content:center;text-align:center;padding:28px 20px;border:1px dashed color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:22px;background:color-mix(in srgb,var(--accent) 4%,var(--card))}
html body .cart-empty > span{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:color-mix(in srgb,var(--accent) 14%,var(--card));font-size:28px;margin-bottom:13px}
html body .cart-empty b{font-size:20px;letter-spacing:-.025em}
html body .cart-empty p{margin:6px auto 16px;max-width:31ch;color:var(--muted);font-size:13px;font-weight:700;line-height:1.4}
html body .cart-empty .btn{min-height:44px;border-radius:14px;padding:0 17px}

html body #cartItems{display:grid;gap:10px}
html body .cart-item{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;padding:11px!important;border-radius:20px!important;align-items:stretch!important;background:var(--card)!important;box-shadow:0 6px 18px rgba(35,28,23,.055)!important}
html body .cart-item-main{display:grid;grid-template-columns:78px minmax(0,1fr) 30px;gap:11px;align-items:start}
html body .cart-thumb-wrap{width:78px;height:78px;border-radius:16px;overflow:hidden;background:#f5f1ea;border:1px solid var(--line)}
html body .cart-thumb{width:100%!important;height:100%!important;border-radius:0!important;object-fit:cover!important;background:#f5f1ea!important}
html body .cart-item-copy{min-width:0;padding-top:1px}
html body .cart-category{display:block;margin-bottom:3px;color:var(--accent2);font-size:9px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}
html body .cart-name{font-size:16px!important;line-height:1.15!important;font-weight:1000!important;letter-spacing:-.02em}
html body .cart-details{margin-top:5px;color:var(--muted)!important;font-size:11px!important;line-height:1.3!important;font-weight:700!important}
html body .cart-unit-price{margin-top:7px;color:var(--muted);font-size:10px;font-weight:850}
html body .cart-remove-icon{width:30px;height:30px;border:0;border-radius:10px;background:var(--surface2);color:var(--muted);font-size:19px;line-height:1;cursor:pointer}
html body .cart-remove-icon:hover{background:#ffebe8;color:#bd3427}
html body .cart-item-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--line)}
html body .cart-item .qty-control{display:grid!important;grid-template-columns:36px minmax(44px,auto) 36px!important;border-radius:13px!important;background:var(--surface2)!important;border-color:var(--line)!important}
html body .cart-item .qty-control button{height:36px!important;font-size:18px!important;color:var(--text)!important}
html body .cart-item .qty-control span{display:flex;align-items:baseline;justify-content:center;gap:3px;min-width:44px;font-size:13px}
html body .cart-item .qty-control span b{font-size:14px}
html body .cart-item .qty-control span small{font-size:9px;color:var(--muted)}
html body .cart-line-total{display:grid;text-align:right;gap:1px}
html body .cart-line-total small{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
html body .cart-line-total strong{color:var(--text);font-size:17px;letter-spacing:-.025em}

html body .follow-buy.compact-addons{margin-top:2px!important;padding:12px!important;border-radius:20px!important;background:var(--card)!important;border:1px solid var(--line)!important}
html body .addons-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
html body .addons-heading > div{display:grid;gap:2px}
html body .addons-heading span{color:var(--accent2);font-size:9px;font-weight:1000;letter-spacing:.09em;text-transform:uppercase}
html body .addons-heading b{font-size:17px;letter-spacing:-.02em}
html body .addons-heading > small{padding:5px 8px;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:9px;font-weight:900}
html body .follow-buy.compact-addons .addon-tabs{position:static!important;margin:0 0 10px!important;padding:0!important;background:transparent!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
html body .follow-buy.compact-addons .addon-tab{justify-content:center!important;min-height:37px!important;padding:0 7px!important;border-radius:12px!important;font-size:10px!important}

html body .checkout-panel{padding:17px!important;border-radius:21px!important;background:var(--card)!important;box-shadow:0 8px 22px rgba(35,28,23,.055)!important}
html body .checkout-back{justify-self:start;margin:-2px 0 5px;padding:0;border:0;background:transparent;color:var(--accent2);font-size:12px;font-weight:900;cursor:pointer}
html body .checkout-kicker{display:block;margin-bottom:4px;color:var(--accent2);font-size:9px;font-weight:1000;letter-spacing:.11em;text-transform:uppercase}
html body .checkout-title{display:block;font-size:24px;line-height:1;letter-spacing:-.04em}
html body #checkoutHint{margin-top:6px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.35}
html body .checkout-grid{gap:10px!important}
html body .field label{font-size:10px!important;letter-spacing:.03em!important}
html body .checkout-panel .input,
html body .checkout-panel .textarea{min-height:46px!important;border-radius:13px!important;font-size:13px!important}

html body .drawer-foot{padding:13px 16px calc(14px + env(safe-area-inset-bottom))!important;gap:7px!important;background:color-mix(in srgb,var(--surface) 96%,transparent)!important;box-shadow:0 -12px 28px rgba(31,26,23,.055)!important}
html body .drawer-foot .shipping-box{margin-bottom:2px!important;padding:8px 10px!important;border-radius:11px!important;font-size:10px!important;text-align:center!important}
html body .drawer-foot .total-row{font-size:11px!important;color:var(--muted)!important}
html body .drawer-foot .total-row.total{margin-top:2px!important;padding-top:8px!important;border-top:1px solid var(--line)!important;color:var(--text)!important;font-size:16px!important}
html body .drawer-foot .total-row.total span:last-child{font-size:24px!important;letter-spacing:-.04em}
html body .drawer-foot .btn{display:grid!important;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;column-gap:10px;min-height:56px!important;margin-top:3px;border-radius:16px!important;padding:8px 13px 8px 16px!important;text-align:left!important}
html body .drawer-foot .btn.hidden{display:none!important}
html body .drawer-foot .btn > span{font-size:14px;font-weight:1000;line-height:1.1}
html body .drawer-foot .btn > small{font-size:10px;font-weight:750;opacity:.72;line-height:1.1}
html body .drawer-foot .btn > b{grid-column:2;grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.18);font-size:18px}
html body .drawer-foot .btn:disabled{opacity:.42!important;cursor:not-allowed!important;box-shadow:none!important}

@media(max-width:760px){
  html body .section-head{align-items:flex-end!important;gap:9px!important}
  html body .close-categories-btn{min-height:39px;padding:0 10px;border-radius:12px;font-size:0}
  html body .close-categories-btn span{width:22px;height:22px;font-size:13px}
  html body .drawer{height:min(94dvh,900px)!important;border-radius:25px 25px 0 0!important}
  html body .drawer-head{padding:15px 14px 10px!important}
  html body .drawer-title{font-size:29px!important}
  html body .cart-steps{padding:0 14px 12px;gap:6px}
  html body .cart-step b{display:none}
  html body .cart-step span{width:24px;height:24px;border-radius:8px}
  html body .drawer-body{padding:11px 12px 14px!important}
  html body .cart-item-main{grid-template-columns:70px minmax(0,1fr) 28px;gap:9px}
  html body .cart-thumb-wrap{width:70px;height:70px;border-radius:14px}
  html body .cart-name{font-size:15px!important}
  html body .drawer-foot{padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important}
  html body .drawer-foot .shipping-box{display:none!important}
  html body .drawer-foot .total-row:not(.total){display:none!important}
  html body .drawer-foot .total-row.total{padding-top:0!important;border-top:0!important}
  html body .drawer-foot .btn{min-height:52px!important}
  html body .product[data-cat="Bebidas"] .product-media img{padding:8px!important}
}

/* Source block: tv-v239-home-clean-theme-fix */
/* v239 · Inicio limpio: conserva publicidad, menú, catálogo y carrito */
html body .brand-tag,
html body .tv-home-ux .home-eyebrow,
html body .tv-home-ux .home-lead,
html body .tv-home-ux .home-actions,
html body .tv-home-ux .home-proof-row{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

html body .brand{align-items:center!important}
html body .brand > div:last-child{display:flex!important;align-items:center!important;min-height:58px!important}
html body .brand-title{margin:0!important;line-height:1!important}
html body .topbar-inner{grid-template-columns:minmax(225px,auto) minmax(290px,1fr) auto!important}

html body .hero.tv-home-ux{
  min-height:270px!important;
  grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr)!important;
  gap:30px!important;
  padding:34px 38px!important;
  align-items:center!important;
}
html body .hero-copy{justify-content:center!important}
html body .tv-home-ux h1{
  max-width:14ch!important;
  margin:0!important;
  font-size:clamp(48px,4.7vw,68px)!important;
  line-height:.94!important;
  letter-spacing:-.065em!important;
  text-wrap:balance!important;
}
html body .home-info{gap:9px!important}
html body .home-info .info{
  min-height:68px!important;
  padding:13px 16px!important;
  border-radius:17px!important;
}
html body .home-info .info b{font-size:16px!important;line-height:1.25!important}

/* Botón día/noche estable: toda la superficie es clickeable y el estado se entiende */
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  width:78px!important;
  min-width:78px!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 9px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
html body #themeBtn .theme-switch-track{
  position:relative!important;
  width:58px!important;
  height:32px!important;
  display:block!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#ffe5a8,#ffc763)!important;
  border:1px solid rgba(172,99,0,.18)!important;
  box-shadow:inset 0 2px 5px rgba(88,50,0,.10)!important;
  transition:background .22s ease,border-color .22s ease!important;
}
html[data-theme="dark"] body #themeBtn .theme-switch-track{
  background:linear-gradient(180deg,#26314f,#111a30)!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:inset 0 2px 7px rgba(0,0,0,.30)!important;
}
html body #themeBtn .theme-switch-icon{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:1!important;
  font-size:14px!important;
  line-height:1!important;
  opacity:.58!important;
  pointer-events:none!important;
}
html body #themeBtn .theme-switch-sun{left:8px!important;color:#9b5a00!important}
html body #themeBtn .theme-switch-moon{right:8px!important;color:#dbe7ff!important}
html body #themeBtn .theme-switch-thumb{
  position:absolute!important;
  top:3px!important;
  left:3px!important;
  z-index:2!important;
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#e68a00!important;
  font-size:14px!important;
  line-height:1!important;
  box-shadow:0 3px 9px rgba(83,45,0,.25)!important;
  transform:translateX(0)!important;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .22s ease,color .22s ease!important;
  pointer-events:none!important;
}
html[data-theme="dark"] body #themeBtn .theme-switch-thumb{
  transform:translateX(26px)!important;
  background:#dbe5ff!important;
  color:#17213d!important;
  box-shadow:0 3px 10px rgba(0,0,0,.35)!important;
}
html body #themeBtn:hover .theme-switch-thumb{filter:brightness(1.03)!important}
html body #themeBtn:active .theme-switch-thumb{scale:.92!important}

@media(max-width:1120px) and (min-width:761px){
  html body .topbar-inner{grid-template-columns:minmax(215px,auto) minmax(230px,1fr) auto!important}
  html body .hero.tv-home-ux{grid-template-columns:1fr!important;min-height:0!important;padding:32px!important}
  html body .tv-home-ux h1{max-width:16ch!important}
  html body .home-info{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:760px){
  html body .brand > div:last-child{min-height:46px!important}
  html body .brand-title{font-size:25px!important}
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    width:54px!important;
    min-width:54px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 5px!important;
  }
  html body #themeBtn .theme-switch-track{width:44px!important;height:28px!important}
  html body #themeBtn .theme-switch-thumb{width:22px!important;height:22px!important;top:2px!important;left:2px!important;font-size:13px!important}
  html[data-theme="dark"] body #themeBtn .theme-switch-thumb{transform:translateX(18px)!important}
  html body #themeBtn .theme-switch-icon{font-size:11px!important}
  html body #themeBtn .theme-switch-sun{left:6px!important}
  html body #themeBtn .theme-switch-moon{right:6px!important}

  html body .hero.tv-home-ux{
    min-height:0!important;
    margin-top:11px!important;
    padding:24px 20px!important;
    border-radius:23px!important;
    gap:0!important;
  }
  html body .tv-home-ux h1{
    max-width:13ch!important;
    margin:0!important;
    font-size:clamp(38px,10.8vw,50px)!important;
    line-height:.94!important;
  }
  html body .home-info{display:none!important}
  html body .home-quick-nav{margin-top:10px!important}
}

@media(max-width:430px){
  html body .top-actions{grid-template-columns:none!important;display:flex!important}
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{width:50px!important;min-width:50px!important}
  html body .tv-home-ux h1{font-size:clamp(36px,10.6vw,46px)!important}
}

@media(prefers-reduced-motion:reduce){
  html body #themeBtn .theme-switch-track,
  html body #themeBtn .theme-switch-thumb{transition:none!important}
}

/* Source block: tv-v240-final-overrides */
html body .brand-logo,
html body #brandTap .brand-logo{
  width:72px!important;
  height:72px!important;
  padding:2px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(255,181,74,.26)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.9)!important;
}
html body .brand-logo img,
html body #brandTap .brand-logo img{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}
html body .tv-home-banner{
  display:block!important;
  padding:14px!important;
  gap:0!important;
  min-height:0!important;
}
html body .tv-home-banner::before{display:none!important}
html body .tv-home-banner .hero-banner-card{
  width:100%!important;
  display:block!important;
  border-radius:28px!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--accent) 28%, var(--line))!important;
  background:#09112b!important;
  box-shadow:0 20px 44px rgba(0,0,0,.16)!important;
}
html body .tv-home-banner .hero-banner-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
}
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  width:76px!important;
  min-width:76px!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 8px!important;
  border-radius:999px!important;
}
html body #themeBtn .theme-switch-track{width:56px!important;height:30px!important}
html body #themeBtn .theme-switch-thumb{width:24px!important;height:24px!important;top:3px!important;left:3px!important}
html[data-theme="dark"] body #themeBtn .theme-switch-thumb{transform:translateX(26px)!important}
@media(max-width:760px){
  html body .brand-logo,
  html body #brandTap .brand-logo{width:58px!important;height:58px!important;border-radius:18px!important}
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{width:58px!important;min-width:58px!important;height:42px!important;min-height:42px!important;padding:0 5px!important}
  html body #themeBtn .theme-switch-track{width:46px!important;height:26px!important}
  html body #themeBtn .theme-switch-thumb{width:20px!important;height:20px!important;top:3px!important;left:3px!important}
  html[data-theme="dark"] body #themeBtn .theme-switch-thumb{transform:translateX(20px)!important}
  html body .tv-home-banner{padding:10px!important;border-radius:24px!important}
  html body .tv-home-banner .hero-banner-card{border-radius:22px!important}
}

/* Source block: tv-v242-final-overrides */
html body .brand-copy{min-width:0!important;display:grid!important;align-content:center!important;gap:4px!important}
html body .brand-status-row{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px 10px!important;margin-top:2px!important}
html body .store-status{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:7px 12px!important;border-radius:999px!important;font-weight:1000!important;font-size:13px!important;line-height:1!important;border:1px solid transparent!important}
html body .store-status::before{content:""!important;width:10px!important;height:10px!important;border-radius:999px!important;flex:0 0 10px!important}
html body .store-status.is-open{background:rgba(34,197,94,.12)!important;color:#15803d!important;border-color:rgba(34,197,94,.24)!important}
html body .store-status.is-open::before{background:#22c55e!important;box-shadow:0 0 0 5px rgba(34,197,94,.16)!important}
html body .store-status.is-closed{background:rgba(220,38,38,.10)!important;color:#b91c1c!important;border-color:rgba(220,38,38,.20)!important}
html body .store-status.is-closed::before{background:#ef4444!important;box-shadow:0 0 0 5px rgba(239,68,68,.12)!important}
html body .store-status-hint{font-size:12px!important;font-weight:900!important;color:var(--muted)!important;white-space:nowrap!important}
html body .location-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:0 12px!important;border-radius:999px!important;border:1px solid color-mix(in srgb,var(--accent) 30%, var(--line))!important;background:color-mix(in srgb,var(--card) 96%, transparent)!important;color:var(--text)!important;text-decoration:none!important;font-weight:950!important;box-shadow:0 8px 18px rgba(0,0,0,.06)!important}
html body .hero-banner-actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important;justify-content:flex-start!important;margin-top:16px!important}
html body .hero-map-btn, html body .hero-menu-btn{min-height:52px!important;padding-inline:18px!important;border-radius:18px!important}
html body .hero-map-btn{background:color-mix(in srgb,var(--card) 98%, transparent)!important;border:1px solid var(--line)!important;color:var(--text)!important}
html body .product{height:100%!important}
html body .product-body{display:flex!important;flex-direction:column!important;gap:10px!important}
html body .desc{flex:1 1 auto!important}
html body .product-actions{display:grid!important;grid-template-columns:minmax(96px,.82fr) minmax(128px,1.18fr)!important;gap:10px!important;align-items:stretch!important;margin-top:auto!important}
html body .details-btn, html body .add-btn, html body .card-buy-control, html body .product-actions .card-control-slot{width:100%!important}
html body .details-btn, html body .add-btn{min-height:48px!important;border-radius:16px!important;font-weight:1000!important}
html body .details-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 14px!important;background:color-mix(in srgb,var(--card) 98%, transparent)!important;border:1px solid var(--line)!important;color:var(--text)!important}
html body .add-btn{box-shadow:0 14px 24px rgba(255,159,28,.22)!important}
html body .card-buy-control{min-height:48px!important;height:48px!important;border-radius:16px!important;overflow:hidden!important}
html body .card-buy-control.is-active{display:grid!important;grid-template-columns:46px minmax(34px,1fr) 46px!important;align-items:center!important}
html body .card-qty-btn{height:48px!important}
html body .card-qty-number{display:grid!important;place-items:center!important;font-weight:1000!important}
@media (max-width:980px){html body .brand-tag{display:none!important} html body .store-status-hint{white-space:normal!important}}
@media (max-width:760px){html body .brand-status-row{gap:6px 8px!important} html body .store-status{font-size:12px!important;padding:6px 10px!important} html body .store-status-hint{width:100%!important;font-size:11px!important;order:3!important} html body .location-chip{min-height:32px!important;padding:0 11px!important;font-size:12px!important} html body .hero-banner-actions{margin-top:12px!important;gap:10px!important} html body .hero-map-btn, html body .hero-menu-btn{min-height:46px!important;font-size:14px!important;padding-inline:14px!important} html body .product-actions{grid-template-columns:1fr 1fr!important;gap:8px!important}}
@media (max-width:560px){html body .product-actions{grid-template-columns:1fr!important} html body .details-btn, html body .add-btn, html body .card-buy-control{min-height:46px!important;height:46px!important} html body .card-buy-control.is-active{grid-template-columns:44px minmax(34px,1fr) 44px!important} html body .card-qty-btn{height:46px!important}}

/* Source block: tv-v243-total-mobile-refine */
/* V243 · mobile-first polish general */
html body .topbar-inner{
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "brand actions"
    "search search"!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px!important;
  border-radius:30px!important;
}
html body .brand{grid-area:brand!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:12px!important;align-items:center!important;min-width:0!important}
html body .top-actions{grid-area:actions!important;display:flex!important;align-items:center!important;gap:10px!important;justify-self:end!important}
html body .search{grid-area:search!important;width:100%!important}

/* logo nítido y sin velo blanco */
html body .brand-logo,
html body #brandTap .brand-logo{
  width:64px!important;height:64px!important;flex:0 0 64px!important;
  padding:0!important;border-radius:18px!important;overflow:hidden!important;
  background:transparent!important;border:0!important;
  box-shadow:none!important;isolation:isolate!important;
}
html body .brand-logo::before,
html body .brand-logo::after,
html body #brandTap .brand-logo::before,
html body #brandTap .brand-logo::after{display:none!important;content:none!important}
html body .brand-logo img,
html body #brandTap .brand-logo img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  padding:0!important;margin:0!important;opacity:1!important;filter:none!important;mix-blend-mode:normal!important;transform:none!important;
  image-rendering:auto!important;
}
html body .brand-copy{gap:2px!important}
html body .brand-title{
  font-size:clamp(24px,7vw,34px)!important;
  line-height:.92!important;letter-spacing:-.055em!important;
  margin:0!important;
}
html body .brand-tag{display:none!important}
html body .brand-status-row{
  display:flex!important;flex-wrap:wrap!important;gap:6px!important;align-items:center!important;
  margin-top:4px!important;
}
html body .store-status{
  min-height:32px!important;padding:0 10px!important;border-radius:999px!important;
  font-size:12px!important;white-space:nowrap!important;
}
html body .store-status-hint{display:none!important}
html body .location-chip{
  min-height:32px!important;padding:0 10px!important;border-radius:999px!important;
  font-size:12px!important;box-shadow:none!important;
}

/* header actions compactos */
html body #categoryMenuBtn,
html body #themeBtn,
html body #installBtn{
  height:48px!important;min-height:48px!important;border-radius:18px!important;
}
html body #categoryMenuBtn{min-width:96px!important;padding:0 14px!important}
html body #categoryMenuBtn .category-menu-label{display:inline!important;font-size:14px!important}
html body #themeBtn,
html body #themeBtn.tv-theme-switch{width:52px!important;min-width:52px!important;padding:0!important}
html body #installBtn.install-cta{display:none!important}
html body .search{
  min-height:54px!important;border-radius:22px!important;padding:0 14px!important;gap:10px!important;
}
html body .search svg{width:19px!important;height:19px!important}
html body .search input{font-size:15px!important;letter-spacing:-.015em!important}

/* banner principal limpio */
html body .tv-home-banner{
  margin-top:14px!important;padding:10px!important;min-height:0!important;
  border-radius:28px!important;gap:0!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 97%, transparent),color-mix(in srgb,var(--surface2) 95%, transparent))!important;
}
html body .tv-home-banner::before{display:none!important}
html body .tv-home-banner .hero-banner-card{
  border-radius:22px!important;overflow:hidden!important;background:#081128!important;
  box-shadow:0 12px 28px rgba(0,0,0,.14)!important;border:1px solid color-mix(in srgb,var(--accent) 16%, var(--line))!important;
}
html body .tv-home-banner .hero-banner-image{
  display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;
}
html body .hero-banner-actions{display:none!important}

/* CATEGORIAS HORIZONTALES con señal clara */
html body .quick-nav-wrap{
  position:relative!important;
  margin:14px 0 10px!important;
  display:grid!important;gap:10px!important;
}
html body .quick-nav-head{
  display:flex!important;align-items:end!important;justify-content:space-between!important;
  gap:12px!important;padding:0 4px!important;
}
html body .quick-nav-kicker{
  display:block!important;color:var(--accent2)!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.12em!important;text-transform:uppercase!important;margin-bottom:2px!important;
}
html body .quick-nav-title{
  display:block!important;font-size:14px!important;line-height:1.15!important;color:var(--text)!important;letter-spacing:-.02em!important;
}
html body .quick-nav-swipe-hint{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  color:var(--muted)!important;font-weight:1000!important;font-size:14px!important;
}
html body .quick-nav-swipe-hint span{
  display:grid!important;place-items:center!important;width:26px!important;height:26px!important;border-radius:999px!important;
  background:color-mix(in srgb,var(--card) 98%, transparent)!important;border:1px solid var(--line)!important;
}
html body .home-quick-nav{
  display:flex!important;overflow-x:auto!important;overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;gap:10px!important;padding:2px 18px 8px 2px!important;
  -webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;
}
html body .home-quick-nav::-webkit-scrollbar{display:none!important}
html body .quick-nav-wrap::after{
  content:""!important;position:absolute!important;right:0!important;top:38px!important;bottom:0!important;width:36px!important;
  background:linear-gradient(90deg,rgba(247,231,210,0), color-mix(in srgb,var(--bg) 92%, transparent) 70%)!important;
  pointer-events:none!important;border-radius:0 24px 24px 0!important;
}
html[data-theme="dark"] body .quick-nav-wrap::after{
  background:linear-gradient(90deg,rgba(11,16,32,0), color-mix(in srgb,var(--bg) 92%, transparent) 70%)!important;
}
html body .home-quick-nav button{
  min-width:148px!important;max-width:148px!important;min-height:74px!important;
  padding:10px 12px!important;border-radius:18px!important;scroll-snap-align:start!important;
  grid-template-columns:40px minmax(0,1fr)!important;column-gap:10px!important;row-gap:2px!important;
  box-shadow:0 10px 20px rgba(0,0,0,.07)!important;
}
html body .home-quick-nav button > span{width:40px!important;height:40px!important;border-radius:14px!important;font-size:18px!important}
html body .home-quick-nav button > b{font-size:14px!important;line-height:1.05!important}
html body .home-quick-nav button > small{font-size:11px!important;line-height:1.1!important}

/* promos y menú */
html body .promo-banners{margin-top:10px!important}
html body .section-head{align-items:flex-start!important;gap:10px!important;margin:22px 0 12px!important}
html body .section-head h2{font-size:clamp(32px,9vw,46px)!important}
html body .section-head p{font-size:14px!important;line-height:1.28!important}
html body .close-categories-btn{min-height:42px!important;padding:0 14px!important;border-radius:16px!important;align-self:center!important}

/* cards y botones */
html body .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
html body .product{border-radius:22px!important;overflow:hidden!important}
html body .product-media{aspect-ratio:1/1!important}
html body .product-body{padding:12px 12px 14px!important;gap:8px!important;display:flex!important;flex-direction:column!important}
html body .product h3{font-size:17px!important;line-height:1.08!important}
html body .price{font-size:18px!important}
html body .desc{font-size:12.5px!important;line-height:1.34!important;min-height:3.2em!important}
html body .product-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:auto!important}
html body .details-btn,
html body .add-btn,
html body .card-buy-control,
html body .product-actions .card-control-slot{width:100%!important}
html body .details-btn,
html body .add-btn{min-height:44px!important;height:44px!important;border-radius:14px!important;font-size:14px!important}
html body .details-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:color-mix(in srgb,var(--card) 98%, transparent)!important;border:1px solid var(--line)!important;color:var(--text)!important}
html body .card-buy-control{min-height:44px!important;height:44px!important;border-radius:14px!important;overflow:hidden!important}
html body .card-buy-control.is-active{display:grid!important;grid-template-columns:42px minmax(34px,1fr) 42px!important;align-items:center!important}
html body .card-qty-btn{height:44px!important;font-size:22px!important}
html body .card-qty-number{font-size:15px!important;font-weight:1000!important}

/* carrito flotante menos invasivo */
html body #cartFloatBtn{
  width:64px!important;height:64px!important;right:14px!important;bottom:14px!important;border-radius:22px!important;
  box-shadow:0 18px 34px rgba(0,0,0,.22)!important;
}
html body #cartFloatBtn span:not(.badge){display:none!important}
html body #cartFloatBtn .badge{right:-4px!important;top:-4px!important}

/* modal/drawer mobile */
html body .drawer{width:min(100vw,420px)!important;border-top-left-radius:24px!important;border-bottom-left-radius:24px!important}
html body .modal{width:min(100vw - 14px, 920px)!important}
html body .modal-card{border-radius:24px!important}

@media (min-width:761px){
  html body .quick-nav-head{display:none!important}
  html body .quick-nav-wrap::after{display:none!important}
  html body .home-quick-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;overflow:visible!important;padding:0!important}
  html body .home-quick-nav button{min-width:0!important;max-width:none!important}
  html body .brand-logo,
  html body #brandTap .brand-logo{width:68px!important;height:68px!important;flex-basis:68px!important}
  html body .brand-title{font-size:clamp(28px,4vw,40px)!important}
  html body .topbar-inner{grid-template-columns:minmax(0,1fr) minmax(260px,1fr) auto!important;grid-template-areas:"brand search actions"!important;padding:16px!important}
  html body .brand-tag{display:block!important}
  html body .store-status-hint{display:none!important}
  html body .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (min-width:1180px){html body .products{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media (max-width:390px){
  html body .brand-logo,
  html body #brandTap .brand-logo{width:52px!important;height:52px!important;flex-basis:52px!important}
  html body .brand-title{font-size:20px!important}
  html body #categoryMenuBtn{min-width:52px!important;padding:0!important}
  html body #categoryMenuBtn .category-menu-label{display:none!important}
  html body .store-status{font-size:11px!important;padding:0 9px!important}
  html body .location-chip{font-size:11px!important;padding:0 9px!important}
  html body .products{grid-template-columns:1fr!important}
  html body .home-quick-nav button{min-width:142px!important;max-width:142px!important}
}

/* Source block: tv-v245-professional-cleanup */
/* V245 · limpieza visual profesional */
html body .night-snow-layer,
html body .realistic-snow-canvas{display:none!important}
html[data-theme="dark"].night-snow-active body::after{display:none!important;content:none!important}

html body .topbar{padding-top:8px!important}
html body .topbar-inner{
  border-radius:24px!important;
  padding:12px 14px!important;
  gap:14px!important;
  background:color-mix(in srgb,var(--surface) 97%, transparent)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.10)!important;
}
html body .brand{gap:13px!important;min-width:0!important}
html body .brand-logo,
html body #brandTap .brand-logo{
  width:76px!important;height:76px!important;flex:0 0 76px!important;
  padding:0!important;border-radius:18px!important;background:transparent!important;
  border:0!important;box-shadow:none!important;overflow:visible!important;
}
html body .brand-logo img,
html body #brandTap .brand-logo img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  padding:0!important;margin:0!important;opacity:1!important;filter:none!important;
  transform:none!important;mix-blend-mode:normal!important;
}
html body .brand-copy{display:grid!important;gap:4px!important;min-width:0!important}
html body .brand-title{
  margin:0!important;font-size:clamp(29px,3.2vw,42px)!important;
  line-height:.94!important;letter-spacing:-.05em!important;white-space:nowrap!important;
}
html body .brand-tag{display:none!important}
html body .brand-status-row{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;
  gap:7px 14px!important;margin:2px 0 0!important;
}
html body .store-status{
  min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
  display:inline-flex!important;align-items:center!important;gap:7px!important;
  font-size:13px!important;font-weight:900!important;line-height:1.2!important;white-space:nowrap!important;
}
html body .store-status::before{
  content:""!important;width:8px!important;height:8px!important;flex:0 0 8px!important;
  border-radius:999px!important;box-shadow:none!important;
}
html body .store-status.is-open{color:#22c55e!important}
html body .store-status.is-open::before{background:#22c55e!important}
html body .store-status.is-closed{color:#ef4444!important}
html body .store-status.is-closed::before{background:#ef4444!important}
html body .store-status-hint{display:none!important}
html body .location-chip{
  min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;color:var(--muted)!important;
  text-decoration:none!important;font-size:13px!important;font-weight:850!important;line-height:1.2!important;
}
html body .location-chip::before{content:"⌖"!important;margin-right:5px!important;color:var(--accent)!important}
html body .location-chip:hover,html body .location-chip:focus-visible{color:var(--text)!important;transform:none!important;text-decoration:underline!important;text-underline-offset:3px!important}

html body .top-actions{gap:8px!important}
html body #categoryMenuBtn,
html body #themeBtn,
html body #installBtn{
  min-height:50px!important;height:50px!important;border-radius:16px!important;
  box-shadow:none!important;
}
html body #categoryMenuBtn{min-width:104px!important;padding:0 15px!important}
html body #themeBtn,html body #themeBtn.tv-theme-switch{width:66px!important;min-width:66px!important;padding:0 6px!important}
html body #installBtn.install-cta{display:none!important}
html body .search{
  min-height:52px!important;border-radius:16px!important;padding:0 15px!important;
  background:color-mix(in srgb,var(--card) 96%, transparent)!important;
  box-shadow:none!important;
}
html body .search:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%, transparent)!important}

html body .tv-home-banner{
  margin-top:14px!important;padding:0!important;border:0!important;border-radius:22px!important;
  background:transparent!important;box-shadow:none!important;
}
html body .tv-home-banner .hero-banner-card{
  border-radius:22px!important;border:1px solid var(--line)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.10)!important;
}

html body .quick-nav-wrap{margin:16px 0 10px!important;gap:8px!important}
html body .quick-nav-head{padding:0 2px!important;align-items:center!important}
html body .quick-nav-kicker{display:none!important}
html body .quick-nav-title{font-size:14px!important;font-weight:900!important;color:var(--muted)!important}
html body .quick-nav-swipe-hint{
  display:inline-flex!important;align-items:center!important;gap:6px!important;
  font-size:12px!important;font-weight:900!important;color:var(--muted)!important;
}
html body .quick-nav-swipe-hint span{
  width:auto!important;height:auto!important;border:0!important;border-radius:0!important;
  background:transparent!important;font-size:17px!important;color:var(--accent)!important;
}
html body .quick-nav-wrap::after{width:28px!important;top:30px!important}
html body .home-quick-nav{gap:9px!important;padding:1px 20px 7px 1px!important}
html body .home-quick-nav button{
  min-width:152px!important;max-width:152px!important;min-height:68px!important;
  padding:10px!important;border-radius:15px!important;
  border:1px solid var(--line)!important;
  background:color-mix(in srgb,var(--surface) 98%, transparent)!important;
  box-shadow:none!important;
  grid-template-columns:38px minmax(0,1fr)!important;
}
html body .home-quick-nav button::before,html body .home-quick-nav button::after{display:none!important}
html body .home-quick-nav button > span{
  width:38px!important;height:38px!important;border-radius:12px!important;font-size:17px!important;
  background:color-mix(in srgb,var(--accent) 12%, var(--card))!important;
}
html body .home-quick-nav button > b{font-size:14px!important}
html body .home-quick-nav button > small{font-size:11px!important}

html body .promo-premium-shell{border-radius:20px!important;box-shadow:0 10px 24px rgba(0,0,0,.09)!important}
html body .promo-order-btn{border-radius:10px!important;box-shadow:none!important}
html body .section-head{margin:22px 0 12px!important}
html body .section-head h2{font-size:clamp(30px,6vw,46px)!important;letter-spacing:-.045em!important}
html body .section-head p{font-size:14px!important;max-width:60ch!important}
html body .close-categories-btn{border-radius:12px!important;box-shadow:none!important}

html body .category{
  border-radius:18px!important;border:1px solid var(--line)!important;
  box-shadow:none!important;background:color-mix(in srgb,var(--surface) 98%, transparent)!important;
}
html body .category.open{box-shadow:0 8px 22px rgba(0,0,0,.07)!important;border-color:color-mix(in srgb,var(--accent) 22%,var(--line))!important}
html body .category-header{padding:15px 16px!important}
html body .category-header::before,html body .category-header::after{display:none!important}
html body .category-title{font-size:clamp(20px,2vw,27px)!important}
html body .category-meta{font-size:12px!important;color:var(--muted)!important}
html body .chev{width:40px!important;height:40px!important;border-radius:12px!important;box-shadow:none!important}

html body .products{gap:12px!important}
html body .product{
  border-radius:16px!important;border:1px solid var(--line)!important;
  box-shadow:none!important;background:var(--card)!important;
}
html body .product-media{background:#fff!important}
html body .product[data-cat="Bebidas"] .product-media::after{display:none!important;content:none!important}
html body .product[data-cat="Bebidas"] .product-media img{
  padding:12px!important;filter:none!important;object-fit:contain!important;background:#fff!important;
}
html body .product-body{padding:13px!important;gap:8px!important}
html body .product h3{font-size:17px!important}
html body .price{font-size:19px!important}
html body .desc{font-size:13px!important;color:var(--muted)!important}
html body .product-actions{gap:8px!important}
html body .details-btn,html body .add-btn,html body .card-buy-control{
  min-height:45px!important;height:45px!important;border-radius:12px!important;box-shadow:none!important;
}
html body .details-btn{background:transparent!important}
html body .add-btn{background:var(--accent)!important;color:#201100!important}
html body #cartFloatBtn{width:58px!important;height:58px!important;border-radius:18px!important;box-shadow:0 12px 28px rgba(0,0,0,.18)!important}

@media (min-width:761px){
  html body .topbar-inner{
    grid-template-columns:minmax(330px,auto) minmax(240px,1fr) auto!important;
    grid-template-areas:"brand search actions"!important;
  }
  html body .quick-nav-head{display:none!important}
  html body .home-quick-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important;padding:0!important}
  html body .home-quick-nav button{min-width:0!important;max-width:none!important}
}
@media (max-width:760px){
  html body .topbar-inner{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"brand actions" "search search"!important;
    padding:12px!important;gap:10px!important;border-radius:20px!important;
  }
  html body .brand-logo,html body #brandTap .brand-logo{width:62px!important;height:62px!important;flex-basis:62px!important}
  html body .brand-title{font-size:clamp(24px,7vw,31px)!important}
  html body .brand-status-row{gap:5px 10px!important}
  html body .store-status,html body .location-chip{font-size:11.5px!important}
  html body #categoryMenuBtn{min-width:52px!important;width:52px!important;padding:0!important}
  html body #categoryMenuBtn .category-menu-label{display:none!important}
  html body #themeBtn,html body #themeBtn.tv-theme-switch{width:50px!important;min-width:50px!important}
  html body .search{min-height:50px!important}
  html body .tv-home-banner{border-radius:18px!important}
  html body .tv-home-banner .hero-banner-card{border-radius:18px!important}
  html body .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:420px){
  html body .brand-logo,html body #brandTap .brand-logo{width:54px!important;height:54px!important;flex-basis:54px!important}
  html body .brand-title{font-size:22px!important}
  html body .store-status{font-size:11px!important}
  html body .location-chip{font-size:11px!important}
  html body .products{grid-template-columns:1fr!important}
}

/* Source block: tv-v247-bebidas-reales-final */
/* Bebidas reales, limpias y consistentes en ambos temas */
html body .product[data-cat="Bebidas"]{
  overflow:hidden!important;
  background:#fff!important;
  border-color:#e5e7eb!important;
  color:#111!important;
}
html body .product[data-cat="Bebidas"] .product-media{
  position:relative!important;
  background:#fff!important;
  border-bottom:1px solid #ececec!important;
}
html body .product[data-cat="Bebidas"] .product-media::after{
  display:none!important;
  content:none!important;
}
html body .product[data-cat="Bebidas"] .product-media img{
  width:100%!important;
  height:100%!important;
  padding:13px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
html body .product[data-id="bebida-coca-zero-15"] .product-media img{
  transform:scale(1.65)!important;
}
html body .product[data-cat="Bebidas"] .product-body{background:#fff!important;}
html body .product[data-cat="Bebidas"] h3{color:#111!important;}
html body .product[data-cat="Bebidas"] .desc{color:#626262!important;}
html body .product[data-cat="Bebidas"] .price{color:#d85f00!important;}
html body .product[data-cat="Bebidas"] .details-btn{
  border-color:#d9d9d9!important;
  background:#fff!important;
  color:#111!important;
}
html body .product[data-cat="Bebidas"] .details-btn:hover{background:#f5f5f5!important;}
html body .product[data-cat="Bebidas"] .add-btn{
  background:#111!important;
  color:#fff!important;
}
html body .cart-thumb img,
html body .addon-card img,
html body .addon-item img{
  object-fit:contain!important;
  background:#fff!important;
}
@media(max-width:760px){
  html body .product[data-cat="Bebidas"] .product-media img{padding:9px!important;}
}

/* Source block: tv-v248-logo-y-carga-final */
/* Logo principal grande, nítido y bien encuadrado */
html body .brand-logo,
html body #brandTap .brand-logo{
  width:94px!important;
  height:94px!important;
  flex:0 0 94px!important;
  overflow:visible!important;
  border-radius:24px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .brand-logo img,
html body #brandTap .brand-logo img{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(1.08)!important;
  transform-origin:center!important;
  filter:none!important;
  opacity:1!important;
  image-rendering:auto!important;
  backface-visibility:visible!important;
}
@media(max-width:760px){
  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:72px!important;
    height:72px!important;
    flex-basis:72px!important;
  }
  html body .brand-title{font-size:clamp(25px,7vw,32px)!important;}
}
@media(max-width:390px){
  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:66px!important;
    height:66px!important;
    flex-basis:66px!important;
  }
}

/* Source block: tv-v249-responsive-total */
/* V249 · Responsive total para celulares, tablets y pantallas con notch */

/* Base segura: ningún bloque principal puede ensanchar la página. */
html{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-padding-top:112px;
}
body{
  width:100%;
  min-width:0;
  max-width:100%;
  overflow-x:hidden!important;
  overscroll-behavior-x:none;
}
html body .app{
  width:100%!important;
  min-width:0!important;
  max-width:1320px!important;
  margin-inline:auto!important;
}
html body .topbar,
html body .topbar-inner,
html body .hero,
html body .quick-nav-wrap,
html body .home-quick-nav,
html body .promo-banners,
html body .promo-premium-shell,
html body .promo-premium-track,
html body #menu,
html body .section-head,
html body .categories,
html body .category,
html body .category-header,
html body .category-body,
html body .products,
html body .product,
html body .product-body{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
html body .topbar-inner > *,
html body .brand,
html body .brand-copy,
html body .top-actions,
html body .search,
html body .section-head > *,
html body .category-header > *,
html body .product-top > *,
html body .modal-product > *,
html body .cart-item-main > *{
  min-width:0!important;
}
html body img,
html body video,
html body canvas,
html body svg{
  max-width:100%;
}
html body button,
html body input,
html body select,
html body textarea{
  max-width:100%;
}
html body .brand-title,
html body .category-title,
html body .product h3,
html body .cart-name,
html body .modal h3,
html body .drawer-title,
html body .admin-title-block,
html body .section-head h2,
html body .section-head p{
  overflow-wrap:anywhere;
}

/* Publicidades: ocupan exactamente el ancho disponible, sin cortes laterales. */
html body .promo-banners{
  overflow:hidden!important;
}
html body .promo-premium-shell{
  overflow:hidden!important;
}
html body .promo-premium-track{
  display:flex!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
html body .promo-premium-slide{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  aspect-ratio:2048 / 650!important;
  min-height:0!important;
  overflow:hidden!important;
}
html body .promo-premium-slide img,
html body .promo-premium-picture,
html body .promo-premium-picture img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* El banner principal conserva el diseño completo de punta a punta. */
html body .tv-home-banner,
html body .tv-home-banner .hero-banner-card{
  overflow:hidden!important;
}
html body .tv-home-banner .hero-banner-card{
  width:100%!important;
  max-width:100%!important;
  aspect-ratio:2048 / 650!important;
}
html body .tv-home-banner .hero-banner-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* Accesos rápidos: scroll interno real, nunca scroll de toda la página. */
html body .quick-nav-wrap{
  overflow:hidden!important;
}
html body .home-quick-nav{
  display:flex!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x proximity!important;
  scroll-padding-inline:2px;
  -webkit-overflow-scrolling:touch;
}
html body .home-quick-nav button{
  flex:0 0 clamp(138px,42vw,160px)!important;
  width:clamp(138px,42vw,160px)!important;
  min-width:0!important;
  max-width:none!important;
  scroll-snap-align:start!important;
}
html body .home-quick-nav button > b,
html body .home-quick-nav button > small{
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}

/* Escritorio/tablet grande: se conserva la grilla completa. */
@media (min-width:761px){
  html body .home-quick-nav{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    overflow:visible!important;
  }
  html body .home-quick-nav button{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}

/* Celulares y tablets angostas. */
@media (max-width:760px){
  html{
    scroll-padding-top:96px;
  }
  html body .app{
    padding:
      max(8px,env(safe-area-inset-top))
      max(10px,env(safe-area-inset-right))
      calc(94px + env(safe-area-inset-bottom))
      max(10px,env(safe-area-inset-left))!important;
  }

  /* Header: logo + acciones en una fila y buscador debajo. */
  html body .topbar{
    top:env(safe-area-inset-top,0px)!important;
    padding-top:0!important;
    width:100%!important;
  }
  html body .topbar-inner{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "brand actions"
      "search search"!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    column-gap:8px!important;
    row-gap:10px!important;
    width:100%!important;
    padding:10px!important;
    padding-right:10px!important;
    border-radius:20px!important;
  }
  html body .brand{
    grid-area:brand!important;
    display:grid!important;
    grid-template-columns:clamp(52px,16vw,64px) minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-height:0!important;
    padding:0!important;
  }
  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:clamp(52px,16vw,64px)!important;
    height:clamp(52px,16vw,64px)!important;
    flex:0 0 clamp(52px,16vw,64px)!important;
    border-radius:17px!important;
  }
  html body .brand-logo img,
  html body #brandTap .brand-logo img{
    width:100%!important;
    height:100%!important;
    transform:none!important;
    object-fit:contain!important;
  }
  html body .brand-copy{
    display:grid!important;
    align-content:center!important;
    gap:3px!important;
    width:100%!important;
  }
  html body .brand-title{
    margin:0!important;
    font-size:clamp(21px,6.6vw,29px)!important;
    line-height:.96!important;
    letter-spacing:-.045em!important;
    white-space:normal!important;
    text-wrap:balance;
  }
  html body .brand-status-row{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:3px 9px!important;
    width:100%!important;
    margin:2px 0 0!important;
  }
  html body .store-status,
  html body .location-chip{
    min-width:0!important;
    max-width:100%!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    font-size:clamp(10px,2.8vw,11.5px)!important;
    line-height:1.2!important;
    white-space:normal!important;
  }

  /* Se anulan reglas antiguas que posicionaban el botón de tema de forma absoluta. */
  html body .top-actions{
    grid-area:actions!important;
    position:static!important;
    display:flex!important;
    grid-template-columns:none!important;
    align-items:center!important;
    justify-content:flex-end!important;
    justify-self:end!important;
    width:auto!important;
    min-width:0!important;
    padding:0!important;
    gap:6px!important;
  }
  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    position:static!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    flex:0 0 44px!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    border-radius:14px!important;
    display:grid!important;
    place-items:center!important;
  }
  html body #categoryMenuBtn .category-menu-label{
    display:none!important;
  }
  html body #categoryMenuBtn .hamburger-lines{
    margin:0!important;
  }
  html body #themeBtn .theme-orb{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
    font-size:19px!important;
  }
  html body #installBtn.install-cta{
    display:none!important;
  }

  html body .search{
    grid-area:search!important;
    order:initial!important;
    width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    padding:0 14px!important;
    border-radius:16px!important;
  }
  html body .search input{
    width:100%!important;
    min-width:0!important;
    font-size:16px!important; /* evita zoom automático de iOS */
    text-overflow:ellipsis;
  }

  /* Banner principal. */
  html body .tv-home-banner{
    width:100%!important;
    margin-top:10px!important;
    padding:0!important;
    border-radius:18px!important;
  }
  html body .tv-home-banner .hero-banner-card{
    width:100%!important;
    border-radius:18px!important;
  }

  /* Navegación rápida. */
  html body .quick-nav-wrap{
    width:100%!important;
    margin:14px 0 8px!important;
  }
  html body .quick-nav-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    gap:8px!important;
    padding:0 2px!important;
  }
  html body .quick-nav-head > *{
    min-width:0!important;
  }
  html body .quick-nav-title{
    font-size:13px!important;
    white-space:normal!important;
  }
  html body .quick-nav-swipe-hint{
    flex:0 0 auto!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }
  html body .quick-nav-wrap::after{
    right:0!important;
    width:24px!important;
    max-width:8vw!important;
  }
  html body .home-quick-nav{
    width:100%!important;
    max-width:100%!important;
    gap:8px!important;
    margin:0!important;
    padding:1px 22px 7px 1px!important;
  }
  html body .home-quick-nav button{
    min-height:66px!important;
    padding:9px 10px!important;
    border-radius:15px!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    column-gap:9px!important;
  }

  /* Publicidades. */
  html body .promo-banners{
    width:100%!important;
    max-width:100%!important;
    margin:10px 0 8px!important;
    border-radius:18px!important;
  }
  html body .promo-premium-shell{
    border-radius:18px!important;
  }
  html body .promo-order-btn,
  html body .promo-click-chip{
    right:8px!important;
    bottom:8px!important;
    max-width:calc(100% - 16px)!important;
    padding:6px 9px!important;
    font-size:10px!important;
    line-height:1!important;
  }

  /* Título del menú. */
  html body .section-head{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    gap:10px!important;
    margin:18px 0 10px!important;
  }
  html body .section-head > div{
    flex:1 1 auto!important;
    min-width:0!important;
  }
  html body .section-head h2{
    margin:0!important;
    font-size:clamp(27px,8vw,36px)!important;
    line-height:.98!important;
  }
  html body .section-head p{
    margin-top:5px!important;
    font-size:13px!important;
    line-height:1.3!important;
  }
  html body .close-categories-btn{
    flex:0 0 auto!important;
    min-width:44px!important;
    min-height:42px!important;
    padding:0 11px!important;
    border-radius:12px!important;
    white-space:nowrap!important;
    font-size:12px!important;
  }

  /* Categorías y productos. */
  html body .categories{
    display:grid!important;
    gap:10px!important;
  }
  html body .category{
    overflow:hidden!important;
    border-radius:17px!important;
  }
  html body .category-header{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    min-height:58px!important;
    padding:12px!important;
  }
  html body .category-logo{
    width:42px!important;
    height:42px!important;
    flex-basis:42px!important;
    border-radius:12px!important;
  }
  html body .category-title{
    font-size:clamp(18px,5.4vw,22px)!important;
    line-height:1.05!important;
  }
  html body .category-meta{
    font-size:11px!important;
    line-height:1.25!important;
  }
  html body .chev{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-radius:11px!important;
  }
  html body .category-body{
    padding:0 10px 10px!important;
    overflow:hidden!important;
  }
  html body .products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  html body .product{
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:15px!important;
  }
  html body .product-media{
    width:100%!important;
    aspect-ratio:1 / 1!important;
    overflow:hidden!important;
  }
  html body .product-media img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
  }
  html body .product-body{
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
    padding:11px!important;
    gap:7px!important;
  }
  html body .product h3{
    font-size:16px!important;
    line-height:1.1!important;
  }
  html body .price{
    font-size:17px!important;
    line-height:1.1!important;
    white-space:normal!important;
  }
  html body .desc{
    min-height:0!important;
    font-size:12.5px!important;
    line-height:1.35!important;
  }
  html body .product-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    width:100%!important;
    margin-top:auto!important;
  }
  html body .details-btn,
  html body .add-btn,
  html body .card-buy-control,
  html body .product-actions .card-control-slot{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .details-btn,
  html body .add-btn,
  html body .card-buy-control{
    min-height:44px!important;
    height:44px!important;
    border-radius:12px!important;
    font-size:13.5px!important;
  }

  /* Carrito flotante dentro del área segura. */
  html body #cartFloatBtn,
  html body #cartFloatBtn.cart-float{
    right:max(12px,env(safe-area-inset-right))!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    width:58px!important;
    min-width:58px!important;
    height:58px!important;
    border-radius:17px!important;
  }

  /* Carrito como hoja inferior a ancho completo. */
  html body .drawer{
    left:0!important;
    right:0!important;
    top:auto!important;
    bottom:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:min(94dvh,860px)!important;
    max-height:calc(100dvh - env(safe-area-inset-top))!important;
    border-radius:24px 24px 0 0!important;
    border-left:0!important;
    transform:translateY(105%)!important;
    overflow:hidden!important;
  }
  html body .drawer.show{
    transform:translateY(0)!important;
  }
  html body .drawer-head{
    padding:14px 14px 11px!important;
  }
  html body .drawer-title{
    font-size:clamp(28px,8vw,34px)!important;
  }
  html body .cart-steps{
    padding-inline:14px!important;
  }
  html body .drawer-body{
    min-width:0!important;
    padding:12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  html body .drawer-foot{
    min-width:0!important;
    padding:12px max(12px,env(safe-area-inset-right))
      calc(12px + env(safe-area-inset-bottom))
      max(12px,env(safe-area-inset-left))!important;
  }
  html body .cart-item{
    min-width:0!important;
    padding:10px!important;
    border-radius:17px!important;
  }
  html body .cart-item-main{
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr) 28px!important;
    gap:9px!important;
  }
  html body .cart-thumb-wrap,
  html body .cart-thumb{
    width:64px!important;
    height:64px!important;
    border-radius:13px!important;
  }
  html body .cart-item-foot{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }
  html body .addon-tabs,
  html body .follow-buy.compact-addons .addon-tabs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
    overflow:visible!important;
  }
  html body .addon-tab{
    min-width:0!important;
    padding:9px 5px!important;
    font-size:11px!important;
    white-space:normal!important;
  }
  html body .addon-list{
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  html body .checkout-grid{
    grid-template-columns:1fr!important;
  }
  html body .checkout-grid .field,
  html body .checkout-grid .span{
    grid-column:1/-1!important;
    min-width:0!important;
  }
  html body .input,
  html body .textarea,
  html body select,
  html body input,
  html body textarea{
    font-size:16px!important; /* evita zoom al enfocar en Safari iOS */
  }
  html body .order-time-selects{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(72px,.9fr)!important;
    gap:5px!important;
    width:100%!important;
  }
  html body .order-time-selects .input{
    width:100%!important;
    min-width:0!important;
    padding-inline:7px!important;
  }

  /* Menú lateral de categorías. */
  html body .category-menu-drawer{
    width:min(360px,100vw)!important;
    max-width:100%!important;
    padding-left:env(safe-area-inset-left)!important;
  }
  html body .category-menu-head{
    padding:
      max(16px,env(safe-area-inset-top))
      14px
      12px!important;
  }
  html body .category-menu-list{
    padding:12px!important;
    padding-bottom:calc(12px + env(safe-area-inset-bottom))!important;
  }

  /* Modal de producto como hoja inferior. */
  html body .modal{
    inset:auto 0 0 0!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    max-height:calc(100dvh - env(safe-area-inset-top))!important;
    transform:translateY(105%)!important;
  }
  html body .modal.show{
    transform:translateY(0)!important;
  }
  html body .modal-card,
  html body #productModal[data-type="details"] .modal-card{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    max-height:calc(100dvh - env(safe-area-inset-top))!important;
    border-radius:24px 24px 0 0!important;
  }
  html body .modal-head{
    padding:14px!important;
  }
  html body .modal-product{
    grid-template-columns:68px minmax(0,1fr)!important;
    gap:10px!important;
  }
  html body .modal-img{
    width:68px!important;
    height:68px!important;
    border-radius:16px!important;
  }
  html body .modal h3{
    font-size:clamp(22px,7vw,30px)!important;
  }
  html body .modal-body{
    min-width:0!important;
    padding:14px!important;
    overflow-x:hidden!important;
  }
  html body .modal-foot{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:12px max(14px,env(safe-area-inset-right))
      calc(12px + env(safe-area-inset-bottom))
      max(14px,env(safe-area-inset-left))!important;
  }
  html body .modal-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
  }
  html body .modal-actions .btn{
    width:100%!important;
    min-width:0!important;
  }

  /* Panel admin también usable desde el teléfono. */
  html body .admin-modal{
    align-items:stretch!important;
    justify-content:stretch!important;
    padding:0!important;
  }
  html body .admin-card{
    width:100%!important;
    max-width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
  }
  html body .admin-head,
  html body .admin-epic-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    padding:
      max(14px,env(safe-area-inset-top))
      14px
      12px!important;
  }
  html body .txhouse-brand{
    display:none!important;
  }
  html body .admin-close-epic{
    position:static!important;
    grid-column:2!important;
    grid-row:1!important;
  }
  html body .admin-title-block{
    grid-column:1!important;
    grid-row:1!important;
  }
  html body .admin-body{
    min-width:0!important;
    padding:12px!important;
    padding-bottom:calc(12px + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
  }
  html body .admin-simple-toolbar,
  html body .admin-grid{
    grid-template-columns:1fr!important;
  }
  html body .admin-actions-bar,
  html body .admin-main-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  html body .admin-actions-bar .btn{
    width:100%!important;
  }
}

/* Teléfonos angostos: una tarjeta por fila y textos sin competencia. */
@media (max-width:430px){
  html body .products{
    grid-template-columns:1fr!important;
  }
  html body .product-media{
    aspect-ratio:16 / 10!important;
  }
  html body .product h3{
    font-size:18px!important;
  }
  html body .price{
    font-size:19px!important;
  }
  html body .desc{
    font-size:13px!important;
  }
  html body .section-head{
    align-items:flex-start!important;
  }
  html body .close-categories-btn{
    padding:0 9px!important;
    font-size:11px!important;
  }
}

/* Teléfonos muy angostos (320–360 px y similares). */
@media (max-width:360px){
  html body .app{
    padding-left:max(7px,env(safe-area-inset-left))!important;
    padding-right:max(7px,env(safe-area-inset-right))!important;
  }
  html body .topbar-inner{
    padding:8px!important;
    column-gap:5px!important;
  }
  html body .brand{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:6px!important;
  }
  html body .brand-logo,
  html body #brandTap .brand-logo{
    width:48px!important;
    height:48px!important;
    flex-basis:48px!important;
  }
  html body .brand-title{
    font-size:clamp(18px,6.3vw,21px)!important;
  }
  html body .store-status,
  html body .location-chip{
    font-size:9.5px!important;
  }
  html body .top-actions{
    gap:4px!important;
  }
  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    flex-basis:40px!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    border-radius:12px!important;
  }
  html body #themeBtn .theme-orb{
    width:31px!important;
    height:31px!important;
    flex-basis:31px!important;
    font-size:18px!important;
  }
  html body .quick-nav-swipe-hint{
    font-size:0!important;
  }
  html body .quick-nav-swipe-hint span{
    font-size:17px!important;
  }
  html body .home-quick-nav button{
    flex-basis:132px!important;
    width:132px!important;
  }
  html body .section-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
  }
  html body .section-head p{
    display:none!important;
  }
  html body .close-categories-btn{
    min-width:40px!important;
    min-height:40px!important;
    padding:0 8px!important;
  }
  html body .modal-actions{
    grid-template-columns:1fr!important;
  }
  html body .order-time-selects{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  }
  html body .order-time-selects .order-ampm-select{
    grid-column:1/-1!important;
  }
}

/* Paisaje en celulares: se prioriza altura útil y desplazamiento interno. */
@media (orientation:landscape) and (max-height:520px){
  html body .topbar{
    position:relative!important;
  }
  html body .drawer,
  html body .modal,
  html body .modal-card{
    max-height:100dvh!important;
    height:100dvh!important;
    border-radius:0!important;
  }
  html body .drawer-head,
  html body .modal-head{
    padding-block:9px!important;
  }
}

/* Preferencias de accesibilidad. */
@media (prefers-reduced-motion:reduce){
  html body .home-quick-nav,
  html body .promo-premium-track{
    scroll-behavior:auto!important;
  }
}

/* v255 · render estable, hero responsive y promos sin estados intermedios rotos */
html,
html body{
  overflow-x:hidden!important;
}

html body .hero.tv-home-banner{
  width:min(100%,900px)!important;
  max-width:900px!important;
  margin:12px auto 14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

html body .hero.tv-home-banner .hero-banner-card{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16 / 7!important;
  overflow:hidden!important;
  border-radius:24px!important;
  border:1px solid rgba(244,181,77,.42)!important;
  background:#07142d!important;
  box-shadow:0 18px 48px rgba(3,9,24,.28)!important;
  isolation:isolate!important;
}

html body .hero.tv-home-banner .hero-banner-art{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:inherit!important;
  overflow:hidden!important;
  background:none!important;
}

html body .hero-banner-picture{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}

html body .hero.tv-home-banner .hero-banner-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:62% center!important;
  transform:none!important;
  filter:none!important;
}

html body .hero-banner-art::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,rgba(3,12,31,.98) 0%,rgba(4,16,39,.92) 34%,rgba(4,15,36,.50) 58%,rgba(2,8,21,.08) 78%),linear-gradient(0deg,rgba(2,8,20,.28),transparent 45%)!important;
}

html body .hero-banner-content{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  gap:clamp(14px,2.5vw,28px)!important;
  width:62%!important;
  height:100%!important;
  min-width:0!important;
  padding:clamp(18px,3.3vw,42px)!important;
  color:#fff!important;
}

html body .hero.tv-home-banner .hero-banner-card img.hero-banner-logo{
  flex:0 0 auto!important;
  width:clamp(78px,12vw,132px)!important;
  height:clamp(78px,12vw,132px)!important;
  max-width:clamp(78px,12vw,132px)!important;
  aspect-ratio:1 / 1!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.44))!important;
}

html body .hero-banner-copy{
  display:grid!important;
  gap:clamp(5px,1vw,11px)!important;
  min-width:0!important;
  text-align:left!important;
}

html body .hero-banner-copy h1{
  margin:0!important;
  color:#fff!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(28px,4.1vw,54px)!important;
  font-weight:700!important;
  line-height:.92!important;
  letter-spacing:-.035em!important;
  text-wrap:balance!important;
  overflow-wrap:normal!important;
}

html body .hero-banner-copy p{
  margin:0!important;
  color:#ffd98d!important;
  font-size:clamp(12px,1.45vw,18px)!important;
  font-weight:800!important;
  line-height:1.2!important;
}

html body .hero-banner-chip{
  justify-self:start!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  max-width:100%!important;
  padding:6px 12px!important;
  border:1px solid rgba(255,214,134,.48)!important;
  border-radius:999px!important;
  background:rgba(5,16,40,.52)!important;
  color:#fff!important;
  font-size:clamp(10px,1.1vw,13px)!important;
  font-weight:850!important;
  line-height:1!important;
  white-space:nowrap!important;
  backdrop-filter:blur(8px)!important;
}

html body #promoBanners.promo-banners{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  border-radius:20px!important;
  background:linear-gradient(110deg,#0a1630,#162440 48%,#0a1630)!important;
  contain:layout paint!important;
}

html body #promoBanners .promo-premium-shell{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  border-radius:inherit!important;
}

html body #promoBanners .promo-premium-track{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
  gap:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  scrollbar-width:none!important;
  overscroll-behavior-inline:contain!important;
}

html body #promoBanners .promo-premium-track::-webkit-scrollbar{
  display:none!important;
}

html body #promoBanners .promo-premium-slide{
  flex:0 0 100%!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1280 / 426!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:inherit!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
  background:#0b1730!important;
}

html body #promoBanners .promo-picture,
html body #promoBanners .promo-picture img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  aspect-ratio:1280 / 426!important;
  content-visibility:visible!important;
}

html body #promoBanners .promo-picture img{
  object-fit:contain!important;
  object-position:center!important;
  background:#0b1730!important;
  opacity:1!important;
  transition:opacity .18s ease!important;
}

html body #promoBanners.is-loading{
  aspect-ratio:1280 / 426!important;
}

html body #promoBanners.is-loading .promo-premium-track{
  overflow:hidden!important;
}

html body #promoBanners.is-loading .promo-premium-slide:not(:first-child){
  visibility:hidden!important;
}

html body #promoBanners.is-loading .promo-picture img,
html body #promoBanners.is-loading .promo-order-btn{
  opacity:0!important;
}

html body #promoBanners.is-loading::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  display:block!important;
  z-index:5!important;
  pointer-events:none!important;
  background:linear-gradient(105deg,transparent 22%,rgba(255,255,255,.10) 45%,transparent 68%)!important;
  background-size:220% 100%!important;
  animation:tvPromoLoading 1.1s ease-in-out infinite!important;
}

/* El pseudo-elemento del selector de tema no debe cubrir el resto del header. */
html body #themeBtn,
html body #themeBtn.tv-theme-switch{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

html body #themeBtn::before,
html body #themeBtn::after,
html body #themeBtn.tv-theme-switch::before,
html body #themeBtn.tv-theme-switch::after{
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  pointer-events:none!important;
}

html body #categoryMenuBtn{
  position:relative!important;
  z-index:2!important;
}

@keyframes tvPromoLoading{
  from{background-position:120% 0}
  to{background-position:-120% 0}
}

@media (max-width:760px){
  html body .hero.tv-home-banner{
    width:100%!important;
    margin:9px 0 12px!important;
  }
  html body .hero.tv-home-banner .hero-banner-card,
  html body .hero.tv-home-banner .hero-banner-art{
    aspect-ratio:16 / 9!important;
    border-radius:19px!important;
  }
  html body .hero-banner-content{
    display:grid!important;
    align-content:center!important;
    justify-items:start!important;
    gap:5px!important;
    width:61%!important;
    padding:clamp(13px,4.2vw,22px)!important;
  }
  html body .hero.tv-home-banner .hero-banner-card img.hero-banner-logo{
    display:none!important;
  }
  html body .hero-banner-copy{
    gap:5px!important;
  }
  html body .hero-banner-copy h1{
    font-size:clamp(22px,7.1vw,34px)!important;
    line-height:.91!important;
  }
  html body .hero-banner-copy p{
    font-size:clamp(10px,3.1vw,14px)!important;
  }
  html body .hero-banner-chip{
    min-height:24px!important;
    padding:4px 8px!important;
    font-size:clamp(8px,2.55vw,11px)!important;
  }
  html body #installBtn{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    padding:0!important;
    overflow:hidden!important;
    font-size:0!important;
    border-radius:13px!important;
  }
  html body #installBtn::after{
    content:"↓"!important;
    display:grid!important;
    place-items:center!important;
    position:static!important;
    width:100%!important;
    height:100%!important;
    font-size:20px!important;
    color:#1e1200!important;
    background:none!important;
  }
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch{
    display:grid!important;
    place-items:center!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    padding:0!important;
    border-radius:14px!important;
  }
  html body #themeBtn::before,
  html body #themeBtn::after,
  html body #themeBtn.tv-theme-switch::before,
  html body #themeBtn.tv-theme-switch::after{
    content:none!important;
    display:none!important;
  }
  html body #themeBtn .theme-switch-track{
    position:static!important;
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    padding:0!important;
    border:0!important;
    border-radius:11px!important;
    background:color-mix(in srgb,var(--surface2) 88%,var(--accent) 12%)!important;
    box-shadow:none!important;
  }
  html body #themeBtn .theme-switch-icon{
    display:none!important;
  }
  html body #themeBtn .theme-switch-thumb{
    position:static!important;
    inset:auto!important;
    display:grid!important;
    place-items:center!important;
    width:30px!important;
    height:30px!important;
    transform:none!important;
    border-radius:10px!important;
    box-shadow:none!important;
  }
}

@media (max-width:360px){
  html body .hero-banner-copy p{display:none!important}
  html body .hero-banner-content{width:64%!important}
  html body #installBtn{display:none!important}
}

@media (prefers-reduced-motion:reduce){
  html body #promoBanners.is-loading::after{animation:none!important}
  html body #promoBanners .promo-picture img{transition:none!important}
}

/* v257 · Panel administrador reparado y responsive */
html body .admin-modal{padding:clamp(8px,2vw,24px)!important;align-items:center!important;justify-content:center!important}
html body .admin-card{width:min(1460px,calc(100vw - 32px))!important;height:min(94dvh,1040px)!important;max-height:94dvh!important;border-radius:28px!important;overflow:hidden!important;box-shadow:0 30px 90px rgba(2,8,23,.30)!important}
html body .admin-epic-head{flex:0 0 auto!important;min-height:92px!important;padding:18px 24px!important;background:linear-gradient(135deg,#07162f,#102a53)!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
html body .admin-title-block{min-width:0!important;padding-right:68px!important}
html body .admin-title-block .admin-kicker{color:#ffb34f!important}
html body .admin-title-block>b{color:#fff!important;font-size:clamp(24px,2.4vw,36px)!important}
html body .admin-title-block>div{color:rgba(255,255,255,.76)!important;max-width:720px!important}
html body .admin-close-epic{position:absolute!important;right:22px!important;top:22px!important;width:48px!important;height:48px!important;z-index:4!important;color:#fff!important;background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.20)!important}
html body .admin-body{min-height:0!important;overflow:auto!important;padding:22px!important;display:block!important;scrollbar-gutter:stable!important}
html body .admin-workspace{display:grid!important;gap:18px!important;max-width:1400px!important;margin:0 auto!important}
html body .admin-save-status{position:sticky!important;top:-22px!important;z-index:20!important;margin:0!important;border-radius:14px!important;box-shadow:0 8px 24px rgba(15,23,42,.08)!important}
html body .admin-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
html body .admin-summary-card{display:grid!important;gap:3px!important;min-width:0!important;padding:16px!important;border:1px solid var(--line)!important;border-radius:18px!important;background:var(--card)!important;box-shadow:0 10px 24px rgba(15,23,42,.05)!important}
html body .admin-summary-card span{font-size:12px!important;font-weight:1000!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--muted)!important}
html body .admin-summary-card b{font-size:30px!important;line-height:1!important;color:var(--text)!important}
html body .admin-summary-card small{color:var(--muted)!important;font-weight:800!important}
html body .admin-settings-shell,
html body .admin-catalog-panel{display:grid!important;gap:16px!important;border:1px solid var(--line)!important;border-radius:24px!important;background:var(--surface2)!important;padding:18px!important}
html body .admin-section-heading{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important}
html body .admin-section-heading>div:first-child{min-width:0!important}
html body .admin-section-heading span{display:block!important;margin-bottom:4px!important;color:var(--accent)!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.13em!important}
html body .admin-section-heading h2{margin:0!important;color:var(--text)!important;font-size:clamp(23px,2.2vw,32px)!important;line-height:1!important;letter-spacing:-.04em!important}
html body .admin-section-heading p{margin:7px 0 0!important;color:var(--muted)!important;font-weight:750!important}
html body .admin-settings-heading>.btn{flex:0 0 auto!important;min-height:48px!important}
html body .admin-settings-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
html body .admin-settings-section{min-width:0!important;border:1px solid var(--line)!important;border-radius:18px!important;background:var(--card)!important;overflow:hidden!important}
html body .admin-settings-section[open]{box-shadow:0 14px 30px rgba(15,23,42,.07)!important}
html body .admin-settings-section>summary{display:flex!important;align-items:center!important;gap:12px!important;min-height:70px!important;padding:13px 15px!important;cursor:pointer!important;list-style:none!important;user-select:none!important}
html body .admin-settings-section>summary::-webkit-details-marker{display:none!important}
html body .admin-settings-section>summary>span{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;height:38px!important;border-radius:12px!important;background:color-mix(in srgb,var(--accent) 14%,var(--surface))!important;color:var(--accent)!important;font-size:12px!important;font-weight:1000!important}
html body .admin-settings-section>summary>div{min-width:0!important}
html body .admin-settings-section>summary b{display:block!important;color:var(--text)!important;font-size:17px!important}
html body .admin-settings-section>summary small{display:block!important;margin-top:2px!important;color:var(--muted)!important;font-weight:750!important}
html body .admin-settings-section>summary::after{content:"+"!important;margin-left:auto!important;color:var(--muted)!important;font-size:24px!important;font-weight:800!important}
html body .admin-settings-section[open]>summary::after{content:"−"!important}
html body .admin-settings-content{padding:4px 15px 16px!important;border-top:1px solid var(--line)!important}
html body .admin-settings-content.checkout-grid{padding-top:15px!important}
html body .admin-settings-content .field label{font-size:12px!important}
html body .admin-settings-save-mobile{display:none!important}
html body .admin-ad-preview-grid{margin:15px 0!important}
html body .admin-catalog-panel .admin-section-heading{align-items:center!important}
html body .admin-main-actions{flex:0 0 auto!important;margin:0!important;justify-content:flex-end!important}
html body .admin-main-actions>.btn{min-height:44px!important;padding-inline:16px!important}
html body .admin-simple-toolbar{margin:0!important;padding:14px!important;border:1px solid var(--line)!important;border-radius:18px!important;background:var(--card)!important}
html body .admin-results-meta{margin-top:-7px!important;color:var(--muted)!important;font-size:12px!important;font-weight:900!important}
html body .admin-grid{display:grid!important;grid-template-columns:minmax(300px,360px) minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
html body .admin-list{max-height:660px!important;padding:8px!important;border-radius:18px!important;background:var(--card)!important}
html body .admin-row{min-height:68px!important;border-radius:14px!important;transition:border-color .15s ease,background .15s ease,transform .15s ease!important}
html body .admin-row:hover{transform:translateY(-1px)!important}
html body .admin-row.active{outline:0!important;border-color:var(--accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)!important}
html body .admin-editor{min-width:0!important;padding:16px!important;border-radius:18px!important;background:var(--card)!important}
html body .admin-editor .admin-pro-panel,
html body .admin-editor .admin-pro-summary{background:var(--surface2)!important;border-radius:18px!important}
html body .admin-empty-state{display:grid!important;place-items:center!important;min-height:120px!important;padding:20px!important;border:1px dashed var(--line)!important;border-radius:16px!important;color:var(--muted)!important;font-weight:850!important;text-align:center!important}
html body .admin-pro-actions{z-index:12!important;padding:18px 0 2px!important;background:linear-gradient(180deg,transparent 0,var(--card) 28%)!important}
html body .admin-pro-actions #saveProductBtn{min-width:190px!important}
html body .admin-modal.admin-locked .admin-body{display:grid!important;place-items:center!important}
html body .admin-login-card{width:min(460px,100%)!important;margin:auto!important;padding:24px!important;border-radius:22px!important}

@media(max-width:980px){
  html body .admin-settings-grid{grid-template-columns:1fr!important}
  html body .admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .admin-grid{grid-template-columns:minmax(260px,320px) minmax(0,1fr)!important}
}

@media(max-width:760px){
  html body .admin-modal{padding:0!important;align-items:stretch!important}
  html body .admin-card{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border:0!important;border-radius:0!important}
  html body .admin-epic-head{min-height:78px!important;padding:13px 64px 13px 15px!important}
  html body .admin-title-block{padding-right:0!important}
  html body .admin-title-block>b{font-size:23px!important}
  html body .admin-title-block>div{display:none!important}
  html body .admin-close-epic{right:12px!important;top:14px!important;width:46px!important;height:46px!important}
  html body .admin-body{padding:12px!important;overflow-x:hidden!important}
  html body .admin-workspace{gap:12px!important}
  html body .admin-save-status{top:-12px!important;font-size:12px!important;line-height:1.25!important}
  html body .admin-summary{gap:8px!important}
  html body .admin-summary-card{padding:12px!important;border-radius:15px!important}
  html body .admin-summary-card b{font-size:25px!important}
  html body .admin-settings-shell,
  html body .admin-catalog-panel{padding:12px!important;border-radius:19px!important}
  html body .admin-section-heading{display:grid!important;gap:12px!important}
  html body .admin-settings-heading>.btn{display:none!important}
  html body .admin-settings-save-mobile{display:block!important;position:sticky!important;bottom:-12px!important;z-index:15!important;padding:12px 0!important;background:linear-gradient(180deg,transparent,var(--surface2) 30%)!important}
  html body .admin-settings-save-mobile .btn{width:100%!important;min-height:50px!important}
  html body .admin-settings-section>summary{min-height:64px!important;padding:11px!important}
  html body .admin-settings-content{padding:3px 11px 13px!important}
  html body .admin-settings-content.checkout-grid{padding-top:12px!important}
  html body .admin-settings-content .checkout-grid,
  html body .admin-settings-content.checkout-grid{grid-template-columns:1fr!important}
  html body .admin-promos-section .admin-ad-preview-grid{grid-template-columns:1fr!important}
  html body .admin-main-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:8px!important}
  html body .admin-main-actions>.btn{width:100%!important;min-width:0!important;padding:10px 8px!important}
  html body .admin-main-actions #adminLogoutBtn{grid-column:1 / -1!important}
  html body .admin-simple-toolbar{grid-template-columns:1fr!important;padding:10px!important}
  html body .admin-grid{grid-template-columns:1fr!important}
  html body .admin-list{max-height:34dvh!important;overscroll-behavior:contain!important}
  html body .admin-editor{padding:11px!important}
  html body .admin-pro-top{grid-template-columns:1fr!important}
  html body .admin-preview{min-height:190px!important;max-height:260px!important}
  html body .admin-pro-mini-actions{display:grid!important;grid-template-columns:1fr!important}
  html body .admin-pro-mini-actions .btn{width:100%!important}
  html body .admin-editor .checkout-grid{grid-template-columns:1fr!important}
  html body .admin-pro-actions{display:grid!important;grid-template-columns:1fr 1fr!important;bottom:-12px!important;margin-inline:-11px!important;padding:20px 11px 11px!important}
  html body .admin-pro-actions .btn{width:100%!important;min-width:0!important}
  html body .admin-pro-actions #saveProductBtn{grid-column:1 / -1!important;min-width:0!important}
  html body .admin-login-card{padding:18px!important}
  html body .admin-login-card .admin-cloud-login{grid-template-columns:1fr!important}
}

@media(max-width:380px){
  html body .admin-summary-card small{display:none!important}
  html body .admin-main-actions{grid-template-columns:1fr!important}
  html body .admin-main-actions #adminLogoutBtn{grid-column:auto!important}
  html body .admin-pro-actions{grid-template-columns:1fr!important}
  html body .admin-pro-actions #saveProductBtn{grid-column:auto!important}
}

/* v258 final · debe permanecer al final para vencer estilos históricos */
html body #installBtn.install-cta:not(.hidden):not([hidden]){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:132px!important;
  width:auto!important;
  height:52px!important;
  padding:0 16px!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,#ffad32,#ff870b)!important;
  color:#261300!important;
  border:1px solid rgba(255,136,0,.46)!important;
  box-shadow:0 10px 22px rgba(255,135,11,.25)!important;
  font-size:14px!important;
  font-weight:1000!important;
  overflow:visible!important;
}
html body #installBtn::before,
html body #installBtn::after{content:none!important;display:none!important}
html body #installBtn .install-cta-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;border-radius:999px!important;background:rgba(255,255,255,.42)!important}
html body #installBtn .install-cta-label{display:inline!important;white-space:nowrap!important}
html.pwa-standalone body #installBtn,
html.pwa-installed body #installBtn{display:none!important}
@media(display-mode:standalone){html body #installBtn{display:none!important}}

html body .search-clear{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;padding:0!important;border:0!important;border-radius:11px!important;background:var(--surface2)!important;color:var(--muted)!important;font-size:22px!important;cursor:pointer!important}
html body .search-clear.hidden{display:none!important}
html body .hero-banner-copy p{text-decoration:none!important;border:0!important;box-shadow:none!important}
html body .hero-banner-copy p::before,
html body .hero-banner-copy p::after{content:none!important;display:none!important}
html body .hero-location-row{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;justify-self:start!important}
html body .hero-city{display:inline-flex!important;align-items:center!important;min-height:32px!important;padding:6px 11px!important;border-radius:999px!important;background:rgba(5,16,40,.56)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;font-size:12px!important;font-weight:950!important}
html body .hero-location-btn{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:34px!important;padding:6px 10px 6px 12px!important;border-radius:999px!important;background:linear-gradient(180deg,#ffb84b,#ff9220)!important;border:1px solid rgba(255,207,123,.7)!important;color:#211100!important;text-decoration:none!important;box-shadow:0 8px 20px rgba(0,0,0,.20)!important;font-size:11px!important;font-weight:900!important;white-space:nowrap!important}
html body .hero-location-btn i{display:grid!important;place-items:center!important;width:21px!important;height:21px!important;border-radius:999px!important;background:rgba(255,255,255,.46)!important;font-style:normal!important}
html body #promoBanners .promo-premium-track{scroll-behavior:smooth!important;scroll-snap-type:x mandatory!important}
html body #promoBanners .promo-premium-slide{scroll-snap-align:start!important}
html body #promoBanners .promo-premium-shell{position:relative!important}
html body .promo-dots{position:absolute!important;left:50%!important;bottom:9px!important;z-index:8!important;display:flex!important;gap:7px!important;transform:translateX(-50%)!important;padding:5px 7px!important;border-radius:999px!important;background:rgba(3,10,24,.44)!important}
html body .promo-dots button{width:9px!important;height:9px!important;padding:0!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.58)!important}
html body .promo-dots button.active{width:25px!important;background:#ff9f1c!important}
html body .addon-item{grid-template-columns:74px minmax(0,1fr) 132px!important;align-items:center!important}
html body .addon-add-btn{grid-column:auto!important;width:132px!important;min-width:132px!important;min-height:48px!important;border-radius:15px!important;font-size:14px!important}
html body .addon-buy-control{display:grid!important;grid-template-columns:42px 42px 42px!important;align-items:center!important;justify-content:end!important;gap:3px!important;width:132px!important;padding:4px!important;border-radius:16px!important;background:color-mix(in srgb,var(--accent) 14%,var(--surface2))!important;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line))!important}
html body .addon-buy-control button,
html body .addon-buy-control span{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:0!important;border:0!important;border-radius:12px!important;background:var(--card)!important;color:var(--text)!important;font-size:21px!important;font-weight:1000!important}

@media(max-width:760px){
  html body .topbar-inner{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"brand actions" "search search"!important;gap:10px!important;padding:11px 12px!important}
  html body .brand{grid-area:brand!important;min-width:0!important}
  html body .search{grid-area:search!important;width:100%!important;min-height:48px!important}
  html body .top-actions{grid-area:actions!important;display:flex!important;gap:6px!important}
  html body #installBtn.install-cta:not(.hidden):not([hidden]){min-width:96px!important;width:auto!important;height:44px!important;padding:0 10px!important;border-radius:14px!important;font-size:12px!important}
  html body .hero-location-row{gap:5px!important}
  html body .hero-city{min-height:25px!important;padding:4px 8px!important;font-size:9px!important}
  html body .hero-location-btn{min-height:27px!important;padding:4px 6px 4px 8px!important;gap:4px!important;font-size:8px!important}
  html body .hero-location-btn b{display:none!important}
  html body .hero-location-btn i{width:17px!important;height:17px!important}
  html body .addon-item{grid-template-columns:64px minmax(0,1fr) 112px!important;gap:8px!important}
  html body .addon-add-btn{width:112px!important;min-width:112px!important}
  html body .addon-buy-control{grid-template-columns:34px 34px 34px!important;width:112px!important;gap:2px!important}
  html body .addon-buy-control button,
  html body .addon-buy-control span{width:34px!important;height:38px!important}
}
@media(max-width:520px){
  html body .topbar-inner{grid-template-columns:1fr!important;grid-template-areas:"brand" "search" "actions"!important}
  html body .top-actions{display:grid!important;grid-template-columns:1fr 1fr 1.35fr!important;width:100%!important}
  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #installBtn.install-cta:not(.hidden):not([hidden]){width:100%!important;min-width:0!important;max-width:none!important;height:44px!important}
  html body .addon-item{grid-template-columns:58px minmax(0,1fr)!important}
  html body .addon-add-btn,
  html body .addon-buy-control{grid-column:1 / -1!important;width:100%!important;min-width:0!important;justify-content:center!important}
  html body .addon-buy-control{grid-template-columns:44px minmax(44px,70px) 44px!important}
  html body .addon-buy-control button,
  html body .addon-buy-control span{width:44px!important;height:42px!important}
}


/* v266 · rescate puntual sin rediseñar header */
html body #installBtn.install-cta:not(.hidden):not([hidden]){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:132px!important;
  width:auto!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 16px!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,#ffad32,#ff870b)!important;
  color:#261300!important;
  border:1px solid rgba(255,136,0,.46)!important;
  box-shadow:0 10px 22px rgba(255,135,11,.25)!important;
  font-size:14px!important;
  font-weight:1000!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
html body #installBtn.install-cta.hidden,
html body #installBtn.install-cta[hidden],
html.pwa-standalone body #installBtn,
html.pwa-installed body #installBtn{
  display:none!important;
}
@media(display-mode:standalone){html body #installBtn{display:none!important}}
html body #installBtn .install-cta-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;border-radius:999px!important;background:rgba(255,255,255,.42)!important;font-size:16px!important;line-height:1!important}
html body #installBtn .install-cta-label{display:inline!important;white-space:nowrap!important;line-height:1!important}
html body #themeBtn, html body #categoryMenuBtn, html body #installBtn{touch-action:manipulation!important;cursor:pointer!important}
html body #themeBtn * , html body #categoryMenuBtn * , html body #installBtn *{pointer-events:none!important}
html body .addon-item{grid-template-columns:52px minmax(0,1fr) minmax(96px,auto)!important;align-items:center!important;overflow:hidden!important}
html body .addon-add-btn,
html body .addon-buy-control{justify-self:end!important;width:96px!important;min-width:96px!important;max-width:112px!important}
html body .addon-add-btn{min-height:42px!important;height:42px!important;border-radius:14px!important;padding:0 10px!important;font-size:13px!important}
html body .addon-buy-control{display:grid!important;grid-template-columns:30px minmax(30px,1fr) 30px!important;gap:2px!important;height:42px!important;min-height:42px!important;padding:4px!important;border-radius:14px!important;background:color-mix(in srgb,var(--accent) 13%,var(--surface2))!important;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line))!important}
html body .addon-buy-control button,
html body .addon-buy-control span{display:grid!important;place-items:center!important;width:auto!important;height:32px!important;min-width:0!important}
html body .addon-buy-control button{border:0!important;border-radius:10px!important;background:var(--card)!important;color:var(--text)!important;font-size:20px!important;font-weight:1000!important;cursor:pointer!important}
html body .addon-buy-control span{color:var(--text)!important;font-size:15px!important;font-weight:1000!important}
@media(max-width:760px){
  html body #installBtn.install-cta:not(.hidden):not([hidden]){min-width:96px!important;width:auto!important;height:44px!important;min-height:44px!important;padding:0 10px!important;border-radius:14px!important;font-size:12px!important}
  html body .addon-item{grid-template-columns:46px minmax(0,1fr) 88px!important;gap:8px!important}
  html body .addon-add-btn, html body .addon-buy-control{width:88px!important;min-width:88px!important;max-width:88px!important}
  html body .addon-buy-control{grid-template-columns:26px minmax(26px,1fr) 26px!important}
}


/* v267 · Corrección puntual: elimina la marca/blanco del botón Menú en móvil.
   No toca productos, banners, carrito ni layout general. */
html body .top-actions,
html body .top-actions *{
  filter:none!important;
}
html body #categoryMenuBtn,
html body #categoryMenuBtn:hover,
html body #categoryMenuBtn:focus,
html body #categoryMenuBtn:focus-visible,
html body #categoryMenuBtn:active{
  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
  outline:0!important;
  background:var(--card)!important;
  overflow:hidden!important;
}
html body #categoryMenuBtn::before,
html body #categoryMenuBtn::after,
html body #categoryMenuBtn .hamburger-lines::before,
html body #categoryMenuBtn .hamburger-lines::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  background:none!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:760px){
  html body .top-actions .pill-btn,
  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #installBtn.install-cta{
    box-shadow:none!important;
    filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* v268 · limpieza visual final, PWA e interruptor día/noche.
   Este bloque queda último para ganar contra parches históricos v258/v266/v267. */
:root{
  --tv-header-radius:26px;
  --tv-control-height:52px;
  --tv-control-radius:18px;
  --tv-clean-shadow:0 14px 34px rgba(23,18,12,.10);
  --tv-clean-shadow-soft:0 8px 20px rgba(23,18,12,.08);
}
html[data-theme="dark"]{
  --tv-clean-shadow:0 18px 38px rgba(0,0,0,.34);
  --tv-clean-shadow-soft:0 10px 24px rgba(0,0,0,.25);
}
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
body{
  background:
    radial-gradient(circle at 8% -8%, color-mix(in srgb,var(--accent) 15%, transparent), transparent 34%),
    radial-gradient(circle at 96% 2%, color-mix(in srgb,var(--green) 8%, transparent), transparent 30%),
    linear-gradient(180deg,var(--bg2),var(--bg))!important;
}
html body .app{
  width:min(1440px,100%)!important;
  padding:14px clamp(10px,2vw,28px) calc(112px + env(safe-area-inset-bottom))!important;
}
html body .topbar{
  top:0!important;
  padding:8px 0 0!important;
}
html body .topbar-inner{
  display:grid!important;
  grid-template-columns:minmax(245px,.92fr) minmax(260px,1.08fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px!important;
  border-radius:var(--tv-header-radius)!important;
  border:1px solid color-mix(in srgb,var(--accent) 20%, var(--line))!important;
  background:color-mix(in srgb,var(--surface) 96%, transparent)!important;
  box-shadow:var(--tv-clean-shadow)!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
html[data-theme="dark"] body .topbar-inner{
  background:color-mix(in srgb,var(--surface) 92%, #060a14)!important;
}
html body .topbar-inner::before,
html body .topbar-inner::after,
html body .top-actions::before,
html body .top-actions::after{
  content:none!important;
  display:none!important;
}
html body .brand{
  min-width:0!important;
  gap:10px!important;
}
html body .brand-logo{
  width:64px!important;
  height:64px!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface2) 98%, transparent),color-mix(in srgb,var(--surface) 92%, transparent))!important;
  border:1px solid color-mix(in srgb,var(--accent) 22%, var(--line))!important;
  box-shadow:var(--tv-clean-shadow-soft)!important;
  overflow:hidden!important;
}
html body .brand-logo::before,
html body .brand-logo::after{
  content:none!important;
  display:none!important;
}
html body .brand-logo img{
  padding:2px!important;
  object-fit:contain!important;
}
html body .brand-title{
  font-size:clamp(24px,3vw,38px)!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
}
html body .brand-tag{
  margin-top:3px!important;
  font-size:clamp(12px,1.1vw,15px)!important;
  line-height:1.15!important;
}
html body .brand-status-row{
  margin-top:4px!important;
}
html body .store-status{
  max-width:100%!important;
  min-height:28px!important;
  padding:6px 10px!important;
  font-size:12px!important;
  white-space:normal!important;
}
html body .search{
  min-height:52px!important;
  width:100%!important;
  padding:0 14px!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--card) 97%, transparent)!important;
  border:1px solid color-mix(in srgb,var(--accent) 14%, var(--line))!important;
  box-shadow:none!important;
}
html body .search input{
  min-width:0!important;
  font-size:15px!important;
}
html body .top-actions{
  display:grid!important;
  grid-template-columns:auto auto auto!important;
  align-items:center!important;
  justify-content:end!important;
  gap:8px!important;
  min-width:0!important;
}
html body .top-actions .pill-btn,
html body #categoryMenuBtn,
html body #themeBtn,
html body #installBtn.install-cta:not(.hidden):not([hidden]){
  min-height:var(--tv-control-height)!important;
  height:var(--tv-control-height)!important;
  border-radius:var(--tv-control-radius)!important;
  border:1px solid color-mix(in srgb,var(--accent) 22%, var(--line))!important;
  background:color-mix(in srgb,var(--card) 98%, transparent)!important;
  color:var(--text)!important;
  box-shadow:var(--tv-clean-shadow-soft)!important;
  filter:none!important;
  text-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  outline:0!important;
  overflow:hidden!important;
}
html body #categoryMenuBtn::before,
html body #categoryMenuBtn::after,
html body #themeBtn::before,
html body #themeBtn::after,
html body #installBtn::before,
html body #installBtn::after,
html body .pill-btn::before,
html body .pill-btn::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  background:none!important;
  box-shadow:none!important;
  filter:none!important;
}
html body #categoryMenuBtn{
  min-width:104px!important;
  padding:0 14px!important;
  gap:9px!important;
}
html body #categoryMenuBtn .hamburger-lines{
  width:20px!important;
  height:16px!important;
  display:grid!important;
  gap:4px!important;
  place-content:center!important;
}
html body #categoryMenuBtn .hamburger-lines i{
  width:20px!important;
  height:3px!important;
  border-radius:999px!important;
  background:var(--accent)!important;
  box-shadow:none!important;
}
html body #categoryMenuBtn .category-menu-label{
  font-size:15px!important;
  font-weight:1000!important;
}
html body #themeBtn,
html body #themeBtn.tv-theme-switch,
html body #themeBtn.tv-theme-switch-v268{
  width:auto!important;
  min-width:116px!important;
  max-width:none!important;
  padding:0 11px 0 8px!important;
  justify-content:center!important;
  gap:8px!important;
}
html body #themeBtn .theme-switch-track{
  position:relative!important;
  display:inline-grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:center!important;
  width:56px!important;
  min-width:56px!important;
  height:30px!important;
  padding:3px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#fff2c6,#ffe2a0)!important;
  box-shadow:inset 0 1px 4px rgba(80,45,0,.15)!important;
  overflow:hidden!important;
}
html[data-theme="dark"] body #themeBtn .theme-switch-track{
  background:linear-gradient(135deg,#121b33,#263453)!important;
  box-shadow:inset 0 1px 5px rgba(0,0,0,.45)!important;
}
html body #themeBtn .theme-switch-icon{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:13px!important;
  line-height:1!important;
  opacity:.72!important;
}
html body #themeBtn .theme-switch-thumb{
  position:absolute!important;
  z-index:2!important;
  top:3px!important;
  left:3px!important;
  display:grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#9a5a00!important;
  box-shadow:0 4px 11px rgba(0,0,0,.22)!important;
  transform:translateX(0)!important;
  transition:transform .18s ease, color .18s ease, background .18s ease!important;
  font-size:13px!important;
}
html[data-theme="dark"] body #themeBtn .theme-switch-thumb{
  transform:translateX(26px)!important;
  background:#eef4ff!important;
  color:#14223b!important;
}
html body #themeBtn .theme-switch-label{
  display:inline!important;
  min-width:43px!important;
  font-size:13px!important;
  font-weight:1000!important;
  letter-spacing:-.02em!important;
  line-height:1!important;
}
html body #installBtn.install-cta:not(.hidden):not([hidden]){
  min-width:126px!important;
  padding:0 14px!important;
  background:linear-gradient(180deg,#ffb84a,#ff8a0c)!important;
  color:#241100!important;
  border-color:rgba(255,138,12,.48)!important;
  box-shadow:0 10px 22px rgba(255,138,12,.22)!important;
  white-space:nowrap!important;
}
html body #installBtn .install-cta-icon{
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.42)!important;
  font-weight:1000!important;
}
html body #installBtn .install-cta-label{
  display:inline!important;
  white-space:nowrap!important;
  font-size:13px!important;
  font-weight:1000!important;
}
html.pwa-standalone body #installBtn,
html.pwa-installed body #installBtn,
html body #installBtn.hidden,
html body #installBtn[hidden],
html body #installBtn[aria-hidden="true"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
@media(display-mode:standalone){
  html body #installBtn{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}
html body .hero,
html body .tv-home-banner{
  margin-top:14px!important;
  padding:12px!important;
  border-radius:28px!important;
  border:1px solid color-mix(in srgb,var(--accent) 16%, var(--line))!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 94%, transparent),color-mix(in srgb,var(--surface2) 92%, transparent))!important;
  box-shadow:var(--tv-clean-shadow)!important;
  overflow:hidden!important;
}
html body .hero::before,
html body .hero::after,
html body .tv-home-banner::before,
html body .tv-home-banner::after,
html body .hero-banner-art::before,
html body .hero-banner-art::after,
html body .hero-banner-content::before,
html body .hero-banner-content::after{
  content:none!important;
  display:none!important;
}
html body .tv-home-banner .hero-banner-card{
  border-radius:24px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:#09112b!important;
  box-shadow:none!important;
}
html body .tv-home-banner .hero-banner-art{
  position:relative!important;
  min-height:clamp(255px,42vw,520px)!important;
  overflow:hidden!important;
  border-radius:inherit!important;
  background:#09112b!important;
}
html body .tv-home-banner .hero-banner-picture,
html body .tv-home-banner .hero-banner-picture img,
html body .tv-home-banner .hero-banner-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
html body .tv-home-banner .hero-banner-image{
  object-fit:cover!important;
  object-position:center center!important;
  filter:saturate(1.03) contrast(1.02)!important;
}
html body .tv-home-banner .hero-banner-content{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:14px!important;
  padding:clamp(16px,3vw,30px)!important;
  background:linear-gradient(90deg,rgba(3,8,20,.78) 0%,rgba(3,8,20,.48) 38%,rgba(3,8,20,.10) 76%)!important;
  color:#fff!important;
}
html body .tv-home-banner .hero-banner-logo{
  width:clamp(74px,10vw,128px)!important;
  height:clamp(74px,10vw,128px)!important;
  flex:0 0 auto!important;
  padding:3px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.24)!important;
  object-fit:contain!important;
}
html body .tv-home-banner .hero-banner-copy{
  min-width:0!important;
  max-width:620px!important;
}
html body .tv-home-banner .hero-banner-copy h1{
  margin:0!important;
  font-size:clamp(38px,7vw,82px)!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
  color:#fff!important;
  text-shadow:0 4px 28px rgba(0,0,0,.34)!important;
}
html body .tv-home-banner .hero-banner-copy p{
  margin:10px 0 0!important;
  color:rgba(255,255,255,.92)!important;
  font-weight:900!important;
  font-size:clamp(15px,1.5vw,20px)!important;
}
html body .quick-nav-wrap{
  margin-top:14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .home-quick-nav{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  margin:8px 0 14px!important;
}
html body .home-quick-nav button{
  min-height:82px!important;
  border-radius:22px!important;
  box-shadow:var(--tv-clean-shadow-soft)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 98%, transparent),color-mix(in srgb,var(--surface2) 94%, transparent))!important;
  overflow:hidden!important;
}
html body .home-quick-nav button::before,
html body .home-quick-nav button::after{
  content:none!important;
  display:none!important;
}
html body .section-head{
  margin-top:10px!important;
  gap:12px!important;
}
html body .categories{
  gap:14px!important;
}
html body .category,
html body .product,
html body .drawer,
html body .promo-premium-shell,
html body .checkout-panel{
  max-width:100%!important;
}
html body img{
  -webkit-user-drag:none;
}
@media(max-width:1080px){
  html body .topbar-inner{
    grid-template-columns:minmax(230px,.92fr) minmax(220px,1fr)!important;
    grid-template-areas:
      "brand actions"
      "search search"!important;
  }
  html body .brand{grid-area:brand!important}
  html body .search{grid-area:search!important}
  html body .top-actions{grid-area:actions!important}
  html body .home-quick-nav{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  :root{--tv-control-height:44px;--tv-control-radius:15px}
  html body .app{
    padding:10px 10px calc(100px + env(safe-area-inset-bottom))!important;
  }
  html body .topbar{
    padding-top:6px!important;
  }
  html body .topbar-inner{
    grid-template-columns:1fr!important;
    grid-template-areas:"brand" "search" "actions"!important;
    gap:9px!important;
    padding:10px!important;
    border-radius:22px!important;
  }
  html body .brand-logo{
    width:56px!important;
    height:56px!important;
    border-radius:17px!important;
  }
  html body .brand-copy{
    min-width:0!important;
  }
  html body .brand-title{
    font-size:28px!important;
  }
  html body .brand-tag{
    font-size:12px!important;
    white-space:normal!important;
  }
  html body .store-status{
    font-size:11px!important;
    padding:5px 9px!important;
  }
  html body .search{
    min-height:46px!important;
    border-radius:16px!important;
  }
  html body .top-actions{
    width:100%!important;
    grid-template-columns:1fr minmax(104px,.92fr) minmax(112px,1fr)!important;
    gap:7px!important;
    justify-content:stretch!important;
  }
  html body #categoryMenuBtn,
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch,
  html body #themeBtn.tv-theme-switch-v268,
  html body #installBtn.install-cta:not(.hidden):not([hidden]){
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    border-radius:15px!important;
  }
  html body #categoryMenuBtn{
    padding:0 9px!important;
  }
  html body #categoryMenuBtn .category-menu-label{
    font-size:13px!important;
  }
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch,
  html body #themeBtn.tv-theme-switch-v268{
    padding:0 8px!important;
    gap:6px!important;
  }
  html body #themeBtn .theme-switch-track{
    width:46px!important;
    min-width:46px!important;
    height:26px!important;
  }
  html body #themeBtn .theme-switch-thumb{
    width:20px!important;
    height:20px!important;
    font-size:12px!important;
  }
  html[data-theme="dark"] body #themeBtn .theme-switch-thumb{
    transform:translateX(20px)!important;
  }
  html body #themeBtn .theme-switch-label{
    min-width:34px!important;
    font-size:12px!important;
  }
  html body #installBtn.install-cta:not(.hidden):not([hidden]){
    padding:0 8px!important;
  }
  html body #installBtn .install-cta-icon{
    width:22px!important;
    height:22px!important;
  }
  html body #installBtn .install-cta-label{
    font-size:12px!important;
  }
  html body .hero,
  html body .tv-home-banner{
    margin-top:10px!important;
    padding:8px!important;
    border-radius:22px!important;
  }
  html body .tv-home-banner .hero-banner-card{
    border-radius:18px!important;
  }
  html body .tv-home-banner .hero-banner-art{
    min-height:360px!important;
  }
  html body .tv-home-banner .hero-banner-content{
    align-items:flex-end!important;
    gap:10px!important;
    padding:16px!important;
    background:linear-gradient(0deg,rgba(3,8,20,.82) 0%,rgba(3,8,20,.42) 55%,rgba(3,8,20,.08) 100%)!important;
  }
  html body .tv-home-banner .hero-banner-logo{
    width:68px!important;
    height:68px!important;
    border-radius:18px!important;
  }
  html body .tv-home-banner .hero-banner-copy h1{
    font-size:42px!important;
  }
  html body .tv-home-banner .hero-banner-copy p{
    font-size:14px!important;
  }
  html body .hero-location-row{
    gap:6px!important;
    margin-top:8px!important;
  }
  html body .home-quick-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body .home-quick-nav button{
    min-height:74px!important;
    padding:12px!important;
    border-radius:18px!important;
  }
  html body .home-quick-nav button b{
    font-size:13px!important;
  }
  html body .home-quick-nav button small{
    font-size:10px!important;
  }
}
@media(max-width:390px){
  html body .top-actions{
    grid-template-columns:1fr 96px 1fr!important;
  }
  html body #themeBtn .theme-switch-label{
    display:none!important;
  }
  html body #themeBtn,
  html body #themeBtn.tv-theme-switch,
  html body #themeBtn.tv-theme-switch-v268{
    min-width:0!important;
  }
  html body .brand-title{
    font-size:25px!important;
  }
  html body .tv-home-banner .hero-banner-copy h1{
    font-size:38px!important;
  }
}



/* v269 · arreglo definitivo del interruptor Día/Noche.
   Unifica los parches viejos que repintaban el botón como icono suelto. */
html body #themeBtn.tv-theme-switch-v269{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  user-select:none!important;
  touch-action:manipulation!important;
  cursor:pointer!important;
}
html body #themeBtn.tv-theme-switch-v269.tv-theme-icon-only{
  min-width:116px!important;
}
html body #themeBtn.tv-theme-switch-v269 .theme-orb{
  display:none!important;
}
html body #themeBtn.tv-theme-switch-v269 .theme-switch-track{
  flex:0 0 auto!important;
}
html body #themeBtn.tv-theme-switch-v269 .theme-switch-thumb{
  will-change:transform!important;
}
html body #themeBtn.tv-theme-switch-v269.is-dark .theme-switch-thumb,
html[data-theme="dark"] body #themeBtn.tv-theme-switch-v269 .theme-switch-thumb{
  transform:translateX(26px)!important;
  background:#eef4ff!important;
  color:#14223b!important;
}
html:not([data-theme="dark"]) body #themeBtn.tv-theme-switch-v269 .theme-switch-thumb,
html[data-theme="light"] body #themeBtn.tv-theme-switch-v269 .theme-switch-thumb{
  transform:translateX(0)!important;
  background:#fff!important;
  color:#9a5a00!important;
}
html body #themeBtn.tv-theme-switch-v269 .theme-switch-label{
  display:inline-block!important;
}
@media(max-width:760px){
  html body #themeBtn.tv-theme-switch-v269{
    gap:6px!important;
  }
  html body #themeBtn.tv-theme-switch-v269.is-dark .theme-switch-thumb,
  html[data-theme="dark"] body #themeBtn.tv-theme-switch-v269 .theme-switch-thumb{
    transform:translateX(20px)!important;
  }
}
@media(max-width:390px){
  html body #themeBtn.tv-theme-switch-v269 .theme-switch-label{
    display:none!important;
  }
}


/* v270 · mobile + horarios + búsqueda limpia + controles visibles */
html body #themeBtn{
  display:none!important;
}
html body #themeBtnV270.tv-theme-switch-v270{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:116px!important;
  height:52px!important;
  min-height:52px!important;
  padding:6px 12px 6px 7px!important;
  border-radius:999px!important;
  user-select:none!important;
  touch-action:manipulation!important;
  position:relative!important;
  overflow:hidden!important;
}
html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-track{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex:0 0 56px!important;
  width:56px!important;
  height:30px!important;
  padding:3px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#ffbe55,#ff8e1f)!important;
  box-shadow:inset 0 2px 8px rgba(55,28,0,.22),0 0 0 1px rgba(255,255,255,.16)!important;
}
html[data-theme="dark"] body #themeBtnV270.tv-theme-switch-v270 .theme-switch-track{
  background:linear-gradient(135deg,#172642,#344a76)!important;
}
html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-icon{
  display:grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  font-size:12px!important;
  line-height:1!important;
  z-index:1!important;
  opacity:.85!important;
}
html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-thumb{
  position:absolute!important;
  top:3px!important;
  left:3px!important;
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#9a5a00!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:1000!important;
  box-shadow:0 5px 13px rgba(0,0,0,.25)!important;
  transition:transform .18s ease,background .18s ease,color .18s ease!important;
  z-index:2!important;
}
html[data-theme="dark"] body #themeBtnV270.tv-theme-switch-v270 .theme-switch-thumb{
  transform:translateX(26px)!important;
  background:#eef4ff!important;
  color:#14223b!important;
}
html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-label{
  display:inline-block!important;
  min-width:42px!important;
  text-align:left!important;
  color:var(--text)!important;
  font-size:13px!important;
  font-weight:1000!important;
  line-height:1!important;
}

html body .hero-hours-btn{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-height:32px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  border-radius:999px!important;
  border:1px solid color-mix(in srgb,var(--accent) 62%,var(--line))!important;
  background:
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.34),transparent 32%),
    linear-gradient(180deg,var(--accent),var(--accent2))!important;
  color:#211100!important;
  padding:7px 12px!important;
  font-size:12px!important;
  font-weight:1000!important;
  line-height:1!important;
  box-shadow:0 10px 20px rgba(255,143,31,.28)!important;
  animation:tvV270ButtonGlow 2.35s ease-in-out infinite!important;
  cursor:pointer!important;
}
html body .hero-hours-btn i{
  display:grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.38)!important;
  font-style:normal!important;
  font-size:12px!important;
}
html body .hero-hours-btn:active,
html body .hero-location-btn:active{
  transform:scale(.97)!important;
}
html body .hero-location-btn{
  animation:tvV270ButtonGlow 2.35s ease-in-out infinite .55s!important;
}
@keyframes tvV270ButtonGlow{
  0%,100%{box-shadow:0 10px 20px rgba(255,143,31,.22),0 0 0 0 rgba(255,159,28,.24)}
  50%{box-shadow:0 12px 24px rgba(255,143,31,.36),0 0 0 7px rgba(255,159,28,0)}
}

html body .hours-popover-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:120!important;
  display:none!important;
  background:rgba(5,8,18,.46)!important;
  backdrop-filter:blur(4px)!important;
  -webkit-backdrop-filter:blur(4px)!important;
}
html body .hours-popover-backdrop.show{
  display:block!important;
}
html body .hours-popover{
  position:fixed!important;
  z-index:121!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%) scale(.96)!important;
  width:min(360px,calc(100vw - 30px))!important;
  display:none!important;
  border-radius:28px!important;
  border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line))!important;
  background:
    radial-gradient(circle at 15% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 36%),
    linear-gradient(180deg,color-mix(in srgb,var(--surface) 97%,transparent),var(--surface2))!important;
  color:var(--text)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.34)!important;
  padding:18px!important;
  opacity:0!important;
  transition:opacity .18s ease,transform .18s ease!important;
}
html body .hours-popover.show{
  display:grid!important;
  opacity:1!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
html body .hours-card-head{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:12px!important;
}
html body .hours-card-head img{
  width:58px!important;
  height:58px!important;
  border-radius:18px!important;
  object-fit:cover!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
html body .hours-card-head b{
  display:block!important;
  font-size:22px!important;
  letter-spacing:-.04em!important;
}
html body .hours-card-head small{
  color:var(--muted)!important;
  font-weight:900!important;
}
html body .hours-card-box{
  display:grid!important;
  gap:8px!important;
  padding:14px!important;
  border-radius:20px!important;
  background:color-mix(in srgb,var(--accent) 10%,var(--card))!important;
  border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line))!important;
}
html body .hours-card-box span{
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
html body .hours-card-box strong{
  font-size:17px!important;
  line-height:1.25!important;
}
html body .hours-card-actions{
  display:flex!important;
  justify-content:flex-end!important;
  margin-top:14px!important;
}
html body .hours-card-actions button{
  min-height:44px!important;
  border:0!important;
  border-radius:999px!important;
  padding:0 18px!important;
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;
  color:#211100!important;
  font-weight:1000!important;
}

html body.tv-search-mode .tv-home-banner,
html body.tv-search-mode .quick-nav-wrap,
html body.tv-search-mode #promoBanners,
html body.tv-search-mode .promo-banners,
html body.searching .quick-nav-wrap,
html body.searching #promoBanners,
html body.searching .promo-banners{
  display:none!important;
}
html body.tv-search-mode #menu,
html body.searching #menu{
  margin-top:10px!important;
  scroll-margin-top:116px!important;
}
html body.tv-search-mode .section-head{
  position:sticky!important;
  top:98px!important;
  z-index:20!important;
  padding:14px 16px!important;
  border-radius:24px!important;
  border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line))!important;
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--accent) 14%,var(--surface)),color-mix(in srgb,var(--surface) 96%,transparent))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.14)!important;
}
html body.tv-search-mode #menuTitle::before{
  content:"🔎"!important;
}
html body.tv-search-mode .category{
  display:block!important;
}
html body.tv-search-mode .category-body{
  display:block!important;
}
html body.tv-search-mode .category .products{
  display:grid!important;
}

html body .cart-item .qty-control,
html body .addon-buy-control{
  isolation:isolate!important;
}
html body .cart-item .qty-control button,
html body .addon-buy-control button{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  touch-action:manipulation!important;
}
html body .addon-buy-control button:first-child,
html body .cart-item .qty-control button:first-child{
  color:#ef4444!important;
}
html body .addon-buy-control button:last-child,
html body .cart-item .qty-control button:last-child{
  color:#16a34a!important;
}

@media(max-width:760px){
  html body{
    background:
      radial-gradient(circle at 8% -10%, rgba(255,159,28,.16), transparent 30%),
      linear-gradient(180deg,var(--bg2),var(--bg))!important;
  }
  html body .app{
    padding:8px 10px calc(110px + env(safe-area-inset-bottom))!important;
  }
  html body .topbar{
    padding-top:6px!important;
  }
  html body .topbar-inner{
    grid-template-columns:1fr!important;
    grid-template-areas:"brand" "search" "actions"!important;
    gap:9px!important;
    padding:10px!important;
    border-radius:24px!important;
  }
  html body .brand{
    grid-area:brand!important;
    gap:10px!important;
    align-items:center!important;
  }
  html body .brand-logo{
    width:54px!important;
    height:54px!important;
    border-radius:18px!important;
  }
  html body .brand-title{
    font-size:clamp(25px,8vw,34px)!important;
    line-height:.9!important;
  }
  html body .brand-tag{
    display:none!important;
  }
  html body .brand-status-row{
    margin-top:4px!important;
  }
  html body .store-status{
    min-height:26px!important;
    padding:5px 9px!important;
    font-size:11px!important;
  }
  html body .search{
    grid-area:search!important;
    width:100%!important;
    min-height:48px!important;
    border-radius:18px!important;
  }
  html body .search input{
    min-width:0!important;
    font-size:14px!important;
  }
  html body .top-actions{
    grid-area:actions!important;
    display:grid!important;
    grid-template-columns:1fr 1fr 1.22fr!important;
    gap:8px!important;
    width:100%!important;
  }
  html body #categoryMenuBtn,
  html body #themeBtnV270,
  html body #installBtn:not(.hidden){
    width:100%!important;
    min-width:0!important;
    height:48px!important;
    min-height:48px!important;
    border-radius:17px!important;
  }
  html body #themeBtnV270.tv-theme-switch-v270{
    padding:6px 7px!important;
    gap:6px!important;
  }
  html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-track{
    width:50px!important;
    flex-basis:50px!important;
    height:28px!important;
  }
  html[data-theme="dark"] body #themeBtnV270.tv-theme-switch-v270 .theme-switch-thumb{
    transform:translateX(22px)!important;
  }
  html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-label{
    min-width:35px!important;
    font-size:11px!important;
  }
  html body #installBtn:not(.hidden){
    padding:0 8px!important;
    font-size:12px!important;
  }
  html body .tv-home-banner{
    padding:8px 0!important;
    background:transparent!important;
  }
  html body .tv-home-banner .hero-banner-card{
    border-radius:23px!important;
  }
  html body .tv-home-banner .hero-banner-content{
    align-items:end!important;
    padding:16px 14px!important;
  }
  html body .tv-home-banner .hero-banner-logo{
    width:82px!important;
    height:82px!important;
    border-radius:22px!important;
  }
  html body .tv-home-banner .hero-banner-copy h1{
    font-size:clamp(35px,14vw,56px)!important;
    line-height:.86!important;
    max-width:8.5ch!important;
    text-wrap:balance!important;
  }
  html body .tv-home-banner .hero-banner-copy p{
    font-size:13px!important;
    line-height:1.15!important;
    max-width:24ch!important;
  }
  html body .hero-location-row{
    gap:6px!important;
    flex-wrap:wrap!important;
  }
  html body .hero-hours-btn,
  html body .hero-location-btn{
    min-height:30px!important;
    font-size:10px!important;
  }
  html body .quick-nav-wrap{
    margin-top:6px!important;
  }
  html body .home-quick-nav{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  html body .home-quick-nav button{
    min-height:66px!important;
    padding:10px!important;
    border-radius:18px!important;
  }
  html body .home-quick-nav button > span{
    width:38px!important;
    height:38px!important;
    border-radius:14px!important;
  }
  html body .home-quick-nav button b{
    font-size:12px!important;
  }
  html body .home-quick-nav button small{
    font-size:9px!important;
  }
  html body .drawer{
    left:0!important;
    right:0!important;
    top:auto!important;
    bottom:0!important;
    width:100%!important;
    height:min(92dvh,780px)!important;
    border-left:0!important;
    border-top:1px solid var(--line)!important;
    border-radius:28px 28px 0 0!important;
    transform:translateY(105%)!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
  }
  html body .drawer.show{
    transform:translateY(0)!important;
  }
  html body .drawer-head{
    padding:14px 14px 10px!important;
  }
  html body .drawer-title{
    font-size:28px!important;
  }
  html body .drawer-body{
    padding:10px 12px!important;
    gap:10px!important;
  }
  html body .cart-item{
    border-radius:18px!important;
  }
  html body .cart-item-foot{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:8px!important;
  }
  html body .cart-item .qty-control{
    grid-template-columns:44px minmax(50px,1fr) 44px!important;
    min-width:154px!important;
  }
  html body .cart-item .qty-control button{
    display:grid!important;
    place-items:center!important;
    min-width:44px!important;
    height:44px!important;
    font-size:23px!important;
    background:var(--card)!important;
    border-radius:12px!important;
  }
  html body .addon-tabs{
    overflow-x:auto!important;
    scrollbar-width:none!important;
    padding-bottom:6px!important;
  }
  html body .addon-tabs::-webkit-scrollbar{
    display:none!important;
  }
  html body .addon-item{
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:8px!important;
    padding:9px!important;
  }
  html body .addon-copy{
    min-width:0!important;
  }
  html body .addon-copy b{
    font-size:13px!important;
    line-height:1.15!important;
  }
  html body .addon-copy p{
    font-size:11px!important;
    line-height:1.2!important;
  }
  html body .addon-add-btn,
  html body .addon-buy-control{
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
  }
  html body .addon-buy-control{
    display:grid!important;
    grid-template-columns:48px minmax(52px,1fr) 48px!important;
    gap:6px!important;
    padding:6px!important;
    justify-content:stretch!important;
  }
  html body .addon-buy-control button,
  html body .addon-buy-control span{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    min-width:48px!important;
    height:44px!important;
    font-size:24px!important;
    border-radius:13px!important;
  }
  html body.tv-search-mode .section-head{
    top:188px!important;
  }
}

@media(max-width:390px){
  html body .top-actions{
    grid-template-columns:1fr 1fr 1.15fr!important;
    gap:6px!important;
  }
  html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-label{
    display:inline-block!important;
    font-size:10px!important;
    min-width:30px!important;
  }
  html body #themeBtnV270.tv-theme-switch-v270 .theme-switch-track{
    width:46px!important;
    flex-basis:46px!important;
  }
  html[data-theme="dark"] body #themeBtnV270.tv-theme-switch-v270 .theme-switch-thumb{
    transform:translateX(18px)!important;
  }
  html body #installBtn .install-cta-icon{
    display:none!important;
  }
  html body .tv-home-banner .hero-banner-logo{
    width:70px!important;
    height:70px!important;
  }
  html body .tv-home-banner .hero-banner-copy h1{
    font-size:clamp(31px,13.5vw,46px)!important;
  }
}

@media(prefers-reduced-motion:reduce){
  html body .hero-hours-btn,
  html body .hero-location-btn{
    animation:none!important;
  }
}

/* v271: parche estable final - carga, mobile, tema, horarios, búsqueda y carrito */
html.app-ready #appBoot,html:not(.app-loading) #appBoot{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
html body #themeBtnV270{display:none!important}
html body #themeBtn.tv-theme-switch-v271{
  display:inline-grid!important;grid-template-columns:auto auto!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  min-width:118px!important;min-height:50px!important;padding:6px 12px!important;border-radius:21px!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 92%,#fff 8%),color-mix(in srgb,var(--card) 86%,#000 14%))!important;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line))!important;color:var(--text)!important;cursor:pointer!important;touch-action:manipulation!important
}
html body #themeBtn.tv-theme-switch-v271 .theme-switch-track{
  position:relative!important;display:inline-grid!important;grid-template-columns:1fr 1fr!important;align-items:center!important;
  width:58px!important;height:30px!important;padding:3px!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg2) 70%,#000 30%)!important;
  border:1px solid color-mix(in srgb,var(--line) 80%,var(--accent) 20%)!important;overflow:hidden!important
}
html body #themeBtn.tv-theme-switch-v271 .theme-switch-icon{position:relative!important;z-index:1!important;display:grid!important;place-items:center!important;width:100%!important;font-size:12px!important;line-height:1!important;opacity:.78!important}
html body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{
  position:absolute!important;z-index:2!important;left:3px!important;top:3px!important;width:24px!important;height:24px!important;display:grid!important;place-items:center!important;
  border-radius:999px!important;background:linear-gradient(180deg,#fff7d6,#f7c047)!important;color:#261604!important;font-size:13px!important;
  box-shadow:0 6px 14px rgba(0,0,0,.28)!important;transition:transform .2s ease,background .2s ease,color .2s ease!important
}
html[data-theme="dark"] body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{transform:translateX(28px)!important;background:linear-gradient(180deg,#ffffff,#cfd8ff)!important;color:#152040!important}
html body #themeBtn.tv-theme-switch-v271 .theme-switch-label{display:inline-block!important;min-width:42px!important;color:var(--text)!important;font-size:12px!important;font-weight:1000!important;line-height:1!important;text-align:left!important}
html body .hero-hours-btn,html body .hero-location-btn{position:relative!important;overflow:hidden!important;transform:translateZ(0)!important;animation:tvV271SoftPulse 1.9s ease-in-out infinite!important}
html body .hero-hours-btn::after,html body .hero-location-btn::after{
  content:""!important;position:absolute!important;inset:-40% auto -40% -60%!important;width:46%!important;transform:skewX(-18deg)!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent)!important;animation:tvV271Shine 2.8s ease-in-out infinite!important;pointer-events:none!important
}
@keyframes tvV271SoftPulse{0%,100%{box-shadow:0 0 0 rgba(255,159,28,0),0 8px 18px rgba(0,0,0,.10)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent),0 12px 26px rgba(0,0,0,.16)}}
@keyframes tvV271Shine{0%,34%{left:-70%}66%,100%{left:130%}}
html body .hours-popover-backdrop[hidden],html body .hours-popover[hidden]{display:none!important}
html body .hours-popover-backdrop{position:fixed!important;inset:0!important;z-index:9998!important;background:rgba(3,7,18,.48)!important;opacity:0!important;transition:opacity .18s ease!important;backdrop-filter:blur(4px)!important}
html body .hours-popover-backdrop.show{opacity:1!important}
html body .hours-popover{
  position:fixed!important;z-index:9999!important;left:50%!important;top:50%!important;width:min(360px,calc(100vw - 34px))!important;
  transform:translate(-50%,-46%) scale(.97)!important;opacity:0!important;border-radius:28px!important;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line))!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--card) 94%,transparent))!important;
  box-shadow:0 28px 80px rgba(0,0,0,.42)!important;padding:18px!important;color:var(--text)!important;transition:opacity .18s ease,transform .18s ease!important
}
html body .hours-popover.show{opacity:1!important;transform:translate(-50%,-50%) scale(1)!important}
html body .hours-card-head{display:grid!important;grid-template-columns:64px 1fr!important;gap:12px!important;align-items:center!important}
html body .hours-card-head img{width:64px!important;height:64px!important;border-radius:20px!important;object-fit:contain!important;background:color-mix(in srgb,var(--card) 78%,#000 22%)!important;border:1px solid var(--line)!important;padding:6px!important}
html body .hours-card-head b{display:block!important;font-size:24px!important;line-height:1!important}
html body .hours-card-head small{display:block!important;margin-top:4px!important;color:var(--muted)!important;font-weight:900!important}
html body .hours-card-box{display:grid!important;gap:6px!important;margin-top:14px!important;padding:14px!important;border-radius:20px!important;background:color-mix(in srgb,var(--bg2) 72%,transparent)!important;border:1px solid var(--line)!important}
html body .hours-card-box span{color:var(--muted)!important;font-size:11px!important;font-weight:1000!important;text-transform:uppercase!important;letter-spacing:.08em!important}
html body .hours-card-box strong{margin-bottom:7px!important;font-size:16px!important;line-height:1.25!important}
html body .hours-card-actions{display:flex!important;justify-content:flex-end!important;margin-top:14px!important}
html body .hours-card-actions button{min-height:44px!important;border:0!important;border-radius:999px!important;padding:0 18px!important;background:linear-gradient(180deg,var(--accent),var(--accent2))!important;color:#211100!important;font-weight:1000!important;cursor:pointer!important}
html body.searching .tv-home-banner,html body.searching .hero,html body.searching .quick-nav-wrap,html body.searching #promoBanners,html body.searching .promo-banners,
html body.tv-search-mode .tv-home-banner,html body.tv-search-mode .hero,html body.tv-search-mode .quick-nav-wrap,html body.tv-search-mode #promoBanners,html body.tv-search-mode .promo-banners{display:none!important}
html body.searching #menu,html body.tv-search-mode #menu{margin-top:10px!important;scroll-margin-top:118px!important}
html body.searching .section-head,html body.tv-search-mode .section-head{
  position:sticky!important;top:96px!important;z-index:20!important;padding:14px 16px!important;border-radius:24px!important;
  border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line))!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 14%,var(--surface)),color-mix(in srgb,var(--surface) 96%,transparent))!important;box-shadow:0 16px 36px rgba(0,0,0,.14)!important
}
html body.searching .category,html body.tv-search-mode .category{display:block!important}
html body.searching .category-body,html body.tv-search-mode .category-body{display:block!important}
html body.searching .products,html body.tv-search-mode .products{display:grid!important}
html body .cart-item .qty-control,html body .addon-buy-control{display:grid!important;align-items:center!important;isolation:isolate!important}
html body .cart-item .qty-control button,html body .addon-buy-control button,html body button[data-cart-minus],html body button[data-cart-plus],html body button[data-addon-minus],html body button[data-addon-plus]{
  display:grid!important;place-items:center!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;touch-action:manipulation!important;user-select:none!important;-webkit-user-select:none!important;
  min-width:42px!important;min-height:42px!important;border-radius:13px!important;border:1px solid color-mix(in srgb,var(--line) 70%,var(--accent) 30%)!important;background:color-mix(in srgb,var(--card) 88%,#fff 12%)!important;
  color:var(--text)!important;font-size:22px!important;font-weight:1000!important;line-height:1!important
}
html body button[data-cart-minus],html body button[data-addon-minus]{color:#ef4444!important}
html body button[data-cart-plus],html body button[data-addon-plus]{color:#16a34a!important}
@media(max-width:760px){
  html body .app{width:100%!important;max-width:100%!important;padding:8px 10px calc(110px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important}
  html body .topbar{padding:6px 0 8px!important}
  html body .topbar-inner{width:100%!important;grid-template-columns:1fr!important;grid-template-areas:"brand" "search" "actions"!important;gap:9px!important;padding:10px!important;border-radius:24px!important}
  html body .brand{grid-area:brand!important;min-width:0!important;gap:10px!important}
  html body .brand-logo{width:54px!important;height:54px!important;border-radius:18px!important;flex:0 0 54px!important}
  html body .brand-title{font-size:clamp(25px,8vw,34px)!important;line-height:.9!important;white-space:normal!important}
  html body .brand-tag{display:none!important}
  html body .store-status{min-height:25px!important;padding:5px 9px!important;font-size:11px!important}
  html body .search{grid-area:search!important;width:100%!important;min-width:0!important;min-height:50px!important;border-radius:18px!important}
  html body .search input{min-width:0!important;width:100%!important;font-size:14px!important}
  html body .top-actions{grid-area:actions!important;display:grid!important;grid-template-columns:1fr 1fr 1.22fr!important;gap:8px!important;width:100%!important}
  html body #categoryMenuBtn,html body #themeBtn.tv-theme-switch-v271,html body #installBtn:not(.hidden){width:100%!important;min-width:0!important;height:50px!important;min-height:50px!important;border-radius:17px!important}
  html body #themeBtn.tv-theme-switch-v271{grid-template-columns:auto auto!important;gap:6px!important;padding:6px 7px!important}
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-track{width:50px!important;height:28px!important;padding:3px!important}
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{width:22px!important;height:22px!important}
  html[data-theme="dark"] body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{transform:translateX(22px)!important}
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-label{min-width:35px!important;font-size:11px!important}
  html body #installBtn:not(.hidden){padding:0 8px!important;font-size:12px!important}
  html body .tv-home-banner{padding:8px 0!important;background:transparent!important}
  html body .tv-home-banner .hero-banner-card{border-radius:23px!important;overflow:hidden!important}
  html body .tv-home-banner .hero-banner-content{display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;gap:12px!important;align-items:end!important;padding:16px 14px!important}
  html body .tv-home-banner .hero-banner-logo{width:82px!important;height:82px!important;border-radius:22px!important}
  html body .tv-home-banner .hero-banner-copy{min-width:0!important}
  html body .tv-home-banner .hero-banner-copy h1{font-size:clamp(34px,13vw,54px)!important;line-height:.86!important;max-width:9ch!important;text-wrap:balance!important}
  html body .tv-home-banner .hero-banner-copy p{font-size:13px!important;line-height:1.15!important;max-width:24ch!important}
  html body .hero-location-row{display:flex!important;gap:6px!important;flex-wrap:wrap!important}
  html body .hero-hours-btn,html body .hero-location-btn{min-height:32px!important;max-width:100%!important;font-size:10px!important}
  html body .home-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  html body .drawer{left:0!important;right:0!important;top:auto!important;bottom:0!important;width:100%!important;max-width:100%!important;height:min(92dvh,780px)!important;border-left:0!important;border-top:1px solid var(--line)!important;border-radius:28px 28px 0 0!important;transform:translateY(105%)!important;grid-template-rows:auto minmax(0,1fr) auto!important}
  html body .drawer.show{transform:translateY(0)!important}
  html body .drawer-body{padding:10px 12px!important;gap:10px!important;overflow-x:hidden!important}
  html body .cart-item-foot{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  html body .cart-item .qty-control{grid-template-columns:48px minmax(56px,1fr) 48px!important;min-width:0!important;width:100%!important;gap:6px!important;padding:6px!important}
  html body .cart-line-total{justify-self:stretch!important;text-align:right!important}
  html body .addon-item{grid-template-columns:54px minmax(0,1fr)!important;gap:8px!important;padding:9px!important}
  html body .addon-add-btn,html body .addon-buy-control{grid-column:1 / -1!important;width:100%!important;min-width:0!important}
  html body .addon-buy-control{grid-template-columns:48px minmax(52px,1fr) 48px!important;gap:6px!important;padding:6px!important;justify-content:stretch!important}
  html body .addon-buy-control button,html body .addon-buy-control span{display:grid!important;place-items:center!important;width:100%!important;min-width:48px!important;height:44px!important;border-radius:13px!important}
  html body.searching .section-head,html body.tv-search-mode .section-head{top:188px!important}
}
@media(max-width:390px){
  html body .top-actions{grid-template-columns:1fr 1fr 1.15fr!important;gap:6px!important}
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-label{font-size:10px!important;min-width:30px!important}
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-track{width:46px!important}
  html[data-theme="dark"] body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{transform:translateX(18px)!important}
  html body #installBtn .install-cta-icon{display:none!important}
  html body .tv-home-banner .hero-banner-content{grid-template-columns:70px minmax(0,1fr)!important;gap:10px!important}
  html body .tv-home-banner .hero-banner-logo{width:70px!important;height:70px!important}
  html body .tv-home-banner .hero-banner-copy h1{font-size:clamp(31px,13vw,46px)!important}
}
@media(prefers-reduced-motion:reduce){
  html body .hero-hours-btn,html body .hero-location-btn,html body .hero-hours-btn::after,html body .hero-location-btn::after{animation:none!important}
}


/* v272: carrito perfeccionado, ordenado y mobile first */
html body #cartDrawer.drawer{
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb,var(--accent) 12%, transparent), transparent 38%),
    linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),var(--surface))!important;
  overflow:hidden!important;
}
html body #cartDrawer .drawer-head{
  position:relative!important;
  z-index:3!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:18px 18px 14px!important;
  border-bottom:1px solid color-mix(in srgb,var(--line) 82%,transparent)!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface) 92%,transparent))!important;
  box-shadow:0 10px 26px rgba(20,14,10,.07)!important;
}
html body #cartDrawer .drawer-head>div:first-child{
  min-width:0!important;
}
html body #cartDrawer .drawer-eyebrow{
  display:inline-flex!important;
  width:max-content!important;
  align-items:center!important;
  gap:6px!important;
  margin-bottom:6px!important;
  padding:5px 9px!important;
  border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line))!important;
  border-radius:999px!important;
  color:var(--accent2)!important;
  background:color-mix(in srgb,var(--accent) 10%,var(--card))!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body #cartDrawer .drawer-title{
  font-size:clamp(27px,4vw,36px)!important;
  line-height:.92!important;
  letter-spacing:-.06em!important;
}
html body #cartDrawer .drawer-sub{
  margin-top:6px!important;
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:950!important;
}
html body #cartDrawer .icon-btn#drawerCloseBtn{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  border-radius:15px!important;
  border:1px solid var(--line)!important;
  background:var(--card)!important;
  color:var(--text)!important;
  font-size:26px!important;
  box-shadow:0 10px 22px rgba(0,0,0,.08)!important;
}
html body #cartDrawer .cart-clear-btn{
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:74px!important;
  height:40px!important;
  border:1px solid color-mix(in srgb,#ef4444 34%,var(--line))!important;
  border-radius:14px!important;
  background:color-mix(in srgb,#ef4444 8%,var(--card))!important;
  color:color-mix(in srgb,#ef4444 85%,var(--text))!important;
  font-size:12px!important;
  font-weight:1000!important;
  letter-spacing:-.02em!important;
}
html body #cartDrawer.tv-cart-has-items .cart-clear-btn{
  display:inline-flex!important;
}
html body #cartDrawer .cart-steps{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:1fr 20px 1fr 20px 1fr!important;
  align-items:center!important;
  gap:0!important;
  margin:12px 18px 0!important;
  padding:7px!important;
  border:1px solid color-mix(in srgb,var(--line) 82%,transparent)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--card) 90%,transparent)!important;
  box-shadow:0 10px 28px rgba(20,14,10,.06)!important;
}
html body #cartDrawer .cart-steps i{
  height:2px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--line) 80%,transparent)!important;
}
html body #cartDrawer .cart-step{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:35px!important;
  padding:6px 8px!important;
  border-radius:999px!important;
  color:var(--muted)!important;
  font-size:11px!important;
  font-weight:1000!important;
  transition:transform .16s ease,background .16s ease,color .16s ease!important;
}
html body #cartDrawer .cart-step span{
  display:grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  border-radius:999px!important;
  background:var(--surface2)!important;
  color:inherit!important;
  font-size:11px!important;
}
html body #cartDrawer .cart-step.active{
  background:linear-gradient(135deg,var(--accent),var(--accent2))!important;
  color:#241409!important;
  box-shadow:0 10px 20px color-mix(in srgb,var(--accent) 28%,transparent)!important;
}
html body #cartDrawer .cart-step.done{
  color:var(--accent2)!important;
}
html body #cartDrawer .cart-step.done span{
  background:color-mix(in srgb,var(--accent) 18%,var(--card))!important;
}
html body #cartDrawer .drawer-body{
  min-height:0!important;
  padding:14px 18px 18px!important;
  display:grid!important;
  gap:14px!important;
  align-content:start!important;
  overflow:auto!important;
  overflow-x:hidden!important;
  scroll-padding-bottom:180px!important;
}
html body #cartItems{
  display:grid!important;
  gap:12px!important;
  min-width:0!important;
}
html body #cartDrawer.tv-cart-has-items #cartItems::before{
  content:"Productos elegidos";
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin:0 2px -2px!important;
  color:var(--muted)!important;
  font-size:11px!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body #cartDrawer.tv-cart-has-items #cartItems::after{
  content:"Podés sumar o restar unidades antes de enviar.";
  display:block!important;
  margin:0 2px!important;
  color:var(--muted)!important;
  font-size:11px!important;
  font-weight:850!important;
}
html body #cartItems .cart-empty{
  border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--line))!important;
  border-radius:24px!important;
  padding:24px 18px!important;
  background:
    radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 48%),
    var(--card)!important;
  text-align:center!important;
  box-shadow:0 18px 35px rgba(20,14,10,.07)!important;
}
html body #cartItems .cart-empty>span{
  display:grid!important;
  place-items:center!important;
  width:70px!important;
  height:70px!important;
  margin:0 auto 12px!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,var(--accent),var(--accent2))!important;
  font-size:32px!important;
  box-shadow:0 16px 32px color-mix(in srgb,var(--accent) 24%,transparent)!important;
}
html body #cartItems .cart-empty b{
  display:block!important;
  font-size:22px!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
}
html body #cartItems .cart-empty p{
  margin:7px auto 16px!important;
  max-width:28ch!important;
  color:var(--muted)!important;
  font-size:13px!important;
  font-weight:800!important;
}
html body #cartItems .cart-empty .btn{
  width:100%!important;
  min-height:50px!important;
  border-radius:16px!important;
}
html body #cartDrawer .cart-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  padding:12px!important;
  border:1px solid color-mix(in srgb,var(--line) 90%,transparent)!important;
  border-radius:24px!important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--card) 98%,transparent),color-mix(in srgb,var(--surface2) 55%,var(--card)))!important;
  box-shadow:0 14px 32px rgba(20,14,10,.075)!important;
  overflow:hidden!important;
}
html body #cartDrawer .cart-item::before{
  content:"";
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:4px!important;
  background:linear-gradient(180deg,var(--accent),var(--accent2))!important;
  opacity:.9!important;
}
html body #cartDrawer .cart-item-main{
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr) 40px!important;
  gap:12px!important;
  align-items:start!important;
  min-width:0!important;
}
html body #cartDrawer .cart-thumb-wrap{
  width:76px!important;
  height:76px!important;
  border-radius:19px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid color-mix(in srgb,var(--line) 70%,transparent)!important;
  box-shadow:0 12px 20px rgba(20,14,10,.10)!important;
}
html body #cartDrawer .cart-thumb{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
html body #cartDrawer .cart-item-copy{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
  padding-top:1px!important;
}
html body #cartDrawer .cart-category{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  align-items:center!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--accent) 12%,var(--surface2))!important;
  color:var(--accent2)!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body #cartDrawer .cart-name{
  color:var(--text)!important;
  font-size:16px!important;
  line-height:1.06!important;
  font-weight:1000!important;
  letter-spacing:-.04em!important;
  overflow-wrap:anywhere!important;
}
html body #cartDrawer .cart-details{
  margin-top:2px!important;
  padding:8px 9px!important;
  border:1px solid color-mix(in srgb,var(--line) 75%,transparent)!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--surface2) 72%,transparent)!important;
  color:var(--muted)!important;
  font-size:11px!important;
  line-height:1.35!important;
  font-weight:850!important;
  max-height:88px!important;
  overflow:auto!important;
}
html body #cartDrawer .cart-unit-price{
  width:max-content!important;
  margin-top:3px!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--text) 6%,transparent)!important;
  color:var(--muted)!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:1000!important;
}
html body #cartDrawer .cart-remove-icon{
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border:1px solid color-mix(in srgb,#ef4444 28%,var(--line))!important;
  border-radius:14px!important;
  background:color-mix(in srgb,#ef4444 8%,var(--card))!important;
  color:color-mix(in srgb,#ef4444 92%,var(--text))!important;
  font-size:24px!important;
  font-weight:1000!important;
  line-height:1!important;
}
html body #cartDrawer .cart-item-foot{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(118px,auto)!important;
  align-items:stretch!important;
  gap:10px!important;
  padding-top:12px!important;
  border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;
}
html body #cartDrawer .qty-control{
  display:grid!important;
  grid-template-columns:44px minmax(48px,1fr) 44px!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  width:100%!important;
  padding:7px!important;
  border:1px solid color-mix(in srgb,var(--line) 86%,transparent)!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--surface2) 86%,transparent)!important;
  overflow:visible!important;
}
html body #cartDrawer .qty-control button{
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  border:0!important;
  border-radius:14px!important;
  background:var(--card)!important;
  color:var(--text)!important;
  font-size:24px!important;
  font-weight:1000!important;
  line-height:1!important;
  box-shadow:0 8px 18px rgba(20,14,10,.09)!important;
}
html body #cartDrawer .qty-control button[data-cart-plus]{
  background:linear-gradient(135deg,var(--accent),var(--accent2))!important;
  color:#211207!important;
}
html body #cartDrawer .qty-control button:active{
  transform:scale(.96)!important;
}
html body #cartDrawer .qty-control span{
  display:flex!important;
  min-width:0!important;
  height:44px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--card) 78%,transparent)!important;
  color:var(--text)!important;
  font-weight:1000!important;
}
html body #cartDrawer .qty-control span b{
  font-size:18px!important;
  line-height:1!important;
}
html body #cartDrawer .qty-control span small{
  color:var(--muted)!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
}
html body #cartDrawer .cart-line-total{
  display:grid!important;
  align-content:center!important;
  justify-items:end!important;
  gap:2px!important;
  min-width:118px!important;
  padding:9px 11px!important;
  border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line))!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--accent) 10%,var(--card))!important;
}
html body #cartDrawer .cart-line-total small{
  color:var(--muted)!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body #cartDrawer .cart-line-total strong{
  color:var(--text)!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:-.04em!important;
}
html body #cartDrawer #addonsPanel{
  margin-top:2px!important;
  padding:12px!important;
  border:1px solid color-mix(in srgb,var(--line) 86%,transparent)!important;
  border-radius:24px!important;
  background:color-mix(in srgb,var(--card) 88%,transparent)!important;
  box-shadow:0 12px 28px rgba(20,14,10,.06)!important;
}
html body #cartDrawer #addonsPanel[hidden]{
  display:none!important;
}
html body #cartDrawer .addons-heading{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
html body #cartDrawer .addons-heading span{
  color:var(--accent2)!important;
  font-size:10px!important;
  font-weight:1000!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
html body #cartDrawer .addons-heading b{
  display:block!important;
  margin-top:3px!important;
  color:var(--text)!important;
  font-size:18px!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
}
html body #cartDrawer .addons-heading small{
  flex:0 0 auto!important;
  padding:6px 8px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--accent) 12%,var(--surface2))!important;
  color:var(--muted)!important;
  font-size:10px!important;
  font-weight:1000!important;
}
html body #cartDrawer .addon-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin-bottom:10px!important;
}
html body #cartDrawer .addon-tab{
  min-width:0!important;
  min-height:40px!important;
  padding:8px 7px!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  background:var(--surface2)!important;
  color:var(--text)!important;
  font-size:11px!important;
  font-weight:1000!important;
  white-space:nowrap!important;
}
html body #cartDrawer .addon-tab.active{
  border-color:color-mix(in srgb,var(--accent) 62%,var(--line))!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 20%,var(--card)),var(--card))!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 12%,transparent)!important;
}
html body #cartDrawer .addon-list{
  display:grid!important;
  gap:9px!important;
  max-height:310px!important;
  overflow:auto!important;
  padding-right:2px!important;
}
html body #cartDrawer .addon-item{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) minmax(94px,auto)!important;
  grid-template-rows:auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:9px!important;
  border:1px solid color-mix(in srgb,var(--line) 78%,transparent)!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--surface2) 70%,var(--card))!important;
  box-shadow:none!important;
}
html body #cartDrawer .addon-thumb-wrap{
  width:58px!important;
  height:58px!important;
  border-radius:15px!important;
  overflow:hidden!important;
  background:#fff!important;
}
html body #cartDrawer .addon-thumb-wrap img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
html body #cartDrawer .addon-float-icon{
  display:none!important;
}
html body #cartDrawer .addon-copy{
  min-width:0!important;
  display:grid!important;
  gap:2px!important;
}
html body #cartDrawer .addon-copy small{
  color:var(--accent2)!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
html body #cartDrawer .addon-copy b{
  min-width:0!important;
  color:var(--text)!important;
  font-size:13px!important;
  line-height:1.05!important;
  font-weight:1000!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
html body #cartDrawer .addon-copy p{
  display:none!important;
}
html body #cartDrawer .addon-copy strong{
  color:var(--text)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:1000!important;
}
html body #cartDrawer .addon-add-btn{
  min-width:94px!important;
  min-height:40px!important;
  padding:0 12px!important;
  border-radius:14px!important;
  font-size:12px!important;
}
html body #cartDrawer .addon-buy-control{
  display:grid!important;
  grid-template-columns:36px minmax(34px,1fr) 36px!important;
  gap:5px!important;
  align-items:center!important;
  justify-content:stretch!important;
  min-width:112px!important;
  padding:5px!important;
  border:1px solid var(--line)!important;
  border-radius:15px!important;
  background:var(--card)!important;
}
html body #cartDrawer .addon-buy-control button,
html body #cartDrawer .addon-buy-control span{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  min-width:36px!important;
  height:36px!important;
  min-height:36px!important;
  border-radius:12px!important;
  border:0!important;
  font-size:18px!important;
  font-weight:1000!important;
}
html body #cartDrawer .addon-buy-control button{
  background:var(--surface2)!important;
  color:var(--text)!important;
}
html body #cartDrawer .addon-buy-control button[data-addon-plus]{
  background:linear-gradient(135deg,var(--accent),var(--accent2))!important;
  color:#211207!important;
}
html body #cartDrawer .addon-buy-control span{
  background:color-mix(in srgb,var(--surface2) 78%,transparent)!important;
  color:var(--text)!important;
  font-size:14px!important;
}
html body #cartDrawer .checkout-panel{
  border:1px solid color-mix(in srgb,var(--line) 86%,transparent)!important;
  border-radius:24px!important;
  background:color-mix(in srgb,var(--card) 92%,transparent)!important;
  padding:16px!important;
  box-shadow:0 14px 30px rgba(20,14,10,.07)!important;
}
html body #cartDrawer .checkout-title{
  display:block!important;
  margin:3px 0 5px!important;
  color:var(--text)!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:-.05em!important;
}
html body #cartDrawer #checkoutHint{
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.25!important;
}
html body #cartDrawer .checkout-grid{
  grid-template-columns:1fr 1fr!important;
  gap:11px!important;
}
html body #cartDrawer .field label{
  font-size:10px!important;
  font-weight:1000!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
html body #cartDrawer .input,
html body #cartDrawer .textarea{
  min-height:46px!important;
  border-radius:15px!important;
  border-color:color-mix(in srgb,var(--line) 86%,transparent)!important;
  background:var(--surface2)!important;
  font-size:14px!important;
  font-weight:850!important;
}
html body #cartDrawer .textarea{
  min-height:82px!important;
}
html body #cartDrawer .drawer-foot{
  position:relative!important;
  z-index:4!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px 12px!important;
  padding:13px 18px calc(14px + env(safe-area-inset-bottom))!important;
  border-top:1px solid color-mix(in srgb,var(--line) 82%,transparent)!important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--surface) 82%,transparent),var(--surface))!important;
  box-shadow:0 -18px 38px rgba(20,14,10,.12)!important;
}
html body #cartDrawer .shipping-box{
  grid-column:1 / -1!important;
  margin:0!important;
  padding:9px 11px!important;
  border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line))!important;
  border-radius:15px!important;
  background:color-mix(in srgb,var(--accent) 10%,var(--card))!important;
  color:var(--muted)!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:950!important;
  text-align:center!important;
}
html body #cartDrawer .total-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
}
html body #cartDrawer .total-row.total{
  grid-column:1 / -1!important;
  margin-top:2px!important;
  padding-top:10px!important;
  border-top:1px solid color-mix(in srgb,var(--line) 78%,transparent)!important;
  color:var(--text)!important;
  font-size:17px!important;
  font-weight:1000!important;
}
html body #cartDrawer .total-row.total span:last-child{
  font-size:28px!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
  color:var(--accent2)!important;
}
html body #cartDrawer .drawer-foot .btn{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  min-height:58px!important;
  margin:0!important;
  padding:10px 15px!important;
  border-radius:18px!important;
  text-align:left!important;
  box-shadow:0 16px 30px color-mix(in srgb,var(--accent) 22%,transparent)!important;
}
html body #cartDrawer .drawer-foot .btn span{
  font-size:15px!important;
  line-height:1!important;
}
html body #cartDrawer .drawer-foot .btn small{
  grid-column:1!important;
  margin-top:3px!important;
  opacity:.78!important;
  font-size:11px!important;
}
html body #cartDrawer .drawer-foot .btn b{
  grid-row:1 / span 2!important;
  grid-column:2!important;
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.28)!important;
}
html body #cartDrawer .drawer-foot .btn:disabled,
html body #cartDrawer .drawer-foot .btn[aria-disabled="true"]{
  opacity:.55!important;
  box-shadow:none!important;
}
html[data-theme="dark"] body #cartDrawer .cart-item,
html[data-theme="dark"] body #cartDrawer #addonsPanel,
html[data-theme="dark"] body #cartDrawer .checkout-panel,
html[data-theme="dark"] body #cartItems .cart-empty{
  box-shadow:0 18px 38px rgba(0,0,0,.26)!important;
}
html[data-theme="dark"] body #cartDrawer .drawer-head,
html[data-theme="dark"] body #cartDrawer .drawer-foot{
  box-shadow:0 14px 34px rgba(0,0,0,.30)!important;
}
@media(max-width:760px){
  html body #cartDrawer.drawer{
    left:0!important;
    right:0!important;
    top:auto!important;
    bottom:0!important;
    width:100%!important;
    max-width:100%!important;
    height:min(94dvh,820px)!important;
    border-radius:26px 26px 0 0!important;
    border-left:0!important;
    border-top:1px solid var(--line)!important;
    transform:translateY(105%)!important;
  }
  html body #cartDrawer.drawer.show{
    transform:translateY(0)!important;
  }
  html body #cartDrawer .drawer-head{
    grid-template-columns:minmax(0,1fr) auto auto!important;
    padding:15px 14px 11px!important;
    gap:8px!important;
  }
  html body #cartDrawer .drawer-title{
    font-size:27px!important;
  }
  html body #cartDrawer .drawer-sub{
    font-size:11px!important;
  }
  html body #cartDrawer .cart-clear-btn{
    min-width:66px!important;
    height:38px!important;
    font-size:11px!important;
  }
  html body #cartDrawer .icon-btn#drawerCloseBtn{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
  }
  html body #cartDrawer .cart-steps{
    margin:9px 12px 0!important;
    padding:5px!important;
  }
  html body #cartDrawer .cart-step{
    min-height:32px!important;
    padding:5px 4px!important;
    gap:4px!important;
    font-size:10px!important;
  }
  html body #cartDrawer .cart-step span{
    width:20px!important;
    height:20px!important;
    font-size:10px!important;
  }
  html body #cartDrawer .drawer-body{
    padding:11px 12px 14px!important;
    gap:12px!important;
  }
  html body #cartDrawer .cart-item{
    padding:11px!important;
    border-radius:21px!important;
    gap:10px!important;
  }
  html body #cartDrawer .cart-item-main{
    grid-template-columns:66px minmax(0,1fr) 38px!important;
    gap:10px!important;
  }
  html body #cartDrawer .cart-thumb-wrap{
    width:66px!important;
    height:66px!important;
    border-radius:17px!important;
  }
  html body #cartDrawer .cart-name{
    font-size:15px!important;
  }
  html body #cartDrawer .cart-details{
    max-height:74px!important;
    padding:7px 8px!important;
    font-size:10.5px!important;
  }
  html body #cartDrawer .cart-remove-icon{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
  }
  html body #cartDrawer .cart-item-foot{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  html body #cartDrawer .qty-control{
    grid-template-columns:48px minmax(56px,1fr) 48px!important;
    padding:6px!important;
    gap:6px!important;
  }
  html body #cartDrawer .qty-control button{
    width:48px!important;
    height:46px!important;
    min-width:48px!important;
    min-height:46px!important;
  }
  html body #cartDrawer .qty-control span{
    height:46px!important;
  }
  html body #cartDrawer .cart-line-total{
    min-width:0!important;
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:10px 12px!important;
  }
  html body #cartDrawer .addon-tabs{
    display:flex!important;
    overflow-x:auto!important;
    padding-bottom:2px!important;
    scroll-snap-type:x proximity!important;
  }
  html body #cartDrawer .addon-tab{
    flex:0 0 auto!important;
    min-width:102px!important;
    scroll-snap-align:start!important;
  }
  html body #cartDrawer .addon-list{
    max-height:260px!important;
  }
  html body #cartDrawer .addon-item{
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:8px!important;
  }
  html body #cartDrawer .addon-thumb-wrap{
    width:54px!important;
    height:54px!important;
  }
  html body #cartDrawer .addon-add-btn,
  html body #cartDrawer .addon-buy-control{
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
  }
  html body #cartDrawer .addon-buy-control{
    grid-template-columns:48px minmax(52px,1fr) 48px!important;
    padding:6px!important;
    gap:6px!important;
  }
  html body #cartDrawer .addon-buy-control button,
  html body #cartDrawer .addon-buy-control span{
    min-width:48px!important;
    height:44px!important;
    min-height:44px!important;
  }
  html body #cartDrawer .checkout-grid{
    grid-template-columns:1fr!important;
  }
  html body #cartDrawer .drawer-foot{
    padding:11px 12px calc(12px + env(safe-area-inset-bottom))!important;
    gap:7px 10px!important;
  }
  html body #cartDrawer .shipping-box{
    padding:8px 10px!important;
    border-radius:13px!important;
    font-size:10.5px!important;
  }
  html body #cartDrawer .total-row{
    font-size:11px!important;
  }
  html body #cartDrawer .total-row.total{
    padding-top:8px!important;
    font-size:15px!important;
  }
  html body #cartDrawer .total-row.total span:last-child{
    font-size:25px!important;
  }
  html body #cartDrawer .drawer-foot .btn{
    min-height:56px!important;
    border-radius:16px!important;
  }
}
@media(max-width:390px){
  html body #cartDrawer .cart-steps{
    grid-template-columns:1fr 12px 1fr 12px 1fr!important;
  }
  html body #cartDrawer .cart-step b{
    display:none!important;
  }
  html body #cartDrawer .cart-step span{
    width:24px!important;
    height:24px!important;
  }
  html body #cartDrawer .drawer-head{
    padding-left:11px!important;
    padding-right:11px!important;
  }
  html body #cartDrawer .drawer-title{
    font-size:24px!important;
  }
  html body #cartDrawer .cart-clear-btn{
    min-width:60px!important;
    font-size:10px!important;
  }
  html body #cartDrawer .cart-item-main{
    grid-template-columns:60px minmax(0,1fr) 36px!important;
    gap:8px!important;
  }
  html body #cartDrawer .cart-thumb-wrap{
    width:60px!important;
    height:60px!important;
  }
  html body #cartDrawer .qty-control{
    grid-template-columns:44px minmax(44px,1fr) 44px!important;
  }
  html body #cartDrawer .qty-control button{
    width:44px!important;
    min-width:44px!important;
  }
}



/* v273: header mobile limpio + hero legible + 4 categorías exactas */
html body .home-quick-nav{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
html body .home-quick-nav [data-home-category="Torpedos"]{
  display:none!important;
}
html body .home-quick-nav button{
  min-width:0!important;
}
html body .quick-nav-wrap{
  border-top:0!important;
}

@media(max-width:760px){
  html body{
    overflow-x:hidden!important;
  }
  html body .app{
    width:min(100%,430px)!important;
    max-width:100%!important;
    padding:0 8px!important;
  }
  html body .topbar{
    top:0!important;
    padding:8px 0 0!important;
    margin:0 auto!important;
  }
  html body .topbar-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"brand" "search" "actions"!important;
    gap:8px!important;
    width:100%!important;
    padding:9px!important;
    border-radius:20px!important;
    background:color-mix(in srgb,var(--surface) 95%,transparent)!important;
    box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
  }
  html body .brand{
    grid-area:brand!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:8px!important;
    align-items:center!important;
  }
  html body .brand-logo{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:15px!important;
    box-shadow:none!important;
  }
  html body .brand-logo img{
    padding:3px!important;
  }
  html body .brand-copy{
    min-width:0!important;
    display:grid!important;
    align-content:center!important;
    gap:3px!important;
  }
  html body .brand-title{
    font-size:clamp(25px,8.1vw,31px)!important;
    line-height:.9!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    letter-spacing:-.055em!important;
  }
  html body .brand-tag{
    display:none!important;
  }
  html body .brand-status-row{
    margin:0!important;
  }
  html body .store-status{
    width:max-content!important;
    max-width:100%!important;
    min-height:22px!important;
    padding:4px 8px!important;
    border-radius:7px!important;
    font-size:10.5px!important;
    line-height:1!important;
  }
  html body .search{
    grid-area:search!important;
    min-height:42px!important;
    padding:0 11px!important;
    gap:8px!important;
    border-radius:15px!important;
    box-shadow:none!important;
  }
  html body .search svg{
    width:17px!important;
    height:17px!important;
  }
  html body .search input{
    font-size:13px!important;
    font-weight:900!important;
  }
  html body .search-clear{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:11px!important;
  }
  html body .top-actions{
    grid-area:actions!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    align-items:stretch!important;
    width:100%!important;
  }
  html body .top-actions.has-install{
    grid-template-columns:1fr 1fr!important;
  }
  html body .top-actions.has-install #installBtn:not(.hidden){
    grid-column:1 / -1!important;
  }
  html body .top-actions.no-install{
    grid-template-columns:1fr 1fr!important;
  }
  html body #categoryMenuBtn,
  html body #themeBtn.tv-theme-switch-v271,
  html body #installBtn:not(.hidden){
    width:100%!important;
    min-width:0!important;
    height:43px!important;
    min-height:43px!important;
    border-radius:15px!important;
    padding:0 10px!important;
    box-shadow:0 8px 18px rgba(0,0,0,.12)!important;
  }
  html body #categoryMenuBtn{
    justify-content:center!important;
    gap:8px!important;
  }
  html body .category-menu-label{
    font-size:12px!important;
    line-height:1!important;
  }
  html body .hamburger-lines{
    width:22px!important;
    height:18px!important;
  }
  html body #themeBtn.tv-theme-switch-v271{
    display:grid!important;
    grid-template-columns:auto auto!important;
    justify-content:center!important;
    align-items:center!important;
    gap:7px!important;
    padding:6px!important;
  }
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-track{
    width:48px!important;
    height:27px!important;
    padding:3px!important;
  }
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{
    width:21px!important;
    height:21px!important;
  }
  html[data-theme="dark"] body #themeBtn.tv-theme-switch-v271 .theme-switch-thumb{
    transform:translateX(21px)!important;
  }
  html body #themeBtn.tv-theme-switch-v271 .theme-switch-label{
    min-width:35px!important;
    font-size:10.5px!important;
    line-height:1!important;
    text-align:left!important;
  }
  html body #installBtn:not(.hidden){
    justify-content:center!important;
    font-size:12px!important;
  }

  html body .tv-home-banner{
    margin-top:8px!important;
    padding:0!important;
    border-radius:21px!important;
    background:transparent!important;
  }
  html body .tv-home-banner .hero-banner-card{
    min-height:164px!important;
    height:clamp(164px,45vw,190px)!important;
    border-radius:21px!important;
    overflow:hidden!important;
    border-color:color-mix(in srgb,var(--accent) 62%,var(--line))!important;
  }
  html body .hero-banner-picture,
  html body .hero-banner-image{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }
  html body .hero-banner-image{
    object-fit:cover!important;
    object-position:67% center!important;
    filter:saturate(1.03) contrast(1.02)!important;
  }
  html body .hero-banner-art::before{
    background:
      linear-gradient(90deg,rgba(3,9,22,.96) 0%,rgba(3,9,22,.88) 34%,rgba(3,9,22,.48) 58%,rgba(3,9,22,.05) 100%)!important;
  }
  html body .tv-home-banner .hero-banner-content{
    position:absolute!important;
    inset:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:60%!important;
    max-width:218px!important;
    min-width:0!important;
    height:100%!important;
    align-content:center!important;
    align-items:center!important;
    justify-content:start!important;
    padding:12px 12px!important;
    gap:0!important;
  }
  html body .tv-home-banner .hero-banner-logo{
    display:none!important;
  }
  html body .tv-home-banner .hero-banner-copy{
    display:grid!important;
    gap:5px!important;
    min-width:0!important;
    width:100%!important;
    align-content:center!important;
  }
  html body .tv-home-banner .hero-banner-copy h1{
    max-width:8.8ch!important;
    margin:0!important;
    font-size:clamp(28px,9.4vw,38px)!important;
    line-height:.87!important;
    letter-spacing:-.05em!important;
    text-wrap:balance!important;
    overflow:visible!important;
  }
  html body .tv-home-banner .hero-banner-copy p{
    max-width:17ch!important;
    margin:1px 0 0!important;
    font-size:11px!important;
    line-height:1.05!important;
    color:#fff8e7!important;
  }
  html body .hero-location-row{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:6px!important;
    margin-top:3px!important;
    min-width:0!important;
  }
  html body .hero-hours-btn,
  html body .hero-location-btn{
    min-height:28px!important;
    height:28px!important;
    max-width:100%!important;
    border-radius:999px!important;
    padding:0 8px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .hero-hours-btn span,
  html body .hero-location-btn span,
  html body .hero-location-btn b{
    font-size:9px!important;
    line-height:1!important;
  }
  html body .hero-location-btn b{
    display:none!important;
  }
  html body .hero-location-btn i,
  html body .hero-hours-btn i{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    font-size:9px!important;
  }

  html body .quick-nav-wrap{
    margin:12px 0 10px!important;
    padding:0!important;
  }
  html body .quick-nav-head{
    display:none!important;
  }
  html body .home-quick-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    margin:0!important;
  }
  html body .home-quick-nav button{
    min-height:58px!important;
    padding:9px 9px!important;
    border-radius:15px!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    column-gap:8px!important;
    row-gap:0!important;
  }
  html body .home-quick-nav button:nth-child(n+5){
    display:none!important;
  }
  html body .home-quick-nav button span{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:11px!important;
    font-size:16px!important;
  }
  html body .home-quick-nav button b{
    font-size:11.5px!important;
    line-height:1.05!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  html body .home-quick-nav button small{
    font-size:8.8px!important;
    line-height:1.1!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  html body .promo-banners{
    margin-top:10px!important;
  }
  html body .section-kicker{
    font-size:9px!important;
  }
  html body #menuTitle{
    font-size:clamp(28px,9vw,36px)!important;
    line-height:.95!important;
  }
  html body .cart-float{
    right:12px!important;
    bottom:calc(13px + env(safe-area-inset-bottom))!important;
    width:58px!important;
    height:58px!important;
    border-radius:20px!important;
  }
  html body .cart-float span:not(.badge){
    display:none!important;
  }
}

@media(max-width:380px){
  html body .app{
    padding:0 7px!important;
  }
  html body .topbar-inner{
    padding:8px!important;
    border-radius:18px!important;
    gap:7px!important;
  }
  html body .brand{
    grid-template-columns:42px minmax(0,1fr)!important;
  }
  html body .brand-logo{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }
  html body .brand-title{
    font-size:clamp(23px,8.5vw,29px)!important;
  }
  html body .search{
    min-height:40px!important;
    border-radius:14px!important;
  }
  html body #categoryMenuBtn,
  html body #themeBtn.tv-theme-switch-v271,
  html body #installBtn:not(.hidden){
    height:41px!important;
    min-height:41px!important;
    border-radius:14px!important;
  }
  html body .tv-home-banner .hero-banner-card{
    min-height:158px!important;
    height:158px!important;
  }
  html body .tv-home-banner .hero-banner-content{
    width:58%!important;
    max-width:198px!important;
    padding:10px!important;
  }
  html body .tv-home-banner .hero-banner-copy h1{
    font-size:clamp(26px,9vw,34px)!important;
    max-width:8.6ch!important;
  }
  html body .tv-home-banner .hero-banner-copy p{
    font-size:10px!important;
  }
  html body .hero-hours-btn,
  html body .hero-location-btn{
    min-height:26px!important;
    height:26px!important;
    padding:0 7px!important;
  }
  html body .home-quick-nav button{
    min-height:56px!important;
    padding:8px!important;
    grid-template-columns:32px minmax(0,1fr)!important;
  }
  html body .home-quick-nav button span{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
  }
  html body .home-quick-nav button b{
    font-size:10.5px!important;
  }
  html body .home-quick-nav button small{
    font-size:8.2px!important;
  }
}

/* v274: carrito sin envío duplicado, WhatsApp solo con datos completos, estado abierto/cerrado más cerca del logo en PC */
html body #cartDrawer .shipping-total-row-v274,
html body #cartDrawer .total-row:has(#cartShipping){
  display:none!important;
}

html body #cartDrawer .shipping-box{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:42px!important;
  padding:10px 14px!important;
  border-radius:16px!important;
  border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line))!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 96%,transparent),color-mix(in srgb,var(--surface) 94%,transparent))!important;
  color:var(--text)!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:1000!important;
  letter-spacing:-.01em!important;
  box-shadow:0 10px 22px rgba(0,0,0,.08)!important;
}
html body #cartDrawer .shipping-box::before{
  content:"Entrega";
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:24px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--accent) 18%,transparent)!important;
  color:var(--accent2)!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
}
html body #cartDrawer .shipping-box[data-mode="retiro"]::before{
  content:"Retiro";
}
html body #checkoutBtn.checkout-waiting-v274,
html body #checkoutBtn.hidden{
  display:none!important;
}
html body #checkoutHint.checkout-hint-v274{
  display:block!important;
  margin-top:6px!important;
  padding:9px 10px!important;
  border-radius:14px!important;
  border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line))!important;
  background:color-mix(in srgb,var(--card) 88%,transparent)!important;
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:900!important;
}
html body #checkoutHint.checkout-ready-v274{
  border-color:rgba(34,197,94,.32)!important;
  background:rgba(34,197,94,.10)!important;
  color:color-mix(in srgb,#22c55e 72%,var(--text))!important;
}
html body #checkoutPanel .input.input-missing-v274,
html body #checkoutPanel .textarea.input-missing-v274{
  border-color:rgba(239,68,68,.58)!important;
  box-shadow:0 0 0 3px rgba(239,68,68,.11)!important;
}

@media(min-width:761px){
  html body .brand{
    gap:8px!important;
  }
  html body .brand-logo{
    width:64px!important;
    height:64px!important;
    border-radius:20px!important;
  }
  html body .brand-copy{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:6px 8px!important;
    min-height:0!important;
    align-content:center!important;
  }
  html body .brand-title{
    margin:0!important;
    line-height:.92!important;
  }
  html body .brand-status-row{
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
  }
  html body .store-status{
    min-height:28px!important;
    padding:6px 9px!important;
    gap:7px!important;
    border-radius:10px!important;
    font-size:12px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .store-status::before{
    width:9px!important;
    height:9px!important;
    flex-basis:9px!important;
  }
}

@media(max-width:760px){
  html body #cartDrawer .shipping-box{
    min-height:40px!important;
    padding:9px 10px!important;
    border-radius:14px!important;
    font-size:11px!important;
  }
  html body #cartDrawer .shipping-box::before{
    min-height:22px!important;
    padding:0 7px!important;
    font-size:9px!important;
    letter-spacing:.10em!important;
  }
  html body #checkoutHint.checkout-hint-v274{
    font-size:11px!important;
    padding:8px 9px!important;
  }
}


/* v275: limpieza visual final - sin línea en hero, 4 categorías compactas y estado pegado al logo */
html body .tv-home-banner .hero-banner-art,
html body .tv-home-banner .hero-banner-card,
html body .tv-home-banner .hero-banner-picture,
html body .tv-home-banner .hero-banner-image,
html body .tv-home-banner .hero-banner-content{
  border-left:0!important;
  border-right:0!important;
  outline:0!important;
}
html body .tv-home-banner .hero-banner-art::after,
html body .tv-home-banner .hero-banner-card::after,
html body .tv-home-banner .hero-banner-picture::before,
html body .tv-home-banner .hero-banner-picture::after,
html body .tv-home-banner .hero-banner-content::before,
html body .tv-home-banner .hero-banner-content::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
html body .tv-home-banner .hero-banner-art::before{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

@media(min-width:761px){
  html body .brand{
    display:grid!important;
    grid-template-columns:64px max-content!important;
    align-items:center!important;
    justify-content:start!important;
    justify-items:start!important;
    gap:8px!important;
    width:max-content!important;
    max-width:360px!important;
    min-width:0!important;
  }
  html body .brand-logo{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    flex:0 0 64px!important;
  }
  html body .brand-copy{
    display:grid!important;
    grid-template-columns:max-content!important;
    align-content:center!important;
    justify-content:start!important;
    justify-items:start!important;
    gap:3px!important;
    width:max-content!important;
    max-width:270px!important;
    min-width:0!important;
  }
  html body .brand-title{
    display:block!important;
    width:max-content!important;
    max-width:270px!important;
    margin:0!important;
    font-size:clamp(28px,2.65vw,38px)!important;
    line-height:.9!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  html body .brand-tag{
    display:none!important;
  }
  html body .brand-status-row{
    display:flex!important;
    width:max-content!important;
    max-width:270px!important;
    margin:0!important;
    padding:0!important;
    justify-content:flex-start!important;
    justify-items:start!important;
    align-items:center!important;
  }
  html body .store-status{
    width:max-content!important;
    max-width:270px!important;
    justify-self:start!important;
    align-self:start!important;
    min-height:24px!important;
    padding:5px 8px!important;
    gap:6px!important;
    border-radius:8px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar-inner{
    grid-template-columns:max-content minmax(280px,1fr) auto!important;
    column-gap:18px!important;
  }
}

@media(max-width:760px){
  html body .home-quick-nav{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
    margin:0!important;
  }
  html body .home-quick-nav button{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    justify-items:center!important;
    align-content:center!important;
    min-height:54px!important;
    height:54px!important;
    padding:5px 3px!important;
    border-radius:14px!important;
    gap:3px!important;
    text-align:center!important;
  }
  html body .home-quick-nav button:nth-child(n+5){
    display:none!important;
  }
  html body .home-quick-nav button span{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    border-radius:9px!important;
    font-size:13px!important;
    margin:0!important;
  }
  html body .home-quick-nav button b{
    width:100%!important;
    max-width:100%!important;
    font-size:9.2px!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
    white-space:normal!important;
    overflow:hidden!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
  }
  html body .home-quick-nav button small{
    display:none!important;
  }
  html body .quick-nav-wrap{
    margin:10px 0 10px!important;
    padding:0!important;
  }

  html body .tv-home-banner .hero-banner-card{
    border-left:1px solid color-mix(in srgb,var(--accent) 62%,var(--line))!important;
    border-right:1px solid color-mix(in srgb,var(--accent) 62%,var(--line))!important;
  }
  html body .tv-home-banner .hero-banner-art{
    position:relative!important;
    overflow:hidden!important;
    border:0!important;
    outline:0!important;
  }
  html body .tv-home-banner .hero-banner-art::before{
    background:
      linear-gradient(90deg,rgba(3,9,22,.97) 0%,rgba(3,9,22,.88) 39%,rgba(3,9,22,.38) 64%,rgba(3,9,22,0) 100%)!important;
  }
  html body .tv-home-banner .hero-banner-content{
    width:58%!important;
    max-width:205px!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
}

@media(max-width:380px){
  html body .home-quick-nav{
    gap:5px!important;
  }
  html body .home-quick-nav button{
    min-height:50px!important;
    height:50px!important;
    padding:4px 2px!important;
    border-radius:12px!important;
  }
  html body .home-quick-nav button span{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    font-size:12px!important;
  }
  html body .home-quick-nav button b{
    font-size:8.4px!important;
  }
}



/* v276: PC - estado Abierto/Cerrado pegado al logo, no al centro del nombre */
@media (min-width: 761px){
  html body header.topbar .brand#brandTap{
    display:grid!important;
    grid-template-columns:64px max-content!important;
    grid-template-rows:42px 22px!important;
    align-items:center!important;
    justify-content:start!important;
    justify-items:start!important;
    column-gap:8px!important;
    row-gap:0!important;
    width:max-content!important;
    max-width:350px!important;
    min-width:0!important;
  }

  html body header.topbar .brand#brandTap .brand-logo{
    grid-column:1!important;
    grid-row:1 / 3!important;
    align-self:center!important;
    justify-self:start!important;
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    margin:0!important;
  }

  html body header.topbar .brand#brandTap .brand-copy{
    display:contents!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }

  html body header.topbar .brand#brandTap .brand-title{
    grid-column:2!important;
    grid-row:1!important;
    align-self:end!important;
    justify-self:start!important;
    width:max-content!important;
    max-width:270px!important;
    margin:0!important;
    padding:0!important;
    font-size:clamp(28px,2.65vw,38px)!important;
    line-height:.9!important;
    white-space:nowrap!important;
    text-align:left!important;
    transform:none!important;
  }

  html body header.topbar .brand#brandTap .brand-tag{
    display:none!important;
  }

  html body header.topbar .brand#brandTap .brand-status-row{
    grid-column:1!important;
    grid-row:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    justify-self:center!important;
    align-self:start!important;
    width:max-content!important;
    max-width:82px!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    transform:translateY(-2px)!important;
    overflow:visible!important;
  }

  html body header.topbar .brand#brandTap #brandStatus.store-status{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    max-width:82px!important;
    min-width:0!important;
    min-height:20px!important;
    height:20px!important;
    padding:0 7px!important;
    gap:5px!important;
    border-radius:999px!important;
    font-size:9.5px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:-.02em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }

  html body header.topbar .brand#brandTap #brandStatus.store-status::before{
    width:7px!important;
    height:7px!important;
    min-width:7px!important;
    flex:0 0 7px!important;
    box-shadow:none!important;
  }

  html body header.topbar .topbar-inner{
    grid-template-columns:max-content minmax(280px,1fr) auto!important;
    column-gap:18px!important;
  }
}


/* ===== v277 checkout flow: envío/retiro + WhatsApp final ===== */
#shippingBox.hidden,
#shippingBox[hidden],
.shipping-box.hidden,
.shipping-box[hidden]{
  display:none!important;
}

.shipping-total-row-v274,
.shipping-total-row-v274[aria-hidden="true"]{
  display:none!important;
}

body:not(.checkout-final-v277) #checkoutBtn{
  display:none!important;
}

body.checkout-final-v277 #checkoutBtn:not(.hidden){
  display:flex!important;
}

body.checkout-final-v277 #continueBtn{
  display:none!important;
}

#addressField.hidden,
#addressField[hidden]{
  display:none!important;
}

#continueBtn:not(.hidden){
  display:flex!important;
}

.checkout-hint-v274{
  min-height:18px;
}

@media (max-width: 760px){
  body:not(.checkout-final-v277) #checkoutBtn{
    display:none!important;
  }

  #shippingBox.hidden,
  #shippingBox[hidden]{
    display:none!important;
  }
}



/* v421 · ajuste puntual imagen Tortilla de papa */
.product.compact-product[data-id="nuevo-tortilla-papa"] .product-media,
.product[data-id="nuevo-tortilla-papa"] .product-media{
  background:#f3efe8!important;
}
.product.compact-product[data-id="nuevo-tortilla-papa"] .product-media img,
.product[data-id="nuevo-tortilla-papa"] .product-media img{
  object-fit:cover!important;
  object-position:center center!important;
  background:#f3efe8!important;
}

