:root{
  --primary:#F52E40;
  --secondary:#352B2B;
  --bg:#f6f6f8;
  --surface:#ffffff;
  --surface-2:#fafbff;
  --text:#201f24;
  --muted:#7c7f88;
  --line:#e8e8ef;
  --success:#0f9d58;
  --danger:#d9324b;
  --shadow:0 16px 40px rgba(23,23,29,.08);
  --shadow-soft:0 8px 22px rgba(23,23,29,.06);
  --radius:22px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
body{padding-bottom:110px}
.app-shell{max-width:720px;margin:0 auto;min-height:100vh;position:relative}
.page-content{padding:10px 16px 30px}
.app-header{position:sticky;top:0;z-index:35;padding:14px 16px 12px;background:linear-gradient(180deg, rgba(246,246,248,.98), rgba(246,246,248,.88), rgba(246,246,248,0));backdrop-filter:blur(10px)}
.app-header__row{display:flex;align-items:center;gap:12px}
.brand{display:flex;align-items:center;gap:12px;font-weight:700}
.brand img{width:42px;height:42px;border-radius:14px;object-fit:cover;background:#fff;box-shadow:var(--shadow-soft)}
.brand--header{flex:1;min-width:0}
.brand--header span{display:flex;flex-direction:column;min-width:0}
.brand--header strong{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand--header small{color:var(--muted);font-size:.75rem}
.icon-btn,.search-filter-btn,.modal__close,.trash-btn{border:0;background:#fff;width:46px;height:46px;border-radius:16px;display:grid;place-items:center;box-shadow:var(--shadow-soft);color:var(--secondary);cursor:pointer}
.icon-btn svg,.search-filter-btn svg,.bottom-nav svg,.location-pill svg{width:22px;height:22px}
.location-cta{background:var(--primary);color:#fff}
.app-search-wrap{margin-top:14px;position:relative}
.search-form{display:flex;align-items:center;gap:10px;background:#fff;border-radius:18px;padding:6px 8px;box-shadow:var(--shadow)}
.search-icon{color:var(--muted);display:grid;place-items:center;width:34px;min-width:34px}
.search-icon svg{width:20px;height:20px}
.search-input{border:0;outline:none;background:transparent;flex:1;padding:10px 10px 10px 2px;min-width:0}
.search-input::placeholder{color:#afb2bb}
.search-filter-btn{width:42px;height:42px;background:var(--primary);color:#fff;box-shadow:none}
.search-suggestions{position:absolute;top:calc(100% + 10px);left:0;right:0;background:#fff;border-radius:20px;box-shadow:var(--shadow);padding:8px;display:none;z-index:30}
.search-suggestions.is-visible{display:block}
.search-suggestion{display:flex;align-items:center;gap:12px;padding:10px;border-radius:16px}
.search-suggestion:hover{background:var(--surface-2)}
.search-suggestion img{width:58px;height:58px;border-radius:14px;object-fit:cover;background:#f4f4f4}
.search-suggestion strong{display:block}
.search-suggestion small{color:var(--muted)}
.location-pill{margin-top:10px;border:0;background:#fff;padding:11px 14px;border-radius:16px;width:100%;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow-soft);color:var(--secondary)}
.location-pill__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.flash{padding:12px 16px;margin-bottom:12px;border-radius:14px;font-size:.95rem}
.flash--error{background:#ffe8eb;color:#99192f}.flash--success{background:#e8f7ee;color:#15703f}
.hero-carousel{overflow:hidden;border-radius:28px;box-shadow:var(--shadow);margin-top:6px}
.hero-carousel__track{display:flex;transition:transform .4s ease}
.hero-banner{min-width:100%;padding:28px 22px;min-height:220px;background-size:cover;background-position:center;position:relative;color:#fff;display:flex;align-items:flex-end}
.hero-banner.is-fallback{background:linear-gradient(135deg,#ff5968,#3c2f2f)}
.hero-banner__copy{max-width:72%}
.hero-banner__eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.16);font-size:.72rem;font-weight:700;letter-spacing:.02em;margin-bottom:12px}
.section-kicker{background:#ffe4e8;color:var(--primary)}
.hero-banner h2{margin:0 0 8px;font-size:1.9rem;line-height:1.04}
.hero-banner p{margin:0 0 14px;color:rgba(255,255,255,.82)}
.hero-banner__cta{display:inline-flex;padding:11px 16px;border-radius:14px;background:#fff;color:var(--primary);font-weight:700}
.hero-carousel__dots{position:absolute;margin-top:-24px;display:flex;justify-content:center;gap:8px;width:100%}
.hero-dot{width:8px;height:8px;border-radius:999px;border:0;background:rgba(255,255,255,.6);cursor:pointer}
.hero-dot.is-active{background:#fff;width:20px}
.category-strip{display:flex;gap:10px;overflow:auto;padding:18px 2px 6px;scrollbar-width:none}
.category-strip::-webkit-scrollbar{display:none}
.chip{padding:12px 18px;border-radius:999px;background:#fff;color:var(--muted);white-space:nowrap;box-shadow:var(--shadow-soft);font-weight:600}
.chip.is-active{background:var(--primary);color:#fff}
.section-headline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 14px}
.section-headline h1,.section-headline h2{margin:4px 0 0;font-size:1.55rem}
.section-headline.compact{margin-top:6px}
.link-button{border:0;background:none;color:var(--primary);font-weight:700;cursor:pointer}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.app-card,.card{background:#fff;border-radius:24px;box-shadow:var(--shadow-soft)}
.product-card{overflow:hidden}
.product-card__image-wrap{display:block;position:relative;padding:14px 14px 0}
.product-card__image{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:20px;background:#f5f5f6}
.product-badge{position:absolute;top:24px;left:24px;background:rgba(53,43,43,.92);color:#fff;padding:6px 10px;border-radius:999px;font-size:.75rem;font-weight:700}
.product-card__body{padding:12px 14px 14px}
.rating-line{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem;flex-wrap:wrap}
.stars{display:inline-flex;gap:2px;color:#ffb320}
.stars svg{width:14px;height:14px}
.product-card h3{margin:8px 0 6px;font-size:1rem;line-height:1.2}
.product-card p,.product-description{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}
.product-card__footer{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:12px}
.product-card__actions{display:flex;gap:8px;align-items:center}
.product-price{font-size:1.06rem;color:var(--secondary)}
.product-price-lg{font-size:1.8rem;color:var(--secondary)}
.product-compare{display:block;color:#b0b2ba;text-decoration:line-through;margin-top:3px}
.btn{border:0;border-radius:16px;padding:12px 18px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn-sm{padding:9px 12px;border-radius:12px;font-size:.84rem}
.btn-lg{padding:14px 20px}
.btn-block{width:100%}
.btn-primary{background:var(--primary);color:#fff}
.btn-ghost{background:#f5f6fb;color:var(--secondary)}
.loading-state{padding:30px;text-align:center;color:var(--muted)}
.modal{position:fixed;inset:0;z-index:60}
.modal[hidden]{display:none}
.modal__backdrop{position:absolute;inset:0;background:rgba(16,16,22,.45);backdrop-filter:blur(8px)}
.modal__dialog{position:relative;background:#fff;max-width:680px;margin:48px auto 0;border-radius:28px;box-shadow:var(--shadow);max-height:calc(100vh - 72px);overflow:auto}
.modal__dialog--sheet{padding:24px 18px 22px}
.modal__dialog--location{padding:24px 18px 22px}
.modal__content{padding-top:16px}
.modal__close{position:sticky;top:0;left:calc(100% - 46px);margin-left:auto;z-index:2}
.quick-view__image{width:100%;max-height:280px;object-fit:cover;border-radius:24px;background:#f5f5f7;margin-bottom:16px}
.bottom-nav{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);width:min(680px,calc(100% - 24px));background:#fff;border-radius:28px;padding:12px 18px;display:grid;grid-template-columns:1fr 1fr auto 1fr 1fr;align-items:center;box-shadow:0 16px 40px rgba(0,0,0,.12);z-index:55}
.bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:5px;color:#90939c;font-size:.74rem;background:none;border:0}
.bottom-nav__item.is-active{color:var(--primary);font-weight:700}
.bottom-nav__center{width:66px;height:66px;border-radius:22px;background:var(--primary);color:#fff;display:grid;place-items:center;position:relative;margin-top:-28px;box-shadow:0 16px 28px rgba(245,46,64,.35)}
.cart-count{position:absolute;top:8px;right:8px;min-width:20px;height:20px;border-radius:999px;background:#fff;color:var(--primary);font-size:.72rem;display:grid;place-items:center;font-weight:800;padding:0 4px}
.bottom-nav .nav-icon{display:grid;place-items:center}
.bottom-nav svg{width:22px;height:22px}
.product-screen,.cart-screen,.checkout-screen,.profile-screen{display:grid;gap:16px}
.product-hero-card{background:#fff;border-radius:28px;padding:16px;box-shadow:var(--shadow-soft)}
.product-hero-card__image img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:22px;background:#f5f5f7}
.product-hero-card__body{padding:12px 4px 2px}
.product-hero-card h1{margin:10px 0 8px;font-size:1.75rem;line-height:1.08}
.product-hero-card__price-row{display:flex;align-items:flex-end;gap:12px;margin-top:14px}
.product-form{padding:18px}
.product-section{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}
.product-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.product-section h2{margin:0 0 12px;font-size:1.02rem}
.option-list,.addon-list,.stack-list{display:grid;gap:10px}
.choice-card,.addon-card,.pickup-card,.list-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}
.choice-card input,.addon-card input,.pickup-card input{margin-top:2px}
.choice-card span,.addon-card span{display:flex;flex-direction:column;gap:3px}
.choice-card small,.addon-card strong,.muted-note,.list-card small{color:var(--muted)}
.textarea,.input,.select{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px 14px;background:#fff;outline:none}
.input:focus,.textarea:focus,.select:focus{border-color:rgba(245,46,64,.45);box-shadow:0 0 0 4px rgba(245,46,64,.08)}
.form-grid{display:grid;gap:14px}
.form-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-group label{display:block;margin-bottom:7px;font-size:.9rem;font-weight:700}
.error-text{display:block;color:var(--danger);margin-top:6px;font-size:.78rem}
.qty-panel{display:flex;justify-content:space-between;align-items:center;gap:12px}
.qty-panel p{margin:4px 0 0;color:var(--muted);font-size:.88rem}
.qty-control{display:inline-flex;align-items:center;gap:8px;background:#f4f5f9;padding:6px;border-radius:16px}
.qty-control--small{padding:4px}
.qty-btn{width:38px;height:38px;border:0;border-radius:12px;background:#fff;color:var(--secondary);font-size:1.25rem;box-shadow:var(--shadow-soft);cursor:pointer}
.qty-input{width:46px;border:0;background:transparent;text-align:center;font-weight:700;outline:none}
.sticky-action-bar{position:sticky;bottom:88px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;background:#fff;border-radius:22px;box-shadow:var(--shadow)}
.product-total-label{display:block;font-size:1.32rem;margin-top:3px}
.cart-list{display:grid;gap:14px}
.cart-item{display:grid;grid-template-columns:92px 1fr;gap:14px;padding:12px}
.cart-item__media img{width:92px;height:92px;border-radius:18px;object-fit:cover;background:#f5f5f6}
.cart-item__top{display:flex;justify-content:space-between;gap:12px}
.cart-item__top h3{margin:0 0 4px;font-size:1rem}
.cart-item__top small{display:block;color:var(--muted);margin-top:3px}
.cart-item__bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.trash-btn{color:var(--danger)}
.order-summary{padding:18px}
.order-summary h2{margin:0 0 14px}
.summary-line{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.summary-line:last-of-type{border-bottom:0}
.summary-line--total{font-size:1.1rem;font-weight:800}
.order-summary__actions{display:flex;gap:12px;margin-top:18px}
.checkout-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.checkout-form{padding:18px}
.checkout-line-item{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}
.order-summary--sticky{position:sticky;top:110px;align-self:start}
.auth-wrap{padding:40px 0}.container{max-width:560px;margin:0 auto;padding:0 16px}.auth-card{padding:28px}.auth-card h1{margin:8px 0}.lead{color:var(--muted)}
.password-field{position:relative}.password-field .input{padding-right:54px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--muted);cursor:pointer}
.profile-hero{display:flex;align-items:center;gap:16px;padding:20px}.profile-avatar{width:72px;height:72px;border-radius:24px;overflow:hidden;background:#ffe4e8;color:var(--primary);display:grid;place-items:center;font-size:1.9rem;font-weight:800}.profile-avatar img{width:100%;height:100%;object-fit:cover}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-grid.single{grid-template-columns:1fr}.tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#ffe7ea;color:var(--primary);font-size:.72rem;font-weight:700}.list-card--column{align-items:flex-start;flex-direction:column}.row-actions{display:flex;gap:10px;flex-wrap:wrap}
.segmented-control{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:6px;background:#f0f1f7;border-radius:20px}
.segment{border:0;background:transparent;border-radius:16px;padding:12px 14px;text-align:center;font-weight:700;color:var(--muted);cursor:pointer;text-decoration:none}
.segment.is-active,.segment input:checked + span{background:var(--secondary);color:#fff;box-shadow:var(--shadow-soft)}
.segmented-control--inside{padding:4px}.choice-card-mini{padding:0;overflow:hidden}.choice-card-mini input{display:none}.choice-card-mini span{display:block;padding:12px 14px}
.location-modal__header h2{margin:4px 0 6px}.location-modal__header p{margin:0;color:var(--muted)}
.location-form{display:grid;gap:14px;margin-top:18px}.location-pane{display:none}.location-pane.is-active{display:grid;gap:14px}.location-map-card,.location-summary-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#f5f6fb;border-radius:20px}.location-map-card p,.location-summary-card p{margin:4px 0 0;color:var(--muted)}
.location-map-card__pin{width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,#ff7c8a,#f52e40);position:relative;box-shadow:var(--shadow-soft)}
.location-map-card__pin::after{content:"";position:absolute;width:14px;height:14px;border-radius:999px;background:#fff;left:50%;top:50%;transform:translate(-50%,-50%)}
.pickup-list{display:grid;gap:12px}.pickup-card__tag{padding:7px 10px;border-radius:999px;background:#e9f6ee;color:#15703f;font-size:.75rem;font-weight:700}
.empty-state{padding:28px;text-align:center}.empty-state h2{margin-top:0}
.overlay-search-form{margin-bottom:16px}.toast{position:fixed;left:50%;bottom:106px;transform:translate(-50%,18px);background:#1d1e22;color:#fff;padding:12px 16px;border-radius:999px;box-shadow:var(--shadow);opacity:0;transition:all .25s ease;z-index:90}.toast.is-visible{opacity:1;transform:translate(-50%,0)}
.help-link{color:var(--primary);font-weight:700}
@media (max-width:740px){
  .hero-banner__copy{max-width:100%}
  .checkout-grid,.profile-grid{grid-template-columns:1fr}
}
@media (max-width:560px){
  .product-grid{grid-template-columns:1fr 1fr}
  .form-grid.cols-2{grid-template-columns:1fr}
  .modal__dialog{margin:24px 10px 0}
  .order-summary__actions,.row-actions{flex-direction:column}
  .sticky-action-bar{bottom:94px}
}
@media (max-width:420px){
  .product-grid{grid-template-columns:1fr}
  .bottom-nav{padding:10px 10px 12px}
  .bottom-nav__center{width:60px;height:60px}
  .bottom-nav__item{font-size:.69rem}
}

/* =========================================================
   Ajuste responsive tienda V3 - mobile fijo + desktop web
   ========================================================= */
body[class*="page-"]{overflow-x:hidden;max-width:100%;width:100%;overscroll-behavior-x:none}
body[class*="page-"] .app-shell{width:100%;max-width:100%;overflow-x:clip}
.mobile-header{display:block}
.desktop-header,.desktop-footer{display:none}

/* Mobile: header totalmente fijo y estable */
@media (max-width:899px){
  body[class*="page-"]{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}
  .app-header{
    position:fixed;
    z-index:70;
    top:0;left:0;right:0;
    width:100%;
    padding:0;
    background:rgba(246,246,248,.98);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(232,232,239,.88);
    transform:translateZ(0);
    will-change:transform;
  }
  .mobile-header{
    width:100%;
    max-width:720px;
    margin:0 auto;
    padding:max(10px,env(safe-area-inset-top,0px)) 14px 10px;
  }
  .mobile-topbar{
    display:grid;
    grid-template-columns:44px minmax(0,1fr) 44px;
    align-items:center;
    gap:8px;
    min-width:0;
  }
  .mobile-topbar__spacer{width:44px;height:44px}
  .mobile-brand{min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center}
  .mobile-brand__logo{width:36px;height:36px;border-radius:12px;object-fit:cover;flex:0 0 auto;box-shadow:var(--shadow-soft)}
  .mobile-brand span{min-width:0;display:flex;flex-direction:column;align-items:center}
  .mobile-brand strong{max-width:100%;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-brand__subtitle{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mobile-back,.mobile-top-location{width:44px;height:44px}
  .app-search-wrap{margin-top:9px;min-width:0}
  .search-form{width:100%;min-width:0}
  .search-input{width:100%;min-width:0}
  .search-filter-btn{flex:0 0 42px}
  .location-pill{margin-top:7px;padding:9px 12px;min-width:0}
  .location-pill__text{min-width:0}
  .is-home-page .page-content{padding-top:164px}
  .is-inner-page .page-content{padding-top:78px}

  /* Al bajar: solo nombre + buscador + ubicación dentro del buscador */
  body.is-scrolled .mobile-header{padding-top:max(7px,env(safe-area-inset-top,0px));padding-bottom:8px}
  body.is-scrolled .mobile-brand__logo,
  body.is-scrolled .mobile-brand__subtitle,
  body.is-scrolled .mobile-top-location,
  body.is-scrolled .location-pill{display:none!important}
  body.is-scrolled .mobile-topbar{grid-template-columns:44px minmax(0,1fr) 44px}
  body.is-scrolled.is-home-page .mobile-topbar__spacer{display:block}
  body.is-scrolled .app-search-wrap{margin-top:6px}

  /* Navegación fija, centrada y sin movimiento horizontal */
  .bottom-nav{
    position:fixed!important;
    z-index:80;
    left:50%!important;
    right:auto!important;
    bottom:max(10px,env(safe-area-inset-bottom,0px))!important;
    transform:translate3d(-50%,0,0)!important;
    width:calc(100vw - 20px)!important;
    max-width:680px!important;
    min-width:0;
    margin:0!important;
    padding:10px 10px 11px;
    border-radius:26px;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 62px minmax(0,1fr) minmax(0,1fr);
    contain:layout;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
  .bottom-nav__item{min-width:0;padding:0 2px}
  .bottom-nav__item span:last-child{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bottom-nav__center{width:60px;height:60px;margin-top:-27px;border-radius:21px}

  /* Siempre dos productos por fila en celular */
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
  .product-card{min-width:0}
  .product-card__image-wrap{padding:9px 9px 0}
  .product-card__image{border-radius:15px}
  .product-badge{top:15px;left:15px;padding:5px 7px;font-size:.63rem}
  .product-card__body{padding:9px 9px 11px;min-width:0}
  .product-card h3{font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .product-card p{font-size:.78rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .rating-line{font-size:.7rem;gap:3px}
  .stars svg{width:11px;height:11px}
  .product-card__footer{flex-direction:column;align-items:stretch;gap:7px;margin-top:9px}
  .product-card__actions{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:5px;width:100%}
  .product-card__actions .btn{padding:8px 5px;font-size:.7rem;min-width:0;white-space:nowrap}
  .product-price{font-size:.95rem}
  .hero-carousel,.category-strip,.section-headline,.product-grid,.product-screen,.cart-screen,.checkout-screen,.profile-screen{max-width:100%;min-width:0}
  .hero-banner{min-width:100%;max-width:100%}
  .modal__dialog{width:calc(100vw - 20px);max-width:680px;margin:20px auto 0}
  .qty-panel{min-width:0}
  .qty-control{flex:0 0 auto}
}

/* Desktop/tablet: apariencia de ecommerce web completa */
@media (min-width:900px){
  body[class*="page-"]{padding-bottom:0;background:#f7f7f9}
  .app-shell{max-width:none!important;overflow:visible!important}
  .mobile-header,.bottom-nav{display:none!important}
  .desktop-header,.desktop-footer{display:block}
  .app-header{
    position:sticky;
    top:0;
    z-index:60;
    padding:0;
    background:rgba(255,255,255,.97);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .desktop-header__inner{
    width:min(100% - 48px,1280px);
    min-height:78px;
    margin:0 auto;
    display:flex;
    align-items:center;
    gap:16px;
  }
  .desktop-brand{display:flex;align-items:center;gap:10px;min-width:190px}
  .desktop-brand img{width:44px;height:44px;border-radius:13px;object-fit:cover;background:#fff;box-shadow:var(--shadow-soft)}
  .desktop-brand span{display:flex;flex-direction:column}
  .desktop-brand strong{font-size:1rem;white-space:nowrap}
  .desktop-brand small{font-size:.72rem;color:var(--muted)}
  .desktop-search{position:relative;display:flex;align-items:center;flex:1;max-width:620px;background:#f5f6f9;border:1px solid #ececf1;border-radius:17px;padding:4px 10px}
  .desktop-search .search-input{padding:11px 4px}
  .desktop-search-results{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:65}
  .desktop-action,.desktop-cart{border:0;background:transparent;display:flex;align-items:center;gap:7px;padding:10px 11px;border-radius:13px;color:var(--secondary);font-size:.84rem;font-weight:700;white-space:nowrap;cursor:pointer}
  .desktop-action:hover,.desktop-cart:hover{background:#f6f6f8}
  .desktop-action svg,.desktop-cart svg{width:21px;height:21px}
  .desktop-cart{position:relative;background:var(--secondary);color:#fff;padding-inline:14px}
  .desktop-cart-count{min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:.7rem}
  .desktop-cart-count.is-empty{background:rgba(255,255,255,.2)}

  .page-content{width:min(100% - 48px,1280px);margin:0 auto;padding:28px 0 54px}
  .home-screen,.product-screen,.cart-screen,.checkout-screen,.profile-screen{width:100%;max-width:none}
  .hero-banner{min-height:310px;padding:42px 38px}
  .hero-banner__copy{max-width:52%}
  .hero-banner h2{font-size:2.6rem}
  .category-strip{padding-top:22px}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .product-card{transition:transform .2s ease,box-shadow .2s ease}
  .product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
  .product-card__image{aspect-ratio:4/3;object-fit:cover}
  .product-screen{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:start;gap:24px}
  .product-form{position:relative}
  .sticky-action-bar{bottom:18px}
  .cart-screen{grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}
  .cart-screen>.section-headline{grid-column:1/-1}
  .cart-screen>.cart-list{grid-column:1}
  .cart-screen>.order-summary{grid-column:2;position:sticky;top:100px}
  .checkout-grid{grid-template-columns:minmax(0,1fr) 390px;gap:22px}
  .profile-grid{grid-template-columns:1fr 1fr}
  .profile-grid.single{grid-template-columns:1fr}
  .modal__dialog--sheet{max-width:760px}
  .modal__dialog--location{max-width:860px}

  .desktop-footer{margin-top:24px;background:#0d0d0f;color:#fff}
  .desktop-footer__social{min-height:72px;background:var(--primary);display:flex;align-items:center;justify-content:center;gap:14px;font-weight:800}
  .desktop-footer__social a{width:38px;height:38px;border-radius:50%;background:#fff;color:#111;display:grid;place-items:center}
  .desktop-footer__social svg{width:22px;height:22px}
  .desktop-footer__main{width:min(100% - 48px,1280px);margin:0 auto;padding:42px 0 20px}
  .desktop-footer__grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.45fr;gap:38px}
  .desktop-footer h3{margin:0 0 16px;font-size:1rem}
  .desktop-footer p,.desktop-footer a{color:#d6d6da;font-size:.9rem;line-height:1.5}
  .desktop-footer section>a{display:block;margin:0 0 11px}
  .desktop-footer section>a:hover{color:#fff}
  .footer-contact{display:flex;gap:8px;align-items:center}
  .footer-contact svg{width:20px;height:20px;flex:0 0 auto}
  .footer-newsletter__form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:14px}
  .footer-newsletter .input{background:#161619;border-color:#36363b;color:#fff}
  .desktop-footer__bottom{border-top:1px solid #2a2a2f;margin-top:32px;padding-top:20px;display:flex;gap:12px;align-items:center;color:#bdbdc3;font-size:.85rem}
}

@media (min-width:1180px){
  .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* En tablet horizontal mantenemos proporciones sin estirar */
@media (min-width:900px) and (max-width:1100px){
  .desktop-header__inner{width:min(100% - 28px,1040px);gap:9px}
  .desktop-action span{display:none}
  .page-content{width:min(100% - 32px,1040px)}
  .desktop-footer__main{width:min(100% - 32px,1040px)}
  .desktop-footer__grid{grid-template-columns:1fr 1fr 1fr}
  .footer-newsletter{grid-column:1/-1}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

.profile-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.info-card{padding:18px;display:flex;align-items:flex-start;gap:14px}
.info-card h2{margin:0 0 6px}.info-card p{margin:0;color:var(--muted)}
.info-card__icon{width:42px;height:42px;border-radius:14px;background:#ffe5e9;color:var(--primary);display:grid;place-items:center;font-weight:900;flex:0 0 auto}
.mobile-info-grid{display:grid;gap:12px}
.mobile-info-card{padding:17px}
.mobile-info-card h3{margin:0 0 12px}
.mobile-info-card p{color:var(--muted);line-height:1.5}
.mobile-info-card>a{display:block;padding:9px 0;border-bottom:1px solid var(--line);color:var(--secondary)}
.mobile-info-card>a:last-child{border-bottom:0}
@media (min-width:900px){
  .mobile-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .desktop-search-results.search-suggestions{top:calc(100% + 8px);left:0;right:0}
}
@media (max-width:899px){
  .is-inner-page .page-content{padding-top:132px}
  body.is-scrolled .mobile-back{visibility:hidden}
}

.hero-carousel{position:relative}

/* =========================================================
   Hotfix V4 - quick view, carrusel desktop, relacionados y avatar
   ========================================================= */
.modal{z-index:1000!important}
.modal__backdrop{z-index:0}
.modal__dialog{z-index:1}
.modal__close{z-index:3}
.toast{z-index:1100!important}

.hero-carousel__arrow{display:none;position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.96);color:var(--secondary);font-size:2rem;line-height:1;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.16);cursor:pointer;transition:transform .18s ease,background .18s ease}
.hero-carousel__arrow:hover{background:#fff;transform:translateY(-50%) scale(1.06)}
.hero-carousel__arrow--prev{left:18px}
.hero-carousel__arrow--next{right:18px}

.related-products-section{grid-column:1/-1;margin-top:8px;min-width:0}
.related-products-section .section-headline{margin-bottom:14px}
.related-products-grid{width:100%}
.related-card{border-radius:30px}.related-card .product-card__image-wrap{padding:16px 16px 0}.related-card .product-card__image{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:24px}.related-card .product-card__body{min-height:auto;display:flex;flex-direction:column;gap:5px;padding:12px 18px 16px}.related-card .product-card__body h3{margin:0}.related-card .product-card__footer{margin-top:4px;align-items:flex-start}

.avatar-upload-card{display:flex;align-items:center;gap:16px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fafafd}
.avatar-upload-preview{width:76px;height:76px;border-radius:22px;overflow:hidden;background:#ffe4e8;color:var(--primary);display:grid;place-items:center;font-weight:800;font-size:1.7rem;flex:0 0 auto}
.avatar-upload-preview img{width:100%;height:100%;object-fit:cover}
.avatar-upload-copy{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.avatar-upload-copy small{color:var(--muted);font-size:.78rem}
.avatar-file-button{margin-top:5px;cursor:pointer}

@media (min-width:900px){
  .hero-carousel__arrow{display:flex}
  .related-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1180px){
  .related-products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:899px){
  .related-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .avatar-upload-card{align-items:flex-start}
  .modal__dialog{max-height:calc(100dvh - 18px);margin:9px auto 0}
}

/* =========================================================
   Correcciones V5 - búsqueda, ubicación, carrito, pedido
   ========================================================= */
.search-suggestions{z-index:115!important;overflow:hidden}
.search-suggestion{align-items:flex-start;gap:12px;padding:11px 12px;border-bottom:1px solid var(--line)}
.search-suggestion:last-child{border-bottom:0}
.search-suggestion img{width:64px;height:64px;flex:0 0 64px;object-fit:cover}
.search-suggestion__copy{min-width:0;flex:1}
.search-suggestion__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.search-suggestion__head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-suggestion__head span{color:var(--primary);font-weight:850;white-space:nowrap;font-size:.86rem}
.search-suggestion p{margin:4px 0 5px;color:var(--muted);font-size:.78rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.search-suggestion small{display:block;color:#92949c;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-empty{padding:16px;color:var(--muted);font-size:.86rem;text-align:center}

/* Ubicación: icono mapa, sin punto rojo decorativo */
.location-map-card__pin{background:#fff!important;color:var(--primary)!important;border:1px solid #ffd6dc;box-shadow:0 8px 20px rgba(245,46,64,.12)!important;display:grid!important;place-items:center!important}
.location-map-card__pin::after{display:none!important}
.location-map-card__pin svg{width:25px;height:25px}
.address-autocomplete{position:relative}
.address-suggestions{display:none;position:absolute;top:calc(100% + 7px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 36px rgba(20,20,26,.14);overflow:hidden;z-index:25;max-height:310px;overflow-y:auto}
.address-suggestions.is-visible{display:block}
.address-suggestion{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:12px 14px;display:flex;align-items:flex-start;gap:12px;text-align:left;cursor:pointer}
.address-suggestion:last-child{border-bottom:0}
.address-suggestion:hover{background:#fafafd}
.address-suggestion__icon{width:34px;height:34px;border-radius:12px;background:#fff1f3;color:var(--primary);display:grid;place-items:center;flex:0 0 34px}
.address-suggestion__icon svg{width:19px;height:19px}
.address-suggestion span:last-child{min-width:0;display:flex;flex-direction:column;gap:3px}
.address-suggestion strong{font-size:.9rem;line-height:1.25}
.address-suggestion small{font-size:.76rem;color:var(--muted);line-height:1.3}
.address-empty{padding:14px;color:var(--muted);font-size:.84rem}

/* Etiquetas distintas solo en desktop */
.label-desktop{display:none}
.label-mobile{display:inline}

/* Pedido final ordenado */
.order-detail-screen{display:grid;gap:18px;width:100%;min-width:0}
.order-hero{padding:22px;display:flex;align-items:flex-start;gap:16px}
.order-hero__check{width:54px;height:54px;flex:0 0 54px;border-radius:18px;background:#eafaf1;color:#16804b;display:grid;place-items:center}
.order-hero__check svg{width:28px;height:28px}
.order-hero__copy{min-width:0}
.order-hero__copy h1{margin:4px 0 8px;font-size:clamp(1.45rem,5vw,2.2rem);line-height:1.08;overflow-wrap:anywhere}
.order-hero__copy p{margin:0;color:var(--muted);line-height:1.55}
.order-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.status-badge{display:inline-flex;align-items:center;min-height:32px;padding:6px 11px;border-radius:999px;font-size:.78rem;font-weight:800}
.status-badge--order{background:#fff1d9;color:#8b5d00}
.status-badge--payment{background:#edf2ff;color:#3953a4}
.order-detail-grid{display:grid;gap:16px}
.order-items-card,.order-meta-card{padding:20px}
.order-section-title h2,.order-meta-card h2{margin:4px 0 14px;font-size:1.15rem}
.order-items-list{display:grid}
.order-item-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}
.order-item-row__copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.order-item-row__copy small{color:var(--muted)}
.order-total-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;font-size:1.08rem}
.order-total-row strong{font-size:1.28rem}
.order-meta-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.order-meta-line span{color:var(--muted)}
.order-meta-line--stack{align-items:flex-start;flex-direction:column}
.order-meta-line--stack strong{font-size:.92rem;line-height:1.45}
.order-meta-card .btn{margin-top:18px}

@media (min-width:900px){
  .hero-banner{padding-left:94px!important;padding-right:94px!important}
  .hero-banner__copy{max-width:55%!important}
  .hero-carousel__arrow svg{width:24px;height:24px;display:block;pointer-events:none}
  .hero-carousel__arrow{font-size:0!important;padding:0!important}
  .label-mobile{display:none}
  .label-desktop{display:inline}
  .order-detail-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start}
  .order-meta-card{position:sticky;top:100px}
}

@media (max-width:899px){
  .mobile-topbar{grid-template-columns:44px minmax(0,1fr) 44px!important}
  .location-map-card{align-items:flex-start;flex-wrap:wrap}
  .location-map-card>div:nth-child(2){flex:1;min-width:180px}
  .location-map-card .btn{width:100%}
  .search-suggestion img{width:56px;height:56px;flex-basis:56px}
  .order-hero{padding:18px;gap:12px}
  .order-hero__check{width:46px;height:46px;flex-basis:46px;border-radius:15px}
  .order-items-card,.order-meta-card{padding:17px}
}

/* ===== V6 · catálogo, checkout y administración ===== */
.category-chip{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer}.category-chip__icon{width:24px;height:24px;display:grid;place-items:center}.category-chip__icon svg{width:22px;height:22px}.category-results[hidden],.checkout-step-panel:not(.is-active),[hidden]{display:none!important}.section-subtitle{margin:5px 0 0;color:var(--muted);font-size:.92rem}.section-more{text-align:center;margin:14px 0 24px}.section-more a{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-weight:800;padding:10px 16px;border-radius:999px;background:var(--primary-soft,#fff0f2)}
.hero-banner__copy{padding-left:18px}.hero-carousel__arrow{display:flex!important;align-items:center!important;justify-content:center!important}.hero-carousel__arrow svg{display:block;width:22px;height:22px;flex:none}
.product-carousel{position:relative}.product-carousel__viewport{overflow:hidden;padding:4px}.product-carousel__track{display:flex;gap:14px;transition:transform .55s cubic-bezier(.2,.75,.25,1);will-change:transform}.product-carousel__item{flex:0 0 calc((100% - 14px)/2);min-width:0}.product-carousel__item .product-card{height:100%}.product-carousel__arrow{display:none;position:absolute;z-index:5;top:44%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:#fff;color:var(--secondary);box-shadow:0 12px 28px rgba(0,0,0,.16);align-items:center;justify-content:center;cursor:pointer}.product-carousel__arrow svg{width:22px;height:22px}.product-carousel__arrow--prev{left:-20px}.product-carousel__arrow--next{right:-20px}
.cart-added{animation:cartPulse .85s cubic-bezier(.2,.8,.2,1)}@keyframes cartPulse{0%{transform:scale(1)}28%{transform:scale(1.16) rotate(-4deg);box-shadow:0 0 0 0 rgba(245,46,64,.35)}55%{transform:scale(.96) rotate(2deg);box-shadow:0 0 0 14px rgba(245,46,64,0)}100%{transform:scale(1)}}.cart-fly-dot{position:fixed;width:18px;height:18px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 7px rgba(245,46,64,.14),0 8px 18px rgba(245,46,64,.35);z-index:9999;pointer-events:none}
.desktop-cart:hover,.desktop-cart:focus{background:var(--secondary)!important;color:#fff!important;border-color:var(--secondary)!important}.desktop-cart:hover svg,.desktop-cart:focus svg{color:#fff!important}

/* Checkout stepper */
.checkout-stepper{padding:22px}.stepper-head{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;margin-bottom:26px}.stepper-step{border:0;background:none;color:#9a9ca5;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:.78rem;cursor:pointer}.stepper-step span{width:34px;height:34px;border-radius:50%;background:#eceef4;display:grid;place-items:center;font-weight:900}.stepper-step.is-active{color:var(--primary)}.stepper-step.is-active span{background:var(--primary);color:#fff;box-shadow:0 8px 20px rgba(245,46,64,.25)}.stepper-line{height:2px;background:#e8e9ef}.step-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.step-title>span{width:44px;height:44px;border-radius:15px;background:#fff1f3;color:var(--primary);display:grid;place-items:center;font-weight:900}.step-title h2{margin:0 0 4px}.step-title p{margin:0;color:var(--muted)}.step-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.step-actions--end{justify-content:flex-end}.input-action{display:flex;gap:9px}.input-action .input{flex:1}.coupon-feedback{display:block;margin-top:7px;color:var(--danger)}.coupon-feedback.is-success{color:var(--success)}.consent-card{display:flex;align-items:flex-start;gap:10px;padding:14px;border-radius:16px;background:#f7f8fb;color:#595b65}.consent-card a{color:var(--primary);font-weight:700;text-decoration:underline}.delivery-method-cards,.payment-method-grid,.receipt-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.delivery-method-card,.payment-method-card,.receipt-card{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:18px;padding:15px;background:#fff;cursor:pointer;position:relative}.delivery-method-card:has(input:checked),.payment-method-card:has(input:checked),.receipt-card:has(input:checked){border-color:var(--primary);box-shadow:0 0 0 3px rgba(245,46,64,.08);background:#fffafb}.delivery-method-card input,.payment-method-card input,.receipt-card input{position:absolute;opacity:0}.delivery-method-card__icon,.payment-icon{width:42px;height:42px;border-radius:14px;background:#f3f4f8;display:grid;place-items:center;font-weight:900;flex:none}.delivery-method-card__icon svg{width:23px;height:23px}.payment-icon--yape{background:#742284;color:#fff}.delivery-method-card strong,.payment-method-card strong,.receipt-card strong{display:block}.delivery-method-card small,.payment-method-card small,.receipt-card small{display:block;color:var(--muted);margin-top:3px}.location-inline-card{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f6f7fb;border-radius:18px;padding:14px;margin-bottom:14px}.location-inline-card p{margin:4px 0 0;color:var(--muted)}.pickup-checkout-list{display:grid;gap:10px}.pickup-checkout-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:18px;padding:15px;cursor:pointer}.pickup-checkout-card input{position:absolute;opacity:0}.pickup-checkout-card:has(input:checked){border-color:var(--primary);background:#fffafb;box-shadow:0 0 0 3px rgba(245,46,64,.08)}.pickup-checkout-card small{display:block;color:var(--muted);margin-top:4px}.pickup-check{width:30px;height:30px;border-radius:50%;background:#eef0f5;color:#b1b3bc;display:grid;place-items:center;font-weight:900}.pickup-checkout-card:has(input:checked) .pickup-check{background:var(--primary);color:#fff}.checkout-subtitle{font-size:1rem;margin:20px 0 10px}.conditional-payment{margin:10px 0 16px}
.receipt-summary{align-self:start;position:sticky;top:110px}.receipt-paper{background:#fffef9;color:#292a2f;border-radius:10px;padding:26px 22px;box-shadow:0 14px 35px rgba(0,0,0,.09);position:relative;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.receipt-paper:before,.receipt-paper:after{content:"";position:absolute;left:0;right:0;height:12px;background:radial-gradient(circle at 6px 0,transparent 6px,#fffef9 6.5px) repeat-x;background-size:12px 12px}.receipt-paper:before{top:-6px;transform:rotate(180deg)}.receipt-paper:after{bottom:-6px}.receipt-head{text-align:center;display:grid;gap:4px}.receipt-head strong{font-size:1.15rem}.receipt-head small,.receipt-foot small{color:#7b7a72}.receipt-head span{color:#c8c7bf;letter-spacing:1px}.receipt-items{margin:18px 0}.receipt-item,.receipt-row,.receipt-total{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:.86rem}.receipt-divider{border-top:1px dashed #b9b8b1;margin:8px 0}.receipt-total{font-size:1.08rem;font-weight:900}.receipt-foot{display:grid;text-align:center;gap:8px;margin-top:18px}.receipt-foot span{font-weight:800}

/* Admin / Superadmin */
.admin-body{margin:0;background:#f4f5f8;color:#24252a;min-height:100vh;padding-bottom:0}.admin-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;height:100vh;background:#1f2025;color:#fff;padding:20px 16px;display:flex;flex-direction:column;z-index:80}.admin-brand{display:flex;align-items:center;gap:12px;padding:6px 8px 20px}.admin-brand .brand-mark{width:40px;height:40px;border-radius:14px;background:var(--primary,#f52e40);display:grid;place-items:center;font-weight:900}.admin-brand span:last-child{display:flex;flex-direction:column}.admin-brand small{color:#a8abb4;font-size:.72rem;margin-top:2px}.admin-nav{display:grid;gap:5px}.admin-nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:13px;color:#c8cad1;font-size:.91rem;font-weight:650}.admin-nav a:hover,.admin-nav a.active{background:#32343b;color:#fff}.admin-nav__icon{width:22px;height:22px;display:grid;place-items:center}.admin-nav__icon svg{width:21px;height:21px}.admin-logout{margin-top:auto;padding-top:20px}.admin-main{min-width:0}.admin-top{height:74px;background:#fff;border-bottom:1px solid #e5e7ed;display:flex;align-items:center;gap:14px;padding:0 24px;position:sticky;top:0;z-index:50}.admin-top .icon-btn{display:none}.admin-top h1{margin:2px 0 0;font-size:1.25rem}.admin-top small{color:var(--muted)}.admin-user-chip{margin-left:auto;padding:9px 12px;border-radius:999px;background:#f3f4f8;font-size:.82rem;font-weight:700}.admin-content{padding:24px;max-width:1500px;width:100%;margin:0 auto}.admin-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px}.admin-page-head h2{margin:4px 0;font-size:1.75rem}.admin-page-head p{margin:0;color:var(--muted)}.admin-kicker{font-size:.74rem;font-weight:850;color:var(--primary);text-transform:uppercase;letter-spacing:.08em}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card{background:#fff;border-radius:20px;padding:18px;border:1px solid #eceef3;box-shadow:0 8px 22px rgba(20,20,30,.04);position:relative}.stat-card .stat-icon{width:38px;height:38px;border-radius:12px;background:#fff0f2;color:var(--primary);display:grid;place-items:center;font-weight:900;margin-bottom:15px}.stat-card small{display:block;color:var(--muted)}.stat-card strong{display:block;font-size:1.55rem;margin-top:4px}.stat-card em{display:block;color:#a1a3ab;font-size:.74rem;font-style:normal;margin-top:6px}.admin-grid{display:grid;gap:16px}.admin-grid.two{grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr)}.admin-card{padding:18px;border:1px solid #eceef3;box-shadow:0 8px 22px rgba(20,20,30,.04)}.admin-section-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:15px}.admin-section-title h3{margin:0 0 4px}.admin-section-title p{margin:0;color:var(--muted);font-size:.84rem}.table-wrap{overflow:auto;border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:12px 13px;text-align:left;border-bottom:1px solid #eceef3;white-space:nowrap}.table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#8b8e98;background:#fafbfc}.table td{font-size:.87rem}.stock-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eceef3}.status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eff1f5;font-size:.72rem;font-weight:800}.status.active,.status.confirmed,.status.delivered,.status.paid{background:#e7f7ed;color:#157043}.status.inactive,.status.cancelled,.status.suspended,.status.rejected{background:#ffebee;color:#a5263a}.status.payment_pending,.status.pending{background:#fff5dc;color:#8a6100}.admin-config-block{padding:16px 0;border-top:1px solid #eceef3}.admin-config-block:first-of-type{border-top:0}.admin-multi{min-height:150px;padding:8px}.admin-switch-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #eceef3}.admin-switch-row span{display:grid;gap:3px}.admin-switch-row small{color:var(--muted)}.admin-switch-row input{width:42px;height:22px;accent-color:var(--primary)}.admin-category-config{align-items:center;padding:9px 0;border-bottom:1px solid #eceef3}.admin-category-config small{display:block;color:var(--muted)}.table-actions{display:flex;gap:7px;align-items:center}.feature-badges{display:flex;gap:5px;flex-wrap:wrap}.feature-badges span{padding:4px 7px;background:#f1f2f6;border-radius:999px;font-size:.68rem}dialog{border:0;border-radius:22px;padding:0;box-shadow:0 30px 80px rgba(0,0,0,.22);width:min(620px,calc(100% - 24px))}dialog::backdrop{background:rgba(16,17,22,.5);backdrop-filter:blur(4px)}.modal-head,.modal-body,.modal-foot{padding:18px}.modal-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eceef3}.modal-head h3{margin:0}.modal-foot{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #eceef3}

@media (min-width:900px){
  .hero-banner__copy{padding-left:54px;max-width:62%}.product-carousel__arrow{display:flex}.product-carousel__item{flex-basis:calc((100% - 28px)/3)}
  .quick-view__image{width:100%;height:360px;max-height:360px;object-fit:contain!important;object-position:center;background:#fff;border-radius:22px}
  .modal__dialog--sheet{max-width:760px}.related-product-carousel .product-card__image{object-fit:cover;background:#f7f7f8;border-radius:24px}
}
@media (min-width:1200px){.product-carousel__item{flex-basis:calc((100% - 42px)/4)}}
@media (max-width:899px){
  .checkout-grid{grid-template-columns:1fr}.receipt-summary{position:static}.delivery-method-cards,.payment-method-grid,.receipt-options{grid-template-columns:1fr}.checkout-stepper{padding:16px}.stepper-step strong{font-size:.7rem}.product-carousel__item{flex-basis:calc((100% - 12px)/2)}
  .admin-shell{display:block}.admin-sidebar{position:fixed;left:0;top:0;bottom:0;width:270px;transform:translateX(-102%);transition:.25s ease}.admin-nav-open .admin-sidebar{transform:none}.drawer-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:70}.admin-nav-open .drawer-backdrop{display:block}.admin-top .icon-btn{display:grid}.admin-content{padding:16px}.stat-grid{grid-template-columns:repeat(2,1fr)}.admin-grid.two{grid-template-columns:1fr}.admin-page-head{align-items:flex-start;flex-direction:column}.admin-user-chip{display:none}
}
@media (max-width:520px){.stat-grid{grid-template-columns:1fr 1fr}.stepper-head{grid-template-columns:auto 1fr auto 1fr auto}.input-action{flex-direction:column}}
.payment-icon svg,.stat-icon svg{width:22px;height:22px}


/* V6 final responsive safeguards */
@media (max-width:899px){
  .hero-carousel__arrow{display:none!important}
  .product-carousel__arrow{display:none!important}
}
@media (min-width:900px){
  .hero-carousel__arrow{display:flex!important;align-items:center!important;justify-content:center!important}
  .product-carousel__arrow{display:flex}
  .quick-view__image{width:100%;height:360px;max-height:360px;object-fit:contain!important;object-position:center;background:#fff}
}
.desktop-cart:hover,.desktop-cart:focus,.desktop-cart:active{background:var(--secondary)!important;color:#fff!important}

/* ===== FIX V6.1 · Admin/Superadmin desktop content visibility ===== */
@media (min-width:900px){
  body.admin-body{
    overflow-x:hidden;
  }
  .admin-shell{
    display:flex!important;
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    align-items:stretch!important;
  }
  .admin-sidebar{
    position:sticky!important;
    top:0!important;
    left:auto!important;
    flex:0 0 260px!important;
    width:260px!important;
    min-width:260px!important;
    max-width:260px!important;
    height:100vh!important;
    transform:none!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .admin-main{
    position:relative!important;
    display:block!important;
    flex:1 1 auto!important;
    width:calc(100% - 260px)!important;
    min-width:0!important;
    max-width:calc(100% - 260px)!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    visibility:visible!important;
    opacity:1!important;
    overflow:visible!important;
  }
  .admin-top{
    width:100%!important;
    min-width:0!important;
  }
  .admin-content{
    display:block!important;
    width:100%!important;
    max-width:1500px!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:24px!important;
    visibility:visible!important;
    opacity:1!important;
    overflow:visible!important;
  }
  .admin-content > *{
    visibility:visible!important;
  }
  .admin-content .table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch;
  }
  .admin-content .table{
    width:100%!important;
    min-width:720px!important;
  }
  .drawer-backdrop{
    display:none!important;
  }
  .superadmin-body .admin-main,
  .superadmin-body .admin-content{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

/* =========================
   V7 · Tienda + delivery
   ========================= */
.hero-carousel,.product-carousel__viewport{touch-action:pan-y;user-select:none;-webkit-user-select:none}
.hero-carousel{cursor:grab}.hero-carousel:active,.product-carousel__viewport:active{cursor:grabbing}

/* Logo horizontal 809x261 */
.mobile-brand__logo{width:112px!important;height:40px!important;max-width:38vw;object-fit:contain!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.desktop-brand img{width:158px!important;height:52px!important;object-fit:contain!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.admin-brand__logo{width:128px;height:42px;object-fit:contain;display:block;flex:0 0 auto}
@media(max-width:899px){.mobile-brand:has(.mobile-brand__logo) span{display:none}.mobile-brand{justify-content:center}}

/* Botón persistente para seguimiento */
.track-order-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:24px;z-index:54;display:flex;align-items:center;gap:10px;padding:11px 16px 11px 11px;border-radius:20px;background:var(--secondary);color:#fff;box-shadow:0 16px 36px rgba(20,20,25,.28);transition:transform .22s ease,box-shadow .22s ease}
.track-order-fab:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(20,20,25,.34)}
.track-order-fab__icon{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:var(--primary);box-shadow:0 8px 18px rgba(245,46,64,.28)}
.track-order-fab__icon svg{width:24px;height:24px}
.track-order-fab span:last-child{display:flex;flex-direction:column;line-height:1.15}.track-order-fab small{font-size:.68rem;opacity:.72}.track-order-fab strong{font-size:.9rem;margin-top:3px}
@media(max-width:899px){.track-order-fab{bottom:104px;right:12px;padding:9px 12px 9px 9px;border-radius:18px}.track-order-fab__icon{width:36px;height:36px}.track-order-fab small{display:none}.track-order-fab strong{font-size:.78rem}}

/* Seguimiento de pedido */
.tracking-search-screen{max-width:680px;margin:20px auto 50px}.tracking-search-card{padding:28px;text-align:center}.tracking-search-icon{width:76px;height:76px;border-radius:26px;background:linear-gradient(135deg,var(--primary),#ff6673);color:#fff;display:grid;place-items:center;margin:0 auto 16px;box-shadow:0 18px 38px rgba(245,46,64,.24)}.tracking-search-icon svg{width:38px;height:38px}.tracking-search-card h1{margin:6px 0 8px;font-size:2rem}.tracking-search-card>p{color:var(--muted);margin:0 auto 22px;max-width:480px}.tracking-search-form{text-align:left;display:grid;gap:14px}.tracking-code-input{text-transform:uppercase;font-weight:800;letter-spacing:.08em;text-align:center;font-size:1.05rem}
.order-tracking-screen{display:grid;gap:16px}.tracking-hero{padding:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#fff,#fff5f6)}.tracking-hero h1{margin:6px 0 8px;font-size:1.8rem}.tracking-hero p{margin:0;color:var(--muted)}.tracking-order-code{min-width:190px;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:3px}.tracking-order-code small{color:var(--muted);font-size:.72rem}.tracking-order-code strong{font-size:.92rem}.tracking-public-code{color:var(--primary);letter-spacing:.04em}
.order-progress-card{padding:24px;position:relative;overflow:hidden}.order-progress-line{height:5px;background:#eceef3;border-radius:99px;position:absolute;left:58px;right:58px;top:57px;overflow:hidden}.order-progress-line span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),#ff7582);border-radius:inherit;transition:width .5s ease}.order-progress-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}.order-progress-step{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0}.order-progress-step__icon{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:#f0f1f5;color:#a1a5ae;border:5px solid #fff;box-shadow:0 7px 20px rgba(0,0,0,.06);transition:.3s}.order-progress-step__icon svg{width:28px;height:28px}.order-progress-step strong{display:block;font-size:.9rem}.order-progress-step small{display:block;color:var(--muted);font-size:.76rem;line-height:1.35;margin-top:4px}.order-progress-step.is-done .order-progress-step__icon{background:#e8f7ef;color:#118952}.order-progress-step.is-active .order-progress-step__icon{background:var(--primary);color:#fff;animation:orderPulse 1.6s ease-in-out infinite}.order-progress-step.is-active strong{color:var(--primary)}
@keyframes orderPulse{0%,100%{transform:translateY(0) scale(1);box-shadow:0 8px 22px rgba(245,46,64,.24)}50%{transform:translateY(-4px) scale(1.04);box-shadow:0 16px 32px rgba(245,46,64,.32)}}
.order-cancelled-card{padding:22px;border-left:5px solid var(--danger)}.order-cancelled-card strong{color:var(--danger);font-size:1.15rem}.order-cancelled-card p{color:var(--muted);margin-bottom:0}
@media(max-width:680px){.tracking-hero{flex-direction:column}.tracking-order-code{width:100%}.order-progress-card{padding:18px 14px}.order-progress-line{display:none}.order-progress-steps{grid-template-columns:1fr;gap:10px}.order-progress-step{display:grid;grid-template-columns:52px 1fr;text-align:left;align-items:center}.order-progress-step__icon{width:52px;height:52px;border-radius:18px;border-width:3px}.order-progress-step small{font-size:.74rem}}

/* Flyer modal de bienvenida */
.home-popup-modal{z-index:1200!important}.home-popup-card{position:relative;z-index:2;width:min(92vw,560px);max-height:88vh;margin:6vh auto 0;background:#fff;border-radius:28px;padding:10px;box-shadow:0 30px 80px rgba(0,0,0,.3);overflow:hidden}.home-popup-card__link{display:block}.home-popup-card img{width:100%;max-height:82vh;object-fit:contain;border-radius:20px}.home-popup-card__close{position:absolute!important;right:18px;top:18px!important;left:auto!important;background:#fff!important;color:var(--secondary)!important;box-shadow:0 10px 28px rgba(0,0,0,.16)!important;z-index:5}

/* Administración de banners y motorizados */
.content-banner-list{display:grid;gap:12px}.content-banner-card{display:grid;grid-template-columns:130px 1fr auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:18px}.content-banner-card>img{width:130px;height:82px;object-fit:cover;border-radius:14px;background:#f4f5f7}.content-banner-card__copy{min-width:0;display:flex;flex-direction:column;gap:4px}.content-banner-card__copy small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content-banner-card__actions{display:flex;gap:8px;align-items:center}.popup-admin-preview{width:100%;max-height:300px;object-fit:contain;background:#f4f5f8;border-radius:18px;margin-bottom:16px}.driver-assigned{display:flex;flex-direction:column;gap:3px}.driver-assigned small{color:var(--muted)}.order-admin-actions{display:grid;gap:10px;min-width:250px}.inline-form,.driver-assign-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:7px;align-items:center}.driver-assign-form small{grid-column:1/-1;color:var(--muted);line-height:1.3}.table-orders td{vertical-align:top}
.status.available{background:#e7f8ef;color:#0b7a45}.status.busy{background:#fff1dc;color:#9a5d00}.status.inactive{background:#eef0f4;color:#747984}
@media(max-width:800px){.content-banner-card{grid-template-columns:90px 1fr}.content-banner-card>img{width:90px;height:72px}.content-banner-card__actions{grid-column:1/-1}.inline-form,.driver-assign-form{grid-template-columns:1fr}.driver-assign-form small{grid-column:auto}}
.btn-secondary{background:var(--secondary);color:#fff}
.btn-danger{background:#fff0f2;color:var(--danger);border:1px solid #ffd7dd}
.btn-danger:hover{background:#ffe4e8}
.order-progress-step em{display:block;margin-top:5px;font-style:normal;font-size:.7rem;color:#9ca0a9}
.admin-modal__panel{padding:20px;background:#fff;border-radius:22px}.admin-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #eceef3;margin-bottom:4px}.admin-modal__head h3{margin:3px 0 0}.admin-modal__head .icon-btn{width:40px;height:40px;box-shadow:none;background:#f4f5f8}

/* =========================================================
   V8 · Chifa Cristal · storefront, admin, tracking y driver PWA
   ========================================================= */
html,body{max-width:100%;overflow-x:hidden}
.mobile-brand--logo-only,.desktop-brand--logo-only{display:flex;align-items:center;justify-content:center;min-width:0}
.mobile-brand__logo--cristal{width:min(190px,56vw)!important;height:auto!important;aspect-ratio:809/261;object-fit:contain!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.desktop-brand--logo-only img{width:190px!important;max-height:62px!important;height:auto!important;aspect-ratio:809/261;object-fit:contain!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}

/* Franja negra, mensaje infinito y redes */
.brand-strip{height:38px;background:#080808;color:#fff;display:flex;align-items:center;position:relative;z-index:33;overflow:hidden;border-top:1px solid rgba(255,255,255,.06)}
.brand-strip__ticker{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.brand-strip__track{display:flex;width:max-content;gap:70px;align-items:center;animation:brandTicker 24s linear infinite;will-change:transform;padding-left:30px}
.brand-strip__track span{white-space:nowrap;font-size:.78rem;font-weight:700;letter-spacing:.015em;color:#f4f4f4}
.brand-strip__social{height:100%;display:flex;align-items:center;gap:5px;padding:0 14px 0 12px;background:#080808;position:relative;z-index:2}
.brand-strip__social a{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;color:#fff;transition:.2s ease}
.brand-strip__social a:hover{background:#242424;transform:translateY(-1px)}
.brand-strip__social svg{width:17px;height:17px}
@keyframes brandTicker{to{transform:translateX(-33.333%)}}

/* Banner de imagen completa + overlay opcional */
.hero-banner{padding:0!important;min-height:0!important;aspect-ratio:16/6.3;overflow:hidden;position:relative;background:#efeff2!important;align-items:stretch!important}
.hero-banner__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;pointer-events:none;user-select:none}
.hero-banner__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,14,16,.68),rgba(15,14,16,.23) 55%,rgba(15,14,16,.03));z-index:1}
.hero-banner__copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;height:100%;padding:28px 72px 28px 58px!important;max-width:62%!important}
.hero-banner--image-only .hero-banner__image{object-fit:cover}
.hero-banner--image-only::after{display:none}
.hero-carousel__arrow{top:50%!important;transform:translateY(-50%)!important;line-height:1!important}
.hero-carousel__arrow svg{display:block!important;margin:auto!important;transform:none!important}
.hero-carousel__arrow--prev{left:16px!important}.hero-carousel__arrow--next{right:16px!important}

/* Arrastre de carruseles más natural */
.hero-carousel,.product-carousel__viewport{touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain;cursor:grab}
.hero-carousel.is-dragging,.product-carousel__viewport.is-dragging{cursor:grabbing;user-select:none}
.hero-carousel.is-dragging .hero-carousel__track,.product-carousel__viewport.is-dragging .product-carousel__track{transition:none!important}
.hero-carousel__track,.product-carousel__track{backface-visibility:hidden;transform:translate3d(0,0,0)}

/* Modal flyer realmente centrado */
.home-popup-modal{display:grid!important;place-items:center!important;padding:22px!important}
.home-popup-modal[hidden]{display:none!important}
.home-popup-card{position:relative!important;margin:0!important;inset:auto!important;max-width:min(560px,92vw)!important;max-height:88dvh!important;border-radius:26px!important;background:#fff!important;box-shadow:0 24px 70px rgba(0,0,0,.28)!important;overflow:visible!important}
.home-popup-card__link{display:block;border-radius:26px;overflow:hidden}
.home-popup-card img{display:block;width:100%;max-height:82dvh;object-fit:contain;border-radius:26px}
.home-popup-card__close{position:absolute!important;top:-13px!important;right:-13px!important;left:auto!important;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border-radius:14px!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;font-size:22px!important;z-index:5!important;margin:0!important}

/* Toasts tipo app */
.toast{display:flex;align-items:center;gap:10px;max-width:min(440px,calc(100vw - 28px));padding:13px 16px!important;border-radius:18px!important;background:#1c1c20!important;color:#fff!important;font-weight:750!important;box-shadow:0 18px 48px rgba(0,0,0,.24)!important;z-index:12000!important}
.toast.toast--success{background:#117847!important}.toast.toast--error{background:#a32236!important}

/* Pago QR */
.qr-payment-panel{display:none;margin-top:12px;padding:16px;border:1px solid var(--line);border-radius:20px;background:#fbfbfd;text-align:center}
.qr-payment-panel.is-visible{display:grid;gap:12px;justify-items:center}
.qr-payment-panel img{width:min(230px,70vw);aspect-ratio:1/1;object-fit:contain;border-radius:18px;background:#fff;border:1px solid var(--line);padding:8px}
.qr-payment-phone{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.qr-payment-phone strong{font-size:1.12rem}.copy-payment-number{min-height:42px}

/* Tracking más vivo / moderno */
.order-progress-card{padding:24px;overflow:hidden}
.order-progress-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;position:relative;z-index:2}
.order-progress-line{height:5px;background:#ececf1;border-radius:99px;overflow:hidden;margin:28px 7% -24px;position:relative;z-index:1}
.order-progress-line span{height:100%;display:block;background:linear-gradient(90deg,var(--primary),#ff7581);border-radius:99px;transition:width .55s ease}
.order-progress-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:11px;min-width:0;color:#a1a3ab}
.order-progress-step__icon{width:62px;height:62px;border-radius:21px;background:#f0f1f5;color:#999ca5;display:grid;place-items:center;position:relative;transition:.35s ease;box-shadow:0 0 0 7px #fff}
.order-progress-step__icon svg{width:29px;height:29px;overflow:visible}
.order-progress-step>div:last-child{display:flex;flex-direction:column;gap:4px}.order-progress-step strong{font-size:.88rem}.order-progress-step small{font-size:.74rem;line-height:1.3;color:var(--muted)}.order-progress-step em{font-size:.69rem;font-style:normal;color:#9a9ca4}
.order-progress-step.is-done .order-progress-step__icon{background:#e8f8ef;color:#16824d}.order-progress-step.is-active .order-progress-step__icon{background:var(--primary);color:#fff;box-shadow:0 0 0 7px #fff,0 12px 30px rgba(245,46,64,.27)}
.order-progress-step.is-active .order-progress-step__icon::after{content:"";position:absolute;inset:-8px;border:2px solid rgba(245,46,64,.22);border-radius:27px;animation:trackingPulse 1.6s ease-out infinite}
.order-progress-step--verify.is-active svg{animation:verifyBounce 1.25s ease-in-out infinite}.order-progress-step--prepare.is-active svg{animation:cookShake .75s ease-in-out infinite}.order-progress-step--route.is-active svg{animation:motoRide 1.1s ease-in-out infinite}.order-progress-step--delivered.is-active svg{animation:deliveredPop 1.4s ease-in-out infinite}
@keyframes trackingPulse{0%{transform:scale(.82);opacity:.9}100%{transform:scale(1.26);opacity:0}}
@keyframes verifyBounce{0%,100%{transform:scale(1)}50%{transform:scale(1.13)}}
@keyframes cookShake{0%,100%{transform:rotate(0) translateY(0)}25%{transform:rotate(-6deg) translateY(-2px)}75%{transform:rotate(6deg) translateY(-2px)}}
@keyframes motoRide{0%,100%{transform:translateX(-4px) rotate(-2deg)}50%{transform:translateX(5px) rotate(2deg)}}
@keyframes deliveredPop{0%,100%{transform:scale(1)}50%{transform:scale(1.14) translateY(-2px)}}

/* Productos admin: CTA y registro masivo */
.admin-new-button{padding-top:15px!important;padding-bottom:15px!important}
.admin-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.admin-import-card{padding:18px}.admin-import-card h3{margin:0 0 7px}.admin-import-card p{margin:0 0 15px;color:var(--muted)}
.bulk-product-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0 8px}.bulk-product-table th{text-align:left;font-size:.75rem;color:var(--muted);padding:0 8px}.bulk-product-table td{padding:0 5px}.bulk-product-table .input,.bulk-product-table .select{padding:10px 11px;border-radius:12px}

/* Pedidos admin: flujo operativo */
.admin-orders-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap}.admin-orders-search{flex:1;min-width:250px;max-width:480px}.admin-order-kpis{display:flex;gap:8px;overflow:auto;padding:2px 0 12px;scrollbar-width:none}.admin-order-kpi{border:1px solid var(--line);background:#fff;border-radius:16px;padding:10px 13px;min-width:max-content;cursor:pointer;color:var(--muted);font-weight:700}.admin-order-kpi.is-active{background:#18181d;color:#fff;border-color:#18181d}.admin-order-kpi strong{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#f1f1f5;color:#333;margin-left:6px}.admin-order-kpi.is-active strong{background:#fff;color:#18181d}
.admin-orders-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.admin-order-card{padding:17px;border:1px solid #ececf2;box-shadow:0 8px 26px rgba(20,20,28,.045)}.admin-order-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.admin-order-card__head strong{display:block;font-size:1rem}.admin-order-card__head small{color:var(--muted)}.admin-order-card__total{font-size:1.12rem;font-weight:900}.admin-order-card__customer{display:grid;gap:5px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.admin-order-card__customer p{margin:0;font-size:.86rem;color:#585a63;line-height:1.4}.admin-order-card__meta{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.admin-order-chip{padding:6px 9px;border-radius:999px;background:#f3f4f7;color:#555862;font-size:.72rem;font-weight:750}.admin-order-actions{display:grid;gap:9px}.admin-order-actions .form-row{display:flex;gap:8px}.admin-order-actions .select{min-width:0;flex:1}.admin-live-indicator{display:inline-flex;align-items:center;gap:7px;color:#26774a;font-size:.78rem;font-weight:700}.admin-live-indicator::before{content:"";width:8px;height:8px;border-radius:50%;background:#20b965;box-shadow:0 0 0 5px rgba(32,185,101,.1);animation:liveBlink 1.6s ease infinite}@keyframes liveBlink{50%{opacity:.42}}
.admin-live-bell{position:relative}.admin-live-badge{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:.68rem;font-weight:900}.admin-live-badge[hidden]{display:none!important}

/* Panel administrativo y marca */
.admin-brand img,.superadmin-brand img{max-width:150px;height:auto;aspect-ratio:809/261;object-fit:contain}.admin-brand-copy strong{display:block}.admin-brand-copy small{display:block;color:var(--muted)}

/* PWA Motorizado */
.driver-body{background:#f4f5f9;padding:0;min-height:100dvh;color:#1f2025}.driver-app{max-width:720px;min-height:100dvh;margin:0 auto;background:#f4f5f9}.driver-header{position:sticky;top:0;z-index:20;height:74px;padding:10px 16px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid #ececf2}.driver-header img{width:116px;height:auto;object-fit:contain}.driver-header>div{flex:1;display:flex;flex-direction:column}.driver-header small{color:var(--muted)}.driver-icon-btn{border:0;width:42px;height:42px;border-radius:14px;background:#f1f2f6;cursor:pointer}.driver-content{padding:18px 14px 40px}.driver-welcome{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}.driver-welcome h1{margin:5px 0}.driver-welcome p{margin:0;color:var(--muted)}.driver-kicker{color:var(--primary);font-weight:800;font-size:.8rem}.driver-notification-toggle{border:0;border-radius:14px;padding:11px 13px;background:#fff;box-shadow:var(--shadow-soft);font-weight:750;cursor:pointer}.driver-orders{display:grid;gap:14px}.driver-order-card{background:#fff;border-radius:24px;padding:17px;box-shadow:var(--shadow-soft)}.driver-order-card__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.driver-order-card__head div{display:flex;flex-direction:column}.driver-order-card__head small{color:var(--muted)}.driver-order-card__head>span{font-size:1.2rem;font-weight:900}.driver-order-client{padding:14px 0;border-bottom:1px solid var(--line)}.driver-order-client h3{margin:0 0 5px}.driver-order-client p{margin:8px 0 4px;line-height:1.4}.driver-order-client a{color:var(--primary);font-weight:800}.driver-order-items{display:grid;gap:5px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.86rem}.driver-payment-card{margin:12px 0;padding:13px;border-radius:16px;background:#f6f7fa;display:grid;gap:3px}.driver-payment-card span,.driver-payment-card small{color:var(--muted)}.driver-order-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:9px}.driver-empty{text-align:center;background:#fff;border-radius:24px;padding:36px 20px;box-shadow:var(--shadow-soft)}.driver-empty span{display:grid;place-items:center;width:58px;height:58px;border-radius:20px;background:#e9f8ef;color:#16804b;margin:0 auto 12px;font-size:1.6rem}.driver-empty h2{margin:0 0 5px}.driver-empty p{margin:0;color:var(--muted)}
.driver-install-gate{position:fixed;inset:0;z-index:10000;background:linear-gradient(150deg,#ffeef0,#f4f5f9 65%);padding:20px;display:grid;place-items:center}.driver-install-gate[hidden]{display:none}.driver-install-card{width:min(430px,100%);background:#fff;border-radius:30px;padding:26px;box-shadow:0 28px 70px rgba(22,22,30,.16);text-align:center}.driver-install-card img{width:180px;height:auto;margin:0 auto 20px}.driver-install-card>span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff1f3;color:var(--primary);font-size:.76rem;font-weight:800}.driver-install-card h2{font-size:1.7rem;margin:12px 0 8px}.driver-install-card p{color:var(--muted);line-height:1.5}.driver-ios-help{padding:10px;border-radius:13px;background:#f5f6f9}.driver-install-card .btn+.btn{margin-top:9px}

/* Popup / selector y tablas responsive */
@media (max-width:899px){
  .brand-strip{height:34px}.brand-strip__social{padding-right:8px}.brand-strip__track{gap:45px;animation-duration:18s}.brand-strip__track span{font-size:.7rem}
  .hero-banner{aspect-ratio:16/8.6}.hero-banner__copy{padding:18px 26px!important;max-width:80%!important}.hero-banner__copy h2{font-size:1.45rem}
  .home-popup-card{max-width:min(520px,88vw)!important}.home-popup-card__close{top:-10px!important;right:-10px!important;width:36px!important;height:36px!important;min-height:36px!important}
  .order-progress-card{padding:18px 12px}.order-progress-line{display:none}.order-progress-steps{grid-template-columns:1fr;gap:8px}.order-progress-step{flex-direction:row;text-align:left;align-items:center;padding:8px;border-radius:18px}.order-progress-step__icon{width:50px;height:50px;flex:0 0 50px;border-radius:16px;box-shadow:none}.order-progress-step>div:last-child{align-items:flex-start}.order-progress-step.is-active{background:#fff3f5}.order-progress-step small{display:block}
  .admin-import-grid{grid-template-columns:1fr}.admin-orders-grid{grid-template-columns:1fr}.admin-order-card{padding:14px}.driver-order-actions{grid-template-columns:1fr}
}
@media (min-width:900px){
  .product-carousel__arrow{display:flex}.driver-app{margin-top:18px;border-radius:30px;overflow:hidden;min-height:calc(100dvh - 36px);box-shadow:var(--shadow)}
}
.admin-order-notification{position:fixed;top:86px;right:22px;z-index:15000;width:min(390px,calc(100vw - 28px));display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:14px;background:#fff;border:1px solid #ececf2;border-radius:20px;box-shadow:0 20px 60px rgba(17,17,25,.22);transform:translateY(-14px) translateX(14px);opacity:0;transition:.25s ease;color:#202126}.admin-order-notification.is-visible{opacity:1;transform:none}.admin-order-notification__icon{width:48px;height:48px;border-radius:16px;background:#fff0f2;color:var(--primary);display:grid;place-items:center}.admin-order-notification__icon svg{width:24px;height:24px}.admin-order-notification>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.admin-order-notification small{color:var(--primary);font-weight:800}.admin-order-notification strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-order-notification em{font-style:normal;color:var(--muted);font-size:.78rem}.admin-order-notification b{color:var(--primary);font-size:.8rem}
@media(max-width:899px){.admin-order-notification{top:72px;right:14px}}
.profile-logout-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
/* V8 Pedidos admin: clases reales de la vista operativa */
.orders-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.order-kpi{border:1px solid #e8e9ef;background:#fff;border-radius:18px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#6b6e78;cursor:pointer;box-shadow:0 5px 18px rgba(20,20,28,.03);font-weight:750}.order-kpi strong{display:grid;place-items:center;min-width:29px;height:29px;border-radius:10px;background:#f1f2f6;color:#24252b}.order-kpi.is-active{background:#19191e;color:#fff;border-color:#19191e}.order-kpi.is-active strong{background:#fff;color:#19191e}.orders-toolbar{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.admin-order-search{position:relative;flex:1;max-width:520px}.admin-order-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:19px;height:19px;color:#8e919a}.admin-order-search .input{padding-left:42px}.orders-live-status{display:inline-flex;align-items:center;gap:8px;color:#26774a;font-size:.78rem;font-weight:750;white-space:nowrap}.live-dot{width:9px;height:9px;border-radius:50%;background:#20b965;box-shadow:0 0 0 5px rgba(32,185,101,.1);animation:liveBlink 1.6s ease infinite}.orders-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.admin-order-card__head h3{margin:8px 0 3px}.admin-order-code{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-order-code span{font-size:.72rem;color:var(--muted)}.admin-order-card__head p{margin:0;color:var(--muted);font-size:.8rem}.admin-order-card__total{display:flex;flex-direction:column;text-align:right}.admin-order-card__total small{color:var(--muted);font-size:.68rem}.admin-order-card__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.order-info-pill{padding:10px 11px;border-radius:15px;background:#f6f7fa;display:flex;flex-direction:column;gap:2px;min-width:0}.order-info-pill--wide{grid-column:1/-1}.order-info-pill span{font-size:.67rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.order-info-pill strong{font-size:.82rem;line-height:1.35;overflow-wrap:anywhere}.order-info-pill small{font-size:.72rem;color:var(--muted)}.order-fast-action,.driver-assign-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.driver-chip{padding:10px 12px;border-radius:15px;background:#eef7ff;display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center}.driver-chip span,.driver-chip small{font-size:.72rem;color:#5c6c7a}.driver-chip strong{font-size:.82rem}.btn-secondary{background:#292a30;color:#fff}
@media(max-width:1050px){.orders-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.orders-workspace{grid-template-columns:1fr}}
@media(max-width:680px){.orders-kpi-grid{display:flex;overflow-x:auto;scrollbar-width:none}.order-kpi{min-width:128px}.orders-toolbar{align-items:stretch;flex-direction:column}.admin-order-search{max-width:none;width:100%}.orders-live-status{padding:0 4px}.admin-order-card__body{grid-template-columns:1fr}.order-info-pill--wide{grid-column:auto}.order-fast-action,.driver-assign-form{grid-template-columns:1fr}.driver-chip{grid-template-columns:1fr}}

/* =========================================================
   V8.1 - Header desktop fijo, banners, tracking y notificaciones
   ========================================================= */
@media (min-width:900px){
  /* Solo la barra principal desktop queda fija; la franja social sigue el scroll normal. */
  .app-header{position:static!important;top:auto!important;background:transparent!important;border-bottom:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .desktop-header{display:block!important;height:78px;background:var(--primary)!important;border-bottom:0}
  .desktop-header__inner{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:120!important;
    width:100%!important;
    max-width:none!important;
    height:78px!important;
    min-height:78px!important;
    margin:0!important;
    padding-left:max(24px,calc((100vw - 1280px)/2))!important;
    padding-right:max(24px,calc((100vw - 1280px)/2))!important;
    background:var(--primary)!important;
    box-shadow:0 8px 24px rgba(26,20,20,.12);
  }
  .desktop-brand{min-width:150px!important}
  .desktop-brand img{background:#fff!important;padding:5px!important;border-radius:12px!important;box-shadow:0 5px 18px rgba(0,0,0,.12)!important}
  .desktop-search{background:#fff!important;border-color:rgba(255,255,255,.75)!important;box-shadow:0 5px 16px rgba(0,0,0,.09)}
  .desktop-search .search-icon{color:#6e7078}
  .desktop-action{color:#fff!important;background:rgba(255,255,255,.10)!important}
  .desktop-action:hover{background:rgba(255,255,255,.18)!important;color:#fff!important}
  .desktop-cart{background:#17181c!important;color:#fff!important}
  .desktop-cart:hover{background:#17181c!important;color:#fff!important;transform:translateY(-1px)}

  /* Banner: imagen sin degradado, texto separado de la flecha y subtítulo liviano. */
  .hero-banner__shade{display:none!important}
  .hero-banner__copy{
    padding:42px 92px 42px 94px!important;
    max-width:62%!important;
    color:#fff!important;
    text-shadow:0 2px 12px rgba(0,0,0,.48);
  }
  .hero-banner__eyebrow{display:none!important}
  .hero-banner__copy h2{margin:0 0 12px!important;line-height:1.06}
  .hero-banner__subtitle{margin:0 0 20px!important;font-weight:400!important;line-height:1.5!important;color:#fff!important}
  .hero-banner__cta{text-shadow:none}
  .hero-carousel__arrow{z-index:12!important;pointer-events:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}
  .hero-carousel__arrow svg{width:22px!important;height:22px!important;display:block!important;margin:0!important;transform:none!important}
  .hero-carousel__arrow--prev{left:20px!important}.hero-carousel__arrow--next{right:20px!important}

  /* Línea de progreso detrás de los iconos, nunca sobre los títulos. */
  .order-progress-card{position:relative!important;padding:24px!important}
  .order-progress-line{position:absolute!important;top:55px!important;left:9%!important;right:9%!important;width:auto!important;height:5px!important;margin:0!important;z-index:0!important}
  .order-progress-steps{position:relative!important;z-index:2!important}
  .order-progress-step__icon{position:relative!important;z-index:3!important;box-shadow:0 0 0 8px #fff,0 7px 20px rgba(0,0,0,.06)!important}
  .order-progress-step>div:last-child{position:relative!important;z-index:3!important;background:#fff;padding-top:2px}
}

/* Mantener cada bloque del home completamente interactivo. */
.home-product-section{position:relative;isolation:isolate;z-index:1}
.home-product-section .product-carousel{position:relative;z-index:2}
.home-product-section .product-carousel__viewport{position:relative;z-index:2}
.home-product-section .product-card,.home-product-section .product-card a,.home-product-section .product-card button,.section-more,.section-more a{pointer-events:auto!important}
.product-carousel__arrow{z-index:10!important}

/* Header administrativo y campana de notificaciones */
.admin-brand--logo-only{justify-content:center;padding:7px 8px 22px!important}
.admin-brand--logo-only .admin-brand__logo{width:170px!important;max-width:100%!important;height:auto!important}
.admin-top{background:var(--primary)!important;color:#fff!important;border-bottom:0!important;box-shadow:0 5px 18px rgba(30,20,20,.08)}
.admin-top small{color:rgba(255,255,255,.78)!important}
.admin-top h1{color:#fff!important}
.admin-notification-wrap{position:relative;margin-left:auto}
.admin-user-chip{margin-left:0!important;background:rgba(255,255,255,.16)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important}
.admin-live-bell{
  appearance:none;-webkit-appearance:none;border:1px solid rgba(255,255,255,.2);outline:0;
  width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.14);color:#fff;
  display:grid;place-items:center;cursor:pointer;position:relative;transition:.2s ease;padding:0
}
.admin-live-bell:hover,.admin-live-bell[aria-expanded="true"]{background:#fff;color:var(--primary);transform:translateY(-1px)}
.admin-live-bell svg{width:22px;height:22px;display:block}
.admin-live-badge{top:-6px!important;right:-6px!important;background:#17181c!important;color:#fff!important;border:2px solid var(--primary)}
.admin-notification-popover{
  position:absolute;top:54px;right:0;z-index:500;width:min(390px,calc(100vw - 36px));
  background:#fff;color:#202126;border:1px solid #ececf2;border-radius:22px;
  box-shadow:0 22px 65px rgba(20,20,28,.22);overflow:hidden
}
.admin-notification-popover[hidden]{display:none!important}
.admin-notification-popover__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 17px;border-bottom:1px solid #ececf2}
.admin-notification-popover__head>div{display:flex;flex-direction:column;gap:2px}
.admin-notification-popover__head small{color:var(--primary)!important;font-weight:800;font-size:.72rem}
.admin-notification-popover__head strong{font-size:1rem}
.admin-notification-popover__head>span{padding:5px 8px;border-radius:999px;background:#fff1f3;color:var(--primary);font-size:.7rem;font-weight:800;white-space:nowrap}
.admin-notification-list{max-height:320px;overflow:auto}
.admin-notification-item{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:center;padding:13px 16px;border-bottom:1px solid #f0f1f4;color:#24252a;transition:.18s ease}
.admin-notification-item:hover{background:#fafbfc}
.admin-notification-item__dot{width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 5px rgba(245,46,64,.08)}
.admin-notification-item>span:nth-child(2){display:flex;flex-direction:column;gap:2px;min-width:0}
.admin-notification-item strong{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-notification-item small{color:#6f727b!important;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-notification-item em{font-style:normal;color:var(--primary);font-size:.68rem;font-weight:750}
.admin-notification-item time{font-size:.68rem;color:#9a9ca5;align-self:start;padding-top:2px}
.admin-notification-empty{padding:24px 16px;text-align:center;color:#898c95;font-size:.82rem}
.admin-notification-footer{display:flex;justify-content:space-between;align-items:center;padding:13px 17px;background:#f7f8fa;color:var(--primary);font-size:.8rem;font-weight:850}

@media(max-width:899px){
  .admin-notification-wrap{margin-left:auto}
  .admin-live-bell{width:42px;height:42px;border-radius:13px}
  .admin-notification-popover{position:fixed;top:70px;right:12px;width:calc(100vw - 24px)}
}

/* =========================================================
   V8.2 - Header responsive, carrito drawer, tracking y Libro
   ========================================================= */
.brand-strip--fixed{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:145!important}
.hero-banner__cta{color:#17181c!important;display:inline-flex!important;align-items:center!important;gap:7px!important}
.hero-banner__cta svg{width:17px;height:17px;flex:0 0 17px}
.related-card__description{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:auto;color:var(--muted)!important;font-size:.82rem!important;line-height:1.35!important;margin:0!important}
.footer-contact{display:flex!important;align-items:flex-start;gap:9px!important}.footer-contact svg,.footer-book-link svg{width:19px!important;height:19px!important;flex:0 0 19px;color:var(--primary)}.footer-book-link{display:flex!important;align-items:center;gap:9px!important;margin-top:15px!important;font-weight:800!important;color:#fff!important}.footer-book-link:hover{color:var(--primary)!important}

/* Pedido: fases cumplidas usan rojo de marca */
.order-progress-step.is-done .order-progress-step__icon{background:#fff0f2!important;color:var(--primary)!important}
.order-progress-step.is-done strong{color:#6f7078!important}
.order-progress-line span{background:var(--primary)!important}
.tracking-hero--clean{align-items:center}.tracking-hero--clean h1{margin-top:0}.tracking-order-code--public{min-width:230px}.order-detail-grid--receipt{grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr)!important}.order-meta-card--primary{padding:22px!important}.cash-change-card{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:14px 0;padding:14px;border-radius:16px;background:#fff4f5;color:#3b2e2f}.cash-change-card span{font-size:.8rem;color:var(--muted)}.cash-change-card strong{color:var(--primary)}.receipt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.receipt-head small{color:var(--muted)}.receipt-head h2{margin:3px 0 0}.receipt-head>span{font-weight:800;color:var(--primary);font-size:.8rem;background:#fff0f2;border-radius:999px;padding:7px 10px}.receipt-table-head,.receipt-item-row{display:grid;grid-template-columns:minmax(0,1.65fr) 60px 92px 92px;gap:10px;align-items:center}.receipt-table-head{padding:9px 0;border-bottom:1px dashed #d7d8df;font-size:.72rem;color:var(--muted);font-weight:800}.receipt-table-head span:not(:first-child),.receipt-item-row>span,.receipt-item-row>strong{text-align:right}.receipt-item-row{padding:13px 0;border-bottom:1px dashed #e5e6eb}.receipt-item-row>div{display:flex;flex-direction:column}.receipt-item-row small{color:var(--muted);margin-top:3px}.receipt-totals{margin-top:10px;padding-top:8px}.receipt-totals>div{display:flex;justify-content:space-between;padding:7px 0}.receipt-grand-total{font-size:1.18rem;border-top:1px solid #202126;margin-top:7px;padding-top:13px!important}.order-items-card--receipt{padding:22px!important}

/* Carrito lateral / bottom sheet */
body.cart-drawer-open{overflow:hidden}.cart-drawer{position:fixed;inset:0;z-index:20000}.cart-drawer[hidden]{display:none!important}.cart-drawer__backdrop{position:absolute;inset:0;background:rgba(12,12,16,.58);backdrop-filter:blur(3px)}.cart-drawer__panel{position:absolute;right:0;top:0;bottom:0;width:min(460px,92vw);background:#fff;display:grid;grid-template-rows:auto 1fr auto;box-shadow:-20px 0 60px rgba(0,0,0,.18);animation:drawerIn .28s cubic-bezier(.22,.8,.25,1)}.cart-drawer__head{display:flex;justify-content:space-between;align-items:center;padding:22px 22px 18px;border-bottom:1px solid var(--line)}.cart-drawer__head small{color:var(--primary);font-weight:800}.cart-drawer__head h2{margin:2px 0 0;font-size:1.35rem}.cart-drawer__close{border:0;background:#f5f5f7;border-radius:13px;padding:9px 11px;font-weight:700;cursor:pointer}.cart-drawer__close span{font-size:1.2rem;margin-right:3px}.cart-drawer__items{overflow:auto;padding:8px 20px}.cart-drawer-item{display:grid;grid-template-columns:72px 1fr 34px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.cart-drawer-item img{width:72px;height:72px;object-fit:cover;border-radius:16px;background:#f4f4f6}.cart-drawer-item>div{display:flex;flex-direction:column;gap:3px;min-width:0}.cart-drawer-item strong{font-size:.92rem}.cart-drawer-item small{color:var(--muted)}.cart-drawer-item span{font-size:.82rem;color:var(--primary);font-weight:700}.cart-drawer-item__remove{border:0;background:transparent;font-size:1.25rem;color:#777;cursor:pointer}.cart-drawer__empty{height:100%;min-height:220px;display:grid;place-content:center;text-align:center;gap:7px;color:var(--muted)}.cart-drawer__empty strong{font-size:1.1rem;color:var(--secondary)}.cart-drawer__footer{padding:18px 20px 20px;border-top:1px solid var(--line);background:#fff}.cart-drawer__subtotal{display:flex;justify-content:space-between;align-items:center;font-size:1.2rem;margin-bottom:14px}.cart-drawer__subtotal strong{font-size:1.35rem;color:var(--primary)}.free-shipping-progress{padding:13px 0 15px}.free-shipping-progress p{margin:0 0 10px;color:#4b4e58;font-size:.84rem}.free-shipping-progress__bar{height:9px;background:#eceef3;border-radius:999px;overflow:hidden}.free-shipping-progress__bar span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),#ff7b87);border-radius:inherit;transition:width .35s ease}.cart-drawer__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}@keyframes drawerIn{from{transform:translateX(100%)}to{transform:none}}

/* Libro de Reclamaciones */
.claims-page{display:grid;gap:18px}.claims-hero{padding:26px;display:flex;justify-content:space-between;gap:20px;align-items:center}.claims-hero>div:first-child>span{color:var(--primary);font-weight:900;text-transform:uppercase;font-size:.76rem;letter-spacing:.05em}.claims-hero h1{margin:6px 0 8px}.claims-hero p{margin:0;color:var(--muted);max-width:760px}.claims-number-success{padding:14px 16px;border-radius:18px;background:#fff0f2;display:flex;flex-direction:column;min-width:180px}.claims-number-success small{color:var(--muted)}.claims-number-success strong{color:var(--primary);font-size:1.05rem}.claims-form{padding:24px}.claims-provider{display:grid;grid-template-columns:1.2fr .6fr 1.5fr .6fr;gap:10px;padding:16px;border-radius:18px;background:#f7f8fb;margin-bottom:22px}.claims-provider>div{display:flex;flex-direction:column;gap:3px}.claims-provider small,.admin-claim-grid small{color:var(--muted);font-size:.72rem}.claims-section{padding:20px 0;border-top:1px solid var(--line)}.claims-section__head{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}.claims-section__head>span{width:34px;height:34px;border-radius:12px;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:900}.claims-section__head h2{margin:0;font-size:1.08rem}.claims-section__head p{margin:4px 0 0;color:var(--muted)}.claim-doc-row{display:grid;grid-template-columns:110px 1fr;gap:8px}.claim-check{display:flex;align-items:flex-start;gap:9px;padding:12px 0}.claim-check input{margin-top:3px}.minor-fields{padding:14px;border-radius:18px;background:#f7f8fb}.claim-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.claim-choice{position:relative;border:1px solid var(--line);border-radius:17px;padding:14px;display:flex;gap:10px}.claim-choice:has(input:checked){border-color:var(--primary);background:#fff4f5}.claim-choice span{display:flex;flex-direction:column;gap:3px}.claim-choice small{color:var(--muted)}.claims-legal{background:#fafafa;border:0;border-radius:18px;padding:16px!important;margin-bottom:18px}.claims-legal p{color:#5f626c;font-size:.82rem;line-height:1.5;margin-top:0}.claims-admin-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.claims-admin-kpis .card{padding:16px;display:flex;justify-content:space-between;align-items:center}.claims-admin-kpis small{color:var(--muted)}.claims-admin-kpis strong{font-size:1.6rem;color:var(--primary)}.admin-claims-list{display:grid;gap:14px}.admin-claim-card{padding:18px}.admin-claim-card__head{display:flex;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid var(--line)}.admin-claim-card__head h3{margin:6px 0 2px}.admin-claim-card__head p{margin:0;color:var(--muted);font-size:.8rem}.admin-claim-card__head>div:last-child{display:flex;flex-direction:column;text-align:right}.claim-status{display:inline-flex;width:max-content;padding:6px 9px;border-radius:999px;font-size:.7rem;font-weight:800}.claim-status--pending{background:#fff2db;color:#9a6200}.claim-status--answered{background:#eef0f4;color:#555b68}.admin-claim-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.admin-claim-grid>div{background:#f7f8fb;border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:4px}.admin-claim-grid .wide{grid-column:1/-1}.admin-claim-grid p{margin:0;line-height:1.5}.claim-answer-box{padding:14px;border-radius:16px;background:#f4f7f5;margin-top:12px}.claim-answer-box small{color:#6a746d}.claim-response-form{margin-top:15px}.admin-notification-item--claim .admin-notification-item__dot{background:#ff9c2b!important}.admin-notification-footer-row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.admin-notification-footer-row .admin-notification-footer{border-top:0!important;text-align:center}.free-shipping-admin{margin-top:18px!important}

@media (min-width:900px){
  .desktop-header{margin-top:38px!important}.desktop-header__inner{top:38px!important}.brand-strip--fixed{height:38px!important}
  .page-content{padding-top:30px!important}
}

@media (max-width:899px){
  .brand-strip--fixed{height:34px!important}.app-header{top:34px!important;background:var(--primary)!important;border-bottom:0!important;box-shadow:0 8px 22px rgba(0,0,0,.09)!important}.mobile-header{padding:max(10px,env(safe-area-inset-top,0px)) 14px 13px!important;background:var(--primary)!important}.mobile-topbar--delivery{display:flex!important;grid-template-columns:none!important;align-items:center!important;gap:10px!important}.mobile-brand{justify-content:flex-start!important;flex:0 0 auto}.mobile-brand__logo--cristal{width:124px!important;height:54px!important;object-fit:contain!important;background:#fff!important;border-radius:0!important;padding:2px 5px!important;box-shadow:none!important}.mobile-back--compact{width:38px!important;height:38px!important;flex:0 0 38px;background:rgba(255,255,255,.18)!important;color:#fff!important;box-shadow:none!important}.mobile-delivery-address{border:0;background:transparent;color:#fff;flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;text-align:left;cursor:pointer}.mobile-delivery-address__icon{display:none}.mobile-delivery-address__copy{display:flex;flex-direction:column;min-width:0}.mobile-delivery-address__copy small{display:none}.mobile-delivery-address__copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1rem;max-width:190px}.mobile-delivery-address__chevron{font-size:1.2rem;line-height:1}.app-search-wrap{margin-top:11px!important}.app-search-form{background:#fff!important;border-radius:22px!important;padding:5px 6px 5px 12px!important;box-shadow:none!important}.app-search-form>.search-icon{display:none!important}.mobile-search-action{border:0;width:48px;height:48px;border-radius:18px;background:var(--primary);color:#fff;display:grid;place-items:center;flex:0 0 48px}.mobile-search-action svg{width:23px;height:23px}.app-search-form .search-input{font-size:1rem!important;padding:12px 7px!important}.is-home-page .page-content{padding-top:204px!important}.is-inner-page .page-content{padding-top:204px!important}body.is-scrolled .app-search-wrap{display:none!important}body.is-scrolled .mobile-header{padding-bottom:10px!important}body.is-scrolled .mobile-brand__logo--cristal{width:106px!important;height:46px!important}body.is-scrolled .mobile-delivery-address__copy strong{max-width:210px!important}.is-home-page.is-scrolled .page-content,.is-inner-page.is-scrolled .page-content{padding-top:138px!important}
  .brand-strip__social{padding-right:8px!important}.brand-strip__track{gap:44px!important}.brand-strip__track span{font-size:.68rem!important}
  .cart-drawer__panel{top:auto;left:8px;right:8px;bottom:8px;width:auto;height:min(78dvh,680px);border-radius:28px;animation:drawerUp .28s cubic-bezier(.22,.8,.25,1);overflow:hidden}.cart-drawer__actions{grid-template-columns:1fr}.cart-drawer__head{padding:17px 18px 13px}.cart-drawer__items{padding:5px 16px}.cart-drawer__footer{padding:14px 16px 16px}@keyframes drawerUp{from{transform:translateY(100%)}to{transform:none}}
  .order-detail-grid--receipt{grid-template-columns:1fr!important}.receipt-table-head{display:none}.receipt-item-row{grid-template-columns:1fr auto;gap:7px}.receipt-item-row>span{display:none}.receipt-item-row>strong{text-align:right}.tracking-order-code--public{min-width:0;width:100%}
  .claims-hero{flex-direction:column;align-items:stretch;padding:20px}.claims-provider{grid-template-columns:1fr 1fr}.claims-form{padding:17px}.claim-choice-grid{grid-template-columns:1fr}.claim-doc-row{grid-template-columns:95px 1fr}.claims-admin-kpis{grid-template-columns:1fr 1fr}.admin-claim-card__head{flex-direction:column}.admin-claim-card__head>div:last-child{text-align:left}.admin-claim-grid{grid-template-columns:1fr 1fr}.admin-claim-grid .wide{grid-column:1/-1}
}
@media(max-width:520px){.mobile-brand__logo--cristal{width:102px!important;height:48px!important}.mobile-delivery-address__copy strong{font-size:.92rem!important;max-width:170px}.brand-strip__social{display:none!important}.claims-provider,.admin-claim-grid{grid-template-columns:1fr}.claims-admin-kpis{grid-template-columns:1fr}.admin-claim-grid .wide{grid-column:auto}}
.claim-print-btn{margin-top:9px;border:0;background:#fff;color:var(--primary);border-radius:11px;padding:7px 9px;font-weight:800;cursor:pointer}
@media print{.brand-strip,.app-header,.bottom-nav,.track-order-fab,.desktop-footer,.claims-form button,.claim-print-btn{display:none!important}.page-content{width:100%!important;padding:0!important}.claims-page{display:block}.claims-hero,.claims-form{box-shadow:none!important;border:1px solid #ddd!important}.claims-form{margin-top:12px}}

/* =========================================================
   V8.3 — Mobile native header + checkout + delivery admin
   ========================================================= */
.toast,.toast.toast--success,.toast.toast--error{background:var(--primary)!important;color:#fff!important}

.product-live-total{position:sticky;top:90px;z-index:18;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;margin:-2px 0 18px;border-radius:18px;background:rgba(255,255,255,.96);border:1px solid rgba(245,46,64,.18);box-shadow:0 12px 30px rgba(33,27,29,.10);backdrop-filter:blur(12px)}
.product-live-total small{display:block;color:var(--muted);font-weight:700}.product-live-total strong{display:block;margin-top:2px;color:var(--primary);font-size:1.35rem}.product-live-total>span{max-width:180px;color:var(--muted);font-size:.78rem;text-align:right}

.checkout-screen--simple .section-headline{margin-bottom:8px}.checkout-screen--simple .section-subtitle{margin:5px 0 0;color:var(--muted)}
.checkout-field-stack{display:grid;gap:14px}.coupon-box--separated{margin:22px 0 16px;padding:15px;border:1px dashed rgba(245,46,64,.28);background:#fff7f8;border-radius:18px}.coupon-box--separated>label{display:block;font-weight:800;font-size:.88rem;margin-bottom:9px}.coupon-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:stretch}.coupon-inline .btn{white-space:nowrap}
.delivery-segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#f0f1f5;border-radius:16px;margin-bottom:16px}.delivery-segmented label{position:relative;cursor:pointer}.delivery-segmented input{position:absolute;opacity:0}.delivery-segmented span{display:block;padding:11px 10px;text-align:center;border-radius:12px;font-size:.88rem;font-weight:800;color:#777b85;transition:.2s}.delivery-segmented input:checked+span{background:var(--secondary);color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.10)}
.checkout-delivery-fields,.checkout-pickup-fields{display:grid;gap:14px}.delivery-quote-inline{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:15px;background:#f7f8fb;color:var(--muted);font-size:.86rem}.delivery-quote-inline b{color:var(--primary)}
.checkout-select-block{margin:0 0 16px}.qr-payment-box--simple{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:20px;background:#fff}.qr-payment-box--simple img{width:150px;height:150px;object-fit:contain;border-radius:14px;background:#fff}.qr-payment-box__copy{display:grid;gap:7px}.qr-payment-box__copy>strong{font-size:1.2rem}.qr-payment-box__copy>span{color:var(--muted)}
.receipt-summary{overflow:hidden}.receipt-paper{max-width:100%;overflow:hidden}.receipt-paper::after{display:none!important}
.consent-card span{min-width:0;overflow-wrap:anywhere}

.precision-map{position:relative;height:240px;border-radius:20px;overflow:hidden;background:#e8ebf0;border:1px solid var(--line)}.precision-map iframe{width:100%;height:100%;border:0;pointer-events:none}.precision-map__marker{position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-100%);border-radius:50% 50% 50% 0;background:var(--primary);border:4px solid #fff;box-shadow:0 10px 24px rgba(0,0,0,.24);rotate:-45deg;cursor:grab;touch-action:none}.precision-map__marker::after{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff}.precision-map__marker:active{cursor:grabbing}.location-accuracy{display:flex;gap:8px;align-items:center;margin-top:8px;color:var(--muted);font-size:.78rem}.location-accuracy.is-warning{color:#a56a00}.location-availability.is-error{color:var(--danger)}
.modal.is-location-required .modal__close,.modal.is-location-required [data-close-location]{display:none!important}.modal.is-location-required .modal__backdrop{cursor:not-allowed}.modal.is-location-required .location-modal__header::before{content:"Ubicación necesaria para continuar";display:inline-flex;margin-bottom:8px;padding:5px 9px;border-radius:999px;background:#fff0f2;color:var(--primary);font-size:.7rem;font-weight:800}

.delivery-admin{display:grid;gap:18px}.delivery-admin__tabs{display:flex;gap:8px;overflow:auto;padding:4px 1px;scrollbar-width:none}.delivery-admin__tabs::-webkit-scrollbar{display:none}.delivery-admin__tab{border:0;background:#fff;border-radius:14px;padding:11px 15px;font-weight:800;color:#777b85;white-space:nowrap;box-shadow:var(--shadow-soft);cursor:pointer}.delivery-admin__tab.is-active{background:var(--primary);color:#fff}.delivery-admin__pane{display:grid;gap:16px}.delivery-admin__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.delivery-admin__card{padding:18px}.delivery-admin__card h2,.delivery-admin__card h3{margin-top:0}.delivery-map-preview{position:relative;height:300px;overflow:hidden;border-radius:20px;background:#e8ebf0}.delivery-map-preview iframe{width:100%;height:100%;border:0}.delivery-zone-map{position:relative;height:360px;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#e9edf3,#dce3ec);cursor:crosshair}.delivery-zone-map::before{content:"Haz clic para dibujar el polígono de cobertura";position:absolute;left:14px;top:14px;z-index:3;padding:8px 11px;border-radius:12px;background:rgba(255,255,255,.9);font-size:.76rem;font-weight:800}.delivery-zone-map svg{position:absolute;inset:0;width:100%;height:100%}.delivery-zone-polygon{fill:rgba(245,46,64,.20);stroke:var(--primary);stroke-width:3}.delivery-zone-point{fill:var(--primary);stroke:#fff;stroke-width:2}.delivery-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.delivery-kpi{padding:16px;border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}.delivery-kpi small{display:block;color:var(--muted)}.delivery-kpi strong{display:block;margin-top:5px;font-size:1.3rem}.delivery-rate-row,.delivery-zone-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}

@media(max-width:899px){
  html,body{overflow-x:hidden!important;max-width:100vw}
  .brand-strip,.brand-strip--fixed{display:none!important}
  .track-order-fab{display:none!important}
  .app-header{top:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
  .mobile-header{display:block!important;background:var(--primary)!important;padding:max(10px,env(safe-area-inset-top,0px)) 14px 14px!important;border-radius:0 0 28px 28px!important;box-shadow:0 10px 26px rgba(52,18,23,.14)!important;transition:padding .28s cubic-bezier(.2,.8,.25,1),border-radius .28s ease,transform .28s ease!important;will-change:padding,transform}
  .mobile-topbar--delivery{min-height:58px!important;gap:10px!important;transition:min-height .28s ease!important}
  .mobile-brand__logo--cristal{width:116px!important;height:52px!important;padding:2px 5px!important;border-radius:0!important;transition:width .28s ease,height .28s ease!important}
  .mobile-delivery-address{justify-content:flex-start!important;padding:0 4px!important}
  .mobile-delivery-address__copy strong{font-size:.96rem!important;max-width:min(52vw,230px)!important;color:#fff!important}
  .mobile-delivery-address__chevron{color:#fff!important}
  .app-search-wrap{margin-top:9px!important;transition:opacity .2s ease,max-height .28s ease,margin .28s ease!important;max-height:62px;opacity:1}
  .app-search-form{height:54px!important;border-radius:27px!important;padding:5px 6px 5px 17px!important;box-shadow:0 6px 20px rgba(53,30,33,.09)!important}
  .app-search-form .search-input{height:44px!important;padding:8px 6px!important;font-size:.95rem!important;color:#25262c!important}
  .app-search-form .search-input::placeholder{color:#858995!important;opacity:1!important;font-weight:500}
  .mobile-search-action{width:44px!important;height:44px!important;flex:0 0 44px!important;border-radius:50%!important;background:var(--primary)!important}
  .mobile-search-action svg{width:21px!important;height:21px!important}
  body.is-scrolled .mobile-header{padding:max(7px,env(safe-area-inset-top,0px)) 14px 9px!important;border-radius:0 0 22px 22px!important}
  body.is-scrolled .mobile-topbar--delivery{min-height:50px!important}
  body.is-scrolled .mobile-brand__logo--cristal{width:96px!important;height:42px!important}
  body.is-scrolled .app-search-wrap{max-height:0!important;opacity:0!important;margin-top:0!important;overflow:hidden!important;pointer-events:none!important}
  .is-home-page .page-content,.is-inner-page .page-content{padding-top:146px!important;transition:padding-top .28s ease!important}
  .is-home-page.is-scrolled .page-content,.is-inner-page.is-scrolled .page-content{padding-top:82px!important}
  .hero-carousel{border-radius:20px!important}
  .hero-banner{aspect-ratio:16/9.5!important}
  .hero-banner__copy{padding:16px 20px!important;max-width:80%!important}
  .hero-banner__copy h2{font-size:clamp(1.02rem,5.4vw,1.35rem)!important;margin:0 0 6px!important;line-height:1.08!important}
  .hero-banner__subtitle{font-size:clamp(.72rem,3.35vw,.88rem)!important;line-height:1.35!important;margin:0 0 10px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .hero-banner__cta{font-size:.76rem!important;padding:8px 11px!important;border-radius:11px!important;gap:4px!important}
  .hero-banner__cta svg{width:13px!important;height:13px!important}
  .hero-carousel__arrow{display:none!important}
  .hero-carousel,.product-carousel__viewport{touch-action:pan-y pinch-zoom!important}
  .product-live-total{top:76px;margin:0 0 15px;padding:11px 13px;border-radius:15px}.product-live-total strong{font-size:1.18rem}.product-live-total>span{font-size:.7rem;max-width:120px}
  .checkout-grid{display:block!important}.checkout-stepper{padding:14px!important;overflow:hidden}.stepper-head{grid-template-columns:auto 1fr auto 1fr auto!important;width:100%;margin-bottom:20px}.stepper-step{min-width:58px;padding:0 2px}.stepper-step strong{font-size:.67rem!important;white-space:nowrap}.stepper-step span{width:30px;height:30px}.stepper-line{min-width:10px}.step-title{gap:10px;margin-bottom:16px}.step-title>span{width:38px;height:38px;flex:0 0 38px}.step-title h2{font-size:1.1rem}.step-title p{font-size:.78rem}
  .checkout-field-stack{gap:12px}.checkout-form .form-group{margin:0}.coupon-box--separated{margin:20px 0 14px;padding:13px}.coupon-inline{grid-template-columns:minmax(0,1fr) auto;gap:7px}.coupon-inline .btn{padding:10px 13px}.consent-card{font-size:.76rem;line-height:1.35;padding:11px}.delivery-segmented{grid-template-columns:1fr 1fr!important;margin:0 0 14px}.delivery-segmented span{padding:10px 6px;font-size:.78rem}.location-inline-card{padding:12px;align-items:flex-start}.location-inline-card .btn{padding:8px 10px;font-size:.75rem}.delivery-quote-inline{font-size:.78rem}.checkout-select-block{margin-bottom:13px}.qr-payment-box--simple{grid-template-columns:110px minmax(0,1fr);gap:12px;padding:12px}.qr-payment-box--simple img{width:110px;height:110px}.qr-payment-box__copy{gap:5px;font-size:.78rem}.qr-payment-box__copy .btn{font-size:.72rem;padding:9px 10px}.receipt-summary{margin-top:16px!important;width:100%!important;max-width:100%!important}.receipt-paper{padding:16px!important;width:100%!important}.receipt-paper *{max-width:100%}.receipt-line{gap:7px}.receipt-line span,.receipt-line strong{overflow-wrap:anywhere}.step-actions{margin-top:18px}.step-actions .btn{min-height:44px}
  .modal__dialog--location{width:calc(100% - 16px)!important;max-width:none!important;margin:8px auto 0!important;max-height:calc(100dvh - 16px)!important;border-radius:24px!important}
  .delivery-admin__grid{grid-template-columns:1fr}.delivery-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-rate-row,.delivery-zone-row{grid-template-columns:1fr 1fr}.delivery-map-preview,.delivery-zone-map{height:270px}
}
@media(max-width:420px){
  .mobile-header{padding-left:10px!important;padding-right:10px!important}.mobile-brand__logo--cristal{width:101px!important;height:46px!important}.mobile-delivery-address__copy strong{font-size:.87rem!important;max-width:48vw!important}.app-search-form{height:50px!important}.mobile-search-action{width:40px!important;height:40px!important;flex-basis:40px!important}.app-search-form .search-input{font-size:.88rem!important}.hero-banner__copy{padding:13px 16px!important;max-width:86%!important}.coupon-inline .btn{font-size:.75rem}.consent-card{font-size:.72rem}.stepper-step strong{font-size:.61rem!important}.qr-payment-box--simple{grid-template-columns:92px minmax(0,1fr)}.qr-payment-box--simple img{width:92px;height:92px}.delivery-kpi-grid{grid-template-columns:1fr 1fr}
}

/* V8.3 admin delivery view uses the established admin naming scheme */
.admin-delivery-tabs{display:flex;gap:8px;overflow:auto;padding:3px 1px 14px;scrollbar-width:none}.admin-delivery-tabs::-webkit-scrollbar{display:none}.admin-delivery-tabs button{border:0;background:#fff;color:#777b85;padding:11px 15px;border-radius:14px;font-weight:800;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-soft)}.admin-delivery-tabs button.is-active{background:var(--primary);color:#fff}.admin-delivery-pane{display:none}.admin-delivery-pane.is-active{display:block}.admin-delivery-map-card{margin-top:16px}.admin-map-preview,.admin-coordinate-map,.zone-map-editor{position:relative;height:310px;border-radius:20px;overflow:hidden;background:#e7ebf0}.admin-map-preview iframe,.admin-coordinate-map iframe,.zone-map-editor iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.admin-map-preview__marker,.admin-coordinate-map__pin{position:absolute;left:50%;top:50%;width:34px;height:34px;transform:translate(-50%,-100%) rotate(-45deg);border-radius:50% 50% 50% 0;background:var(--primary);border:4px solid #fff;box-shadow:0 8px 20px rgba(0,0,0,.2);pointer-events:none}.admin-map-preview__marker::after,.admin-coordinate-map__pin::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}.admin-delivery-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.admin-delivery-row>div{display:grid;gap:4px}.admin-delivery-row small{color:var(--muted)}.zone-map-editor iframe{pointer-events:none;opacity:.82}.zone-map-editor svg{position:absolute;inset:0;width:100%;height:100%;z-index:2}.zone-map-tools{position:absolute;right:12px;bottom:12px;z-index:4;display:flex;gap:8px}.delivery-zone-polygon{fill:rgba(245,46,64,.2);stroke:var(--primary);stroke-width:3}.delivery-zone-point{fill:var(--primary);stroke:#fff;stroke-width:2}.admin-delivery-pane .table-wrap{overflow:auto}.admin-delivery-pane .table{min-width:720px}
@media(max-width:899px){.admin-delivery-tabs{padding-bottom:10px}.admin-delivery-pane .admin-grid.two{grid-template-columns:1fr}.admin-map-preview,.admin-coordinate-map,.zone-map-editor{height:260px}}

/* =========================================================
   V8.3.1 — Ajustes de ubicación / mapa / tooltips
   ========================================================= */
#location-modal{z-index:1400!important;place-items:center;padding:18px}
#location-modal:not([hidden]){display:grid!important}
#location-modal[hidden]{display:none!important}
#location-modal .modal__backdrop{background:rgba(10,10,14,.68)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}
#location-modal .modal__dialog--location{margin:0 auto!important;width:min(780px,calc(100vw - 28px));max-height:calc(100dvh - 36px);border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.34)}
.modal.is-location-required .location-modal__header::before{display:none!important;content:none!important}

.precision-map{cursor:grab;user-select:none;-webkit-user-select:none}
.precision-map.is-dragging{cursor:grabbing}
.precision-map__controls{position:absolute;right:12px;top:12px;z-index:8;display:grid;gap:6px}
.precision-map__controls button{width:38px;height:38px;border:0;border-radius:12px;background:rgba(255,255,255,.96);color:#25262c;font-size:1.45rem;line-height:1;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.16);cursor:pointer}
.precision-map__controls button:hover{background:#fff;transform:translateY(-1px)}
.precision-map__marker{z-index:7}

/* Éxito = negro; errores = rojo de la marca. */
.toast,.toast.toast--default,.toast.toast--success{background:#17181c!important;color:#fff!important}
.toast.toast--error{background:var(--primary)!important;color:#fff!important}

.address-suggestions{max-height:320px;overflow:auto;overscroll-behavior:contain}
.address-suggestion{width:100%;text-align:left}
.address-suggestion small{line-height:1.35}

@media(max-width:899px){
  #location-modal{padding:8px!important;align-items:end!important}
  #location-modal .modal__dialog--location{width:100%!important;max-height:calc(100dvh - 16px)!important;margin:0!important;border-radius:26px 26px 20px 20px!important}
  .precision-map{height:225px}
  .precision-map__controls{right:10px;top:10px}
  .precision-map__controls button{width:36px;height:36px;border-radius:11px}
}

/* =========================================================
   V8.3.2 — Mapa interactivo: pan + wheel + pinch
   ========================================================= */
.precision-map{
  cursor:grab!important;
  touch-action:none!important;
  overscroll-behavior:contain;
  background:#dfe4e8;
}
.precision-map.is-dragging{cursor:grabbing!important}
.precision-map iframe{
  position:absolute!important;
  left:-10%!important;
  top:-10%!important;
  width:120%!important;
  height:120%!important;
  pointer-events:none!important;
  transform-origin:center center!important;
  will-change:transform;
  transition:none!important;
}
/* El único punto de entrega visible es el pin rojo de la tienda.
   El marcador verde nativo del embed OSM se eliminó desde JavaScript. */
.precision-map__marker{
  left:50%!important;
  top:50%!important;
  pointer-events:none!important;
  cursor:default!important;
  z-index:7!important;
}
.precision-map__controls{z-index:9!important}
.precision-map::after{
  content:"Arrastra el mapa para ajustar el punto";
  position:absolute;
  left:12px;
  bottom:12px;
  z-index:6;
  padding:7px 10px;
  border-radius:10px;
  background:rgba(20,21,25,.78);
  color:#fff;
  font-size:.72rem;
  font-weight:700;
  pointer-events:none;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
@media(max-width:899px){
  .precision-map::after{font-size:.68rem;left:10px;bottom:10px;padding:6px 9px}
}

/* =========================================================
   V8.3.3 — estabilidad de ubicación, carruseles y detalle
   ========================================================= */
/* Scroll del modal de ubicación contenido dentro de la tarjeta, estilo app. */
#location-modal .modal__dialog--location{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(36,37,43,.38) transparent;
  scrollbar-gutter:stable;
}
#location-modal .modal__dialog--location::-webkit-scrollbar{width:7px}
#location-modal .modal__dialog--location::-webkit-scrollbar-track{background:transparent;margin:18px 0}
#location-modal .modal__dialog--location::-webkit-scrollbar-thumb{background:rgba(36,37,43,.32);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
#location-modal .modal__dialog--location::-webkit-scrollbar-thumb:hover{background:rgba(36,37,43,.48);background-clip:padding-box}

/* Las cards se pueden abrir también tocando/clicando el cuerpo, sin botón Ver. */
.product-card--clickable{cursor:pointer}
.product-card__title-link{color:inherit;text-decoration:none}
.product-card__title-link:hover{color:var(--primary)}

/* El total final es el único total flotante. Se mantiene visible hasta llegar a su lugar natural. */
.product-live-total{display:none!important}
.product-action-anchor{position:relative;min-height:76px}
.product-action-anchor .sticky-action-bar{position:relative!important;left:auto;right:auto;bottom:auto!important;width:100%;margin:0;z-index:18}
.product-action-anchor .sticky-action-bar.is-floating{position:fixed!important;right:auto!important;margin:0!important;z-index:76;box-shadow:0 16px 38px rgba(31,25,27,.18);border:1px solid rgba(245,46,64,.12);animation:productActionIn .2s ease-out}
@keyframes productActionIn{from{opacity:.92;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:899px){
  /* Una regla antigua ocultaba el logo durante scroll. En la cabecera compacta debe seguir visible. */
  body.is-scrolled .mobile-brand__logo--cristal{display:block!important;visibility:visible!important;opacity:1!important}
  .mobile-delivery-address__chevron{width:20px;height:20px;display:grid!important;place-items:center;flex:0 0 20px;font-size:0!important}
  .mobile-delivery-address__chevron svg{width:18px;height:18px;display:block}
  #location-modal .modal__dialog--location{scrollbar-gutter:stable}
  #location-modal .modal__dialog--location::-webkit-scrollbar{width:5px}
  .product-action-anchor{min-height:72px}
  .product-action-anchor .sticky-action-bar.is-floating{border-radius:20px;padding:13px 15px}
}


/* =========================================================
   V8.3.5 — OpenStreetMap + Leaflet
   Reemplaza únicamente el motor visual del mapa de ubicación.
   ========================================================= */
.precision-map--leaflet{
  position:relative!important;
  overflow:hidden!important;
  cursor:default!important;
  touch-action:auto!important;
  background:#e4e8ec!important;
}
.precision-map--leaflet .precision-map__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
}
.precision-map--leaflet .leaflet-container{
  width:100%;
  height:100%;
  font:inherit;
  background:#e4e8ec;
  cursor:grab;
  outline:none;
}
.precision-map--leaflet.is-dragging .leaflet-container,
.precision-map--leaflet .leaflet-dragging .leaflet-grab,
.precision-map--leaflet .leaflet-dragging .leaflet-grab .leaflet-interactive{
  cursor:grabbing!important;
}
.precision-map--leaflet .precision-map__controls{display:none!important}
.precision-map--leaflet iframe{display:none!important}
.precision-map--leaflet .precision-map__marker{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:44px!important;
  height:52px!important;
  transform:translate(-50%,-100%)!important;
  rotate:0deg!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--primary)!important;
  pointer-events:none!important;
  z-index:650!important;
  filter:drop-shadow(0 7px 7px rgba(0,0,0,.28));
}
.precision-map--leaflet .precision-map__marker::after{display:none!important;content:none!important}
.precision-map--leaflet .precision-map__marker svg{display:block;width:100%;height:100%}
.precision-map--leaflet .leaflet-control-zoom{
  border:0!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18)!important;
  margin-left:12px!important;
  margin-top:12px!important;
}
.precision-map--leaflet .leaflet-control-zoom a{
  width:38px!important;
  height:38px!important;
  line-height:38px!important;
  border:0!important;
  color:#22242a!important;
  font-size:20px!important;
}
.precision-map--leaflet .leaflet-control-zoom-in{border-radius:12px 12px 0 0!important}
.precision-map--leaflet .leaflet-control-zoom-out{border-radius:0 0 12px 12px!important}
.precision-map--leaflet .leaflet-control-attribution{
  font-size:9px!important;
  background:rgba(255,255,255,.78)!important;
  backdrop-filter:blur(4px);
}
.precision-map--leaflet::after{
  content:"Arrastra el mapa para ajustar el punto"!important;
  z-index:600!important;
}
.precision-map--leaflet.is-map-unavailable::before{
  content:"No se pudo cargar el mapa. Aún puedes ingresar tu dirección manualmente.";
  position:absolute;inset:0;z-index:700;display:grid;place-items:center;padding:20px;text-align:center;
  background:#f4f5f7;color:#686b74;font-size:.82rem;font-weight:700;
}
@media(max-width:899px){
  .precision-map--leaflet .leaflet-control-zoom a{width:36px!important;height:36px!important;line-height:36px!important}
}

/* =========================================================
   V8.3.6 — UX ubicación, sticky total y rendimiento
   ========================================================= */
/* Total acumulado: la única barra existente flota desde que entra al detalle
   hasta alcanzar su posición natural al final del formulario. */
.product-action-anchor{min-height:78px}
.product-action-anchor .sticky-action-bar{
  transform:translateZ(0);
  backface-visibility:hidden;
}
.product-action-anchor .sticky-action-bar.is-floating{
  will-change:left,width,bottom;
  animation:none!important;
}

/* Modal de ubicación simplificado. */
.location-modal__header{padding-right:44px}
.location-modal__header h2{font-size:1.45rem;line-height:1.1;margin:2px 0 4px!important}
.location-modal__header p{font-size:.9rem}
.location-mode-switch{margin-top:14px}
.location-detect-btn{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:16px}
.location-detect-btn svg{width:20px;height:20px;flex:0 0 20px}
.location-summary-card--compact{align-items:stretch;padding:14px 16px}
.location-summary-card__main{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0}
.location-summary-card__main>strong{font-size:.95rem;line-height:1.2}
.location-summary-card__main>strong.is-error{color:var(--primary)}
.location-summary-card__main small{display:block;color:var(--muted);font-size:.78rem;line-height:1.3}
.location-summary-card__main small b{color:var(--secondary);font-weight:750}
.location-summary-card__price{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;min-width:92px;text-align:right}
.location-summary-card__price small{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:750}
.location-summary-card__price strong{font-size:1.28rem;color:var(--primary);white-space:nowrap}
.location-external-apps{margin:0;padding:9px 11px;border-radius:12px;background:#f7f7f9;color:#62656d;font-size:.78rem;line-height:1.35;text-align:center}
.location-external-apps[hidden]{display:none!important}
.location-external-apps a{color:var(--secondary);text-decoration:underline;text-underline-offset:2px}
.location-external-apps strong{font-weight:850}

/* El mapa mantiene gesto nativo en desktop. En pantallas táctiles, un dedo
   desplaza la página y dos dedos controlan el mapa: evita perder el punto por accidente. */
.precision-map--leaflet .leaflet-container{overscroll-behavior:contain}
.precision-map--leaflet.is-cooperative-touch::after{content:"Usa dos dedos para mover o acercar el mapa"!important}

@media(max-width:899px){
  #location-modal .modal__dialog--location{padding-top:2px}
  .location-modal__header{padding-right:38px}
  .location-modal__header h2{font-size:1.24rem;margin:0 0 2px!important}
  .location-modal__header p{font-size:.78rem}
  .location-mode-switch{padding:4px;gap:5px;border-radius:15px;margin-top:9px}
  .location-mode-switch .segment{padding:8px 7px;border-radius:12px;font-size:.76rem;min-height:34px}
  .location-form{gap:11px;margin-top:11px}
  .location-pane.is-active{gap:11px}
  .location-detect-btn{min-height:43px;padding:9px 12px;border-radius:14px;font-size:.82rem}
  .location-detect-btn svg{width:18px;height:18px;flex-basis:18px}
  .location-address-grid{gap:10px}
  .location-address-grid .form-group label,.location-form>.location-pane .form-group label{font-size:.78rem;margin-bottom:5px}
  .location-form .input{padding:10px 11px;border-radius:13px;font-size:.86rem}
  .precision-map{height:215px}
  .precision-map--leaflet .leaflet-container,
  .precision-map--leaflet .leaflet-container.leaflet-touch-zoom,
  .precision-map--leaflet .leaflet-container.leaflet-touch-drag,
  .precision-map--leaflet .leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{
    touch-action:pan-y!important;
  }
  .precision-map--leaflet.is-cooperative-touch::after{font-size:.63rem!important;max-width:210px}
  .location-accuracy{font-size:.68rem;margin-top:2px}
  .location-summary-card--compact{padding:11px 12px;border-radius:15px;gap:8px}
  .location-summary-card__main>strong{font-size:.82rem}
  .location-summary-card__main small{font-size:.69rem}
  .location-summary-card__price{min-width:76px}
  .location-summary-card__price small{font-size:.61rem}
  .location-summary-card__price strong{font-size:1.08rem}
  .location-external-apps{font-size:.7rem;padding:7px 9px;border-radius:10px}
  .pickup-list{gap:8px}
  .pickup-card{padding:10px 11px;border-radius:14px;gap:8px}
  .pickup-card p{margin:3px 0;font-size:.75rem}
  .pickup-card small,.pickup-card__tag{font-size:.66rem}
  .product-action-anchor{min-height:72px}
  .product-action-anchor .sticky-action-bar.is-floating{padding:12px 14px;border-radius:18px}
}


/* =========================================================
   V8.3.7 — Carrito, header, indicaciones y autocomplete
   ========================================================= */
.cart-drawer__head h2{margin:0!important}
.cart-drawer__close{width:42px;height:42px;padding:0!important;display:grid;place-items:center;font-size:1.45rem;line-height:1;border-radius:13px}
.product-notes-input{resize:none;min-height:48px;max-height:48px;height:48px}
@media(max-width:899px){
  body.is-scrolled .mobile-header{box-shadow:none!important}
}

/* =========================================================
   V8.3.8 — pedido enviado, seguimiento vivo y reparto
   ========================================================= */
@media(max-width:899px){
  /* Sin sombra en ningún punto de la transición extendido -> compacto. */
  .mobile-header,
  body.is-scrolled .mobile-header,
  body:not(.is-scrolled) .mobile-header{
    box-shadow:none!important;
    filter:none!important;
  }
  .mobile-header::before,.mobile-header::after,.app-header::before,.app-header::after{box-shadow:none!important;filter:none!important}
}

.order-progress-line>span{transition:width .42s cubic-bezier(.2,.8,.25,1)}
.order-progress-step{transition:opacity .28s ease,transform .28s ease}
.order-tracking-screen.order-live-updated .tracking-hero{animation:orderLiveSoftPulse .62s ease}
@keyframes orderLiveSoftPulse{0%{transform:translateY(0)}40%{transform:translateY(-2px)}100%{transform:translateY(0)}}

.driver-assign-form{
  width:100%;
  display:grid;
  grid-template-columns:minmax(150px,.75fr) minmax(280px,1.25fr);
  gap:12px;
  align-items:center;
  padding:13px 14px;
  border:1px solid rgba(245,46,64,.16);
  border-radius:17px;
  background:#fff8f9;
}
.driver-assign-form[hidden]{display:none!important}
.driver-assign-form__label{display:grid;gap:3px;min-width:0}
.driver-assign-form__label strong{font-size:.86rem;color:var(--secondary)}
.driver-assign-form__label small{font-size:.72rem;color:var(--muted)}
.driver-assign-form__controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.admin-order-card.order-live-pulse{animation:adminOrderLivePulse .65s ease}
@keyframes adminOrderLivePulse{0%{box-shadow:var(--shadow-soft)}35%{box-shadow:0 0 0 4px rgba(245,46,64,.12),var(--shadow-soft)}100%{box-shadow:var(--shadow-soft)}}
.driver-chip[hidden]{display:none!important}

.driver-order-card{transition:opacity .3s ease,transform .3s ease,box-shadow .3s ease}
.driver-order-card.is-completed{opacity:0;transform:translateY(10px) scale(.985)}
.driver-order-card.driver-order-highlight{box-shadow:0 0 0 4px rgba(245,46,64,.18),0 18px 45px rgba(25,25,30,.12)!important}

@media(max-width:899px){
  .driver-assign-form{grid-template-columns:1fr;padding:11px 12px}
  .driver-assign-form__controls{grid-template-columns:1fr auto}
}

/* =========================================================
   V8.3.10 — delivery gratis, PWA motorizado y flujo en vivo
   ========================================================= */
#checkout-delivery-fee.is-free,#checkout-delivery-fee-summary.is-free{color:#17181d;font-weight:900;letter-spacing:.02em}
.delivery-free-note{display:block;margin-top:-5px;padding:9px 11px;border-radius:12px;background:#f5f6f8;color:#4e515a;font-size:.76rem;line-height:1.35;font-weight:650}
.delivery-free-note[hidden],.receipt-delivery-free[hidden]{display:none!important}
.receipt-delivery-free{margin:4px 0 7px;padding:8px 10px;border-radius:11px;background:#f5f6f8;color:#51545d;font-size:.72rem;line-height:1.35}

/* En Vista rápida el total pertenece al contenido del modal: nunca flota. */
.quick-view .sticky-action-bar,.quick-view .sticky-action-bar.is-floating{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;margin-top:16px!important;transform:none!important;animation:none!important;box-shadow:var(--shadow-soft)!important;z-index:1!important}

.order-eta-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;margin:12px 0;padding:14px 16px;border-radius:18px;background:#1e1f24;color:#fff}
.order-eta-banner[hidden]{display:none!important}.order-eta-banner span{font-size:.78rem;color:#d6d7dc}.order-eta-banner strong{grid-row:1/3;grid-column:2;font-size:1.35rem}.order-eta-banner small{font-size:.72rem;color:#aeb0b8}

.driver-notification-toggle.is-active{background:#17181d;color:#fff;border-color:#17181d}
.driver-notification-state{margin:-8px 0 14px;padding:10px 12px;border-radius:14px;background:#f4f5f8;color:#555862;font-size:.78rem;line-height:1.4}
.driver-notification-state.is-error{background:#fff0f2;color:#a52336}
.driver-route-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:11px 0}
.driver-route-meta>div{display:grid;gap:3px;padding:10px 11px;border-radius:14px;background:#f6f7fa}.driver-route-meta span{font-size:.69rem;color:var(--muted)}.driver-route-meta strong{font-size:.88rem;color:#25262b}
.driver-contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.driver-contact-actions .btn{min-height:40px}
.driver-qr-tools{display:grid;gap:9px;margin:12px 0;padding:12px;border:1px solid #eceef2;border-radius:17px;background:#fff}.driver-qr-tools>span{font-size:.72rem;color:var(--muted);font-weight:750}.driver-qr-tools__buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}.driver-pay-btn{border:0;border-radius:12px;padding:10px;background:#f3f4f7;color:#25262b;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}.driver-pay-btn:active{transform:scale(.98)}
.driver-qr-panel{display:grid;justify-items:center;gap:6px;padding:12px;border-radius:15px;background:#fafafa}.driver-qr-panel[hidden]{display:none!important}.driver-qr-panel img{width:min(190px,72vw);aspect-ratio:1;object-fit:contain;border-radius:12px;background:#fff}.driver-qr-panel strong{font-size:.88rem}.driver-qr-panel small{color:var(--muted);font-size:.75rem}

@media(max-width:680px){
  .delivery-free-note{font-size:.7rem;padding:8px 9px}.receipt-delivery-free{font-size:.68rem}
  .order-eta-banner{grid-template-columns:1fr auto;padding:12px 13px;border-radius:15px}.order-eta-banner strong{font-size:1.18rem}.order-eta-banner small{font-size:.68rem}
  .driver-route-meta{gap:7px}.driver-route-meta>div{padding:9px 10px}.driver-contact-actions{gap:7px}.driver-qr-tools__buttons{grid-template-columns:1fr 1fr}.driver-pay-btn{padding:9px 7px;font-size:.72rem}
}

/* =========================================================
   V8.4.0 — Admin UX, tablas editables y vistas tipo app
   ========================================================= */
/* Seguimiento: el contenido móvil conserva exactamente el mismo aire a ambos lados. */
@media(max-width:899px){
  .page-content>.order-tracking-screen{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;overflow:hidden}
  .order-tracking-screen>*{max-width:100%;min-width:0}
}
.category-chip__icon img{width:24px;height:24px;object-fit:contain;display:block}

/* Scrollbars discretas estilo aplicación. */
.admin-body,.admin-body *{scrollbar-width:thin;scrollbar-color:rgba(38,39,45,.28) transparent}
.admin-body *::-webkit-scrollbar{width:7px;height:7px}
.admin-body *::-webkit-scrollbar-track{background:transparent}
.admin-body *::-webkit-scrollbar-thumb{background:rgba(38,39,45,.23);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.admin-body *::-webkit-scrollbar-thumb:hover{background:rgba(245,46,64,.46);background-clip:padding-box}

.admin-contained-view{border:1px solid #e8e9ed;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 34px rgba(28,29,34,.045)}
.admin-module-tabs{display:flex;align-items:stretch;gap:0;background:var(--primary);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
.admin-module-tabs::-webkit-scrollbar{display:none}
.admin-module-tabs>button{position:relative;flex:1 0 auto;min-width:140px;min-height:54px;padding:13px 20px;border:0;background:transparent;color:rgba(255,255,255,.76);font:inherit;font-weight:750;cursor:pointer;transition:background .18s ease,color .18s ease}
.admin-module-tabs>button::after{content:"";position:absolute;left:20%;right:20%;bottom:0;height:3px;border-radius:4px 4px 0 0;background:#fff;transform:scaleX(0);transition:transform .2s ease}
.admin-module-tabs>button:hover{background:rgba(255,255,255,.07);color:#fff}
.admin-module-tabs>button.is-active{color:#fff;background:rgba(0,0,0,.07)}
.admin-module-tabs>button.is-active::after{transform:scaleX(1)}
.admin-tab-content{padding:20px;background:#f8f9fb}
.admin-tab-pane[hidden]{display:none!important}
.admin-tab-pane.is-active{animation:adminPaneIn .2s ease}
@keyframes adminPaneIn{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}
.admin-contained-view>.admin-tab-content{max-height:calc(100vh - 210px);overflow:auto;overscroll-behavior:contain}
.admin-tab-content>.admin-tab-pane>.card:first-child{margin-top:0}

.admin-page-head+.admin-import-compact,.admin-page-head+.products-inline-manager{margin-top:22px}
.admin-import-compact{display:grid;gap:13px;margin-bottom:18px}
.admin-inline-import{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:9px;align-items:center}
.products-inline-manager{margin-top:20px!important}
.products-table-head{align-items:flex-start}
.products-table-wrap{margin-top:10px;max-height:min(64vh,680px);border:1px solid #eceef2;border-radius:14px}
.products-inline-table{min-width:1380px}
.products-inline-table th{position:sticky;top:0;z-index:2;background:#f7f8fa}
.products-inline-table .input,.products-inline-table .select{min-width:112px;padding:9px 10px;border-radius:10px;font-size:.78rem}
.products-inline-table .input-money{width:92px;min-width:92px}.products-inline-table .input-stock{width:76px;min-width:76px}
.products-inline-table td{vertical-align:middle}
.check-col{width:44px;text-align:center}
.quick-product-row{background:#fff9fa}.quick-product-row td{border-bottom-color:#f5dfe2}
.quick-product-empty td{padding:14px!important}
.quick-row-placeholder{width:100%;min-height:78px;border:1px dashed rgba(245,46,64,.36);border-radius:14px;background:#fff8f9;display:flex;align-items:center;justify-content:center;gap:9px;color:#565861;cursor:pointer}
.quick-row-placeholder span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;font-size:1.3rem}.quick-row-placeholder strong{color:#26272c}.quick-row-placeholder small{color:var(--muted)}
.quick-row-remove{width:30px;height:30px;border:0;border-radius:9px;background:#fff0f2;color:var(--primary);font-size:1.2rem;cursor:pointer}
.quick-row-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#fff0f2;color:#b72134;font-size:.67rem;font-weight:800}
.quick-product-actions{position:sticky;bottom:0;z-index:3;display:flex;justify-content:flex-end;gap:9px;margin:0 -18px -18px;padding:12px 18px;background:rgba(255,255,255,.95);border-top:1px solid #eceef2;backdrop-filter:blur(10px)}
.quick-product-actions[hidden]{display:none!important}
.inline-file-picker{display:inline-flex;align-items:center;justify-content:center;min-width:102px;min-height:36px;padding:7px 10px;border:1px dashed #ccd0d8;border-radius:10px;background:#fff;cursor:pointer;font-size:.72rem;font-weight:750}.inline-file-picker input{position:absolute;opacity:0;pointer-events:none}
.inline-check{display:flex;gap:6px;align-items:center;font-size:.75rem}.admin-product-cell{display:flex;align-items:center;gap:9px;min-width:190px}.admin-product-cell img{width:42px;height:42px;border-radius:10px;object-fit:cover}.admin-product-cell span{display:grid;gap:2px}.admin-product-cell small{color:var(--muted)}.admin-table-description{display:block;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btn-danger-soft{background:#fff0f2!important;color:#b71f34!important;border-color:#ffd6dc!important}.btn-danger-soft:hover{background:#ffe2e7!important}

.admin-form-narrow,.settings-narrow-card{max-width:820px;margin-inline:auto}
.input-compact{padding:9px 10px!important;min-height:38px!important}.input-order{max-width:90px}
.category-icon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.category-icon-card{padding:14px;border:1px solid #e9eaf0;border-radius:15px;background:#fff;display:grid;gap:11px}.category-icon-card__title{display:grid;gap:2px}.category-icon-card__title small{color:var(--muted);font-size:.7rem}.category-icon-upload{display:flex;min-height:40px;align-items:center;justify-content:center;border:1px dashed #cfd2d9;border-radius:11px;cursor:pointer;font-size:.74rem;font-weight:750}.category-icon-upload input{position:absolute;opacity:0;pointer-events:none}.category-icon-preview{width:54px;height:54px;border-radius:13px;object-fit:contain;background:#f5f5f7;padding:7px}

/* Pedidos: tabla operativa, scroll lateral y resaltado de flujo. */
.orders-table-card{padding:0!important;overflow:hidden}.orders-toolbar--table{display:grid;grid-template-columns:minmax(260px,1fr) minmax(170px,220px) auto;gap:10px;padding:16px 18px;border-bottom:1px solid #eceef2;background:#fff;align-items:center}.order-status-filter{height:42px}.orders-horizontal-table{max-height:calc(100vh - 245px);border-radius:0}.orders-table{min-width:1300px}.orders-table thead th{position:sticky;top:0;z-index:4;background:#f7f8fa}.admin-order-row{cursor:pointer;transition:background .18s ease}.admin-order-row td:first-child{box-shadow:inset 4px 0 0 transparent}.admin-order-row.is-new td{background:#fff3f5}.admin-order-row.is-new td:first-child{box-shadow:inset 4px 0 0 #ed2f47}.admin-order-row.is-preparing td{background:#fff8ed}.admin-order-row.is-preparing td:first-child{box-shadow:inset 4px 0 0 #ed9c2f}.admin-order-row.is-assigned td{background:#f0faf3}.admin-order-row.is-assigned td:first-child{box-shadow:inset 4px 0 0 #38a861}.admin-order-row:hover td{filter:brightness(.985)}.admin-order-row td small{display:block;margin-top:3px;color:var(--muted);max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-order-code-text{white-space:nowrap}.muted{color:var(--muted)}
.admin-order-modal{width:min(980px,calc(100vw - 28px));max-width:980px;padding:0;border:0;background:transparent}.admin-order-modal::backdrop{background:rgba(12,13,17,.5);backdrop-filter:blur(4px)}.admin-order-modal__panel{width:100%;max-height:min(88vh,850px);overflow:auto;background:#fff;border-radius:20px;padding:19px;box-shadow:0 25px 80px rgba(0,0,0,.22)}.order-modal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0}.order-modal-summary>div{display:grid;gap:3px;padding:12px;border-radius:14px;background:#f6f7f9}.order-modal-summary small,.order-modal-meta small{font-size:.68rem;color:var(--muted)}.order-modal-summary span{font-size:.75rem;color:var(--muted)}.order-modal-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.order-modal-grid>section{padding:14px;border:1px solid #eceef2;border-radius:15px}.order-modal-grid h4{margin:0 0 10px}.order-modal-items{display:grid;gap:7px}.order-modal-item{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eef0f3}.order-modal-item:last-child{border-bottom:0}.order-modal-item span{display:grid;gap:2px}.order-modal-item small{color:var(--muted);font-size:.72rem}.order-modal-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.order-modal-meta>div{display:grid;gap:2px;padding:9px;border-radius:11px;background:#f7f8fa}.order-modal-meta strong{font-size:.78rem;overflow-wrap:anywhere}.order-modal-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px;padding-top:14px;border-top:1px solid #eceef2}.order-modal-actions form{display:flex;gap:7px;align-items:center}.order-modal-actions form[hidden]{display:none!important}.order-modal-actions .select{min-width:190px}

/* Clientes */
.customers-manager{padding:18px}.customer-history-panel{width:min(760px,calc(100vw - 30px))}.customer-order-timeline{display:grid;gap:6px;margin-top:12px;max-height:60vh;overflow:auto}.customer-timeline-item{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:9px;padding:11px 10px;border-radius:13px;background:#f8f9fb}.customer-timeline-dot{width:9px;height:9px;margin-top:5px;border-radius:50%;background:var(--primary)}.customer-timeline-item div{display:grid;gap:2px}.customer-timeline-item small{color:var(--muted);font-size:.7rem}.customer-timeline-item em{font-style:normal;font-size:.72rem;color:#555862}.customer-timeline-item b{align-self:center;font-size:.82rem}

/* Motorizados */
.vehicle-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-1px;border:1px solid rgba(0,0,0,.15)}.color-input-row{display:grid;grid-template-columns:60px 1fr;gap:10px;align-items:center}.color-picker{width:60px!important;min-width:60px;padding:4px!important;height:42px}.color-input-row span{font-weight:800;font-size:.8rem;color:#51535a}

/* Secciones de inicio y Tienda/Ventas */
.home-sections-builder{display:grid;gap:14px}.home-section-editor{padding:15px;border:1px solid #e7e9ee;border-radius:16px;background:#fff}.home-section-editor__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.product-picker{margin-top:12px;border:1px solid #e9eaf0;border-radius:14px;overflow:hidden}.product-picker__head{display:grid;grid-template-columns:1fr minmax(180px,280px);align-items:center;gap:10px;padding:10px 12px;background:#f7f8fa}.product-picker__head label{font-weight:800;font-size:.78rem}.product-picker__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px;max-height:265px;overflow:auto}.product-picker-item{display:flex;gap:8px;align-items:center;padding:9px;border:1px solid #eceef2;border-radius:11px;cursor:pointer;background:#fff}.product-picker-item:has(input:checked){border-color:rgba(245,46,64,.34);background:#fff6f7}.product-picker-item span{display:grid;gap:1px}.product-picker-item strong{font-size:.74rem}.product-picker-item small{font-size:.66rem;color:var(--muted)}.admin-save-bar{position:sticky;bottom:-20px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px -20px -20px;padding:13px 20px;border-top:1px solid #e7e9ed;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.admin-save-bar span{font-size:.76rem;color:var(--muted)}

/* Configuración */
.settings-admin-form{display:block}.settings-grid{align-items:start}.brand-logo-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;align-items:center}.brand-logo-preview{display:grid;place-items:center;min-height:140px;padding:18px;border-radius:16px;background:#f5f6f8;border:1px solid #e8e9ee}.brand-logo-preview img{max-width:100%;max-height:105px;object-fit:contain}.brand-logo-editor__body{display:grid;gap:12px}.admin-file-drop{display:flex;align-items:center;justify-content:center;min-height:74px;padding:12px;border:1px dashed #c8ccd4;border-radius:14px;background:#fafbfc;cursor:pointer}.admin-file-drop input{position:absolute;opacity:0;pointer-events:none}.admin-file-drop span{display:grid;text-align:center;gap:3px}.admin-file-drop small{color:var(--muted);font-size:.7rem}.color-field{display:grid;grid-template-columns:52px 1fr;gap:8px}.color-field input[type=color]{width:52px;height:44px;padding:3px;border:1px solid #dddfe5;border-radius:11px;background:#fff}.integration-state{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:11px;border-radius:12px;background:#f6f7fa}.integration-state small{grid-column:1/-1;color:var(--muted)}

/* Delivery utiliza el mismo patrón visual que Categorías y Configuración. */
.delivery-admin-view .admin-delivery-tabs{border-radius:0}.admin-delivery-tab-content{padding:20px}.admin-delivery-tab-content>.admin-delivery-pane{margin:0}.delivery-admin-view .admin-delivery-pane[hidden]{display:none!important}.delivery-admin-view .admin-delivery-pane.is-active{animation:adminPaneIn .2s ease}.delivery-admin-view .admin-delivery-pane>.admin-grid:first-child,.delivery-admin-view .admin-delivery-pane>.card:first-child{margin-top:0}

/* Notificaciones leídas */
.admin-notification-tools{display:flex;gap:6px;padding:8px 11px;border-bottom:1px solid #edf0f3}.admin-notification-tools button{border:0;background:transparent;color:#595b63;font:inherit;font-size:.69rem;font-weight:800;cursor:pointer;padding:6px 7px;border-radius:8px}.admin-notification-tools button:hover{background:#f3f4f7;color:var(--primary)}.admin-notification-item.is-read{opacity:.58;background:#fff}.admin-notification-item.is-read .admin-notification-item__dot{background:#c8cbd2!important}

@media(max-width:1100px){
  .category-icon-grid,.product-picker__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .orders-toolbar--table{grid-template-columns:minmax(220px,1fr) 180px}.orders-toolbar--table>.row-actions{grid-column:1/-1;justify-content:flex-end}
  .brand-logo-editor{grid-template-columns:140px minmax(0,1fr)}
}
@media(max-width:760px){
  .admin-contained-view>.admin-tab-content{max-height:none;overflow:visible}.admin-tab-content{padding:12px}.admin-module-tabs>button{min-width:120px;min-height:48px;padding:11px 14px;font-size:.78rem}.admin-save-bar{bottom:0;margin:14px -12px -12px;padding:10px 12px;flex-direction:column;align-items:stretch}.admin-save-bar .btn{width:100%}
  .admin-inline-import{grid-template-columns:1fr 1fr}.admin-inline-import .input{grid-column:1/-1}.products-table-head{display:grid!important;gap:10px}.products-table-head .row-actions{justify-content:flex-start;flex-wrap:wrap}.quick-row-placeholder{display:grid;grid-template-columns:auto 1fr;text-align:left;justify-content:start}.quick-row-placeholder small{grid-column:2}.quick-product-actions{justify-content:stretch}.quick-product-actions .btn{flex:1}
  .category-icon-grid,.product-picker__grid{grid-template-columns:1fr}.product-picker__head{grid-template-columns:1fr}.product-picker__grid{max-height:320px}
  .orders-toolbar--table{grid-template-columns:1fr;padding:12px}.orders-toolbar--table>.row-actions{grid-column:auto;justify-content:flex-start;overflow-x:auto}.orders-horizontal-table{max-height:65vh}.admin-order-modal__panel{padding:14px;border-radius:17px}.order-modal-summary,.order-modal-grid{grid-template-columns:1fr}.order-modal-actions{display:grid}.order-modal-actions form{display:grid;grid-template-columns:1fr auto}.order-modal-actions .select{min-width:0}.order-modal-actions [data-order-delete-form]{grid-template-columns:1fr}.order-modal-actions [data-order-delete-form] .btn{width:100%}
  .brand-logo-editor{grid-template-columns:1fr}.brand-logo-preview{min-height:110px}.settings-grid{grid-template-columns:1fr!important}
}

/* =========================================================
   V8.4.1 — correcciones de tablas, sidebar, iconos y ubicación
   ========================================================= */

/* Sidebar de escritorio: ocupa siempre todo el alto visible y nunca queda "corto". */
@media (min-width:900px){
  .admin-shell{
    display:block!important;
    width:100%!important;
    min-height:100dvh!important;
  }
  .admin-sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:260px!important;
    min-width:260px!important;
    max-width:260px!important;
    height:100dvh!important;
    min-height:100dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  .admin-main{
    margin-left:260px!important;
    width:calc(100% - 260px)!important;
    max-width:calc(100% - 260px)!important;
    min-height:100dvh!important;
  }
  .admin-logout{
    position:sticky;
    bottom:-1px;
    margin-top:auto;
    padding:16px 2px 2px;
    background:linear-gradient(180deg,rgba(31,32,37,0),#1f2025 24%,#1f2025 100%);
    z-index:4;
  }
}

/* Tabla de productos: scroll vertical y horizontal reales y visibles. */
.products-table-wrap{
  height:min(64vh,680px)!important;
  max-height:min(64vh,680px)!important;
  overflow-x:scroll!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable both-edges;
  scroll-behavior:smooth;
}
@media (min-width:900px){
  .admin-content .products-table-wrap{
    overflow-x:scroll!important;
    overflow-y:scroll!important;
  }
}
.products-table-wrap::-webkit-scrollbar{width:11px!important;height:11px!important}
.products-table-wrap::-webkit-scrollbar-track{background:#eef0f4!important;border-radius:999px}
.products-table-wrap::-webkit-scrollbar-thumb{background:#aeb3bd!important;border:2px solid #eef0f4!important;border-radius:999px!important;background-clip:padding-box!important}
.products-table-wrap::-webkit-scrollbar-thumb:hover{background:#858b97!important;background-clip:padding-box!important}

/* Acciones compactas de la tabla de productos. */
.table-icon-actions{display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;white-space:nowrap}
.table-action-icon{
  appearance:none;
  width:36px;
  height:36px;
  min-width:36px;
  display:inline-grid;
  place-items:center;
  border:1px solid #e5e7ec;
  border-radius:11px;
  background:#fff;
  color:#4c4f57;
  cursor:pointer;
  transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease;
  list-style:none;
}
.table-action-icon::-webkit-details-marker{display:none}
.table-action-icon svg{width:18px;height:18px}
.table-action-icon:hover{background:#f3f4f7;color:#17181c;border-color:#d7dae1;transform:translateY(-1px)}
.table-action-icon--danger{color:#c62339;background:#fff7f8;border-color:#ffe0e5}
.table-action-icon--danger:hover{background:#ffe9ed;color:#a6162b;border-color:#ffcbd4}

/* Categorías: el checkbox de cabecera ya cumple la función "Seleccionar todo". */
.categories-table-wrap{overflow:auto;scrollbar-gutter:stable}

/* Editor visual de iconos: lista ordenada y preview idéntico al storefront. */
.category-icons-form{overflow:visible!important}
.category-icon-list{display:grid;border:1px solid #e8eaf0;border-radius:16px;background:#fff;overflow:visible}
.category-icon-list-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(180px,1fr) 72px 44px;
  align-items:center;
  gap:14px;
  min-height:82px;
  padding:12px 14px;
  border-bottom:1px solid #eceef3;
}
.category-icon-list-row:last-child{border-bottom:0}
.category-icon-list-row__category{display:grid;gap:3px;min-width:0}
.category-icon-list-row__category strong{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.category-icon-list-row__category small{font-size:.7rem;color:var(--muted)}
.category-icon-live-preview{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  justify-self:center;
  border-radius:17px;
  background:#fff4f5;
  color:var(--primary);
  border:1px solid #ffe2e6;
  overflow:hidden;
}
.category-icon-live-preview svg{width:30px;height:30px}
.category-icon-live-preview img{width:100%;height:100%;object-fit:contain;padding:8px}
.category-icon-editor{position:relative;justify-self:end}
.category-icon-editor[open]{z-index:20}
.category-icon-editor__panel{
  position:absolute;
  right:0;
  top:calc(100% + 9px);
  z-index:30;
  width:min(410px,calc(100vw - 330px));
  min-width:350px;
  padding:14px;
  border:1px solid #e5e7ed;
  border-radius:16px;
  background:#fff;
  box-shadow:0 20px 55px rgba(25,26,31,.16);
}
.category-icon-editor__panel>strong{display:block;margin:0 0 10px;font-size:.78rem}
.category-icon-visual-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.category-icon-choice{position:relative;cursor:pointer}
.category-icon-choice input{position:absolute;opacity:0;pointer-events:none}
.category-icon-choice__visual{
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:1;
  min-height:48px;
  border:1px solid #e7e9ee;
  border-radius:13px;
  background:#f8f9fb;
  color:#555963;
  transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease;
}
.category-icon-choice__visual svg{width:24px;height:24px}
.category-icon-choice:hover .category-icon-choice__visual{transform:translateY(-1px);border-color:#cfd3db;background:#fff}
.category-icon-choice input:checked + .category-icon-choice__visual{border-color:var(--primary);background:#fff1f3;color:var(--primary);box-shadow:0 0 0 2px rgba(245,46,64,.08)}
.category-icon-upload--row{margin-top:11px;min-height:42px}
.category-icon-upload--row span{display:flex;align-items:center;gap:7px}
.category-icon-upload--row svg{width:17px;height:17px}

/* Modal de ubicación: el fondo oscuro/desenfocado pertenece al propio overlay,
   por lo que también se ve correctamente durante la apertura obligatoria inicial. */
#location-modal:not([hidden]){
  background:rgba(8,9,13,.62)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
#location-modal .modal__backdrop{
  background:rgba(8,9,13,.22)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}

@media(max-width:899px){
  .products-table-wrap{height:60dvh!important;max-height:60dvh!important}
  .category-icon-list-row{grid-template-columns:minmax(0,1fr) 62px 40px;gap:9px;padding:10px 11px}
  .category-icon-live-preview{width:52px;height:52px;border-radius:15px}
  .category-icon-editor__panel{position:fixed;left:12px;right:12px;top:auto;bottom:16px;width:auto;min-width:0;max-height:56dvh;overflow:auto;border-radius:20px;z-index:1600}
  .category-icon-visual-picker{grid-template-columns:repeat(5,1fr)}
}
@media(max-width:420px){
  .category-icon-visual-picker{grid-template-columns:repeat(4,1fr)}
  .category-icon-list-row__category small{font-size:.66rem}
}

/* =========================================================
   V8.4.2 — flujo continuo, categorías rápidas y editor visual
   ========================================================= */

/* Pedidos: la tabla vuelve a tener desplazamiento vertical real en escritorio. */
.admin-content .orders-horizontal-table{
  height:min(66vh,720px);
  max-height:min(66vh,720px)!important;
  overflow-x:scroll!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable both-edges;
}
.orders-horizontal-table::-webkit-scrollbar{width:11px!important;height:11px!important}
.orders-horizontal-table::-webkit-scrollbar-track{background:#eef0f4!important;border-radius:999px}
.orders-horizontal-table::-webkit-scrollbar-thumb{background:#aeb3bd!important;border:2px solid #eef0f4!important;border-radius:999px!important;background-clip:padding-box!important}
.order-status-filter{height:50px!important;min-height:50px!important;padding:0 42px 0 14px!important;line-height:1.25!important;overflow:visible!important}

/* Buscador inteligente de productos. */
.admin-smart-search{position:relative;display:flex;align-items:center;gap:10px;margin:2px 0 12px}
.admin-smart-search .input{padding-left:43px;padding-right:112px;min-height:48px}
.admin-smart-search__icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);display:grid;color:#858994;z-index:2}
.admin-smart-search__icon svg{width:19px;height:19px}
.admin-smart-search__count{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:.7rem;font-weight:800;color:#7f828b;background:#f3f4f7;border-radius:999px;padding:5px 8px;pointer-events:none}

/* Categorías en una sola tabla: alta rápida + icono editable por fila. */
.categories-inline-manager{overflow:visible}
.categories-table-wrap{max-height:min(66vh,700px);overflow:scroll!important;scrollbar-gutter:stable both-edges}
.categories-inline-table{min-width:900px}
.categories-inline-table td{vertical-align:middle}
.categories-inline-table .input{min-width:150px}
.categories-inline-table .input-order{min-width:78px;width:78px}
.category-icon-table-cell{width:110px;overflow:visible!important}
.category-icon-inline{display:flex;align-items:center;gap:9px;overflow:visible}
.category-icon-live-preview--table{width:48px;height:48px;border-radius:14px;flex:0 0 48px}
.category-icon-live-preview--table svg{width:25px;height:25px}
.category-icon-live-preview--table img{width:100%;height:100%;object-fit:contain;padding:6px}
.categories-inline-table .category-icon-editor__panel{position:fixed;right:28px;top:145px;z-index:1700;width:410px;min-width:350px;max-height:calc(100vh - 180px);overflow:auto}
.quick-category-row{background:#fff9fa}.quick-category-row td{border-bottom-color:#f5dfe2}
.quick-category-empty td{padding:14px!important}
.quick-category-actions{position:sticky;bottom:0;z-index:8;display:flex;justify-content:flex-end;gap:9px;margin:12px -18px -18px;padding:12px 18px;background:rgba(255,255,255,.96);border-top:1px solid #eceef2;backdrop-filter:blur(10px)}
.quick-category-actions[hidden]{display:none!important}

/* Campañas por correo con adjunto y vista previa. */
.customer-campaign-modal{width:min(1080px,calc(100vw - 28px));max-width:1080px;background:transparent;box-shadow:none}
.customer-campaign-panel{background:#fff;border-radius:22px;padding:18px;max-height:90vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.22)}
.customer-campaign-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:18px;margin-top:16px}
.customer-campaign-editor{align-content:start}
.campaign-file-picker{display:flex;min-height:76px;border:1px dashed #cfd3dc;border-radius:15px;background:#fafbfc;align-items:center;justify-content:center;text-align:center;cursor:pointer;padding:12px}
.campaign-file-picker input{position:absolute;opacity:0;pointer-events:none}
.campaign-file-picker span{display:grid;gap:4px}.campaign-file-picker strong{font-size:.82rem}.campaign-file-picker small{font-size:.69rem;color:var(--muted)}
.campaign-file-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:9px 11px;border-radius:11px;background:#f2f4f7;font-size:.75rem}.campaign-file-selected small{color:var(--muted)}
.campaign-helper{display:block;color:var(--muted);font-size:.7rem;line-height:1.45}
.campaign-email-preview{background:#f3f4f6;border-radius:18px;padding:14px}
.campaign-email-preview__label{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.campaign-email-preview__label span{font-weight:850;font-size:.8rem}.campaign-email-preview__label small{color:var(--muted);font-size:.68rem}
.campaign-email-card{overflow:hidden;border:1px solid #e5e7eb;border-radius:16px;background:#fff;box-shadow:0 9px 26px rgba(20,20,28,.06)}
.campaign-email-card__brand{display:flex;align-items:center;gap:9px;padding:14px 16px;background:#191a1e;color:#fff}.campaign-email-card__brand img{width:30px;height:30px;border-radius:9px;object-fit:cover}.campaign-email-card__brand strong{font-size:.82rem}
.campaign-email-card__content{padding:20px 18px}.campaign-email-card__content>small{color:#777;font-size:.7rem}.campaign-email-card__content h4{font-size:1.2rem;margin:5px 0 11px}.campaign-email-card__content p{white-space:pre-line;font-size:.82rem;line-height:1.55;color:#45474e;margin:0}.campaign-email-card__image{margin:12px 0}.campaign-email-card__image img{width:100%;max-height:240px;object-fit:cover;border-radius:13px}.campaign-email-card__attachment{margin-top:13px;padding:9px 10px;background:#f5f6f8;border-radius:10px;font-size:.72rem;font-weight:700}.campaign-email-card__footer{padding:11px 16px;background:#fafafa;color:#92949b;font-size:.66rem}
.customer-campaign-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:15px;margin-top:15px;border-top:1px solid #eceef3}

/* Editor visual de Página principal. */
.commerce-admin>.admin-tab-content{padding:0}
.commerce-config-form>[data-admin-pane="home"]{background:#f4f5f8}
.home-visual-editor{background:#f4f5f8;min-height:720px}
.home-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;background:#fff;border-bottom:1px solid #e5e7ec;position:sticky;top:0;z-index:18}
.home-editor-toolbar h3{margin:0 0 3px;font-size:1.08rem}.home-editor-toolbar p{margin:0;color:var(--muted);font-size:.76rem}.home-editor-toolbar__actions{display:flex;gap:9px}.home-editor-toolbar__actions .btn{display:inline-flex;align-items:center;gap:7px}.home-editor-toolbar__actions svg{width:18px;height:18px}
.home-editor-workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px;padding:12px;align-items:start}
.home-editor-canvas{min-width:0;max-height:calc(100vh - 270px);overflow:auto;background:#fff;border:1px solid #e5e7ec;border-radius:17px;padding:12px;scrollbar-gutter:stable}
.home-editor-hero{position:relative;height:260px;border-radius:16px;overflow:hidden;background:#202126;margin-bottom:10px}.home-editor-hero>img{width:100%;height:100%;object-fit:cover}.home-editor-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.08))}.home-editor-hero__copy{position:absolute;left:7%;top:50%;transform:translateY(-50%);max-width:55%;color:#fff}.home-editor-hero__copy h4{font-size:1.65rem;line-height:1.08;margin:0 0 6px}.home-editor-hero__copy p{font-size:.82rem;line-height:1.45;margin:0 0 12px}.home-editor-hero__copy span{display:inline-block;background:#fff;color:#222;border-radius:999px;padding:8px 13px;font-size:.72rem;font-weight:800}.home-editor-hero__fallback{height:100%;display:grid;place-content:center;text-align:center;color:#fff;gap:7px}.home-editor-hero__fallback strong{font-size:1.45rem}.home-editor-hero__fallback span{color:#bbb;font-size:.78rem}
.home-editor-category-strip{display:flex;gap:7px;overflow:auto;padding:7px 2px 11px}.home-editor-category-strip span{white-space:nowrap;background:#f3f4f7;border-radius:999px;padding:7px 12px;font-size:.68rem;color:#595c65}.home-editor-category-strip span.is-active{background:var(--primary);color:#fff;font-weight:800}
.home-editor-sections{display:grid;gap:11px}.home-preview-section{border:1px solid #e5e7ed;border-radius:16px;padding:11px;background:#fff;transition:border-color .15s,box-shadow .15s,opacity .15s}.home-preview-section.is-drop-target{border-color:#4a7cf0;box-shadow:0 0 0 3px rgba(74,124,240,.1)}.home-preview-section.is-dragging{opacity:.55}
.home-preview-section__top{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:9px}.home-section-drag{width:32px;height:42px;border:0;border-radius:9px;background:#f4f5f7;color:#858891;display:grid;place-items:center;cursor:grab}.home-section-drag:active{cursor:grabbing}.home-section-drag svg{width:17px;height:22px}.home-preview-section__titles{min-width:0;display:grid;gap:2px}.home-section-title-input,.home-section-subtitle-input{border:0;outline:0;background:transparent;width:100%;padding:1px 4px}.home-section-title-input{font-size:1.05rem;font-weight:900;color:#202126}.home-section-subtitle-input{font-size:.7rem;color:var(--muted)}.home-preview-section__titles:focus-within{background:#f8f9fb;border-radius:9px;padding:4px}.home-preview-section__actions{display:flex;gap:5px}.section-move-btn,.section-remove-btn{width:30px;height:30px;border:1px solid #e7e9ee;border-radius:9px;background:#fff;cursor:pointer;color:#696c74}.section-remove-btn{color:#c72b40;background:#fff6f7}
.home-preview-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:stretch}.home-preview-product{position:relative;border:1px solid #eceef2;border-radius:13px;padding:7px;background:#fff;min-width:0;cursor:grab}.home-preview-product:active{cursor:grabbing}.home-preview-product>[data-section-product-remove]{position:absolute;right:5px;top:5px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(25,26,30,.78);color:#fff;cursor:pointer;z-index:2}.home-preview-product__image{height:92px;border-radius:10px;background:#f5f6f8;overflow:hidden;display:grid;place-items:center;margin-bottom:6px}.home-preview-product__image img{width:100%;height:100%;object-fit:cover}.home-preview-product strong{display:block;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-preview-product small{display:block;color:var(--muted);font-size:.61rem;margin:2px 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-preview-product b{font-size:.76rem}.home-section-dropzone{grid-column:span 2;min-height:128px;border:1.5px dashed #7aa0f8;border-radius:13px;background:#f5f8ff;color:#4776e7;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;text-align:center}.home-section-dropzone svg{width:28px;height:28px}.home-section-dropzone span{font-size:.71rem;font-weight:750}.home-add-section{width:100%;border:1.5px dashed #cfd3dc;border-radius:15px;background:#fafbfc;display:grid;grid-template-columns:auto auto 1fr;align-items:center;justify-content:start;gap:9px;text-align:left;padding:12px;margin-top:11px;cursor:pointer}.home-add-section>span{width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:1.15rem}.home-add-section strong{font-size:.76rem}.home-add-section small{font-size:.67rem;color:var(--muted)}
.home-product-library{position:sticky;top:0;background:#fff;border:1px solid #e5e7ec;border-radius:17px;padding:12px;max-height:calc(100vh - 270px);display:flex;flex-direction:column;min-height:520px}.home-product-library__head h4{margin:0 0 3px;font-size:.9rem}.home-product-library__head p{margin:0;color:var(--muted);font-size:.68rem}.home-product-library__search{position:relative;margin:11px 0 8px}.home-product-library__search svg{position:absolute;width:18px;height:18px;left:11px;top:50%;transform:translateY(-50%);color:#858892}.home-product-library__search input{width:100%;height:40px;border:1px solid #e1e4e9;border-radius:11px;padding:0 10px 0 37px;outline:0;background:#f8f9fb;font-size:.73rem}.home-product-library__filters{display:flex;gap:6px;overflow:auto;padding-bottom:8px}.home-product-library__filters button{white-space:nowrap;border:1px solid #e6e8ed;background:#fff;border-radius:999px;padding:6px 10px;font-size:.64rem;cursor:pointer}.home-product-library__filters button.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.home-product-library__list{display:grid;gap:7px;overflow:auto;padding-right:2px}.home-library-product{display:grid;grid-template-columns:20px 52px minmax(0,1fr) auto 28px;gap:8px;align-items:center;border:1px solid #e8eaf0;border-radius:12px;padding:7px;background:#fff;cursor:grab}.home-library-product:active{cursor:grabbing}.home-library-product__drag{color:#858892;font-weight:900}.home-library-product__image{width:52px;height:44px;border-radius:9px;overflow:hidden;background:#f4f5f7;display:grid;place-items:center}.home-library-product__image img{width:100%;height:100%;object-fit:cover}.home-library-product>div:nth-of-type(2){min-width:0;display:grid;gap:2px}.home-library-product strong{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-library-product small{font-size:.61rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-library-product b{font-size:.69rem;white-space:nowrap}.home-library-product button{width:27px;height:27px;border:0;border-radius:8px;background:#f3f4f7;cursor:pointer;font-weight:900}

/* Pagos: Yape/Plin compactos. */
.payments-admin-grid{align-items:start}.payment-wallet-card--compact{padding-bottom:12px}.wallet-compact-row{display:grid;grid-template-columns:68px minmax(0,1fr);gap:11px;align-items:center;padding:11px 0;border-top:1px solid #eceef3}.wallet-compact-row:first-of-type{border-top:0;padding-top:2px}.wallet-compact-row__brand{display:grid;gap:7px;justify-items:start}.wallet-compact-row__brand strong{font-size:.8rem}.wallet-compact-row__brand img{width:54px;height:54px;border-radius:10px;object-fit:contain;border:1px solid #eceef3;padding:3px}.wallet-compact-row__fields{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;align-items:center}.wallet-upload{position:relative;display:grid;place-items:center;min-height:38px;border:1px dashed #cfd3dc;border-radius:10px;padding:0 9px;cursor:pointer;white-space:nowrap}.wallet-upload input{position:absolute;opacity:0;pointer-events:none}.wallet-upload span{font-size:.66rem;font-weight:750;color:#5b5f68}

@media(max-width:1180px){
  .home-editor-workspace{grid-template-columns:minmax(0,1fr) 300px}.home-preview-products{grid-template-columns:repeat(3,minmax(0,1fr))}.home-section-dropzone{grid-column:span 2}.home-library-product{grid-template-columns:18px 44px minmax(0,1fr) auto}.home-library-product>b{display:none}.home-library-product__image{width:44px;height:40px}
}
@media(max-width:899px){
  .admin-content .orders-horizontal-table{height:62dvh;max-height:62dvh!important;overflow:scroll!important}.order-status-filter{height:48px!important;min-height:48px!important}
  .admin-smart-search .input{padding-right:14px}.admin-smart-search__count{position:static;transform:none;white-space:nowrap}.admin-smart-search{display:grid;grid-template-columns:1fr auto}.admin-smart-search__icon{left:14px}.admin-smart-search .input{grid-column:1/-1}.admin-smart-search__count{grid-row:2;grid-column:2}
  .categories-table-wrap{height:60dvh;max-height:60dvh}.categories-inline-table .category-icon-editor__panel{position:fixed;left:12px;right:12px;top:auto;bottom:16px;width:auto;min-width:0;max-height:56dvh}.quick-category-actions{justify-content:stretch}.quick-category-actions .btn{flex:1}
  .customer-campaign-grid{grid-template-columns:1fr}.campaign-email-preview{order:2}.customer-campaign-actions{position:sticky;bottom:-18px;background:#fff;padding:12px 0 0}
  .commerce-admin>.admin-tab-content{padding:0}.home-editor-toolbar{align-items:flex-start}.home-editor-toolbar__actions .btn{padding:9px 10px;font-size:.7rem}.home-editor-workspace{grid-template-columns:1fr;padding:8px}.home-editor-canvas,.home-product-library{max-height:none}.home-product-library{position:relative;min-height:0;order:-1}.home-product-library__list{max-height:300px}.home-editor-hero{height:210px}.home-preview-products{grid-template-columns:repeat(2,minmax(0,1fr))}.home-section-dropzone{grid-column:1/-1;min-height:92px}.home-preview-section__actions .section-move-btn{display:none}.wallet-compact-row__fields{grid-template-columns:1fr}.wallet-upload{min-height:42px}.payments-admin-grid{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  .home-editor-toolbar{display:grid}.home-editor-toolbar__actions{width:100%}.home-editor-toolbar__actions .btn{flex:1;justify-content:center}.home-preview-section__top{grid-template-columns:28px minmax(0,1fr) 32px}.home-section-drag{width:28px}.home-preview-section__actions .section-remove-btn{width:30px}.home-preview-product__image{height:78px}.home-editor-hero__copy{max-width:78%}.home-editor-hero__copy h4{font-size:1.25rem}.customer-campaign-actions .btn{flex:1}
}

/* =========================================================
   V8.4.3 — selector de iconos, biblioteca y delivery por zonas
   ========================================================= */

/* La biblioteca ya no corta la última categoría: los filtros se acomodan en varias líneas. */
.home-product-library__filters{
  display:flex!important;
  flex-wrap:wrap!important;
  align-content:flex-start;
  gap:6px!important;
  overflow:visible!important;
  padding:0 0 9px!important;
  scrollbar-width:none;
}
.home-product-library__filters::-webkit-scrollbar{display:none}
.home-product-library__filters button{flex:0 0 auto;max-width:100%}

/* Administrable de delivery simplificado a polígonos/precio por zona. */
.delivery-zones-simple .admin-delivery-tab-content{padding:16px}
.delivery-zone-manager{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.7fr);gap:14px;align-items:stretch}
.delivery-zone-manager__map-card,.delivery-zone-manager__side{background:#fff;border:1px solid #e5e7ec;border-radius:18px;overflow:hidden}
.delivery-zone-manager__map-card{padding:13px;min-width:0}
.delivery-zone-manager__map-head,.delivery-zone-manager__side-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.delivery-zone-manager__map-head{padding:2px 2px 12px}
.delivery-zone-manager__map-head h3,.delivery-zone-manager__side-head h3{margin:0 0 3px;font-size:.96rem}
.delivery-zone-manager__map-head p,.delivery-zone-manager__side-head p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.4}
.delivery-zone-manager__map{position:relative;height:min(64vh,620px);min-height:460px;border-radius:15px;overflow:hidden;background:#e8ecef;z-index:1}
.delivery-zone-manager__map .leaflet-container{width:100%;height:100%;font:inherit}
.delivery-zone-manager__map .leaflet-control-attribution{font-size:9px}
.delivery-zone-manager__hint{display:flex;align-items:center;gap:7px;padding:10px 3px 0;color:#666a73;font-size:.69rem}
.delivery-zone-manager__hint span{width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.11)}
.delivery-map-unavailable{height:100%;display:grid;place-content:center;text-align:center;gap:5px;color:#666}.delivery-map-unavailable span{font-size:.75rem;color:var(--muted)}

.delivery-zone-manager__side{display:flex;flex-direction:column;min-height:0}
.delivery-zone-manager__side-head{padding:14px 14px 11px;border-bottom:1px solid #eceef2}
.delivery-zone-manager__side-head>span{font-size:.66rem;font-weight:850;color:#747881;background:#f3f4f7;border-radius:999px;padding:6px 8px;white-space:nowrap}
.delivery-zone-list{display:grid;align-content:start;overflow:auto;max-height:min(46vh,440px);scrollbar-gutter:stable}
.delivery-zone-list__row{display:grid;grid-template-columns:34px minmax(0,1fr) 30px 26px;gap:7px;align-items:center;padding:9px 10px;border-bottom:1px solid #eef0f3}
.delivery-zone-list__row:hover{background:#fbfbfc}
.delivery-zone-color-btn{width:32px;height:32px;border:0;border-radius:9px;background:color-mix(in srgb,var(--zone-color) 16%,#fff);color:var(--zone-color);display:grid;place-items:center;cursor:pointer}
.delivery-zone-color-btn svg{width:17px;height:17px}
.delivery-zone-inline-form{display:grid;grid-template-columns:minmax(0,1fr) 37px 29px;gap:7px;align-items:center;min-width:0}
.delivery-zone-inline-form__main{display:grid;gap:5px;min-width:0}.delivery-zone-inline-form__main>strong{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.delivery-zone-inline-form__main label{display:grid;grid-template-columns:auto 34px minmax(70px,1fr);align-items:center;gap:5px}.delivery-zone-inline-form__main label small{display:none}.delivery-zone-inline-form__main label span{font-size:.62rem;color:#787c84}.delivery-zone-inline-form__main input{width:100%;height:31px;border:1px solid #d9dce2;border-radius:8px;padding:0 7px;font-size:.71rem;outline:0}.delivery-zone-inline-form__main input:focus{border-color:#8fa9ee;box-shadow:0 0 0 2px rgba(74,124,240,.08)}
.delivery-zone-switch{display:flex;align-items:center;justify-content:center;cursor:pointer}.delivery-zone-switch input{position:absolute;opacity:0;pointer-events:none}.delivery-zone-switch>span{width:34px;height:19px;border-radius:999px;background:#d9dde5;position:relative;transition:.18s}.delivery-zone-switch>span::after{content:"";position:absolute;width:15px;height:15px;border-radius:50%;left:2px;top:2px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:.18s}.delivery-zone-switch input:checked+span{background:#2683ff}.delivery-zone-switch input:checked+span::after{transform:translateX(15px)}
.delivery-zone-save,.delivery-zone-more,.delivery-zone-delete{width:28px;height:28px;border:0;border-radius:8px;background:#f3f4f7;color:#5f636d;display:grid;place-items:center;cursor:pointer;font-weight:900}.delivery-zone-save:hover{background:#e7f7ed;color:#138a42}.delivery-zone-more{font-size:1rem}.delivery-zone-delete{background:#fff4f5;color:#c6283e}.delivery-zone-delete-form{display:grid}
.delivery-zone-empty{display:grid;gap:4px;text-align:center;padding:28px 18px;color:#626670}.delivery-zone-empty strong{font-size:.82rem}.delivery-zone-empty small{font-size:.7rem;color:var(--muted)}

.delivery-zone-editor{margin-top:auto;border-top:1px solid #e7e9ee;background:#fbfbfc;padding:13px;display:grid;gap:11px}.delivery-zone-editor[hidden]{display:none!important}
.delivery-zone-editor__head{display:flex;align-items:center;justify-content:space-between}.delivery-zone-editor__head>div{display:grid;gap:2px}.delivery-zone-editor__head strong{font-size:.84rem}.delivery-zone-editor__head small{font-size:.66rem;color:var(--muted)}
.delivery-zone-editor__compact{gap:8px}.delivery-zone-editor__compact .form-group{margin:0}.delivery-zone-editor__compact label{font-size:.67rem;margin-bottom:4px}
.delivery-zone-price-field{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;border:1px solid #dfe2e7;border-radius:10px;background:#fff;overflow:hidden}.delivery-zone-price-field span{padding-left:8px;font-size:.61rem;color:#777}.delivery-zone-price-field .input{border:0!important;box-shadow:none!important}
.delivery-zone-editor__options{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.delivery-zone-color-field,.delivery-zone-branch-field{display:flex;align-items:center;gap:7px;font-size:.66rem;color:#666}.delivery-zone-color-field input{width:34px;height:29px;border:0;padding:0;background:transparent}.delivery-zone-branch-field .select{height:33px;min-width:120px}.delivery-zone-switch--labeled{gap:6px;margin-left:auto}.delivery-zone-switch--labeled b{font-size:.68rem;color:#63666d}
.delivery-zone-editor__tools{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}
.delivery-zone-vertex-wrap{background:transparent!important;border:0!important}.delivery-zone-vertex{display:block;width:14px;height:14px;border:3px solid #fff;border-radius:50%;background:#2563eb;box-shadow:0 1px 6px rgba(0,0,0,.28);cursor:grab}.delivery-zone-vertex:active{cursor:grabbing}

.delivery-location-limit{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px 14px;border:1px solid #e5e8ee;border-radius:14px;background:#fff}.delivery-location-limit>div{display:grid;gap:2px}.delivery-location-limit strong{font-size:.82rem}.delivery-location-limit small{font-size:.69rem;color:var(--muted)}.delivery-location-limit>span{border-radius:999px;background:#f1f3f6;padding:6px 9px;font-size:.7rem;font-weight:850;color:#555a63;white-space:nowrap}
.delivery-simple-settings{max-width:820px}.delivery-simple-settings>.admin-section-title>.status{align-self:start}

@media(max-width:1180px){
  .delivery-zone-manager{grid-template-columns:minmax(0,1.4fr) 310px}
  .delivery-zone-manager__map{height:540px;min-height:420px}
}
@media(max-width:899px){
  .delivery-zones-simple .admin-delivery-tab-content{padding:9px}
  .delivery-zone-manager{grid-template-columns:1fr}
  .delivery-zone-manager__map{height:52vh;min-height:360px}
  .delivery-zone-list{max-height:310px}
  .delivery-zone-manager__side{min-height:0}
  .delivery-zone-editor{position:relative}
  .delivery-location-grid{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  .delivery-zone-manager__map-head{align-items:flex-start;flex-direction:column}.delivery-zone-manager__map-head .btn{width:100%;justify-content:center}
  .delivery-zone-manager__map{height:46vh;min-height:320px}
  .delivery-zone-list__row{grid-template-columns:32px minmax(0,1fr) 27px}.delivery-zone-more{display:none}.delivery-zone-delete-form{grid-column:3}.delivery-zone-inline-form{grid-template-columns:minmax(0,1fr) 34px 28px}
  .delivery-zone-editor__compact{grid-template-columns:1fr!important}.delivery-zone-editor__tools .btn{flex:1}
}

/* =========================================================
   V8.4.4 — estabilidad del mapa y editor de zonas
   ========================================================= */
.delivery-zone-manager{grid-template-columns:minmax(0,1.5fr) minmax(400px,.82fr)}
.delivery-zone-manager__map.leaflet-container{width:100%;height:min(64vh,620px);min-height:460px;font:inherit;background:#e8ecef}
.delivery-zone-manager__map .leaflet-tile{max-width:none!important;max-height:none!important}
.delivery-zone-manager__map .leaflet-control-container{position:relative;z-index:700}
.delivery-zone-map-loading{position:absolute;inset:0;display:grid;place-items:center;color:#717680;font-size:.78rem;font-weight:750;background:linear-gradient(135deg,#eef1f4,#e7ebef);z-index:0}
.delivery-map-unavailable{padding:24px}.delivery-map-unavailable .btn{justify-self:center;margin-top:8px}

.delivery-zone-list{overflow:visible auto}
.delivery-zone-list__row{grid-template-columns:34px minmax(0,1fr) 34px;gap:9px;padding:11px 10px;position:relative;overflow:visible}
.delivery-zone-inline-form{grid-template-columns:minmax(0,1fr) 40px 32px;gap:8px}
.delivery-zone-inline-form__main{gap:6px}
.delivery-zone-inline-form__main>strong{font-size:.78rem}
.delivery-zone-inline-form__main label{display:grid;grid-template-columns:30px minmax(110px,1fr);gap:7px;width:100%;max-width:210px}
.delivery-zone-inline-form__main label small{display:none}
.delivery-zone-inline-form__main label span{font-size:.64rem;font-weight:750}
.delivery-zone-inline-form__main input{min-width:110px;height:34px;padding:0 10px;font-size:.76rem;font-variant-numeric:tabular-nums}
.delivery-zone-save{width:31px;height:31px}

.delivery-zone-actions{position:relative;display:grid;place-items:center;z-index:9}
.delivery-zone-actions>summary{list-style:none}.delivery-zone-actions>summary::-webkit-details-marker{display:none}
.delivery-zone-actions[open]{z-index:50}
.delivery-zone-more{width:31px;height:31px;font-size:1.08rem;user-select:none}
.delivery-zone-actions__menu{position:absolute;right:0;top:36px;min-width:156px;background:#fff;border:1px solid #e2e5ea;border-radius:11px;box-shadow:0 14px 34px rgba(30,35,45,.16);padding:5px;display:grid;gap:2px}
.delivery-zone-actions__menu button{width:100%;border:0;background:transparent;border-radius:8px;padding:8px 9px;display:flex;align-items:center;gap:8px;text-align:left;font-size:.72rem;font-weight:750;color:#3d424b;cursor:pointer;white-space:nowrap}
.delivery-zone-actions__menu button:hover{background:#f5f6f8}.delivery-zone-actions__menu button.is-danger{color:#c6283e}.delivery-zone-actions__menu button.is-danger:hover{background:#fff1f2}
.delivery-zone-actions__menu form{display:block;margin:0}

.delivery-zone-editor__compact{grid-template-columns:minmax(0,1fr) minmax(170px,.72fr)!important}
.delivery-zone-price-field{grid-template-columns:44px minmax(120px,1fr)}
.delivery-zone-price-field .input{min-width:120px;font-variant-numeric:tabular-nums}

@media(max-width:1180px){
  .delivery-zone-manager{grid-template-columns:minmax(0,1.25fr) minmax(360px,.8fr)}
}
@media(max-width:899px){
  .delivery-zone-manager{grid-template-columns:1fr}
  .delivery-zone-list{overflow:visible}
  .delivery-zone-manager__map.leaflet-container{height:52vh;min-height:360px}
}
@media(max-width:520px){
  .delivery-zone-list__row{grid-template-columns:32px minmax(0,1fr) 32px}
  .delivery-zone-more{display:grid}
  .delivery-zone-inline-form{grid-template-columns:minmax(0,1fr) 36px 30px}
  .delivery-zone-inline-form__main label{grid-template-columns:28px minmax(92px,1fr);max-width:none}
  .delivery-zone-inline-form__main input{min-width:92px}
  .delivery-zone-editor__compact{grid-template-columns:1fr!important}
}
.delivery-zone-manager__side{overflow:visible}
.delivery-zone-list{max-height:none;overflow:visible}

/* =========================================================
   V8.4.5 — mapa nativo de zonas (sin dependencia Leaflet/CDN JS)
   ========================================================= */
.delivery-zone-manager__map.delivery-native-map{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:#e6ebef;
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
  cursor:grab;
}
.delivery-zone-manager__map.delivery-native-map:active{cursor:grabbing}
.delivery-native-map__tiles{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
  background:#e8edf1;
}
.delivery-native-map__tile{
  position:absolute;
  display:block;
  width:256px!important;
  height:256px!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  object-fit:cover;
  background:#e8edf1;
  pointer-events:none;
}
.delivery-native-map__tile.is-error{opacity:.15}
.delivery-native-map__overlay{
  position:absolute;
  inset:0;
  z-index:20;
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
}
.delivery-native-map__zone{
  pointer-events:all;
  cursor:pointer;
  transition:fill-opacity .15s ease,stroke-width .15s ease;
}
.delivery-native-map__zone:hover{fill-opacity:.32!important;stroke-width:3!important}
.delivery-native-map__vertex{
  fill:#fff;
  stroke:var(--primary,#F52E40);
  stroke-width:3;
  pointer-events:all;
  cursor:grab;
  vector-effect:non-scaling-stroke;
}
.delivery-native-map__vertex:active{cursor:grabbing;fill:#fff5f5}
.delivery-native-map__controls{
  position:absolute;
  left:12px;
  top:12px;
  z-index:40;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.14);
  border-radius:11px;
  background:#fff;
  box-shadow:0 4px 16px rgba(15,23,42,.14);
}
.delivery-native-map__controls button{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  padding:0;
  border:0;
  background:#fff;
  color:#111827;
  font:800 22px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
}
.delivery-native-map__controls button+button{border-top:1px solid #e5e7eb}
.delivery-native-map__controls button:hover{background:#f8fafc}
.delivery-native-map__attribution{
  position:absolute;
  right:6px;
  bottom:5px;
  z-index:40;
  padding:2px 5px;
  border-radius:5px;
  background:rgba(255,255,255,.88);
  color:#475569;
  font-size:9px;
  line-height:1.25;
  text-decoration:none;
  pointer-events:auto;
}
.delivery-native-map__attribution:hover{text-decoration:underline}
@media(max-width:700px){
  .delivery-native-map__controls{left:9px;top:9px}
  .delivery-native-map__controls button{width:34px;height:34px}
}

/* ===== V8.4.7 · Editor flexible de opciones por producto ===== */
.table-action-icon--accent{color:#7a2be2;background:#f4edff;border-color:#e5d6ff}
.table-action-icon--accent:hover{background:#ebddff;color:#5f19c8}
.product-admin-modal{width:min(980px,calc(100vw - 28px));max-width:980px;max-height:94dvh;overflow:hidden;border-radius:24px}
.product-admin-form{display:flex;flex-direction:column;max-height:94dvh;background:#fff}
.product-admin-modal__head{flex:0 0 auto;padding:18px 22px}.product-admin-modal__head p{margin:4px 0 0;color:var(--muted);font-size:.82rem}
.product-admin-modal__body{overflow:auto;padding:18px 22px 24px;display:grid;gap:16px;scrollbar-gutter:stable}
.product-admin-modal__body::-webkit-scrollbar{width:8px}.product-admin-modal__body::-webkit-scrollbar-thumb{background:#c9ccd5;border-radius:999px}
.product-admin-modal__foot{flex:0 0 auto;align-items:center;background:#fff;box-shadow:0 -10px 24px rgba(27,30,39,.04)}
.product-customizer-save-note{margin-right:auto;color:var(--muted);font-size:.76rem;max-width:420px}
.product-editor-section{border:1px solid #e9ebf1;border-radius:18px;padding:17px;background:#fff}
.product-editor-section--compact{display:grid;gap:12px}
.product-editor-section__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.product-editor-section__head h4{margin:0 0 4px;font-size:1rem}.product-editor-section__head p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.4}
.product-variants-textarea{min-height:84px}
.product-editor-featured{margin-top:3px}
.product-customizer{background:#fbfbfd;border-color:#e3e5ec}
.product-customizer__head{align-items:center}.product-customizer__examples{display:flex;gap:7px;flex-wrap:wrap;margin:-3px 0 14px}
.product-customizer__examples span{padding:5px 9px;background:#f0f1f5;border-radius:999px;color:#666b78;font-size:.7rem;font-weight:700}
.product-option-groups{display:grid;gap:12px}
.product-customizer-empty{min-height:170px;border:1.5px dashed #d8dbe5;border-radius:16px;display:grid;place-items:center;align-content:center;gap:6px;text-align:center;padding:24px;background:#fff}
.product-customizer-empty__icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fff0f2;color:var(--primary);font-size:1.45rem;font-weight:900}.product-customizer-empty small{max-width:520px;color:var(--muted);line-height:1.4}.product-customizer-empty .btn{margin-top:5px}
.product-option-group{border:1px solid #dfe2ea;border-radius:17px;background:#fff;padding:14px;box-shadow:0 5px 16px rgba(25,28,37,.035)}
.product-option-group__top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:end;padding-bottom:12px;border-bottom:1px solid #eef0f4}
.product-option-group__index{align-self:center;background:#f1f2f6;border-radius:10px;padding:7px 9px;font-size:.7rem;font-weight:850;color:#646875;white-space:nowrap}
.product-option-group__title label,.product-option-group__rules label,.product-option-value label,.product-addon-row label{display:block;margin:0 0 5px;font-size:.7rem;font-weight:800;color:#5c606c}
.product-option-group__actions{display:flex;gap:5px;align-self:center}.product-option-group__actions button{width:30px;height:30px;border:1px solid #e0e3ea;background:#fff;border-radius:9px;cursor:pointer;color:#555b68;font-weight:800}.product-option-group__actions button:last-child{color:#b52e40;background:#fff4f5;border-color:#ffdfe4}
.product-option-group__rules{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(240px,1.2fr) minmax(130px,.55fr);gap:10px;align-items:end;padding:12px 0}
.product-rule-toggle{min-height:44px;border:1px solid #e1e4eb;border-radius:12px;padding:8px 10px;display:flex!important;align-items:center;gap:9px;margin:0!important;background:#fafbfc}.product-rule-toggle input{width:18px;height:18px;accent-color:var(--primary)}.product-rule-toggle span{display:grid;gap:1px}.product-rule-toggle strong{font-size:.77rem}.product-rule-toggle small{font-size:.67rem;color:var(--muted);font-weight:500}
.product-option-values{display:grid;gap:7px}.product-option-value,.product-addon-row{display:grid;grid-template-columns:24px minmax(180px,1fr) minmax(135px,.45fr) auto 32px;gap:8px;align-items:end;padding:9px;border:1px solid #e9ebf1;border-radius:13px;background:#fafbfc}
.product-option-value__grip{align-self:center;color:#9b9faa;letter-spacing:-2px;font-weight:900;text-align:center}.product-option-price{min-width:0}.product-money-input{position:relative}.product-money-input span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#777c87;font-size:.78rem;font-weight:700;z-index:1}.product-money-input .input{padding-left:31px}
.product-default-check{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:2px;margin:0!important;height:42px;min-width:50px}.product-default-check input{width:17px;height:17px;accent-color:var(--primary)}.product-default-check span{font-size:.64rem;color:#777b86;font-weight:700}
.product-add-value{margin-top:9px;width:100%;min-height:38px;border:1px dashed #cfd3dd;background:#fff;border-radius:11px;color:#525866;font-weight:800;cursor:pointer}.product-add-value:hover{border-color:var(--primary);color:var(--primary);background:#fff8f9}
.product-addon-rows{display:grid;gap:8px}.product-addon-row{grid-template-columns:24px minmax(220px,1fr) minmax(150px,.4fr) 32px}.product-addons-empty{border:1px dashed #d8dbe5;border-radius:13px;padding:15px;text-align:center;color:var(--muted);font-size:.78rem;background:#fafbfc}
.product-option-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.product-option-heading h2{margin:0}.product-option-heading small{color:#7f8490;font-size:.74rem}.option-multi-card span{flex:1}.option-multi-card>strong{margin-left:auto;white-space:nowrap}

@media (max-width:760px){
  .product-admin-modal{width:calc(100vw - 14px);max-height:calc(100dvh - 14px);border-radius:20px}.product-admin-form{max-height:calc(100dvh - 14px)}
  .product-admin-modal__head,.product-admin-modal__body,.product-admin-modal__foot{padding-left:14px;padding-right:14px}
  .product-customizer-save-note{display:none}.product-admin-modal__foot{justify-content:flex-end}
  .product-editor-section{padding:13px}.product-editor-section__head{align-items:flex-start;flex-direction:column}.product-customizer__head .btn{width:100%}
  .product-option-group__top{grid-template-columns:auto minmax(0,1fr)}.product-option-group__actions{grid-column:1/-1;justify-content:flex-end;width:100%}
  .product-option-group__rules{grid-template-columns:1fr}.product-group-max{max-width:none}
  .product-option-value,.product-addon-row{grid-template-columns:18px minmax(0,1fr) 32px}.product-option-value .product-option-price,.product-addon-row .product-option-price{grid-column:2/3}.product-option-value .product-default-check{grid-column:2/3;justify-self:start;flex-direction:row;height:auto}.product-option-value>.table-action-icon,.product-addon-row>.table-action-icon{grid-column:3;grid-row:1/3;align-self:center}
  .product-option-heading{align-items:flex-start;flex-direction:column;gap:2px}
}
.product-customizer-empty[hidden],.product-addons-empty[hidden],[data-option-group-max-wrap][hidden]{display:none!important}

/* V8.4.8 — feedback visual inmediato al seleccionar imagen de producto */
.product-image-picker{position:relative;overflow:hidden;padding:4px;min-width:108px;min-height:46px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.product-image-picker:has(.product-image-picker__preview:not([hidden])){border-style:solid;border-color:#cfe8d8;background:#f7fcf9;box-shadow:0 0 0 2px rgba(34,160,88,.05)}
.product-image-picker__empty{padding:5px 7px}
.product-image-picker__preview{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;gap:7px;align-items:center;width:100%;min-width:142px;text-align:left}
.product-image-picker__preview[hidden]{display:none!important}
.product-image-picker__preview img{width:42px;height:42px;object-fit:cover;border-radius:9px;background:#f1f2f5;border:1px solid #e5e7eb}
.product-image-picker__preview>span{min-width:0;display:grid;gap:1px}.product-image-picker__preview strong{font-size:.69rem;color:#167443}.product-image-picker__preview small{display:block;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.61rem}
.product-image-picker__preview>b{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#e4f6ea;color:#148044;font-size:.7rem}

.product-image-feedback{margin-top:11px;padding:10px 12px;border:1px solid #dcefe3;background:#f8fcf9;border-radius:14px;display:grid;grid-template-columns:56px minmax(0,1fr) 28px;align-items:center;gap:11px}
.product-image-feedback[hidden]{display:none!important}.product-image-feedback__thumb{width:56px;height:56px;border-radius:12px;overflow:hidden;background:#f1f2f5;border:1px solid #e8eaee}.product-image-feedback__thumb img{width:100%;height:100%;object-fit:cover;display:block}.product-image-feedback__copy{min-width:0;display:grid;gap:3px}.product-image-feedback__copy strong{font-size:.78rem;color:#176f43}.product-image-feedback__copy small{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-image-feedback__check{width:28px;height:28px;border-radius:50%;background:#e4f6ea;color:#128044;display:grid;place-items:center;font-weight:900}
@media(max-width:720px){.product-image-feedback{grid-template-columns:50px minmax(0,1fr) 26px}.product-image-feedback__thumb{width:50px;height:50px}}

/* V8.4.13 — Delivery circular, motorizado externo, boleta e historial PWA */
.delivery-coverage-mode{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin:0 0 16px;background:#fff;border:1px solid #e6e9ef;border-radius:18px}.delivery-coverage-mode>div:first-child{display:flex;flex-direction:column;gap:3px}.delivery-coverage-mode small{color:#7a8190}.delivery-coverage-mode__options{display:flex;gap:10px}.delivery-coverage-mode__options button{min-width:170px;border:1px solid #e1e5ec;background:#f8f9fb;border-radius:14px;padding:10px 14px;cursor:pointer;text-align:left;display:grid;grid-template-columns:28px 1fr;column-gap:8px;align-items:center}.delivery-coverage-mode__options button span{grid-row:1/3;font-size:24px;color:#e0161d}.delivery-coverage-mode__options button b{font-size:14px}.delivery-coverage-mode__options button small{font-size:11px}.delivery-coverage-mode__options button.is-active{border-color:#e0161d;background:#fff5f5;box-shadow:0 0 0 2px rgba(224,22,29,.08)}
.delivery-circle-manager{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,.8fr);gap:14px}.delivery-circle-map-card,.delivery-circle-side{background:#fff;border:1px solid #e2e6ed;border-radius:18px;overflow:hidden}.delivery-circle-map-card{padding:14px}.delivery-circle-map{position:relative;height:560px;border-radius:16px;overflow:hidden;background:#e9edf2}.delivery-circle-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.delivery-circle-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.delivery-circle-overlay circle{fill:color-mix(in srgb,var(--ring-color) 18%,transparent);stroke:var(--ring-color);stroke-width:.45;vector-effect:non-scaling-stroke}.delivery-circle-center-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;background:#e0161d;color:#fff;border:5px solid #fff;box-shadow:0 4px 14px #0004;font-size:0}.delivery-circle-center-pin:after{content:'';position:absolute;inset:5px;border-radius:50%;background:#fff}.delivery-circle-side{padding:14px;display:flex;flex-direction:column;gap:12px}.delivery-circle-list{display:flex;flex-direction:column;gap:8px;max-height:430px;overflow:auto;padding-right:2px}.delivery-circle-row{display:grid;grid-template-columns:16px 1fr 34px;gap:8px;align-items:center;border:1px solid #e8ebf0;border-radius:14px;padding:9px;background:#fff}.delivery-circle-dot{width:12px;height:12px;border-radius:50%;background:var(--ring-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--ring-color) 16%,transparent)}.delivery-circle-inline{display:grid;grid-template-columns:1fr 1fr 36px;gap:8px;align-items:end}.delivery-circle-inline label{display:flex;flex-direction:column;gap:4px}.delivery-circle-inline small{font-size:10px;color:#7b8190}.delivery-circle-inline input{width:100%;min-width:0;border:1px solid #dfe3ea;border-radius:10px;padding:9px 10px}.delivery-circle-price{display:flex;align-items:center;border:1px solid #dfe3ea;border-radius:10px;overflow:hidden}.delivery-circle-price em{font-style:normal;font-size:10px;color:#6f7684;padding:0 7px}.delivery-circle-price input{border:0;border-radius:0}.delivery-circle-delete{width:32px;height:32px;border:0;border-radius:10px;background:#fff0f1;color:#c41118;font-weight:800;cursor:pointer}.delivery-circle-new{border-top:1px solid #eceff3;padding-top:12px}.delivery-circle-new h4{margin:0 0 10px}.driver-assignment-fields{display:flex;gap:8px;flex:1}.driver-assignment-fields .select,.driver-assignment-fields .input{min-width:190px}.btn-whatsapp{background:#1fa855!important;color:#fff!important;border-color:#1fa855!important}.checkout-out-coverage{padding:14px 16px;border-radius:14px;background:#fff6f1;border:1px solid #ffd5c2;color:#8e3210;margin-bottom:12px}.checkout-out-coverage strong{display:block;margin-bottom:4px}.checkout-out-coverage p{margin:0;font-size:13px;line-height:1.45}.driver-dashboard-tabs{display:flex;gap:8px;margin:0 0 14px}.driver-dashboard-tabs button{flex:1;border:1px solid #e1e5eb;background:#fff;border-radius:12px;padding:11px;font-weight:700;cursor:pointer}.driver-dashboard-tabs button.is-active{background:#e0161d;color:#fff;border-color:#e0161d}.driver-history-list{display:flex;flex-direction:column;gap:10px}.driver-history-card{display:flex;justify-content:space-between;gap:16px;background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:14px}.driver-history-card div{min-width:0}.driver-history-card strong,.driver-history-card small,.driver-history-card p{display:block}.driver-history-card small{color:#7b8190;margin-top:3px}.driver-history-card p{margin:6px 0 0;color:#505665;font-size:13px}.driver-history-card>b{white-space:nowrap;color:#16191f}
@media(max-width:980px){.delivery-circle-manager{grid-template-columns:1fr}.delivery-circle-map{height:430px}.delivery-coverage-mode{align-items:stretch;flex-direction:column}.delivery-coverage-mode__options button{flex:1;min-width:0}.driver-assignment-fields{flex-direction:column}.driver-assignment-fields .select,.driver-assignment-fields .input{min-width:0;width:100%}}
@media(max-width:640px){.delivery-coverage-mode__options{flex-direction:column}.delivery-circle-map{height:360px}.delivery-circle-inline{grid-template-columns:1fr 1fr 34px}.delivery-circle-side{padding:10px}}

/* =========================================================
   V8.4.14 — rangos circulares georreferenciados
   ========================================================= */
.delivery-circle-map.delivery-native-map{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:#e6ebef;
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
  cursor:grab;
}
.delivery-circle-map.delivery-native-map:active{cursor:grabbing}
.delivery-circle-native-map__overlay{pointer-events:none}
.delivery-circle-native-map__ring{pointer-events:none}
.delivery-circle-native-map__branch{pointer-events:none}
.delivery-circle-native-map__branch-label{
  font:800 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  fill:#1f2937;
  paint-order:stroke;
  stroke:#fff;
  stroke-width:4px;
  stroke-linejoin:round;
}
.delivery-circle-native-map__branch.is-active .delivery-circle-native-map__branch-label{fill:#b5121b}
.delivery-circle-map .delivery-native-map__controls button[data-circle-map-recenter]{font-size:18px}
.delivery-circle-map-head{align-items:flex-start!important;gap:14px;flex-wrap:wrap}
.delivery-circle-branch-picker{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:54%}
.delivery-circle-branch-picker a{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 10px;border:1px solid #e1e5eb;border-radius:999px;background:#fff;color:#555d6a;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.delivery-circle-branch-picker a span{width:8px;height:8px;border-radius:50%;background:#2563eb;box-shadow:0 0 0 3px #dbeafe}
.delivery-circle-branch-picker a.is-active{border-color:#f3bdc2;background:#fff3f4;color:#b5121b}
.delivery-circle-branch-picker a.is-active span{background:#e0161d;box-shadow:0 0 0 3px #fee2e2}
.delivery-circle-manager .delivery-zone-manager__hint strong{color:#303642}
@media(max-width:980px){.delivery-circle-branch-picker{max-width:100%;justify-content:flex-start}}
@media(max-width:640px){.delivery-circle-branch-picker{display:grid;grid-template-columns:1fr;width:100%}.delivery-circle-branch-picker a{justify-content:flex-start}}

/* ===== V8.5.0 · SEO, ratings, location lock and Driver PWA ===== */
.input-readonly{background:#f5f6f8!important;color:#555!important;cursor:not-allowed}.seo-page-h1{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.seo-content-section{padding:18px 18px 26px}.seo-content-section__inner{max-width:1180px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;color:var(--muted);line-height:1.7;font-size:.94rem}.favicon-admin-block,.pwa-icon-editor{display:flex;gap:16px;align-items:center}.favicon-admin-preview{width:74px;height:74px;border-radius:18px;background:#f5f6f8;border:1px solid var(--line);display:grid;place-items:center;flex:0 0 auto;overflow:hidden}.favicon-admin-preview img{width:52px;height:52px;object-fit:contain}.favicon-admin-preview span{font-size:1.8rem}.pwa-icon-preview{width:104px;height:104px;border-radius:24px;background:#f5f6f8;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;box-shadow:var(--shadow-soft)}.pwa-icon-preview img{width:100%;height:100%;object-fit:cover}.driver-onboarding-admin-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.driver-onboarding-admin-preview figure{margin:0;background:#f6f7fa;border:1px solid var(--line);border-radius:16px;padding:8px;overflow:hidden}.driver-onboarding-admin-preview img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#fff}.driver-onboarding-admin-preview figcaption{font-size:.76rem;font-weight:800;margin-top:7px;color:var(--text)}.seo-preview-card{border:1px solid #e4e8ee;background:#fff;border-radius:18px;padding:16px;display:grid;gap:5px}.seo-preview-card>small{color:#777}.seo-preview-card>strong{color:#1a0dab;font-size:1.05rem}.seo-preview-card>span{color:#188038;font-size:.78rem}.seo-preview-card>p{margin:2px 0 0;color:#4d5156;line-height:1.45;font-size:.86rem}
.product-rating-card{margin:18px 0;padding:20px;display:grid;gap:14px}.product-rating-card h2{margin:2px 0 4px}.product-rating-card p{margin:0;color:var(--muted)}.product-rating-card__kicker{font-size:.78rem;color:var(--primary);font-weight:900;text-transform:uppercase;letter-spacing:.05em}.product-rating-stars{display:flex;gap:6px}.product-rating-star{border:0;background:transparent;padding:0;cursor:pointer;font-size:2rem;line-height:1;color:#d9dde4;transition:transform .15s ease,color .15s ease}.product-rating-star:hover{transform:scale(1.08)}.product-rating-star.is-active{color:#ffad00}.product-rating-review{resize:vertical}.product-rating-card__actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.product-rating-card__actions span{color:var(--muted);font-size:.84rem}.rating-line--empty[hidden]{display:none!important}.rating-line--prep-only .stars,.rating-line--prep-only strong{display:none}
.driver-booting .driver-app{visibility:hidden}.driver-install-gate,.driver-onboarding{position:fixed;inset:0;z-index:9999;background:#f5f3f1;display:grid;place-items:center;padding:18px;overflow:auto}.driver-install-gate[hidden],.driver-onboarding[hidden]{display:none!important}.driver-native-card{width:min(430px,100%);min-height:min(720px,92dvh);background:#fff;border-radius:36px;padding:30px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 28px 80px rgba(25,30,40,.12);overflow:hidden}.driver-native-card__visual{width:100%;min-height:285px;border-radius:30px;background:linear-gradient(145deg,#d9f3e3,#aedfbd);display:grid;place-items:center;margin-bottom:24px}.driver-native-logo{width:min(230px,70%);max-height:150px;object-fit:contain}.driver-native-card h1,.driver-native-card h2{margin:0 0 10px;font-size:1.65rem}.driver-native-card p{margin:0 0 26px;max-width:320px;line-height:1.55;color:#727680}.driver-install-main{max-width:240px}.driver-ios-help{font-size:.82rem!important;margin:14px 0 0!important}.driver-install-spinner{width:60px;height:60px;border:6px solid #f0f1f4;border-top-color:var(--primary);border-radius:50%;animation:driverSpin .8s linear infinite;margin-bottom:24px}.driver-installed-icon{width:120px;height:120px;border-radius:28px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.14);margin-bottom:24px}.driver-installed-icon img{width:100%;height:100%;object-fit:cover}.driver-onboarding__card{width:min(430px,100%);min-height:min(720px,94dvh);background:#fff;border-radius:36px;overflow:hidden;box-shadow:0 28px 80px rgba(25,30,40,.12)}.driver-onboarding__slide{display:none;position:relative;min-height:min(720px,94dvh);padding:18px 26px 30px;text-align:center;align-content:start}.driver-onboarding__slide.is-active{display:grid}.driver-onboarding__skip{justify-self:end;border:0;background:#effaf2;color:#31b34b;border-radius:999px;padding:8px 13px;font-weight:800;cursor:pointer}.driver-onboarding__image{height:365px;margin:8px -10px 12px;display:grid;place-items:center}.driver-onboarding__image img{width:100%;height:100%;object-fit:contain}.driver-onboarding h2{margin:0 0 9px;font-size:1.55rem}.driver-onboarding p{margin:0 auto;max-width:320px;color:#7b7e85;line-height:1.5}.driver-onboarding__dots{display:flex;justify-content:center;gap:7px;margin:24px 0 16px}.driver-onboarding__dots span{width:9px;height:9px;border-radius:50%;background:#cbeecf}.driver-onboarding__dots span.is-active{background:#2fc246;transform:scale(1.15)}.driver-onboarding__next{justify-self:center;border:0;width:54px;height:54px;border-radius:50%;background:#2fc246;color:#fff;font-size:1.8rem;box-shadow:0 12px 26px rgba(47,194,70,.28);cursor:pointer}.driver-login-card{border-radius:28px}.precision-map--leaflet{overscroll-behavior:contain}.precision-map__canvas{touch-action:pan-x pan-y pinch-zoom}
@keyframes driverSpin{to{transform:rotate(360deg)}}
@media(max-width:640px){.driver-native-card,.driver-onboarding__card{min-height:calc(100dvh - 24px);border-radius:30px}.driver-native-card__visual{min-height:300px}.driver-onboarding__image{height:43dvh;min-height:280px}.favicon-admin-block,.pwa-icon-editor{align-items:flex-start}.driver-onboarding-admin-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.product-rating-card__actions{align-items:stretch;flex-direction:column}.product-rating-card__actions .btn{width:100%}}
.pwa-phone-preview{display:grid;place-items:center;padding:6px 0 14px}.pwa-phone-preview__screen{position:relative;width:210px;height:390px;border:8px solid #1f2329;border-radius:34px;background:#fff;box-shadow:0 18px 42px rgba(15,23,42,.16);padding:18px 14px;display:flex;flex-direction:column;align-items:center;text-align:center}.pwa-phone-preview__skip{align-self:flex-end;font-size:.62rem;background:#eaf9ed;color:#2eaf48;padding:5px 8px;border-radius:999px}.pwa-phone-preview__screen img{width:100%;height:205px;object-fit:contain;margin:6px 0}.pwa-phone-preview__screen strong{font-size:.92rem}.pwa-phone-preview__screen small{font-size:.66rem;color:#7c818a;margin-top:5px}.pwa-phone-preview__screen>div{display:flex;gap:4px;margin:12px 0}.pwa-phone-preview__screen i{width:6px;height:6px;border-radius:50%;background:#cbedcf}.pwa-phone-preview__screen i:first-child{background:#2fc246}.pwa-phone-preview__screen b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#2fc246;color:#fff;font-size:1rem}
.slug-editor-row{display:flex;align-items:center;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#f8f9fb}.slug-editor-row>span{padding:0 12px;font-size:.78rem;color:var(--muted);white-space:nowrap}.slug-editor-row .input{border:0;border-left:1px solid var(--line);border-radius:0;background:#fff}
@media(max-width:640px){.slug-editor-row{align-items:stretch;flex-direction:column}.slug-editor-row>span{padding:9px 12px}.slug-editor-row .input{border-left:0;border-top:1px solid var(--line)}}

.stars svg.is-empty{color:#d9dde4}

/* V8.5.1 · ficha de producto estilo app + galería */
.product-screen--native{align-items:start}.product-detail-column{display:grid;gap:14px;min-width:0}.product-form--native{overflow:hidden}.product-form-heading{padding:2px 2px 18px;border-bottom:1px solid #eceef2;margin-bottom:6px}.product-form-heading h1{margin:0;font-size:clamp(1.65rem,2.2vw,2.25rem);line-height:1.08;letter-spacing:-.025em}.product-form-category{margin:6px 0 0;color:#8b9099;font-weight:400;font-size:.92rem}.product-form-description{margin:13px 0 0;color:#60656f;line-height:1.55}.product-form-rating-summary{display:inline-flex;align-items:center;gap:5px;margin-top:10px;padding:5px 9px;border-radius:999px;background:#fff8e8;color:#7d5b00;font-size:.78rem}.product-form-rating-summary span{color:#ffad00}.product-form-rating-summary[hidden]{display:none!important}
.product-gallery-card{padding:14px;overflow:hidden}.product-gallery-main{position:relative;overflow:hidden;border-radius:24px;background:#fff;border:1px solid #eff1f5}.product-gallery-main__zoom{position:relative;overflow:hidden;cursor:zoom-in}.product-gallery-main img{display:block;width:100%;height:auto;max-height:min(78vh,820px);object-fit:cover;background:#fff}.product-gallery-lens{position:absolute;left:0;top:0;width:170px;height:170px;border-radius:50%;border:2px solid rgba(255,255,255,.95);box-shadow:0 14px 34px rgba(0,0,0,.22),0 0 0 1px rgba(18,21,30,.08);background-repeat:no-repeat;background-color:#fff;pointer-events:none;transform:translate(-50%,-50%) scale(.88);opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:3}.product-gallery-lens.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.product-gallery-expand{position:absolute;right:14px;bottom:14px;width:52px;height:52px;border:0;border-radius:18px;background:rgba(18,21,30,.9);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 14px 34px rgba(0,0,0,.22);backdrop-filter:blur(10px);z-index:4}.product-gallery-expand svg{width:22px;height:22px}.product-gallery-thumbs-wrap{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;margin-top:12px}.product-gallery-thumbs{display:flex;gap:8px;overflow:hidden;scroll-snap-type:x mandatory}.product-gallery-thumb{flex:0 0 70px;width:70px;height:70px;padding:3px;border:2px solid transparent;background:#fff;border-radius:14px;overflow:hidden;cursor:pointer;scroll-snap-align:center}.product-gallery-thumb.is-active{border-color:var(--primary);box-shadow:0 8px 20px rgba(245,46,64,.12)}.product-gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:10px}.product-gallery-nav{width:34px;height:34px;border:1px solid #e4e7ec;background:#fff;border-radius:50%;font-size:1.35rem;display:grid;place-items:center;cursor:pointer}.product-image-modal{border:0;padding:0;background:transparent;max-width:96vw;max-height:94vh;overflow:visible}.product-image-modal::backdrop{background:rgba(10,12,16,.78);backdrop-filter:blur(5px)}.product-image-modal img{display:block;max-width:92vw;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:18px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.35)}.product-image-modal__close{position:absolute;right:-12px;top:-12px;width:40px;height:40px;border:0;border-radius:50%;background:#fff;font-size:1.45rem;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.24)}
.product-rating-card--compact{margin:0;padding:15px 17px;gap:10px;border-radius:20px;box-shadow:var(--shadow-soft)}.product-rating-compact__head,.product-rating-compact__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.product-rating-compact__head>div{display:grid;gap:2px}.product-rating-compact__head small{color:#9297a1;font-size:.72rem}.product-rating-compact__head strong{font-size:.95rem}.product-rating-compact__average{font-size:.78rem;color:#7a6240;background:#fff8e9;padding:6px 9px;border-radius:999px}.product-rating-card--compact .product-rating-stars{gap:2px}.product-rating-card--compact .product-rating-star{font-size:1.45rem}.product-rating-comment-link{border:0;background:none;padding:0;color:#1f2430;font-size:.92rem;font-weight:700;text-decoration:underline;cursor:pointer;text-underline-offset:3px}.product-rating-comment-link:hover{color:var(--primary)}.product-rating-card--compact .product-rating-card__actions{margin-top:2px}.product-rating-card--compact .product-rating-card__actions .btn{min-height:36px}.product-rating-compact__comment[hidden]{display:none!important}.product-rating-review{resize:none;min-height:88px}
.product-gallery-editor{margin-top:16px;padding-top:16px;border-top:1px solid #eceef2}.product-gallery-upload{display:flex;align-items:center;gap:12px;padding:12px;border:1px dashed #cfd5df;border-radius:14px;background:#fafbfc;cursor:pointer}.product-gallery-upload input{max-width:245px}.product-gallery-upload span{display:grid;gap:2px}.product-gallery-upload strong{font-size:.82rem}.product-gallery-upload small{font-size:.7rem;color:var(--muted)}.product-gallery-editor__existing,.product-gallery-editor__new{display:flex;gap:10px;flex-wrap:wrap;margin-top:11px}.product-gallery-admin-thumb{position:relative;width:82px;margin:0}.product-gallery-admin-thumb img{width:82px;height:82px;object-fit:cover;border-radius:13px;border:1px solid #e2e5ea;background:#f5f6f7}.product-gallery-admin-thumb button{position:absolute;right:-5px;top:-5px;width:24px;height:24px;border:0;border-radius:50%;background:#df1d2a;color:#fff;cursor:pointer}.product-gallery-admin-thumb figcaption{font-size:.62rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-gallery-admin-thumb.is-new img{border-color:#bfe4ca}.product-gallery-admin-empty{color:var(--muted);font-size:.76rem;padding:8px 0}
@media(min-width:901px){.product-screen--native{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr)}.product-screen--native>.related-products-section{grid-column:1/-1}.product-gallery-card{position:sticky;top:96px}.product-detail-column{grid-column:2}.product-gallery-card{grid-column:1}}
@media(max-width:900px){.product-screen--native{display:grid;grid-template-columns:1fr}.product-detail-column{display:grid}.product-gallery-card{position:relative}.product-gallery-main img{max-height:none}.product-gallery-lens{display:none}}
@media(max-width:640px){.product-form--native{padding:16px}.product-rating-compact__row{align-items:flex-start}.product-rating-card--compact .product-rating-card__actions{flex-direction:row;align-items:center}.product-rating-card--compact .product-rating-card__actions .btn{width:auto}.product-gallery-thumb{flex-basis:62px;width:62px;height:62px}.product-gallery-admin-thumb,.product-gallery-admin-thumb img{width:70px;height:70px}.product-gallery-upload{align-items:flex-start;flex-direction:column}.product-gallery-upload input{max-width:100%}}

.related-product-carousel .product-card__image-wrap{display:block}.related-product-carousel .rating-line{margin-bottom:2px}.related-product-carousel .product-price{display:block;margin-top:0}.related-product-carousel .product-card__footer{padding-top:0}.desktop-footer__social span{color:#fff}.desktop-footer__social a:hover{transform:translateY(-1px)}
