/* ============================================
   RESET Y BASE
============================================ */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    height: 100%;
    background: #0a0a0a;
    color: #e8e8e8;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

body {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 20px;
    min-height: 100vh;
}

/* ============================================
   CONTENEDOR PRINCIPAL
============================================ */
.contenedor {
    max-width: 1200px;
    width: 100%;
    background: #0a0a0a;
    padding: 20px;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* ============================================
   HEADER
============================================ */
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0 20px 0;
    border-bottom: 2px solid rgba(224, 255, 0, 0.15);
    margin-bottom: 30px;
    flex-wrap: wrap;
    gap: 10px;
}

.logo {
    font-size: 24px;
    font-weight: 700;
    color: #e0ff00;
    letter-spacing: -0.5px;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
}

.logo span {
    color: #e8e8e8;
    font-weight: 300;
}

.header-acciones {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

/* ============================================
   MENÚ HAMBURGUESA
============================================ */
.menu-toggle {
    background: transparent;
    border: none;
    color: #e0ff00;
    font-size: 28px;
    cursor: pointer;
    padding: 4px 8px;
    display: none;
    border-radius: 6px;
}

.menu-toggle:hover {
    background: rgba(224, 255, 0, 0.1);
}

.menu-desplegable {
    display: none;
    flex-direction: column;
    background: #141414;
    border-radius: 8px;
    padding: 8px 0;
    position: absolute;
    top: 70px;
    right: 20px;
    min-width: 180px;
    z-index: 100;
    box-shadow: 0 8px 30px rgba(0,0,0,0.8);
}

.menu-desplegable.activo {
    display: flex;
}

.menu-desplegable a, .menu-desplegable button {
    padding: 10px 20px;
    color: #e8e8e8;
    text-decoration: none;
    background: transparent;
    border: none;
    text-align: left;
    font-size: 14px;
    cursor: pointer;
    transition: background 0.2s;
}

.menu-desplegable a:hover, .menu-desplegable button:hover {
    background: rgba(224, 255, 0, 0.08);
}

/* ============================================
   BOTONES
============================================ */
.btn {
    background: transparent;
    border: none;
    color: #e8e8e8;
    padding: 8px 20px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.25s ease;
    text-decoration: none;
    display: inline-block;
    background: rgba(255,255,255,0.05);
}

.btn:hover {
    background: rgba(224, 255, 0, 0.15);
    color: #e0ff00;
}

.btn-verde {
    background: #e0ff00;
    color: #0a0a0a;
}

.btn-verde:hover {
    background: #e0ff00;
    color: #0a0a0a;
}

.btn-peligro {
    background: rgba(255, 107, 107, 0.15);
    color: #ff6b6b;
}

.btn-peligro:hover {
    background: rgba(255, 107, 107, 0.25);
}

.btn-exito {
    background: rgba(81, 207, 102, 0.15);
    color: #51cf66;
}

.btn-exito:hover {
    background: rgba(81, 207, 102, 0.25);
}

.btn-circulo {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    border: none;
    background: rgba(224, 255, 0, 0.1);
    color: #e0ff00;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-circulo:hover {
    background: #e0ff00;
    color: #0a0a0a;
}

.btn-circulo.verde {
    background: #e0ff00;
    color: #0a0a0a;
}

.btn-circulo.verde:hover {
    background: #e0ff00;
}

.btn-circulo.peligro {
    background: rgba(255, 107, 107, 0.15);
    color: #ff6b6b;
}

.btn-circulo.peligro:hover {
    background: #ff6b6b;
    color: #0a0a0a;
}

/* ============================================
   BANNER ROTATIVO
============================================ */
.banner-container {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 30px;
    background: #141414;
    min-height: 180px;
}

.banner-slide {
    display: none;
    padding: 40px 30px;
    background: linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    border-left: 4px solid #e0ff00;
    min-height: 180px;
    animation: fadeBanner 0.5s ease;
}

.banner-slide.activo {
    display: block;
}

.banner-slide h2 {
    color: #e0ff00;
    font-size: 24px;
    margin-bottom: 8px;
}

.banner-slide p {
    color: #aaa;
    font-size: 16px;
    margin-bottom: 12px;
}

.banner-dots {
    position: absolute;
    bottom: 12px;
    right: 20px;
    display: flex;
    gap: 8px;
}

.banner-dots span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,0.2);
    cursor: pointer;
    transition: all 0.3s;
}

.banner-dots span.activo {
    background: #e0ff00;
    transform: scale(1.2);
}

@keyframes fadeBanner {
    from { opacity: 0.5; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============================================
   TIENDAS GRID
============================================ */
.grid-tiendas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
    margin-bottom: 30px;
}

.card {
    background: #141414;
    border-radius: 8px;
    padding: 20px;
    transition: all 0.3s;
}

.card:hover {
    background: #1a1a1a;
    transform: translateY(-2px);
}

.card-tienda {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.card-tienda .nombre {
    font-size: 18px;
    font-weight: 600;
    color: #e0ff00;
}

.card-tienda .detalle {
    color: #888;
    font-size: 14px;
}

.card-tienda .btn {
    align-self: flex-start;
}

/* ============================================
   BANNER DE TIENDA
============================================ */
.banner-tienda {
    background: #141414;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.banner-tienda .nombre {
    font-size: 22px;
    font-weight: 600;
    color: #e0ff00;
}

.banner-tienda .info {
    color: #888;
    font-size: 14px;
}

/* ============================================
   BUSCADOR
============================================ */
.buscador {
    margin-bottom: 20px;
}

.buscador input {
    width: 100%;
    padding: 12px 16px;
    background: #141414;
    border: none;
    border-radius: 8px;
    color: #e8e8e8;
    font-size: 15px;
    outline: none;
    transition: background 0.3s;
}

.buscador input:focus {
    background: #1a1a1a;
}

.buscador input::placeholder {
    color: #555;
}

/* ============================================
   PRODUCTOS
============================================ */
.lista-productos {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 30px;
}

.producto {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: #141414;
    border-radius: 8px;
    gap: 12px;
    flex-wrap: wrap;
    transition: all 0.3s;
}

.producto:hover {
    background: #1a1a1a;
}

.producto.agotado {
    opacity: 0.5;
}

.producto-info {
    flex: 1;
    min-width: 150px;
}

.producto-info .nombre {
    font-weight: 500;
    font-size: 16px;
    color: #e8e8e8;
}

.producto-info .precio {
    color: #e0ff00;
    font-weight: 600;
    font-size: 15px;
}

.producto-info .stock {
    font-size: 13px;
    color: #888;
}

.producto-info .stock.bajo {
    color: #ff6b6b;
}

.producto-acciones {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* ============================================
   FORMULARIOS
============================================ */
.form-group {
    margin-bottom: 18px;
}

.form-group label {
    display: block;
    font-size: 13px;
    color: #aaa;
    margin-bottom: 5px;
    font-weight: 500;
}

.form-control {
    width: 100%;
    padding: 10px 14px;
    background: #141414;
    border: none;
    border-radius: 6px;
    color: #e8e8e8;
    font-size: 15px;
    transition: background 0.3s;
    outline: none;
}

.form-control:focus {
    background: #1a1a1a;
}

.form-control::placeholder {
    color: #555;
}

/* ============================================
   PEDIDOS
============================================ */
.lista-pedidos {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 30px;
}

.pedido-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
    background: #141414;
    border-radius: 8px;
    border-left: 3px solid #e0ff00;
    gap: 10px;
    flex-wrap: wrap;
}

.pedido-item .info {
    flex: 1;
    min-width: 140px;
}

.pedido-item .info .cliente {
    font-weight: 500;
}

.pedido-item .info .fecha {
    font-size: 12px;
    color: #777;
}

.pedido-item .total {
    font-weight: 600;
    color: #e0ff00;
}

.pedido-item .estado {
    font-size: 12px;
    padding: 3px 12px;
    border-radius: 12px;
    background: rgba(224, 255, 0, 0.15);
    color: #e0ff00;
}

.pedido-item .estado.confirmado {
    background: rgba(81, 207, 102, 0.2);
    color: #51cf66;
}

.pedido-item .estado.cancelado {
    background: rgba(255, 107, 107, 0.2);
    color: #ff6b6b;
}

.pedido-item .estado.pendiente {
    background: rgba(224, 255, 0, 0.15);
    color: #e0ff00;
}

/* ============================================
   TABS
============================================ */
.tabs {
    display: flex;
    gap: 4px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.tabs .tab {
    padding: 10px 20px;
    color: #888;
    cursor: pointer;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.25s;
    background: transparent;
    border: none;
    border-radius: 6px;
}

.tabs .tab:hover {
    color: #e8e8e8;
    background: rgba(255,255,255,0.05);
}

.tabs .tab.activo {
    color: #e0ff00;
    background: rgba(224, 255, 0, 0.1);
}

/* ============================================
   LOADER
============================================ */
.loader {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 40px 0;
}

.loader .punto {
    width: 10px;
    height: 10px;
    background: #e0ff00;
    border-radius: 50%;
    animation: saltar 1.2s ease-in-out infinite;
}

.loader .punto:nth-child(2) {
    animation-delay: 0.2s;
}

.loader .punto:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes saltar {
    0%, 80%, 100% {
        transform: scale(0.6);
        opacity: 0.3;
    }
    40% {
        transform: scale(1);
        opacity: 1;
    }
}

/* ============================================
   TOAST
============================================ */
.toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 360px;
    width: 100%;
}

.toast {
    background: #1a1a1a;
    border-left: 4px solid #e0ff00;
    padding: 14px 18px;
    border-radius: 6px;
    color: #e8e8e8;
    font-size: 14px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.8);
    animation: slideIn 0.3s ease, fadeOut 0.3s ease 3.7s forwards;
}

.toast.error {
    border-left-color: #ff6b6b;
}

.toast.exito {
    border-left-color: #51cf66;
}

@keyframes slideIn {
    from { transform: translateX(100%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

@keyframes fadeOut {
    to { opacity: 0; transform: translateY(-10px); }
}

/* ============================================
   FOOTER (sticky)
============================================ */
.footer {
    margin-top: auto;
    padding: 20px 0 10px 0;
    border-top: 1px solid rgba(224, 255, 0, 0.08);
    text-align: center;
    color: #555;
    font-size: 13px;
}

.footer span {
    color: #e0ff00;
}

/* ============================================
   RESPONSIVE
============================================ */
@media (max-width: 768px) {
    .contenedor { padding: 10px; }
    .header { flex-direction: row; flex-wrap: wrap; }
    .header-acciones { order: 3; width: 100%; justify-content: flex-start; }
    .menu-toggle { display: block; order: 2; }
    .menu-desplegable { top: 60px; right: 10px; }
    .grid-tiendas { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
    .banner-slide { padding: 24px 20px; min-height: 140px; }
    .banner-slide h2 { font-size: 18px; }
    .producto { flex-direction: column; align-items: stretch; }
    .producto-acciones { justify-content: flex-start; }
    .pedido-item { flex-direction: column; align-items: stretch; }
    .banner-tienda { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 480px) {
    .grid-tiendas { grid-template-columns: 1fr; }
    .logo { font-size: 20px; }
    .btn { padding: 6px 14px; font-size: 13px; }
    .banner-slide h2 { font-size: 16px; }
    .banner-slide p { font-size: 14px; }
}

/* ============================================
   UTILIDADES
============================================ */
.text-center { text-align: center; }
.text-verde { color: #e0ff00; }
.text-gris { color: #888; }
.mt-20 { margin-top: 20px; }
.mb-20 { margin-bottom: 20px; }
.mb-10 { margin-bottom: 10px; }
.flex { display: flex; }
.flex-center { display: flex; align-items: center; justify-content: center; }
.gap-8 { gap: 8px; }
.gap-12 { gap: 12px; }
.w-full { width: 100%; }
.oculto { display: none !important; }
.fade-in { animation: fadeIn 0.3s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
/* ===== Refresh visual 2026 ===== */
body{padding:0;background:#080808}.contenedor{max-width:1440px;padding:0 34px}.header{position:sticky;top:0;z-index:90;background:rgba(8,8,8,.88);backdrop-filter:blur(18px);padding:18px 0;margin-bottom:28px;border-bottom:1px solid rgba(255,255,255,.08)}#contenido-principal{flex:1}.btn{border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:10px 18px}.btn-verde{border-color:#e0ff00}.banner-container{height:clamp(360px,48vw,600px);border-radius:24px;background:#151515}.banner-slide{height:100%;min-height:100%;padding:clamp(34px,7vw,90px);border:0;background-size:cover;background-position:center;align-items:flex-end}.banner-slide.activo{display:flex}.banner-copy{max-width:720px}.eyebrow{display:block;color:#e0ff00;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;margin-bottom:12px}.banner-slide h1,.banner-tienda h1{font-size:clamp(34px,5.5vw,72px);line-height:.98;letter-spacing:-.045em;color:#fff;margin:0 0 18px}.banner-slide p{max-width:620px;font-size:clamp(16px,1.8vw,21px);line-height:1.5;color:#d0d0d0}.banner-dots{bottom:24px;right:28px}.banner-dots span{width:28px;height:4px;border-radius:5px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.section-head h2{font-size:28px;letter-spacing:-.03em}.grid-tiendas{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.card{border:1px solid rgba(255,255,255,.07);border-radius:18px}.card-tienda{padding:0;overflow:hidden;gap:0;cursor:pointer}.tienda-cover{height:170px;background-size:cover;background-position:center}.tienda-cover-vacia{display:grid;place-items:center;font-size:48px;background:linear-gradient(135deg,#181818,#252525)}.card-tienda-body{padding:20px;display:flex;flex-direction:column;gap:9px}.card-tienda .nombre{color:#fff;font-size:20px}.card-tienda .btn{margin-top:8px}.store-top{display:flex;justify-content:space-between;margin-bottom:18px}.banner-tienda{min-height:310px;padding:44px;border-radius:24px;background-size:cover;background-position:center;align-items:flex-end}.banner-tienda p{color:#bbb;margin-top:10px}.store-count{font-size:42px;font-weight:800;color:#e0ff00;text-align:right}.store-count small{display:block;font-size:12px;color:#aaa;text-transform:uppercase;letter-spacing:.12em}.buscador input{padding:16px 20px;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin-bottom:40px}.product-card{display:block;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:#121212}.product-media{aspect-ratio:4/3;background:#1b1b1b;position:relative;overflow:hidden}.product-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.product-card:hover .product-media img{transform:scale(1.025)}.product-placeholder{height:100%;display:grid;place-items:center;font-size:44px}.soldout{position:absolute;top:12px;left:12px;background:#090909;color:#fff;padding:7px 11px;border-radius:999px;font-size:12px}.product-body{padding:18px}.product-body h3{font-size:17px;margin-bottom:7px}.product-price{color:#e0ff00;font-size:20px;font-weight:800}.product-body p{color:#888;font-size:13px;line-height:1.45;margin:10px 0}.product-meta{color:#777;font-size:12px;margin:10px 0}.buy-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}.qty{display:flex;align-items:center;background:#1c1c1c;border-radius:999px;overflow:hidden}.qty button{width:34px;height:34px;border:0;background:transparent;color:#e0ff00;font-size:18px}.qty span{min-width:25px;text-align:center}.empty-state{grid-column:1/-1;padding:42px;border:1px dashed #333;border-radius:18px;color:#777;text-align:center}.manage-thumb{width:72px;height:72px;border-radius:12px;overflow:hidden;background:#202020;display:grid;place-items:center;flex:0 0 auto}.manage-thumb img{width:100%;height:100%;object-fit:cover}.image-picker{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.image-preview{width:160px;aspect-ratio:4/3;border:1px dashed #444;border-radius:14px;display:grid;place-items:center;color:#666;overflow:hidden}.image-preview img,.banner-preview img{width:100%;height:100%;object-fit:cover}.image-picker-actions{display:flex;gap:8px;flex-wrap:wrap}.file-btn{position:relative;overflow:hidden;cursor:pointer}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.image-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-top:14px;padding:12px;background:#0d0d0d;border-radius:14px;max-height:300px;overflow:auto}.library-item{border:2px solid transparent;background:#181818;padding:0;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer}.library-item:hover{border-color:#e0ff00}.library-item img{width:100%;height:100%;object-fit:cover}.banner-preview{width:100%;max-width:520px;aspect-ratio:16/5;border-radius:14px;background:#1b1b1b;display:grid;place-items:center;color:#666;overflow:hidden;margin-bottom:10px}
@media(max-width:768px){body{padding:0}.contenedor{padding:0 16px}.header{margin-bottom:18px}.header-acciones .btn,.header-acciones span{display:none}.header-acciones{width:auto;order:initial;margin-left:auto}.banner-container{height:430px;border-radius:18px;margin-bottom:34px}.banner-slide{padding:30px 24px 54px;background-position:center}.banner-slide h1{font-size:40px}.grid-tiendas{grid-template-columns:1fr 1fr}.banner-tienda{min-height:260px;padding:28px;align-items:flex-end}.banner-tienda h1{font-size:38px}.store-count{font-size:28px}.product-grid{grid-template-columns:1fr 1fr;gap:12px}.product-body{padding:14px}.buy-row{align-items:stretch;flex-direction:column}.buy-row .btn{width:100%}.producto{align-items:center}.manage-thumb{width:64px;height:64px}}
@media(max-width:520px){.logo{font-size:19px}.grid-tiendas{grid-template-columns:1fr}.tienda-cover{height:150px}.section-head h2{font-size:24px}.product-grid{grid-template-columns:1fr 1fr}.product-card{border-radius:14px}.product-body h3{font-size:14px}.product-price{font-size:17px}.product-body p{display:none}.banner-tienda{min-height:230px}.store-count{display:none}.image-preview{width:120px}.toast-container{left:12px;right:12px;width:auto;max-width:none}}

/* Ajustes marketplace: precio, tienda y categorías */
.product-body .product-price{margin:10px 0 18px;display:block;line-height:1.2}.product-body>.btn{margin-top:4px;width:100%}.product-store{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#bdbdbd;font-size:12px}.product-store img,.product-store span{width:26px;height:26px;border-radius:50%;object-fit:cover;background:#222;display:grid;place-items:center}.product-store strong{color:#ddd;font-weight:600}.category-filter{display:flex;gap:8px;overflow-x:auto;padding:0 0 18px;scrollbar-width:none}.category-filter::-webkit-scrollbar{display:none}.category-chip{white-space:nowrap;border:1px solid #303030;background:#121212;color:#aaa;padding:9px 15px;border-radius:999px;cursor:pointer}.category-chip.activo,.category-chip:hover{border-color:#e0ff00;color:#e0ff00}.store-category{display:inline-flex;align-self:flex-start;padding:5px 9px;border-radius:999px;background:#202020;color:#e0ff00;font-size:11px}.store-image-preview{width:110px;height:110px;border-radius:18px;overflow:hidden;background:#1b1b1b;border:1px dashed #444;display:grid;place-items:center;color:#666;margin-bottom:10px}.store-image-preview img{width:100%;height:100%;object-fit:cover}
@media(max-width:520px){.product-body .product-price{margin-bottom:14px}.product-store{font-size:11px}.category-filter{margin-right:-16px;padding-right:16px}}

/* Inicio: categorías > productos > tiendas */
.home-categories{margin-bottom:34px}.home-category-filter{padding-bottom:4px}.stores-section{margin:10px 0 48px}.stores-horizontal{display:flex;gap:18px;overflow-x:auto;padding:4px 2px 18px;scroll-snap-type:x proximity;scrollbar-width:thin}.store-bubble{width:126px;min-width:126px;border:0;background:transparent;color:#fff;padding:0;cursor:pointer;text-align:center;scroll-snap-align:start}.store-bubble-image{width:112px;height:112px;margin:0 auto 10px;border-radius:22px;overflow:hidden;background:#171717;border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;transition:transform .2s,border-color .2s}.store-bubble:hover .store-bubble-image{transform:translateY(-3px);border-color:#e0ff00}.store-bubble-image img{width:100%;height:100%;object-fit:cover;display:block}.store-bubble-placeholder{font-size:34px}.store-bubble strong{display:block;font-size:13px;line-height:1.25;white-space:normal}.product-body{display:flex;flex-direction:column}.product-body>.btn{margin-top:auto}.product-body .product-price{margin-bottom:16px}
@media(max-width:520px){.home-categories{margin-bottom:28px}.stores-horizontal{gap:12px;margin-right:-16px;padding-right:16px}.store-bubble{width:96px;min-width:96px}.store-bubble-image{width:88px;height:88px;border-radius:18px}.store-bubble strong{font-size:12px}}

/* ============================================
   HOME INDEX - AJUSTES COMPACTOS
============================================ */
@media (min-width: 769px) {
    .home-index .banner-container { height: 400px; min-height: 400px; }
    .home-index .banner-slide { min-height: 400px; }
}

.home-index .home-categories { margin: -14px 0 24px; }
.home-index .home-category-filter { margin: 0; padding: 0 0 8px; }
.home-index .home-products { margin-top: 0; }
.home-index .product-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.home-index .product-card { border-radius: 14px; min-width: 0; }
.home-index .product-media { aspect-ratio: 1 / 1; }
.home-index .product-body { min-height: 0; padding: 11px; }
.home-index .product-body h3 { font-size: 13px; line-height: 1.25; margin: 7px 0 5px; }
.home-index .product-price { font-size: 16px; line-height: 1.15; margin: 0 0 9px; }
.home-index .product-store { margin: 0; }
.home-index .product-store-link { appearance:none; width:100%; border:0; padding:0; background:transparent; color:#aaa; display:flex; align-items:center; gap:6px; cursor:pointer; text-align:left; font:inherit; }
.home-index .product-store-link:hover strong { color:#e0ff00; }
.home-index .product-store-link img { width:18px; height:18px; border-radius:50%; object-fit:cover; }
.home-index .product-store-link strong { font-size:10px; line-height:1.15; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; transition:color .2s; }
.home-index .home-buy-row { margin-top:auto; padding-top:4px; display:flex; flex-direction:column; align-items:stretch; gap:7px; }
.home-index .qty { width:100%; justify-content:space-between; height:30px; }
.home-index .qty button { width:30px; height:30px; font-size:16px; cursor:pointer; }
.home-index .qty span { font-size:11px; }
.home-index .btn-pedir { width:100%; padding:8px 7px; font-size:11px; line-height:1; }
.home-index .soldout { top:8px; left:8px; padding:5px 8px; font-size:9px; }
.home-index .category-chip { font-size:12px; padding:9px 14px; }

/* Pedido modal propio: nunca usa diálogos del navegador */
body.modal-abierto { overflow:hidden; }
.pedido-modal-overlay { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:20px; background:rgba(0,0,0,.72); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); opacity:0; transition:opacity .18s ease; }
.pedido-modal-overlay.activo { opacity:1; }
.pedido-modal { width:min(440px,100%); position:relative; border:1px solid rgba(255,255,255,.09); border-radius:22px; padding:28px; background:#111; box-shadow:0 24px 80px rgba(0,0,0,.55); transform:translateY(8px) scale(.985); transition:transform .18s ease; }
.pedido-modal-overlay.activo .pedido-modal { transform:none; }
.pedido-modal h2 { color:#fff; font-size:24px; line-height:1.15; margin:0 38px 8px 0; }
.pedido-modal-cantidad { color:#8d8d8d; font-size:13px; margin-bottom:20px; }
.pedido-modal-cantidad strong { color:#e0ff00; }
.pedido-modal-close { position:absolute; top:16px; right:16px; width:34px; height:34px; border:0; border-radius:50%; background:#1e1e1e; color:#ddd; font-size:23px; cursor:pointer; }
.pedido-modal form { display:grid; gap:14px; }
.pedido-modal label { display:grid; gap:7px; color:#aaa; font-size:12px; font-weight:600; }
.pedido-modal input { width:100%; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:#191919; color:#fff; padding:13px 14px; outline:none; font-size:14px; }
.pedido-modal input:focus { border-color:#e0ff00; box-shadow:0 0 0 3px rgba(224,255,0,.08); }
.pedido-modal-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:5px; }
.pedido-modal-actions .btn { min-width:120px; }

@media (max-width: 768px) {
    .home-index .product-grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap:8px; }
    .home-index .product-card { border-radius:11px; }
    .home-index .product-body { padding:8px; }
    .home-index .product-body h3 { font-size:11px; margin:5px 0 4px; }
    .home-index .product-price { font-size:13px; margin-bottom:7px; }
    .home-index .product-store-link { gap:4px; }
    .home-index .product-store-link img { width:14px; height:14px; }
    .home-index .product-store-link strong { font-size:8px; }
    .home-index .qty { height:27px; }
    .home-index .qty button { width:27px; height:27px; font-size:14px; }
    .home-index .qty span { font-size:9px; }
    .home-index .btn-pedir { padding:7px 4px; font-size:9px; }
    .home-index .category-chip { font-size:11px; padding:8px 12px; }
    .home-index .home-categories { margin:-8px 0 18px; }
    .pedido-modal { padding:23px 18px 18px; border-radius:18px; }
    .pedido-modal h2 { font-size:20px; }
    .pedido-modal-actions { display:grid; grid-template-columns:1fr 1fr; }
    .pedido-modal-actions .btn { min-width:0; padding-left:10px; padding-right:10px; }
}

/* ============================================
   AJUSTES MARCA + ALERTAS PEDIDOS
============================================ */
.logo { gap: 4px; color: #e8e8e8; font-weight: 300; }
.logo .logo-mercado { color: #e8e8e8; font-weight: 300; }
.logo .logo-lemon { color: #e0ff00; font-weight: 800; }
.footer-brand { display:inline-flex; gap:3px; align-items:baseline; }
.footer-brand span { color:#8d8d8d; font-weight:300; }
.footer-brand strong { color:#e0ff00; font-weight:800; }
.store-session-name { font-size:14px; color:#e0ff00; }
.nav-pedidos-btn, .menu-pedidos-link, .nav-menu-alert { position:relative; }
.pedido-badge { display:none; min-width:18px; height:18px; padding:0 5px; border-radius:999px; align-items:center; justify-content:center; background:#e0ff00; color:#090909; font-size:10px; line-height:18px; font-weight:900; vertical-align:middle; margin-left:4px; box-shadow:0 0 0 3px rgba(224,255,0,.12); }
.pedido-badge.visible { display:inline-flex; }
.pedido-badge-inline { margin-left:5px; }
.menu-toggle .pedido-badge { position:absolute; top:-5px; right:-8px; margin:0; }
.menu-desplegable .pedido-badge { float:right; margin-top:1px; }

.pedido-modal-cantidad { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:14px 0 22px; color:#a5a5a5; }
.pedido-modal-qty { flex:0 0 auto; }
.pedido-modal-qty strong { min-width:34px; text-align:center; color:#e0ff00; font-size:16px; }
.confirm-modal-text { color:#aaa; line-height:1.5; margin:8px 0 22px; }

/* El verde limón de marca se mantiene siempre exactamente en #e0ff00 */
.text-verde, .verde, .eyebrow, .product-price, .card-tienda .nombre, .store-count, .banner-slide h2 { color:#e0ff00 !important; }
.btn-verde, .btn-circulo.verde, .banner-dots span.activo { background:#e0ff00 !important; }
.btn-verde, .btn-circulo.verde { color:#0a0a0a !important; border-color:#e0ff00 !important; }
.btn:hover:not(.btn-peligro), .menu-toggle, .btn-circulo:not(.peligro), .qty button { color:#e0ff00; }
.btn-verde:hover, .btn-circulo.verde:hover { background:#e0ff00 !important; }

@media(max-width:768px){
    .store-session-name { display:none; }
}

/* ============================================
   DIRECTORIO PÚBLICO DE TIENDAS
   ============================================ */
.btn-tiendas-header{display:inline-flex}
.public-stores-page{max-width:1280px;margin:0 auto 48px}
.public-stores-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:8px 0 22px}
.public-stores-heading h1{margin:0;color:#fff;font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:-.045em}
.public-stores-count{color:#8c8c8c;font-size:13px;padding-bottom:5px}
.public-store-filter{margin-bottom:22px}
.public-store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.public-store-card{background:#111;border-radius:18px;overflow:hidden;min-width:0;cursor:pointer;box-shadow:0 1px 0 rgba(255,255,255,.04) inset;transition:transform .22s ease,background .22s ease}
.public-store-card:hover{transform:translateY(-3px);background:#141414}
.public-store-cover{height:140px;background:#1a1a1a;position:relative;overflow:hidden}
.public-store-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.public-store-card:hover .public-store-cover img{transform:scale(1.02)}
.public-store-cover-empty{height:100%;display:grid;place-items:center;color:#4c4c4c;font-size:12px}
.public-store-body{padding:0 16px 16px}
.public-store-avatar-wrap{width:68px;height:68px;margin-top:-34px;position:relative;border-radius:50%;padding:3px;background:#111}
.public-store-avatar{width:100%;height:100%;border-radius:50%;overflow:hidden;background:#202020;display:grid;place-items:center;font-weight:800;font-size:22px;color:#e0ff00}
.public-store-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.public-store-name{margin:10px 0 3px;color:#fff;font-size:18px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.public-store-category{color:#8c8c8c;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.public-store-stats{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:14px}
.public-store-mini{background:#171717;padding:10px 12px;border-radius:12px}
.public-store-mini b{display:block;color:#fff;font-size:17px}.public-store-mini span{font-size:11px;color:#8c8c8c}
@media(max-width:950px){.public-store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.btn-tiendas-header{display:none}.public-stores-heading{align-items:flex-start}.public-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-store-cover{height:112px}.public-store-avatar-wrap{width:58px;height:58px;margin-top:-29px}.public-store-name{font-size:16px}}
@media(max-width:520px){.public-store-grid{grid-template-columns:1fr}.public-store-cover{height:126px}}

/* Editor ligero de imágenes: compresión + encuadre por arrastre */
.profile-card-modern{max-width:980px;margin:0 auto;padding:22px}
.profile-media-row{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,3.2fr);gap:16px;align-items:start;margin-bottom:22px}
.profile-media-block{min-width:0}
.profile-dropzone{display:grid;place-items:center;width:100%;overflow:hidden;background:#151515;border:1px dashed rgba(255,255,255,.18);color:#8f8f8f;cursor:pointer;text-align:center;transition:border-color .16s,background .16s}
.profile-dropzone small{font-size:10px;color:#666;font-weight:500}.profile-dropzone:hover,.profile-dropzone.drag-over{border-color:#e0ff00;background:#181818}.profile-dropzone img{width:100%;height:100%;object-fit:cover;display:block}
.profile-media-avatar .profile-dropzone{aspect-ratio:1;border-radius:18px}.profile-media-banner .profile-dropzone{aspect-ratio:16/5;border-radius:18px}
.profile-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.profile-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.profile-actions{display:flex;justify-content:center;margin-top:4px}
.inline-image-editor{margin-top:10px;padding:12px;background:#101010;border-radius:14px;border:1px solid rgba(255,255,255,.07)}
.inline-image-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:9px}.inline-image-editor-head strong{color:#fff;font-size:13px}.inline-image-editor-head span{color:#777;font-size:11px}
.inline-image-crop{width:100%;position:relative;overflow:hidden;background:#080808;border-radius:11px;cursor:grab;touch-action:none;user-select:none}.inline-image-crop.dragging{cursor:grabbing}.inline-image-crop img{position:absolute;left:0;top:0;max-width:none!important;max-height:none!important;pointer-events:none;will-change:transform}
.profile-media-avatar .inline-image-crop{max-width:320px;margin:0 auto}.inline-image-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.inline-image-editor-actions .btn{padding:9px 14px}
@media(max-width:768px){.profile-card-modern{padding:16px}.profile-media-row{grid-template-columns:100px minmax(0,1fr);gap:10px}.profile-media-avatar .profile-dropzone,.profile-media-banner .profile-dropzone{border-radius:12px}.profile-fields-grid{grid-template-columns:1fr}.inline-image-editor-head{align-items:flex-start;flex-direction:column;gap:3px}.inline-image-editor-actions{display:grid;grid-template-columns:1fr 1fr}.inline-image-editor-actions .btn{width:100%}}

/* WhatsApp — icono oficial suministrado, reutilizado en todo el sitio */
.wa-icon,.wa-logo{
  display:inline-block;
  flex:0 0 auto;
  background-color:currentColor;
  -webkit-mask:url('../assets/whatsapp.svg') center/contain no-repeat;
  mask:url('../assets/whatsapp.svg') center/contain no-repeat;
}
.wa-logo{width:30px;height:30px;color:#25D366}
.wa-icon{width:22px;height:22px;color:#25D366;vertical-align:middle}
.wa-icon-btn{width:18px;height:18px;margin-left:7px;color:#0b0b0b;vertical-align:-3px}
.wa-brand{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px}
.wa-setting-copy{display:flex;align-items:center;gap:11px;min-width:0}
.whatsapp-setting{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(100%,520px);padding:13px 15px;border-radius:14px;background:#141414}
.whatsapp-setting strong{display:block;color:#fff;font-size:13px;line-height:1.2}
.whatsapp-setting small{display:block;margin-top:3px;color:#858585;font-size:11px;line-height:1.35}
.whatsapp-setting-compact{margin:4px 0 18px}
.switch-control{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;cursor:pointer}
.switch-control input{position:absolute;opacity:0;pointer-events:none}
.switch-track{width:46px;height:26px;border-radius:999px;background:#333;position:relative;transition:.18s ease}
.switch-track::after{content:'';position:absolute;left:4px;top:4px;width:18px;height:18px;border-radius:50%;background:#aaa;transition:.18s ease}
.switch-control input:checked + .switch-track{background:#25D366}
.switch-control input:checked + .switch-track::after{left:24px;background:#fff}
.pedido-submit{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:640px){.whatsapp-setting{width:100%;gap:12px;padding:12px}.wa-brand{width:32px;height:32px;flex-basis:32px}.wa-logo{width:27px;height:27px}}


/* Login/registro compacto restaurado */

.register-type{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}

.register-type{width:min(100%,420px);margin:0 auto 22px!important}


/* ===== Auth limpio y centrado ===== */
.auth-overlay{
    position:fixed;inset:0;z-index:980;display:grid;place-items:center;
    padding:24px;background:rgba(0,0,0,.72);
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    overflow:auto;
}

.auth-card{
    position:relative;width:min(100%,390px);margin:auto;
    background:#090909;border:0!important;border-radius:18px;
    box-shadow:0 24px 80px rgba(0,0,0,.5);padding:30px;
}

.auth-card-register{width:min(100%,500px)}

.auth-title{margin:0 38px 24px;text-align:center;font-size:25px;line-height:1;font-weight:300;color:#fff;letter-spacing:-.5px}

.auth-title span{font-weight:300}
.auth-title strong{font-weight:800;color:#e0ff00;margin-left:5px}

.auth-close{position:absolute;right:14px;top:14px;width:34px;height:34px;border:0;border-radius:50%;background:#171717;color:#aaa;font-size:24px;line-height:1;cursor:pointer}

.auth-close:hover{color:#fff;background:#222}

.auth-fields{display:grid;gap:12px}

.auth-card .form-group{margin:0}

.auth-card .form-control{height:48px;background:#161616;border:1px solid #262626;border-radius:12px;color:#fff;padding:0 15px;font-size:14px}

.auth-card .form-control:focus{border-color:#e0ff00;box-shadow:0 0 0 3px rgba(224,255,0,.08)}

.auth-submit{display:flex!important;align-items:center;justify-content:center;width:100%;height:46px;margin-top:16px;border-radius:12px!important}

.auth-switch{margin:17px 0 0;text-align:center;color:#777;font-size:12px}
.auth-switch a{color:#e0ff00;text-decoration:none;font-weight:700}

.auth-type-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px}
.auth-type-switch .btn{width:100%;height:42px}

.auth-register-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}
.auth-register-grid .span-2{grid-column:span 2!important}

.auth-whatsapp{grid-column:span 2!important;width:100%!important;max-width:none!important;margin:0!important;background:#131313!important;border:0!important;border-radius:12px!important}

.auth-hidden{display:none!important}

    .auth-overlay{padding:16px;place-items:center}

    .auth-card,.auth-card-register{width:min(100%,390px);padding:24px 18px;border-radius:16px}

    .auth-title{font-size:23px;margin-bottom:20px}

    .auth-register-grid{grid-template-columns:1fr!important}
.auth-register-grid .span-2{grid-column:span 1!important}

    .auth-whatsapp{grid-column:span 1!important}

/* =========================================================
   REGISTRO — corrección visual definitiva
   Mantiene Login intacto y limita estas reglas al registro.
   ========================================================= */

.auth-card-register{
    width:min(100%,520px)!important;
    padding:30px!important;
}

.auth-card-register .auth-title{
    margin-bottom:22px!important;
}

.auth-card-register .auth-type-switch{
    width:100%!important;
    max-width:none!important;
    margin:0 0 14px!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
}

.auth-card-register .auth-type-switch .btn{
    height:42px!important;
    margin:0!important;
    border-radius:11px!important;
}

.auth-card-register .auth-register-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
    width:100%!important;
    align-items:stretch!important;
}

.auth-card-register .auth-register-grid .form-group{
    min-width:0!important;
    width:100%!important;
    margin:0!important;
}

.auth-card-register .auth-register-grid .span-2{
    grid-column:1 / -1!important;
}

.auth-card-register .form-control{
    width:100%!important;
    height:48px!important;
    box-sizing:border-box!important;
    margin:0!important;
}

.auth-card-register .auth-whatsapp{
    grid-column:1 / -1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    width:100%!important;
    min-height:58px!important;
    padding:10px 13px!important;
    margin:0!important;
    box-sizing:border-box!important;
    background:#131313!important;
    border:1px solid #202020!important;
    border-radius:12px!important;
}

.auth-card-register .auth-whatsapp .wa-setting-copy{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
    flex:1 1 auto!important;
}

.auth-card-register .auth-whatsapp .wa-brand{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    flex:0 0 32px!important;
    display:grid!important;
    place-items:center!important;
}

.auth-card-register .auth-whatsapp .wa-logo{
    width:26px!important;
    height:26px!important;
}

.auth-card-register .auth-whatsapp strong{
    display:block!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1.15!important;
    color:#fff!important;
}

.auth-card-register .auth-whatsapp small{
    display:block!important;
    margin:3px 0 0!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    color:#858585!important;
}

.auth-card-register .switch-control{
    flex:0 0 auto!important;
    width:50px!important;
    height:28px!important;
    margin:0!important;
    display:block!important;
}

.auth-card-register .switch-track{
    width:50px!important;
    height:28px!important;
    display:block!important;
}

.auth-card-register .auth-submit{
    margin-top:14px!important;
}

@media (max-width:640px){
    .auth-card-register{
        width:min(100%,390px)!important;
        padding:24px 18px!important;
    }

    .auth-card-register .auth-register-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }

    .auth-card-register .auth-register-grid .span-2,
    .auth-card-register .auth-whatsapp{
        grid-column:1!important;
    }

    .auth-card-register .auth-whatsapp{
        min-height:58px!important;
        padding:10px 12px!important;
        gap:10px!important;
    }

    .auth-card-register .auth-whatsapp small{
        font-size:10px!important;
    }
}

@media (max-width:370px){
    .auth-card-register{
        padding:22px 14px!important;
    }

    .auth-card-register .auth-whatsapp small{
        display:none!important;
    }
}

/* Registro compacto 420px + WhatsApp exclusivamente para tiendas */
.auth-card-register{
  width:min(calc(100% - 28px),420px)!important;
  max-width:420px!important;
  padding:24px 20px!important;
}
.auth-card-register .auth-register-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.auth-card-register .auth-register-grid .form-group,
.auth-card-register .auth-register-grid .span-2{
  grid-column:1!important;
  width:100%!important;
  margin:0!important;
}
/* Esta regla debe ganar a cualquier display:flex!important previo */
.auth-card-register .auth-hidden,
.auth-card-register #reg-whatsapp-wrap.auth-hidden,
.auth-card-register #reg-telefono-wrap.auth-hidden,
.auth-card-register #reg-categoria-wrap.auth-hidden{
  display:none!important;
}
.auth-card-register .auth-whatsapp:not(.auth-hidden){
  display:flex!important;
  width:100%!important;
  min-height:54px!important;
  padding:9px 12px!important;
  box-sizing:border-box!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.auth-card-register .form-control{height:46px!important;}
.auth-card-register .auth-submit{margin-top:12px!important;}
@media(max-width:480px){
  .auth-card-register{padding:22px 17px!important;}
}


/* =========================================================
   PANEL TIENDA · FORMULARIO DE PRODUCTO — VERSION OK+
   ========================================================= */
.product-form-panel{
    width:100%;
    max-width:1180px;
    margin:0 auto 26px;
    padding:24px;
    background:#111;
    border:0;
    border-radius:16px;
}
.product-form-head{display:flex;align-items:baseline;gap:12px;margin-bottom:18px}
.product-form-head h4{margin:0;color:#fff;font-size:18px}
.product-form-head span{color:#6f6f6f;font-size:12px}
.product-form-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:22px;align-items:start}
.product-image-field{width:190px;min-width:0}
.sr-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.product-upload-zone{
    width:190px;height:190px;aspect-ratio:1;border:1px dashed #3a3a3a;border-radius:14px;
    background:#171717;overflow:hidden;cursor:pointer;display:grid;place-items:center;outline:none;
    transition:border-color .18s,background .18s;
}
.product-upload-zone:hover,.product-upload-zone:focus-visible,.product-upload-zone.dragover{border-color:#e0ff00;background:#1b1d13}
.product-upload-zone.editing{display:none}
.product-upload-preview{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative;color:#aaa;text-align:center}
.product-upload-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.product-upload-plus{font-size:28px;line-height:1;color:#e0ff00;font-weight:300}
.product-upload-preview strong{font-size:12px;color:#dedede;font-weight:600}
.product-upload-preview small{font-size:10px;color:#777}
.product-upload-change{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);padding:5px 9px;border-radius:999px;background:rgba(5,5,5,.78);backdrop-filter:blur(5px);color:#fff;font-size:9px;white-space:nowrap}
.product-crop-mount{width:190px;max-width:190px}
.product-crop-mount:empty{display:none}
.product-crop-mount .inline-image-editor.compact-product-editor{width:190px!important;max-width:190px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important}
.compact-product-editor .inline-image-editor-head{display:none!important}
.compact-product-editor .inline-image-crop{width:190px!important;height:190px!important;aspect-ratio:1!important;border-radius:14px!important;margin:0!important;touch-action:none;overflow:hidden;background:#171717;border:1px solid #2d2d2d}
.compact-product-editor .inline-image-crop img{position:absolute!important;max-width:none!important;user-select:none!important;pointer-events:none!important;transform-origin:0 0!important}
.image-zoom-control{display:flex;align-items:center;gap:8px;margin:8px 2px 0;color:#777;font-size:9px}
.image-zoom-control span{width:30px;flex:0 0 30px}
.image-zoom-control input{width:100%;accent-color:#e0ff00;height:18px}
.compact-product-editor .inline-image-editor-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin-top:7px!important}
.compact-product-editor .inline-image-editor-actions .btn{height:34px!important;padding:0 8px!important;font-size:10px!important;margin:0!important}
.product-fields-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(130px,.7fr);gap:12px;align-items:stretch}
.product-fields-grid .form-group{margin:0!important;min-width:0}
.product-fields-grid .form-control{width:100%;height:48px;margin:0!important;box-sizing:border-box}
.product-fields-grid textarea.form-control{height:108px;min-height:108px;resize:vertical;padding-top:14px}
.field-name{grid-column:1}.field-price{grid-column:2}.field-detail{grid-column:1;grid-row:2 / span 2}.field-stock{grid-column:2;grid-row:2}
.product-form-actions{display:flex;justify-content:center;gap:8px;margin-top:18px}
.product-form-actions .btn{min-width:112px;height:42px;display:inline-flex;align-items:center;justify-content:center}

@media(max-width:760px){
    .product-form-panel{width:100%;padding:18px 16px;border-radius:14px}
    .product-form-head{justify-content:center;text-align:center;flex-direction:column;align-items:center;gap:3px}
    .product-form-layout{grid-template-columns:1fr;gap:16px}
    .product-image-field,.product-crop-mount{width:160px;max-width:160px;margin:0 auto}
    .product-upload-zone{width:160px;height:160px}
    .product-crop-mount .inline-image-editor.compact-product-editor{width:160px!important;max-width:160px!important}
    .compact-product-editor .inline-image-crop{width:160px!important;height:160px!important}
    .product-fields-grid{grid-template-columns:1fr 1fr;gap:10px}
    .field-name{grid-column:1/-1}.field-price{grid-column:1}.field-stock{grid-column:2;grid-row:2}.field-detail{grid-column:1/-1;grid-row:3}
    .product-fields-grid textarea.form-control{height:88px;min-height:88px}
}
@media(max-width:420px){
    .product-form-panel{padding:16px 14px}
    .product-fields-grid{grid-template-columns:1fr 1fr}
    .product-form-actions .btn{min-width:100px}
}


/* =========================================================
   AJUSTES GLOBALES · LOGO / PERFORMANCE / STOCK
   ========================================================= */

/* Logo aprobado: todo blanco, únicamente la O de Lemon en verde. */
.logo .logo-mercado,
.footer-brand > span{
    color:#fff!important;
    font-weight:300!important;
}
.logo .logo-lemon,
.footer-brand > strong{
    color:#fff!important;
    font-weight:700!important;
}
.logo .logo-o,
.footer-brand .logo-o{
    color:#e0ff00!important;
}
.logo{letter-spacing:-.025em}

/* Loader realmente centrado en el área visible de la página. */
#contenido-principal > .loader{
    width:100%;
    min-height:calc(100vh - 150px);
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
}

/* Todas las imágenes de producto públicas son 1:1. */
.product-media,
.home-index .product-media,
.store-product-grid .product-media{
    aspect-ratio:1/1!important;
    width:100%;
}
.product-media img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/* Stock sobre la foto, nunca ocupa espacio dentro del cuerpo de la tarjeta. */
.stock-overlay{
    position:absolute;
    top:10px;
    right:10px;
    z-index:3;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:25px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(8,8,8,.62);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    color:#fff;
    font-size:10px;
    line-height:1;
    font-weight:600;
    border:1px solid rgba(255,255,255,.12);
}
.stock-overlay.ultima{
    color:#e0ff00;
    font-weight:700;
}
.product-media .soldout{
    z-index:4;
}

/* Evita relayouts al decodificar imágenes. */
.product-media img,
.public-store-cover img,
.public-store-avatar img{
    content-visibility:auto;
}

@media(max-width:768px){
    #contenido-principal > .loader{min-height:calc(100vh - 112px)}
    .stock-overlay{top:7px;right:7px;padding:4px 7px;min-height:21px;font-size:8.5px}
}


/* Enlace público compacto en Perfil */
.profile-public-link{
    width:min(100%,620px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:14px 0 12px;
    padding:11px 12px;
    border-radius:12px;
    background:#141414;
}
.profile-public-link > div{min-width:0;display:grid;gap:3px}
.profile-public-link small{color:#777;font-size:10px}
.profile-public-link strong{
    display:block;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#fff;
    font-size:12px;
    font-weight:500;
}
.profile-public-link .btn{flex:0 0 auto}

/* Badge de stock también sobre las miniaturas del panel. */
.manage-thumb{position:relative}
.manage-thumb .stock-overlay{
    top:4px;
    right:4px;
    min-height:17px;
    padding:3px 5px;
    font-size:7px;
}
@media(max-width:520px){
    .profile-public-link{width:100%}
    .profile-public-link strong{font-size:10.5px}
}

/* ===== Pulido visual aprobado ===== */
.logo .logo-lemon,
.footer-brand strong{font-weight:700!important;color:#fff!important}
.logo .logo-o,
.footer-brand .logo-o{color:#e0ff00!important;font-weight:700!important}

/* Perfil: composición plana, compacta y sin contornos */
.profile-card-modern{border:0!important;background:#101010!important}
.profile-fields-grid{
  display:grid!important;
  grid-template-columns:minmax(220px,1.6fr) minmax(150px,.75fr) minmax(120px,.55fr)!important;
  gap:12px!important;align-items:center!important
}
.profile-fields-grid .form-group{margin:0!important;min-width:0!important}
.profile-fields-grid .form-group label{display:none!important}
.profile-fields-grid .form-control{
  width:100%!important;height:46px!important;border:0!important;border-radius:10px!important;
  background:#191919!important;box-shadow:none!important
}
#perfil-telefono{max-width:180px!important}
#perfil-categoria{max-width:240px!important}
.profile-compact-row{
  display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important;margin-top:14px!important
}
.profile-public-link{
  width:auto!important;max-width:420px!important;min-height:54px!important;margin:0!important;
  padding:8px 10px 8px 14px!important;border:0!important;border-radius:10px!important;background:#191919!important;
  flex:1 1 330px!important
}
.profile-public-link small{display:none!important}
.profile-public-link strong{font-size:13px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.profile-public-link .btn{height:38px!important;min-width:72px!important}
.whatsapp-setting-compact{
  width:auto!important;min-width:225px!important;max-width:260px!important;min-height:54px!important;
  margin:0!important;padding:8px 12px!important;border:0!important;border-radius:10px!important;background:#191919!important
}
.whatsapp-setting-compact .wa-setting-copy>div small{display:none!important}
.whatsapp-setting-compact .wa-setting-copy>div strong{font-size:12px!important}
.whatsapp-setting-compact .wa-logo{width:25px!important;height:25px!important}
.profile-actions{display:flex!important;justify-content:center!important;margin-top:18px!important}

/* Separación únicamente por superficies planas */
.profile-media-block,.profile-dropzone,.whatsapp-setting,.profile-public-link,.card{box-shadow:none!important}
.profile-dropzone{border:0!important;background:#181818!important}

/* Toast global: arriba y centrado, limpio */
.toast-container{
  position:fixed!important;top:18px!important;bottom:auto!important;left:50%!important;right:auto!important;
  transform:translateX(-50%)!important;width:max-content!important;max-width:calc(100vw - 28px)!important;
  align-items:center!important;z-index:99999!important
}
.toast{
  width:max-content!important;max-width:min(520px,calc(100vw - 28px))!important;
  border:0!important;border-left:0!important;border-bottom:0!important;box-shadow:none!important;
  background:#f4f4f4!important
}
@media(max-width:700px){
 .profile-fields-grid{grid-template-columns:1fr!important}
 #perfil-telefono,#perfil-categoria{max-width:none!important}
 .profile-compact-row{display:grid!important;grid-template-columns:1fr!important}
 .profile-public-link,.whatsapp-setting-compact{width:100%!important;max-width:none!important;min-width:0!important}
}

/* AJUSTES EXACTOS SOLICITADOS */
.card,.item,.list-item,.pedido-item,.pedido-card,.historial-item,.product-item,.banner-card,.shop-card,.admin-card,.notice,.alert,.message,.msg,.toast,[class*="pedido"],[class*="historial"]{border-left:0!important}
.card::before,.item::before,.list-item::before,.pedido-item::before,.pedido-card::before,.historial-item::before,.product-item::before,.banner-card::before,.shop-card::before,.admin-card::before,.notice::before,.alert::before,.message::before,.msg::before,.toast::before,[class*="pedido"]::before,[class*="historial"]::before{content:none!important;display:none!important}
.toast-container{position:fixed!important;top:18px!important;bottom:auto!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:max-content!important;max-width:calc(100vw - 28px)!important;align-items:center!important}
.toast{left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:translateY(-24px)!important;opacity:0!important;transition:opacity .2s ease,transform .2s ease!important}
.toast.show,.toast.visible,.toast.activo{opacity:1!important;transform:translateY(0)!important}


/* =========================================================
   MÓVIL — ajuste de composición sin cambiar funciones/colores
   ========================================================= */
@media(max-width:700px){
  html,body{max-width:100%;overflow-x:hidden}
  .contenedor{width:100%;max-width:100%;padding-left:14px!important;padding-right:14px!important}
  #contenido-principal{width:100%;min-width:0}
  #contenido-principal>.fade-in{width:100%;min-width:0}

  /* Navegación del panel: una sola línea desplazable, sin deformarse */
  .tabs{
    width:100%;
    flex-wrap:nowrap!important;
    overflow-x:auto;
    overflow-y:hidden;
    gap:4px;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .tabs::-webkit-scrollbar{display:none}
  .tabs .tab{
    flex:0 0 auto;
    white-space:nowrap;
    padding:9px 13px;
    font-size:12px;
  }

  /* Pedidos / historial: tarjeta bien ordenada y sin desbordes */
  .lista-pedidos{width:100%;gap:10px}
  .pedido-item{
    width:100%;
    min-width:0;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px 12px!important;
    align-items:center!important;
    padding:14px!important;
  }
  .pedido-item .info{
    grid-column:1 / -1;
    width:100%;
    min-width:0!important;
  }
  .pedido-item .info .cliente,
  .pedido-item .info .fecha{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .pedido-item .total{
    grid-column:1;
    justify-self:start;
    white-space:nowrap;
  }
  .pedido-item .estado{
    grid-column:1;
    width:max-content;
    max-width:100%;
    margin:0;
  }
  .pedido-item>.flex{
    grid-column:2;
    grid-row:2 / span 2;
    align-self:center;
    justify-self:end;
    flex-wrap:nowrap!important;
  }

  /* Check: el propio botón es el círculo; el carácter ✓ va directamente encima */
  .btn-circulo.verde{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-family:Arial,sans-serif!important;
    font-size:23px!important;
    font-weight:700!important;
    line-height:1!important;
  }
  .btn-circulo.verde::before,
  .btn-circulo.verde::after{
    content:none!important;
    display:none!important;
  }

  /* Grids y formularios del panel */
  .product-grid{width:100%;min-width:0}
  .producto,.product-card,.card{max-width:100%;min-width:0}
  .profile-card-modern{width:100%;max-width:100%;padding-left:14px!important;padding-right:14px!important}
  .profile-media-row{width:100%;min-width:0}
  .profile-fields-grid{width:100%}
  .profile-fields-grid .form-control{min-width:0}
  .profile-compact-row{width:100%}
  .profile-public-link{min-width:0!important}
  .profile-public-link strong{min-width:0;overflow:hidden;text-overflow:ellipsis}
  .whatsapp-setting-compact{min-width:0!important}

  /* Modales/formularios: nunca salir de pantalla */
  .modal,.modal-content,.pedido-modal,.auth-card,.auth-card-register{
    max-width:calc(100vw - 28px)!important;
  }
}

@media(max-width:480px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .grid-tiendas{grid-template-columns:1fr!important}
  .pedido-item{padding:13px!important}
}

/* PANEL DE TIENDA — jerarquía limpia y adaptación móvil */
.panel-section-head{
  display:flex;
  align-items:center;
  min-width:0;
}
.panel-section-head-action{
  justify-content:space-between;
  gap:12px;
}

@media(max-width:700px){
  .panel-section-head{
    width:100%;
    margin-bottom:14px!important;
  }
  .panel-section-head>div,
  .panel-section-head>span{
    min-width:0;
  }
  .panel-section-head-action{
    gap:10px;
  }
  .panel-section-head-action .btn{
    flex:0 0 auto;
    white-space:nowrap;
  }

  /* Tabs ocupan una sola fila ordenada y legible */
  .tabs{
    margin-bottom:18px!important;
    padding:0 0 5px!important;
  }
  .tabs .tab{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  /* Listados: ancho completo y ritmo uniforme */
  .lista-pedidos,
  .lista-productos{
    width:100%;
    min-width:0;
  }
  .lista-productos .producto{
    width:100%;
    min-width:0;
  }

  /* Historial: acción Entregar no fuerza ni rompe la tarjeta */
  .pedido-item>.btn{
    grid-column:2;
    justify-self:end;
    width:auto!important;
    white-space:nowrap;
  }

  /* Productos gestionados: elementos internos nunca se salen */
  .producto-info{
    min-width:0;
  }
  .producto-info>*{
    max-width:100%;
  }
  .producto-acciones{
    flex-wrap:wrap;
    gap:7px;
  }

  /* Perfil: medios uno debajo del otro si no caben */
  .profile-media-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .profile-media-block{
    width:100%!important;
    max-width:100%!important;
  }
  .profile-media-avatar{
    max-width:150px!important;
  }
  .profile-media-banner{
    max-width:100%!important;
  }

  /* Formularios de producto: una columna lógica en pantallas estrechas */
  .product-form-layout{
    grid-template-columns:1fr!important;
  }
  .product-image-field{
    width:min(100%,180px)!important;
    justify-self:center!important;
  }
  .product-fields-grid{
    width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:480px){
  .panel-section-head-action .btn{
    padding-left:13px!important;
    padding-right:13px!important;
  }
  .pedido-item>.btn{
    font-size:12px!important;
    padding:8px 12px!important;
  }
}


/* SOLO LISTADO DE PRODUCTOS DEL PANEL EN MÓVIL */
@media(max-width:700px){
  .lista-productos{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
  }

  .lista-productos .producto{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr) auto!important;
    grid-template-rows:auto!important;
    align-items:center!important;
    gap:12px!important;
    padding:12px!important;
    flex-direction:unset!important;
  }

  .lista-productos .manage-thumb{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    aspect-ratio:1/1!important;
    margin:0!important;
    grid-column:1!important;
    grid-row:1!important;
  }

  .lista-productos .producto-info{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    width:auto!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:4px!important;
    text-align:left!important;
  }

  .lista-productos .producto-info .nombre{
    margin:0!important;
    padding:0!important;
    font-size:14px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .lista-productos .producto-info .precio{
    margin:0!important;
    padding:0!important;
    font-size:13px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }

  .lista-productos .producto-acciones{
    grid-column:3!important;
    grid-row:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    gap:6px!important;
    margin:0!important;
    padding:0!important;
  }

  .lista-productos .producto-acciones .btn{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    padding:0!important;
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:50%!important;
    font-size:14px!important;
    line-height:1!important;
  }
}

@media(max-width:420px){
  .lista-productos .producto{
    grid-template-columns:56px minmax(0,1fr) auto!important;
    gap:10px!important;
    padding:10px!important;
  }
  .lista-productos .manage-thumb{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
  }
  .lista-productos .producto-acciones{
    gap:5px!important;
  }
  .lista-productos .producto-acciones .btn{
    width:31px!important;
    height:31px!important;
    min-width:31px!important;
    min-height:31px!important;
    font-size:13px!important;
  }
}

/* =========================================================
   VISTA PÚBLICA DE TIENDA + CARRITO
   Ajustes acotados a la vista de tienda.
   ========================================================= */
.logout-icon-btn{
  width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
.logout-icon-btn svg{width:19px;height:19px;display:block}

.store-page{width:100%;min-width:0}
.store-toolbar{
  display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:12px;
  margin-bottom:16px;
}
.store-toolbar .buscador{margin:0!important;min-width:0}
.store-toolbar .buscador input{
  width:100%;height:44px;padding:0 16px!important;border:0!important;border-radius:12px!important;
  background:#171717!important;box-shadow:none!important;outline:none!important;
}
.store-toolbar .btn{height:44px;border:0!important;background:#171717!important;box-shadow:none!important}
.store-toolbar .store-back{white-space:nowrap}
.store-cart-trigger{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:0 14px!important}
.store-cart-trigger #cart-count{
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e0ff00;color:#090909;
  display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;
}
.cart-svg{width:20px;height:20px;display:block;flex:0 0 auto}

.store-banner{
  min-height:260px!important;padding:30px 34px!important;margin-bottom:18px!important;
  border:0!important;border-radius:18px!important;background-color:#151515!important;
}
.store-banner-copy{max-width:650px}
.store-banner .eyebrow{margin:0 0 6px!important;font-size:10px!important;line-height:1.1!important}
.store-banner h1{
  margin:0 0 7px!important;font-size:clamp(30px,3.6vw,52px)!important;line-height:1!important;
  letter-spacing:-.04em!important;
}
.store-banner p{margin:0!important;font-size:15px!important;line-height:1.35!important;max-width:560px!important;color:#c9c9c9!important}
.store-banner .store-count{font-size:34px!important;line-height:1!important}

.store-product-grid{gap:12px!important}
.store-product-grid .product-card{
  border:0!important;border-radius:14px!important;background:#141414!important;box-shadow:none!important;
  transition:transform .16s ease,background-color .16s ease!important;
}
.store-product-grid .product-card:hover{transform:translateY(-2px);background:#181818!important}
.store-product-grid .product-media{background:#eee!important}
.store-product-grid .product-body{padding:15px!important;display:flex!important;flex-direction:column!important;gap:0!important}
.store-product-grid .product-body h3{margin:0 0 6px!important;line-height:1.25!important;font-size:16px!important}
.store-product-grid .product-price{margin:0!important;font-size:19px!important;line-height:1.15!important}
.store-product-grid .product-body p{margin:7px 0 0!important;line-height:1.35!important}
.store-product-grid .buy-row{margin-top:14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
.store-buy-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.store-buy-actions .btn{border:0!important;box-shadow:none!important;min-height:38px}
.btn-cart-add{
  width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border-radius:50%!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#232323!important;color:#fff!important;
}
.btn-cart-add:hover{background:#2b2b2b!important}
.store-product-grid .qty{background:#202020!important}
.store-product-grid .qty button{transition:background-color .12s ease,color .12s ease}

/* Drawer del carrito */
.cart-shell{position:fixed;inset:0;z-index:100000;pointer-events:none}
.cart-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.42);opacity:0;transition:opacity .18s ease}
.cart-drawer{
  position:absolute;top:0;right:0;width:min(430px,92vw);height:100%;background:#101010;
  transform:translateX(100%);transition:transform .18s ease;overflow:auto;padding:24px;
  box-shadow:-22px 0 55px rgba(0,0,0,.28);
}
.cart-shell.activo{pointer-events:auto}
.cart-shell.activo .cart-backdrop{opacity:1}
.cart-shell.activo .cart-drawer{transform:translateX(0)}
.cart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}
.cart-head .eyebrow{margin-bottom:4px!important}
.cart-head h2{margin:0;font-size:26px;letter-spacing:-.03em}
.cart-close,.cart-remove{
  border:0;background:#202020;color:#fff;border-radius:50%;cursor:pointer;display:grid;place-items:center;
}
.cart-close{width:38px;height:38px;font-size:24px}
.cart-items{display:flex;flex-direction:column;gap:9px}
.cart-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:11px;align-items:center;background:#171717;border-radius:12px;padding:9px}
.cart-thumb{width:58px;height:58px;border-radius:9px;background:#eee;overflow:hidden;display:grid;place-items:center}
.cart-thumb img{width:100%;height:100%;object-fit:cover}
.cart-info{min-width:0;display:flex;flex-direction:column;gap:3px}
.cart-info strong{font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-info>span{font-size:12px;color:#e0ff00;font-weight:700}
.cart-qty{width:max-content;margin-top:3px}
.cart-qty button{width:27px;height:27px;font-size:15px}.cart-qty span{font-size:12px;min-width:20px}
.cart-remove{width:30px;height:30px;font-size:18px;color:#aaa}
.cart-total{display:flex;align-items:center;justify-content:space-between;margin:18px 0 12px;padding-top:15px;border-top:0;background:#191919;border-radius:12px;padding:13px 14px}
.cart-total strong{font-size:20px;color:#e0ff00}
.cart-form{display:grid;gap:9px}
.cart-form input{width:100%;height:44px;border:0!important;border-radius:10px;background:#191919;color:#fff;padding:0 13px;outline:0}
.cart-form .cart-submit{width:100%;height:44px;border:0!important;margin-top:2px}
.cart-empty{background:#171717;color:#888;border-radius:12px;padding:24px;text-align:center}

/* Transiciones rápidas, sin demoras artificiales */
.store-page,.store-page .product-card,.store-toolbar,.store-banner{animation:storeSoftIn .16s ease both}
@keyframes storeSoftIn{from{opacity:.7;transform:translateY(3px)}to{opacity:1;transform:none}}

@media(max-width:768px){
  .store-toolbar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;margin-bottom:12px}
  .store-toolbar .btn{height:40px;padding:0 12px!important;font-size:12px!important}
  .store-toolbar .buscador input{height:40px;padding:0 12px!important;font-size:13px!important}
  .store-cart-trigger{padding:0 10px!important}
  .store-cart-trigger #cart-count{min-width:18px;height:18px;font-size:10px}
  .store-banner{min-height:205px!important;padding:22px!important;margin-bottom:14px!important;align-items:flex-end!important}
  .store-banner .eyebrow{font-size:9px!important;margin-bottom:5px!important}
  .store-banner h1{font-size:32px!important;margin-bottom:5px!important}
  .store-banner p{font-size:13px!important;line-height:1.28!important;max-width:88%!important}
  .store-banner .store-count{display:none!important}
  .store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .store-product-grid .product-body{padding:12px!important}
  .store-product-grid .product-body h3{font-size:13px!important;margin-bottom:5px!important}
  .store-product-grid .product-price{font-size:17px!important}
  .store-product-grid .product-body p{display:none!important}
  .store-product-grid .buy-row{margin-top:11px!important;gap:6px!important;align-items:center!important;flex-direction:column!important}
  .store-product-grid .qty{width:100%;justify-content:space-between}
  .store-buy-actions{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr);gap:6px}
  .store-buy-actions .btn{width:100%!important;min-width:0!important;padding-left:8px!important;padding-right:8px!important}
  .btn-cart-add{width:38px!important;min-width:38px!important;padding:0!important}

  /* En móvil el carrito ocupa toda la sección visible. */
  .cart-backdrop{display:none}
  .cart-drawer{width:100%;height:100%;padding:18px 16px;box-shadow:none;transform:translateY(100%);transition:transform .18s ease}
  .cart-shell.activo .cart-drawer{transform:translateY(0)}
}

@media(max-width:480px){
  .store-toolbar{grid-template-columns:auto minmax(0,1fr) auto}
  .store-back{font-size:0!important;width:40px!important;padding:0!important}
  .store-back::after{content:'←';font-size:18px}
  .store-banner{min-height:190px!important;padding:18px!important}
  .store-banner h1{font-size:28px!important}
  .store-banner p{font-size:12px!important;max-width:95%!important}
  .store-product-grid .product-card{border-radius:12px!important}
  .store-product-grid .product-body{padding:10px!important}
  .store-product-grid .product-body h3{font-size:12.5px!important}
  .store-product-grid .product-price{font-size:16px!important}
  .store-buy-actions{grid-template-columns:36px minmax(0,1fr)}
  .btn-cart-add{width:36px!important;height:36px!important;min-width:36px!important}
}

/* Cuenta única + tienda opcional */
.register-store-choice{display:flex;align-items:center;gap:10px;margin:14px 0;padding:12px 14px;background:#151515;border-radius:11px;color:#ddd;font-size:13px;cursor:pointer}
.register-store-choice input{accent-color:#e0ff00}.register-back{border:0;background:transparent;color:#aaa;padding:0;margin:0 0 14px;cursor:pointer}
.user-profile-strip{display:grid;grid-template-columns:1fr 160px 1fr auto;gap:10px;margin-bottom:12px;align-items:center}.store-active-setting{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin-bottom:12px;background:#191919;border-radius:10px}.inactive-store{min-height:55vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}.inactive-store h2{margin:0;font-size:28px}.inactive-store p{margin:0;color:#999}.inactive-store .btn{margin-top:8px}
@media(max-width:700px){.user-profile-strip{grid-template-columns:1fr}.inactive-store{min-height:60vh;padding:20px}.inactive-store h2{font-size:22px}}

/* Logo consistente con Home */
.auth-title.logo,.footer-brand.logo{display:flex;align-items:baseline;justify-content:center;gap:4px}
.auth-title.logo .logo-mercado,.footer-brand.logo .logo-mercado{color:#e8e8e8!important;font-weight:300!important}
.auth-title.logo .logo-lemon,.footer-brand.logo .logo-lemon{color:#e8e8e8!important;font-weight:700!important}
.auth-title.logo .logo-o,.footer-brand.logo .logo-o{color:#e0ff00!important;font-weight:700!important}
/* Cabecera persistente del panel: solo cambia el contenido de pestaña */
.panel-fixed-head{min-height:94px}.panel-title-row{display:flex;align-items:center;gap:9px;min-height:42px;font-size:18px}.panel-title-row>strong{color:#e0ff00;font-weight:600}.panel-title-row>span:nth-child(2),.panel-title-row>span:nth-child(4){color:#555}.panel-active-label{font-size:13px;color:#aaa}.panel-fixed-head .tabs{margin-bottom:18px}.panel-inline-loader{min-height:110px;display:flex;justify-content:center;align-items:center;gap:6px}.panel-inline-loader span{width:6px;height:6px;border-radius:50%;background:#e0ff00;animation:loaderPulse .7s infinite alternate}.panel-inline-loader span:nth-child(2){animation-delay:.1s}.panel-inline-loader span:nth-child(3){animation-delay:.2s}.panel-tab-content{animation:panelFastIn .11s ease-out}@keyframes panelFastIn{from{opacity:.75;transform:translateY(2px)}to{opacity:1;transform:none}}
@media(max-width:640px){.panel-title-row{font-size:15px;gap:6px;white-space:nowrap}.panel-title-row #panel-store-name{overflow:hidden;text-overflow:ellipsis}.panel-active-label{font-size:12px}.panel-fixed-head{min-height:90px}}

/* Auth real overlay: el contenido de fondo permanece montado */
.auth-overlay{position:fixed!important;inset:0!important;z-index:5000!important;animation:authOverlayIn .12s ease-out}
@keyframes authOverlayIn{from{opacity:0}to{opacity:1}}
/* Tiendas */
.stores-count-light{font-weight:300!important;color:#888;font-size:.8em;margin-left:4px}
/* Perfil: distribución por longitud real de los campos */
.profile-section-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#777;margin:6px 0 10px;padding-bottom:8px;border-bottom:1px solid #252525}
.profile-store-label{margin-top:22px}.user-profile-strip{grid-template-columns:minmax(180px,1.15fr) minmax(120px,.65fr) minmax(220px,1.35fr)!important;align-items:center}.profile-fields-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px!important}.profile-fields-grid>.form-group{grid-column:span 6}.profile-fields-grid>.form-group:has(input[type="tel"]),.profile-fields-grid>.form-group:has(input[type="number"]){grid-column:span 4}.saving-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;animation:savingPulse .55s infinite alternate}@keyframes savingPulse{to{opacity:.25}}
/* Producto: editor compacto en desktop */
.product-form-modal,.producto-form-modal,.modal-producto .modal-content,.product-editor-modal .modal-content{max-width:680px!important;width:min(680px,calc(100vw - 40px))!important}
.product-form-grid,.producto-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px}.product-form-grid>.form-group,.producto-form-grid>.form-group{grid-column:span 6}.product-form-grid>.form-group:has(input[type="number"]),.producto-form-grid>.form-group:has(input[type="number"]){grid-column:span 4}
@media(max-width:700px){.user-profile-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.user-profile-strip .form-control{width:100%}.user-profile-strip input[type="email"]{grid-column:1/-1}.profile-fields-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.profile-fields-grid>.form-group{grid-column:span 3}.profile-fields-grid>.form-group:has(input[type="tel"]),.profile-fields-grid>.form-group:has(input[type="number"]){grid-column:span 2}.product-form-grid,.producto-form-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.product-form-grid>.form-group,.producto-form-grid>.form-group{grid-column:span 3}}
@media(max-width:430px){.user-profile-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.profile-fields-grid>.form-group{grid-column:span 3}.profile-fields-grid>.form-group:has(input[type="tel"]),.profile-fields-grid>.form-group:has(input[type="number"]){grid-column:span 2}}

/* Formulario de producto: overlay compacto, sin alterar la lista */
.product-form-panel:not(.oculto){position:fixed;z-index:4600;left:50%;top:50%;transform:translate(-50%,-50%);width:min(700px,calc(100vw - 36px));max-height:calc(100vh - 50px);overflow:auto;background:#111;padding:18px;border-radius:14px;box-shadow:0 22px 70px rgba(0,0,0,.55)}
.product-form-panel .product-form-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:start}.product-form-panel .product-fields-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(100px,.7fr);gap:10px}.product-form-panel .field-detail{grid-column:1/-1}.product-form-panel .field-stock{max-width:130px}.product-form-panel .product-form-actions{margin-top:12px}
@media(max-width:620px){.product-form-panel:not(.oculto){width:calc(100vw - 20px);max-height:calc(100vh - 24px);padding:14px}.product-form-panel .product-form-layout{grid-template-columns:120px minmax(0,1fr);gap:10px}.product-form-panel .product-fields-grid{grid-template-columns:minmax(0,1fr) 90px}.product-form-panel .field-detail{grid-column:1/-1}.product-form-panel .field-stock{max-width:90px}}

/* PERFIL — distribución compacta por tamaño real del campo */
.user-profile-strip{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) minmax(120px,.55fr) minmax(220px,1.25fr)!important;
  gap:10px!important;
}
.profile-fields-grid{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:start;
}
/* Campos normales: media fila. Campos cortos: un tercio. */
.profile-fields-grid>.form-group{grid-column:span 6!important;margin:0!important}
.profile-fields-grid>.form-group:has(input[type="tel"]),
.profile-fields-grid>.form-group:has(input[type="number"]),
.profile-fields-grid>.form-group:has(select){grid-column:span 4!important}
.profile-fields-grid>.form-group:has(textarea){grid-column:1/-1!important}

/* Móvil: NO convertir cada campo en una fila completa.
   Nombre/email pueden ocupar más; teléfono/categoría/campos cortos comparten fila. */
@media(max-width:700px){
  .user-profile-strip{
    grid-template-columns:minmax(0,1.25fr) minmax(105px,.75fr)!important;
  }
  .user-profile-strip input[type="email"]{
    grid-column:1/-1!important;
  }
  .profile-fields-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .profile-fields-grid>.form-group{grid-column:span 3!important}
  .profile-fields-grid>.form-group:has(input[type="tel"]),
  .profile-fields-grid>.form-group:has(input[type="number"]),
  .profile-fields-grid>.form-group:has(select){grid-column:span 2!important}
  .profile-fields-grid>.form-group:has(textarea){grid-column:1/-1!important}
}
@media(max-width:430px){
  .user-profile-strip{
    grid-template-columns:minmax(0,1.15fr) minmax(100px,.85fr)!important;
  }
  .profile-fields-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  .profile-fields-grid>.form-group{grid-column:span 3!important}
  .profile-fields-grid>.form-group:has(input[type="tel"]),
  .profile-fields-grid>.form-group:has(input[type="number"]),
  .profile-fields-grid>.form-group:has(select){grid-column:span 2!important}
}

/* PERFIL — distribución exacta solicitada */
.user-profile-strip{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(140px,.65fr) minmax(0,1.3fr)!important;
  gap:10px!important;
}
.store-profile-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(150px,.65fr) minmax(240px,1.2fr);
  gap:10px 12px;
  align-items:center;
}
.store-profile-grid .form-group{margin:0!important}
.store-url-field{min-width:0}
.profile-share-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center}
.btn-copy-url{white-space:nowrap}
.store-phone-row{
  grid-column:1 / span 2;
  display:grid;
  grid-template-columns:minmax(150px,220px) minmax(220px,1fr);
  gap:12px;
  align-items:center;
}
.store-whatsapp-row{
  grid-column:3;
  min-width:0;
}
.same-phone-option{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:#aaa;
  cursor:pointer;
}
.same-phone-option input{accent-color:#e0ff00}
.store-phone-field input:disabled{opacity:.72;cursor:not-allowed}

/* PRODUCTO — modal real: fondo bloqueado, oscuro y desenfocado */
.product-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:4590;
  background:rgba(0,0,0,.68);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  opacity:0;
  pointer-events:none;
  transition:opacity .14s ease;
}
.product-modal-backdrop.activo{opacity:1;pointer-events:auto}
body.product-modal-open{overflow:hidden}
.product-form-panel:not(.oculto){
  z-index:4600!important;
  width:min(700px,calc(100vw - 48px))!important;
  max-height:calc(100vh - 56px)!important;
}
@media(max-width:700px){
  .user-profile-strip{
    grid-template-columns:minmax(0,1.2fr) minmax(110px,.8fr)!important;
  }
  .user-profile-strip>div:nth-child(3){grid-column:1/-1}
  .store-profile-grid{
    grid-template-columns:minmax(0,1.25fr) minmax(110px,.75fr);
    gap:9px!important;
  }
  .store-name-field{grid-column:1}
  .store-category-field{grid-column:2}
  .store-url-field{grid-column:1/-1}
  .store-phone-row{
    grid-column:1/-1;
    grid-template-columns:minmax(125px,.85fr) minmax(0,1.15fr);
    gap:9px;
  }
  .store-whatsapp-row{grid-column:1/-1}
  .product-form-panel:not(.oculto){
    width:min(92vw,560px)!important;
    max-height:calc(100vh - 32px)!important;
  }
}
@media(max-width:430px){
  .store-phone-row{
    grid-template-columns:minmax(112px,.8fr) minmax(0,1.2fr);
  }
  .same-phone-option{font-size:12px;line-height:1.2}
  .product-form-panel:not(.oculto){
    width:90vw!important;
    padding:13px!important;
  }
}

/* Grid de productos: sin altura mínima sobrante */
.store-product-grid .product-body,.home-index .product-body{min-height:0!important}
.product-media-clickable{cursor:pointer}
.product-card.agotado .product-media img,.product-detail-image.agotado img{filter:grayscale(1);opacity:.72}
.product-card.agotado .product-media-clickable{pointer-events:auto!important;cursor:pointer}
.product-card.agotado .buy-row,.product-card.agotado .store-buy-actions{pointer-events:none}
.product-card.agotado .btn{opacity:.45}

/* Detalle de producto */
.product-detail-overlay{position:fixed;inset:0;z-index:5200;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(0,0,0,.72);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:0;transition:opacity .14s ease;pointer-events:auto}
.product-detail-overlay.activo{opacity:1}
body.product-detail-open{overflow:hidden}
.product-detail-modal{position:relative;width:min(920px,92vw);max-height:88vh;overflow:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);background:#111;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.55);animation:productDetailIn .16s ease-out}
@keyframes productDetailIn{from{transform:scale(.985);opacity:.7}to{transform:none;opacity:1}}
.product-detail-close{position:absolute;right:12px;top:12px;z-index:2;width:34px;height:34px;border:0;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;font-size:22px;cursor:pointer}
.product-detail-image{position:relative;aspect-ratio:1/1;background:#181818;overflow:hidden;border-radius:16px 0 0 16px}
.product-detail-image img{width:100%;height:100%;object-fit:cover;display:block}
.product-detail-info{padding:36px 30px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.product-detail-store{font-size:12px;color:#888;margin-bottom:8px}.product-detail-info h2{font-size:30px;line-height:1.08;margin:0 0 10px}.product-detail-price{font-size:22px;font-weight:700;color:#e0ff00;margin-bottom:18px}.product-detail-description{color:#aaa;line-height:1.55;margin:0 0 24px;white-space:pre-line}.product-detail-buy{display:flex;align-items:center;gap:10px;margin-top:auto}.product-detail-buy .btn-cart-add{flex:0 0 auto}
@media(max-width:700px){.product-detail-overlay{padding:18px}.product-detail-modal{width:min(88vw,470px);max-height:90vh;grid-template-columns:1fr}.product-detail-image{width:100%;border-radius:16px 16px 0 0}.product-detail-info{padding:20px}.product-detail-info h2{font-size:23px}.product-detail-price{font-size:19px;margin-bottom:12px}.product-detail-description{font-size:14px;margin-bottom:18px}.product-detail-buy{display:grid;grid-template-columns:auto auto 1fr}.product-detail-buy>.btn-verde{width:100%}}

/* HOME/TIENDA — ajustes responsive solicitados */
.home-filter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:14px;align-items:center;margin-bottom:18px}
.home-filter-row .category-filter{margin:0!important;min-width:0}
.home-search{margin:0!important}.home-search input{height:42px}
.home-index .product-grid,.store-product-grid{align-items:start}
.home-index .product-card,.store-product-grid .product-card{height:auto!important}
.home-index .product-body,.store-product-grid .product-body{min-height:0!important}

/* Botón global de carrito en cabecera */
.header-cart-btn{position:relative;width:38px;height:38px;min-width:38px;padding:0;border:0;border-radius:50%;background:#1b1b1b;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.header-cart-btn .cart-svg{width:19px;height:19px}
.header-cart-btn #header-cart-count{position:absolute;right:-3px;top:-3px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#e0ff00;color:#090909;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center}

/* Toolbar de tienda: solo flecha + buscador */
.store-toolbar{grid-template-columns:auto minmax(0,1fr)!important}
.store-back{width:44px!important;min-width:44px!important;padding:0!important;font-size:20px!important;display:grid!important;place-items:center!important}

/* Banner de tienda: texto compacto */
.store-banner-copy{display:flex;flex-direction:column;gap:0!important}
.store-banner .eyebrow{margin:0 0 3px!important}
.store-banner h1{margin:0 0 4px!important}
.store-banner p{margin:0!important}

/* Carrito: cabecera queda visible detrás del overlay, pero bloqueada */
.cart-backdrop{display:block!important;background:rgba(0,0,0,.58)!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.cart-drawer{top:74px!important;height:calc(100% - 74px)!important}

/* Banner home: swipe táctil y proporción mobile */
#banner-container{touch-action:pan-y}
#banner-container .banner-slide[data-link]:not([data-link=""]){cursor:pointer}
@media(max-width:768px){
  .home-index .banner-container{min-height:0!important;height:auto!important;aspect-ratio:16/7!important;margin-bottom:14px!important;border-radius:12px!important}
  .home-index .banner-slide{min-height:0!important;height:100%!important;padding:16px 18px!important;border-left:0!important;background-size:cover!important;background-position:center!important}
  .home-index .banner-copy{max-width:72%!important}
  .home-index .banner-copy .eyebrow{font-size:8px!important;margin-bottom:3px!important}
  .home-index .banner-copy h1{font-size:clamp(18px,5vw,25px)!important;line-height:1.02!important;margin:0 0 4px!important}
  .home-index .banner-copy p{font-size:11px!important;line-height:1.25!important;margin:0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .home-index .banner-dots{bottom:8px!important;right:10px!important;gap:5px!important}
  .home-index .banner-dots span{width:7px!important;height:7px!important}
  .home-filter-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:14px}
  .home-search{order:-1;width:100%}.home-search input{height:40px!important;font-size:13px!important}
  .home-category-filter{width:100%;overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:2px!important}
  .home-index .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .home-index .product-body{padding:10px!important}
  .home-index .product-body h3{font-size:12.5px!important;margin-bottom:5px!important}
  .home-index .product-price{font-size:16px!important}
  .home-index .product-store{font-size:10px!important}
  .home-index .buy-row{margin-top:11px!important;gap:6px!important;align-items:center!important;flex-direction:column!important}
  .home-index .qty{width:100%;justify-content:space-between}
  .home-index .store-buy-actions{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr);gap:6px}
  .home-index .btn-cart-add{width:36px!important;height:36px!important;min-width:36px!important}
  .home-index .btn-pedir{width:100%!important;min-width:0!important;padding-left:8px!important;padding-right:8px!important}

  .store-toolbar{grid-template-columns:40px minmax(0,1fr)!important}
  .store-back{width:40px!important;min-width:40px!important;font-size:18px!important}
  .store-banner{min-height:150px!important;padding:16px 18px!important;align-items:flex-end!important}
  .store-banner .eyebrow{font-size:8px!important;margin-bottom:2px!important}
  .store-banner h1{font-size:25px!important;line-height:1!important;margin-bottom:3px!important}
  .store-banner p{font-size:11px!important;line-height:1.2!important;max-width:92%!important}

  /* Drawer móvil: se desliza, no cubre la cabecera */
  .cart-shell{inset:0!important}
  .cart-drawer{top:68px!important;height:calc(100% - 68px)!important;width:min(92vw,420px)!important;right:0!important;padding:18px 16px!important;box-shadow:-18px 0 45px rgba(0,0,0,.35)!important;transform:translateX(100%)!important}
  .cart-shell.activo .cart-drawer{transform:translateX(0)!important}
}
@media(max-width:480px){
  .home-index .banner-container{aspect-ratio:16/7.5!important}
  .home-index .banner-copy{max-width:78%!important}
  .store-banner{min-height:140px!important;padding:14px 16px!important}
  .store-banner h1{font-size:23px!important}
  .cart-drawer{width:90vw!important}
}

/* CARRITO — corrección puntual de comportamiento */
@media(min-width:769px){
  .cart-drawer{
    top:0!important;
    right:0!important;
    width:min(430px,92vw)!important;
    height:100%!important;
    transform:translateX(100%)!important;
  }
  .cart-shell.activo .cart-drawer{transform:translateX(0)!important}
}
@media(max-width:768px){
  .cart-backdrop{
    display:block!important;
    background:rgba(0,0,0,.58)!important;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
  }
  .cart-drawer{
    top:auto!important;
    bottom:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:calc(100% - 72px)!important;
    max-height:calc(100% - 72px)!important;
    transform:translateY(100%)!important;
    transition:transform .18s ease!important;
    box-shadow:0 -18px 45px rgba(0,0,0,.35)!important;
  }
  .cart-shell.activo .cart-drawer{transform:translateY(0)!important}
}

/* COMPRAS DEL USUARIO */
.account-purchases-shell{max-width:920px;margin:0 auto 40px}.account-purchases-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.account-purchases-head h2{margin:0}
.purchases-list{display:grid;gap:12px}.purchase-card{background:#141414;border-radius:14px;padding:16px}.purchase-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:13px}.purchase-top>div{display:flex;flex-direction:column;gap:3px}.purchase-top strong{font-size:15px}.purchase-top span{font-size:11px;color:#777}.purchase-items{display:grid;gap:7px}.purchase-line{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;background:#191919;border-radius:9px;padding:7px 9px;font-size:12px}.purchase-line img{width:38px;height:38px;object-fit:cover;border-radius:7px}.purchase-line strong{color:#e0ff00}.purchase-total{display:flex;justify-content:flex-end;gap:10px;margin-top:12px;font-size:13px}.purchase-total strong{color:#e0ff00}.guest-orders-view{max-width:520px;margin:32px auto 50px}.guest-orders-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.guest-orders-head strong{font-size:19px}.guest-orders-card{padding:18px}.guest-order-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.guest-purchase-card{margin-top:10px}.guest-purchase-card .purchase-items{font-size:12px;color:#bbb}
@media(max-width:700px){.purchase-card{padding:13px}.purchase-line{grid-template-columns:34px minmax(0,1fr) auto;padding:6px 7px}.purchase-line img{width:34px;height:34px}.guest-orders-view{margin:18px auto 36px}.guest-order-search{grid-template-columns:1fr}.guest-order-search .btn{width:100%}}

/* CABECERA SIMPLIFICADA */
.header-acciones{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:nowrap}
.header-acciones>.btn{white-space:nowrap;padding:8px 11px}
.header-create-account{font-weight:700}
.header-login-link,.nav-mi-pedido,.header-purchases-link{color:#e8e8e8!important}
.user-menu-toggle{
  width:38px;height:38px;min-width:38px;padding:0;border:0;border-radius:50%;
  background:#1b1b1b;color:#e8e8e8;display:inline-flex;align-items:center;justify-content:center;cursor:pointer
}
.user-menu-toggle:hover{color:#e0ff00}
.user-menu-toggle svg{width:19px;height:19px;display:block}
.menu-desplegable{
  position:absolute!important;top:64px!important;right:0!important;min-width:165px!important;
  padding:6px!important;border-radius:11px!important;background:#151515!important;
  box-shadow:0 16px 42px rgba(0,0,0,.45)!important;z-index:500!important
}
.menu-desplegable a,.menu-desplegable button{padding:10px 13px!important;font-size:13px!important;border-radius:7px!important}

/* LOGIN / REGISTRO: overlay real; la página de atrás no se reconstruye ni recarga */
body.auth-open{overflow:hidden}
.auth-overlay{
  position:fixed!important;inset:0!important;z-index:200000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:20px!important;background:rgba(0,0,0,.62)!important;
  backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;
  animation:authOverlayIn .16s ease both!important
}
.auth-card{position:relative;z-index:1}
@keyframes authOverlayIn{from{opacity:0}to{opacity:1}}

@media(max-width:700px){
  .header{flex-wrap:wrap!important;gap:9px!important}
  .header-acciones{gap:5px!important;max-width:100%;margin-left:auto}
  .header-acciones>.btn{padding:7px 7px!important;font-size:11px!important}
  .header-cart-btn,.user-menu-toggle{width:34px!important;height:34px!important;min-width:34px!important}
  .menu-desplegable{top:60px!important;right:10px!important}
}

/* OVERLAYS: comportamiento único y consistente */
body.auth-open,body.guest-orders-open,body.modal-abierto,body.product-detail-open,body.product-modal-open{overflow:hidden}
.auth-overlay,.guest-orders-overlay{
  position:fixed!important;inset:0!important;z-index:200000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:20px!important;background:rgba(0,0,0,.62)!important;
  backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;
}
.guest-orders-overlay{opacity:0;transition:opacity .16s ease}
.guest-orders-overlay.activo{opacity:1}
.guest-orders-modal{
  position:relative;width:min(100%,480px);max-height:calc(100vh - 40px);overflow:auto;
  background:#101010;border-radius:16px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.45)
}
.guest-orders-modal .guest-orders-head{margin:0 0 12px;padding-right:34px}
.guest-orders-modal .guest-orders-card{padding:0;background:transparent}
.guest-orders-modal .guest-order-search{margin-top:12px}

/* CAMPOS OBLIGATORIOS / ERRORES */
input.field-error,select.field-error,textarea.field-error,
.form-control.field-error{
  border-color:#ff5d5d!important;
  box-shadow:0 0 0 3px rgba(255,93,93,.14)!important;
}
.field-shake{animation:fieldShake .34s ease!important}
@keyframes fieldShake{
  0%,100%{transform:translateX(0)}
  20%{transform:translateX(-6px)}
  40%{transform:translateX(5px)}
  60%{transform:translateX(-4px)}
  80%{transform:translateX(3px)}
}

/* RESPUESTA VISUAL DE BOTONES */
.button-feedback{animation:buttonFeedback .24s ease}
@keyframes buttonFeedback{0%{transform:scale(1)}45%{transform:scale(.96)}100%{transform:scale(1)}}

/* NOTIFICACIONES: centradas arriba y visibles varios segundos */
.toast-container{
  position:fixed!important;top:16px!important;left:50%!important;right:auto!important;bottom:auto!important;
  transform:translateX(-50%)!important;z-index:300000!important;
  width:max-content!important;max-width:calc(100vw - 24px)!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important;
  pointer-events:none!important
}
.toast{
  position:relative!important;margin:0!important;
  width:max-content!important;max-width:min(520px,calc(100vw - 24px))!important;
  padding:11px 15px!important;border-radius:10px!important;
  opacity:0!important;transform:translateY(-20px)!important;
  transition:opacity .2s ease,transform .2s ease!important;
  pointer-events:none!important
}
.toast.show{opacity:1!important;transform:translateY(0)!important}

@media(max-width:700px){
  .guest-orders-overlay{padding:14px!important}
  .guest-orders-modal{width:min(100%,420px);padding:20px 16px;border-radius:14px}
  .guest-orders-modal .guest-order-search{grid-template-columns:1fr!important}
}


/* =========================================================
   CABECERA MÓVIL — versión definitiva
   Desktop mantiene sus acciones; móvil usa menú compacto.
   ========================================================= */
.mobile-menu-toggle{
  display:none;
  width:36px;height:36px;min-width:36px;padding:0;border:0;border-radius:50%;
  background:#1b1b1b;color:#e8e8e8;align-items:center;justify-content:center;cursor:pointer;
}
.mobile-menu-toggle svg{width:19px;height:19px;display:block}

@media(max-width:768px){
  .header{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
  }

  .header-acciones{
    display:flex!important;
    width:auto!important;
    max-width:none!important;
    order:initial!important;
    margin-left:auto!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    overflow:visible!important;
  }

  /* En móvil NO mostramos los botones largos en la cabecera */
  .header-acciones .desktop-header-action{
    display:none!important;
  }

  /* Siempre visibles: carrito + menú */
  .header-acciones .header-cart-btn,
  .header-acciones .user-menu-toggle,
  .header-acciones .mobile-menu-toggle{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
  }

  .header-cart-btn,
  .user-menu-toggle,
  .mobile-menu-toggle{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
  }

  .menu-desplegable{
    position:fixed!important;
    top:62px!important;
    right:10px!important;
    left:auto!important;
    width:min(230px,calc(100vw - 20px))!important;
    min-width:0!important;
    padding:8px!important;
    border-radius:13px!important;
    background:#151515!important;
    box-shadow:0 18px 46px rgba(0,0,0,.48)!important;
    z-index:250000!important;
  }

  .menu-desplegable a,
  .menu-desplegable button{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:42px!important;
    padding:10px 12px!important;
    border-radius:9px!important;
    font-size:14px!important;
    color:#fff!important;
    background:transparent!important;
    text-align:left!important;
  }

  .menu-desplegable .mobile-menu-login{
    margin-top:5px!important;
    background:#242424!important;
    color:#fff!important;
    font-weight:700!important;
  }

  .menu-desplegable .mobile-menu-register{
    margin-top:6px!important;
    background:#e0ff00!important;
    color:#090909!important;
    font-weight:800!important;
  }
}

/* NOTIFICACIONES — siempre oscuras */
.toast,
.toast.info,
.toast.exito,
.toast.error,
.toast.success,
.toast.warning{
  background:#151515!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 10px 30px rgba(0,0,0,.38)!important;
}
.toast *{color:#fff!important}


/* AJUSTE PUNTUAL — menú móvil con la misma proporción visual del menú logueado */
@media(max-width:768px){
  .menu-desplegable{
    width:max-content!important;
    min-width:max-content!important;
    max-width:calc(100vw - 20px)!important;
    padding:7px!important;
    right:10px!important;
  }

  .menu-desplegable a,
  .menu-desplegable button{
    width:auto!important;
    min-width:100%!important;
    min-height:0!important;
    padding:10px 13px!important;
    margin:0!important;
    justify-content:flex-start!important;
    white-space:nowrap!important;
    border-radius:8px!important;
    font-size:13px!important;
    line-height:1.2!important;
  }

  .menu-desplegable a + a,
  .menu-desplegable a + button,
  .menu-desplegable button + a,
  .menu-desplegable button + button{
    margin-top:5px!important;
  }

  .menu-desplegable .mobile-menu-login{
    margin-top:5px!important;
    background:#242424!important;
  }

  .menu-desplegable .mobile-menu-register{
    margin-top:5px!important;
    background:#e0ff00!important;
    color:#090909!important;
  }
}


/* PEDIDOS — flujo interno simple */
.pedidos-operativos-section{margin-bottom:28px}
.pedidos-operativos-section h3{margin:0 0 11px;font-size:16px;color:#fff}
.pedidos-aceptados{padding-top:4px}
.pedido-operativo{align-items:center}
.pedido-operativo .cliente{font-weight:700}
.pedido-operativo .fecha{margin-top:4px;color:#888}
.pedido-operativo .total{white-space:nowrap;font-weight:700}
.pedido-operativo-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:nowrap}
.pedido-operativo .estado.confirmado{color:#e0ff00}
@media(max-width:700px){
  .pedido-operativo{gap:9px}
  .pedido-operativo-actions{width:100%;justify-content:flex-end}
  .pedido-operativo-actions .btn{width:auto!important}
}


/* DETALLE OPCIONAL DEL PEDIDO */
.pedido-detalle-label{display:flex;flex-direction:column;gap:7px;margin-top:12px;color:#aaa;font-size:12px}
.pedido-detalle-input{
  width:100%;box-sizing:border-box;resize:vertical;min-height:58px;max-height:110px;
  padding:10px 11px;border:1px solid #2b2b2b;border-radius:9px;
  background:#171717;color:#fff;font:inherit;outline:none
}
.pedido-detalle-input:focus{border-color:#555}
.cart-form .pedido-detalle-input{margin-top:2px}
.pedido-detalle-visible{margin-top:6px;color:#ddd;font-size:12px;line-height:1.4}


/* AJUSTE PUNTUAL — formulario de pedido sin etiquetas redundantes */
.pedido-modal-product-head{display:flex;align-items:stretch;gap:11px;margin:0 34px 12px 0}
.pedido-modal-product-head img{
  width:58px;height:58px;min-width:58px;object-fit:cover;border-radius:9px;background:#1b1b1b
}
.pedido-modal-product-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
.pedido-modal-product-copy .eyebrow{margin:0 0 3px}
.pedido-modal-product-copy h2{margin:0;line-height:1.12}
.pedido-modal-cantidad{justify-content:flex-start!important;margin:8px 0 12px!important}
#pedido-form{display:grid;gap:8px}
#pedido-form>input,#pedido-form>.pedido-detalle-input{margin:0!important}
.pedido-modal-actions{margin-top:8px}
.pedido-add-cart{display:inline-flex!important;align-items:center!important;gap:7px!important}
.pedido-add-cart .cart-svg{width:16px;height:16px}
@media(max-width:520px){
  .pedido-modal-product-head img{width:54px;height:54px;min-width:54px}
  .pedido-modal-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .pedido-modal-actions .pedido-add-cart{grid-column:1/-1!important;justify-content:center!important}
}


/* AJUSTE PUNTUAL — formulario pedido */
#pedido-modal .pedido-modal{width:400px!important;max-width:calc(100vw - 28px)!important}
#pedido-modal .pedido-add-cart{gap:5px!important}


/* AJUSTE PUNTUAL — proporciones correctas del formulario de pedido */
#pedido-modal .pedido-modal{
  width:400px!important;
  max-width:calc(100vw - 24px)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
#pedido-modal #pedido-form{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
#pedido-modal #pedido-form > input,
#pedido-modal #pedido-form > textarea,
#pedido-modal .pedido-detalle-input{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
#pedido-modal .pedido-modal-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
}
#pedido-modal .pedido-modal-actions .btn{
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  padding:9px 12px!important;
  flex:0 0 auto!important;
}
#pedido-modal .pedido-add-cart{
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  padding:9px 10px!important;
}
#pedido-modal .pedido-add-cart .cart-svg{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
}

@media(max-width:520px){
  #pedido-modal .pedido-modal{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
  }
  #pedido-modal .pedido-modal-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-end!important;
  }
  #pedido-modal .pedido-modal-actions .btn{
    width:auto!important;
    max-width:max-content!important;
    padding:9px 11px!important;
  }
  #pedido-modal .pedido-add-cart{
    padding:9px 10px!important;
  }
}

/* AJUSTE PUNTUAL — contador alineado con botones */
#pedido-modal .pedido-modal-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  flex-wrap:wrap!important;
  margin-top:10px!important;
}
#pedido-modal .pedido-modal-cantidad{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  width:auto!important;
}
#pedido-modal .pedido-modal-qty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:40px!important;
}
#pedido-modal .pedido-modal-qty button{
  width:34px!important;
  height:40px!important;
  min-width:34px!important;
  font-weight:800!important;
  font-size:17px!important;
}
#pedido-modal .pedido-modal-qty strong{
  height:40px!important;
  min-width:34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-weight:800!important;
}
#pedido-modal .pedido-modal-actions .btn{
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  min-height:40px!important;
  padding:10px 14px!important;
  flex:0 0 auto!important;
  font-weight:800!important;
  border-radius:10px!important;
  box-shadow:0 4px 14px rgba(0,0,0,.22)!important;
}
#pedido-modal .pedido-add-cart{
  background:#252525!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
}
#pedido-modal .pedido-submit{
  box-shadow:0 5px 16px rgba(224,255,0,.16)!important;
}
@media(max-width:520px){
  #pedido-modal .pedido-modal-actions{
    display:flex!important;
    justify-content:center!important;
    gap:8px!important;
  }
  #pedido-modal .pedido-modal-actions .btn{
    width:auto!important;
    max-width:max-content!important;
    min-height:40px!important;
    padding:10px 13px!important;
  }
}


/* AJUSTES GLOBALES SOLICITADOS — estabilidad móvil / web app */
html,body{
  max-width:100%;
  overflow-x:hidden;
  overscroll-behavior-x:none;
}
body{touch-action:pan-y}
*,*::before,*::after{box-sizing:border-box}
img,video,canvas,svg{max-width:100%}
@media(max-width:768px){
  input,textarea,select{
    font-size:16px!important; /* evita zoom automático al enfocar en iOS */
  }
}

/* Formulario de pedido: mismo lenguaje de botones del sitio, sólo con más presencia */
#pedido-modal .pedido-modal-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
#pedido-modal .pedido-modal-actions .btn{
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  min-height:44px!important;
  padding:11px 16px!important;
  flex:0 0 auto!important;
  font-weight:inherit!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
#pedido-modal .pedido-add-cart{
  background:#252525!important;
  color:#fff!important;
  border:0!important;
}
#pedido-modal .pedido-submit{
  box-shadow:none!important;
}
#pedido-modal .pedido-modal-cantidad,
#pedido-modal .pedido-modal-qty{
  margin:0!important;
  align-self:center!important;
}
#pedido-modal .pedido-modal-qty,
#pedido-modal .pedido-modal-qty button,
#pedido-modal .pedido-modal-qty strong{
  height:44px!important;
}
#pedido-modal .pedido-modal-qty button{
  width:36px!important;
  min-width:36px!important;
  font-weight:inherit!important;
}
#pedido-modal .pedido-modal-qty strong{
  min-width:36px!important;
  font-weight:inherit!important;
}

/* Carrito: Pedir centrado, visible y con aire lateral */
#cart-form .cart-submit{
  width:auto!important;
  min-width:132px!important;
  max-width:calc(100% - 48px)!important;
  min-height:46px!important;
  height:auto!important;
  padding:12px 22px!important;
  margin:8px auto 2px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:12px!important;
  font-weight:inherit!important;
}

/* Eliminar item claramente distinto de la X que cierra todo el carrito */
.cart-remove{
  width:34px!important;
  height:34px!important;
  border-radius:9px!important;
  display:grid!important;
  place-items:center!important;
  background:#242424!important;
  color:#aaa!important;
  border:0!important;
  padding:8px!important;
}
.cart-remove svg{
  width:17px!important;
  height:17px!important;
}
.cart-remove:hover{
  color:#fff!important;
  background:#2d2d2d!important;
}

@media(max-width:520px){
  #pedido-modal .pedido-modal-actions{
    display:flex!important;
    justify-content:center!important;
    gap:8px!important;
  }
  #pedido-modal .pedido-modal-actions .btn{
    width:auto!important;
    min-height:44px!important;
    padding:11px 14px!important;
  }
  #cart-form .cart-submit{
    max-width:calc(100% - 36px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* UNIFICACIÓN GLOBAL SOLICITADA — botones y campos */

/* Todos los botones del sitio: extremos completamente redondeados */
button,
.btn,
a.btn,
input[type="button"],
input[type="submit"],
input[type="reset"]{
  border-radius:999px!important;
}

/* Mantener también redondeados los botones específicos */
#pedido-modal .pedido-modal-actions .btn,
#cart-form .cart-submit,
.cart-remove,
.pedido-modal-close,
.menu-toggle,
.mobile-menu-toggle,
.user-menu-toggle{
  border-radius:999px!important;
}

/* Campos de formularios: misma lectura visual en todo el sitio */
input,
textarea,
select{
  font-weight:400!important;
}

/* Placeholder uniforme, mucho más sutil que el texto real */
input::placeholder,
textarea::placeholder{
  color:rgba(255,255,255,.28)!important;
  opacity:1!important;
  font-weight:300!important;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder{
  color:rgba(255,255,255,.28)!important;
  opacity:1!important;
  font-weight:300!important;
}

input::-moz-placeholder,
textarea::-moz-placeholder{
  color:rgba(255,255,255,.28)!important;
  opacity:1!important;
  font-weight:300!important;
}

/* En móvil, botones un poco más legibles sin crecer desproporcionadamente */
@media(max-width:768px){
  button,
  .btn,
  a.btn,
  input[type="button"],
  input[type="submit"],
  input[type="reset"]{
    font-size:14px!important;
  }

  /* Mantener placeholders visualmente secundarios frente a los botones */
  input::placeholder,
  textarea::placeholder{
    font-size:14px!important;
    color:rgba(255,255,255,.24)!important;
    font-weight:300!important;
  }
}


/* CORRECCIÓN PUNTUAL — PEDIR idéntico al de los listados de productos */
#pedido-modal .pedido-submit,
#cart-form .cart-submit{
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  height:auto!important;
  min-height:38px!important;
  padding:10px 18px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 128px!important;
  border:0!important;
  border-radius:999px!important;
  background:#e0ff00!important;
  color:#0a0a0a!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
}

/* El carrito sólo centra el botón; no cambia su geometría */
#cart-form .cart-submit{
  margin:8px auto 2px!important;
}

/* En móvil mantiene exactamente el mismo botón; no se encoge */
@media(max-width:768px){
  #pedido-modal .pedido-submit,
  #cart-form .cart-submit{
    width:128px!important;
    min-width:128px!important;
    max-width:128px!important;
    min-height:38px!important;
    padding:10px 18px!important;
    font-size:14px!important;
    flex-basis:128px!important;
  }
}


/* CORRECCIÓN DEFINITIVA — PEDIR del overlay/carrito igual al PEDIR de la grilla */

/* Desktop: misma presencia visual del botón Pedir de los listados */
#pedido-modal .pedido-modal-actions .pedido-submit,
#cart-form .cart-submit{
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:999px!important;
  background:#e0ff00!important;
  color:#0a0a0a!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 128px!important;
}

/* Carrito: exactamente el mismo botón, sólo centrado */
#cart-form .cart-submit{
  margin:8px auto 2px!important;
}

/* Móvil: mismo ancho visual que el Pedir de la grilla móvil */
@media(max-width:768px){
  #pedido-modal .pedido-modal-actions .pedido-submit,
  #cart-form .cart-submit{
    width:148px!important;
    min-width:148px!important;
    max-width:148px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 18px!important;
    font-size:14px!important;
    flex:0 0 148px!important;
  }
}

/* WEB APP / PWA — respetar áreas seguras de iOS y Android */
:root{
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-right: env(safe-area-inset-right, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-left: env(safe-area-inset-left, 0px);
}

html{
  min-height:100%;
  background:#080808;
}

body{
  min-height:100dvh;
  padding-top:var(--safe-top)!important;
  padding-right:var(--safe-right)!important;
  padding-bottom:var(--safe-bottom)!important;
  padding-left:var(--safe-left)!important;
}

.contenedor{
  min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom))!important;
}

/* La cabecera empieza debajo de notch / Dynamic Island / barra del sistema */
.header{
  top:0!important;
}

/* Menús y overlays tampoco pueden quedar bajo zonas reservadas */
.menu-desplegable{
  max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 12px)!important;
}

.cart-drawer{
  padding-bottom:max(18px, var(--safe-bottom))!important;
}

.pedido-modal-overlay,
.auth-overlay,
.consulta-overlay,
.product-detail-overlay{
  padding-top:max(12px, var(--safe-top))!important;
  padding-right:max(12px, var(--safe-right))!important;
  padding-bottom:max(12px, var(--safe-bottom))!important;
  padding-left:max(12px, var(--safe-left))!important;
}

@media(max-width:768px){
  body{
    padding-top:var(--safe-top)!important;
    padding-right:var(--safe-right)!important;
    padding-bottom:var(--safe-bottom)!important;
    padding-left:var(--safe-left)!important;
  }

  .contenedor{
    width:100%!important;
    min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom))!important;
  }

  .header{
    top:0!important;
  }

  /* carrito inferior: no invade la barra home de iPhone */
  .cart-drawer{
    height:calc(100dvh - 72px - var(--safe-top))!important;
    max-height:calc(100dvh - 72px - var(--safe-top))!important;
    padding-bottom:max(18px, calc(var(--safe-bottom) + 10px))!important;
  }
}


/* PWA SAFE AREA V2 — nada del contenido puede verse detrás de la UI del sistema */
html,
body{
  background:#080808!important;
}

/* Capa opaca permanente bajo la barra superior de iOS/Android */
body::before{
  content:"";
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:var(--safe-top);
  background:#080808;
  z-index:99999;
  pointer-events:none;
}

/* La cabecera debe ser totalmente opaca para que el contenido no se vea al pasar detrás */
.header{
  background:#080808!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  z-index:1000!important;
}

/* Evita que el primer contenido pueda asomarse por detrás de la cabecera */
#contenido-principal{
  position:relative;
  z-index:1;
}

/* En modo standalone mantenemos el área superior sólida y separada */
@media (display-mode: standalone){
  body::before{
    background:#080808;
  }
  .header{
    background:#080808!important;
  }
}

/* iOS instalado desde Safari */
@supports (-webkit-touch-callout: none){
  .header{
    background:#080808!important;
  }
}


/* CABECERA — ajuste aprobado posterior: sin contornos + Crear cuenta destacado */
.header .btn,
.header button,
.header a.btn{
  border-color:transparent!important;
  outline:none!important;
  box-shadow:none!important;
}

.header .btn-registro,
.header .btn-crear-cuenta,
.header [data-auth="registro"]{
  background:#e0ff00!important;
  color:#0a0a0a!important;
  border-color:transparent!important;
}


.header .header-create-account{
  background:#e0ff00!important;
  color:#0a0a0a!important;
  border:0!important;
}


/* CABECERA — Crear cuenta sin bold */
.header .header-create-account{
  font-weight:400!important;
}

/* FIX 2026-09-07 — modal de producto siempre nítido sobre el backdrop */
body.product-modal-open #contenido-principal{
  z-index:auto!important;
}
body.product-modal-open .product-form-panel:not(.oculto){
  z-index:6001!important;
  filter:none!important;
  -webkit-filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  opacity:1!important;
  isolation:isolate;
}
body.product-modal-open .product-modal-backdrop{
  z-index:6000!important;
}


/* AJUSTE PUNTUAL DESKTOP — banner: posición inferior izquierda y reducción leve */
@media(min-width:769px){
  .home-index .banner-slide{
    position:relative!important;
  }
  .home-index .banner-copy{
    position:absolute!important;
    left:30px!important;
    bottom:24px!important;
    top:auto!important;
  }
  .home-index .banner-copy h1{
    font-size:34px!important;
  }
  .home-index .banner-copy p{
    font-size:15px!important;
  }
}

/* =========================================================
   UNIFICACIÓN VISUAL GLOBAL — formularios y overlays
   Base oficial 2026-09-07
   ========================================================= */
:root{
  --ml-field-bg:#191919;
  --ml-overlay-bg:#111;
  --ml-overlay-border:rgba(255,255,255,.09);
  --ml-lemon:#e0ff00;
}

/* Campos: planos en reposo, completamente redondeados y borde verde solo activos */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
select,
textarea,
.form-control,
.pedido-modal input,
.pedido-modal textarea,
.cart-form input,
.cart-form textarea,
.buscador input,
.guest-order-search input{
  background:var(--ml-field-bg)!important;
  border:1px solid transparent!important;
  outline:none!important;
  box-shadow:none!important;
  color:#fff!important;
  border-radius:999px!important;
  transition:border-color .16s ease,box-shadow .16s ease!important;
}
textarea,
.pedido-modal textarea,
.cart-form textarea{
  border-radius:24px!important;
}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):focus,
select:focus,
textarea:focus,
.form-control:focus,
.pedido-modal input:focus,
.pedido-modal textarea:focus,
.cart-form input:focus,
.cart-form textarea:focus,
.buscador input:focus,
.guest-order-search input:focus{
  border-color:var(--ml-lemon)!important;
  box-shadow:0 0 0 1px var(--ml-lemon)!important;
}

/* Conserva error visible cuando corresponde */
input.field-error,select.field-error,textarea.field-error,.form-control.field-error{
  border-color:#ff5d5d!important;
  box-shadow:0 0 0 1px #ff5d5d!important;
}

/* Todos los contenedores de overlay usan el mismo borde del pedido */
.auth-card,
.auth-card-register,
.pedido-modal,
.confirm-modal-box,
.guest-orders-modal,
.product-detail-modal,
.product-form-panel:not(.oculto),
.cart-drawer{
  background:var(--ml-overlay-bg)!important;
  border:1px solid var(--ml-overlay-border)!important;
  border-radius:22px!important;
}

/* Sin reservar espacio para botones X, porque los overlays cierran tocando fuera */
.auth-title{margin-left:0!important;margin-right:0!important}
.pedido-modal h2{margin-right:0!important}
.guest-orders-modal .guest-orders-head{padding-right:0!important}

/* Check de registro: sin caja de fondo; control gris OFF / verde ON */
.register-store-choice{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:14px 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  color:#ddd!important;
  cursor:pointer!important;
}
.register-store-choice input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:34px!important;
  height:20px!important;
  flex:0 0 34px!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#3b3b3b!important;
  position:relative!important;
  cursor:pointer!important;
  transition:background .16s ease!important;
}
.register-store-choice input[type="checkbox"]::after{
  content:'';
  position:absolute;
  width:14px;
  height:14px;
  left:3px;
  top:3px;
  border-radius:50%;
  background:#f2f2f2;
  transition:transform .16s ease;
}
.register-store-choice input[type="checkbox"]:checked{
  background:var(--ml-lemon)!important;
}
.register-store-choice input[type="checkbox"]:checked::after{
  transform:translateX(14px);
  background:#111;
}
.register-store-choice input[type="checkbox"]:focus-visible{
  box-shadow:0 0 0 2px rgba(224,255,0,.22)!important;
}


/* =========================================================
   AJUSTE PUNTUAL · NUEVO PRODUCTO + CAMPOS MULTILÍNEA
   ========================================================= */

/* Los campos de varias líneas conservan una esquina normal y uniforme, nunca tipo píldora */
textarea,
textarea.form-control,
.pedido-modal textarea,
.cart-form textarea{
  border-radius:18px!important;
}

/* Precio y stock: sin controles nativos de subir/bajar */
#prod-precio::-webkit-outer-spin-button,
#prod-precio::-webkit-inner-spin-button,
#prod-stock::-webkit-outer-spin-button,
#prod-stock::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}
#prod-precio,
#prod-stock{
  appearance:textfield;
  -moz-appearance:textfield;
}

/* Desktop: nombre + precio + stock en una sola fila; descripción debajo */
@media(min-width:761px){
  .product-form-panel .product-fields-grid{
    grid-template-columns:minmax(0,1fr) 112px 88px!important;
    gap:10px!important;
    align-items:start!important;
  }
  .product-form-panel .field-name{
    grid-column:1!important;
    grid-row:1!important;
  }
  .product-form-panel .field-price{
    grid-column:2!important;
    grid-row:1!important;
    width:112px!important;
    max-width:112px!important;
  }
  .product-form-panel .field-stock{
    grid-column:3!important;
    grid-row:1!important;
    width:88px!important;
    max-width:88px!important;
  }
  .product-form-panel .field-detail{
    grid-column:1 / -1!important;
    grid-row:2!important;
  }
}

/* Móvil: imagen cuadrada a la izquierda, título/texto a la derecha;
   después nombre, precio/stock 50-50 y descripción completa */
@media(max-width:760px){
  .product-form-panel:not(.oculto){
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    column-gap:14px!important;
    row-gap:14px!important;
    align-items:center!important;
  }
  .product-form-panel .product-form-head{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    justify-content:center!important;
    align-items:flex-start!important;
    text-align:left!important;
    flex-direction:column!important;
    gap:4px!important;
  }
  .product-form-panel .product-form-layout{
    display:contents!important;
  }
  .product-form-panel .product-image-field{
    grid-column:1!important;
    grid-row:1!important;
    width:112px!important;
    max-width:112px!important;
    margin:0!important;
  }
  .product-form-panel .product-upload-zone{
    width:112px!important;
    height:112px!important;
  }
  .product-form-panel .product-crop-mount{
    width:112px!important;
    max-width:112px!important;
    margin:0!important;
  }
  .product-form-panel .product-crop-mount .inline-image-editor.compact-product-editor{
    width:112px!important;
    max-width:112px!important;
  }
  .product-form-panel .compact-product-editor .inline-image-crop{
    width:112px!important;
    height:112px!important;
  }
  .product-form-panel .product-fields-grid{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
  }
  .product-form-panel .field-name{
    grid-column:1 / -1!important;
    grid-row:1!important;
  }
  .product-form-panel .field-price{
    grid-column:1!important;
    grid-row:2!important;
    width:100%!important;
    max-width:none!important;
  }
  .product-form-panel .field-stock{
    grid-column:2!important;
    grid-row:2!important;
    width:100%!important;
    max-width:none!important;
  }
  .product-form-panel .field-detail{
    grid-column:1 / -1!important;
    grid-row:3!important;
  }
  .product-form-panel .product-form-actions{
    grid-column:1 / -1!important;
    grid-row:3!important;
    margin-top:0!important;
  }
  .product-form-panel > #prod-id{
    display:none!important;
  }
}


/* =========================================================
   AJUSTES PUNTUALES APROBADOS · TIENDA MÓVIL + LOGOS
   ========================================================= */

/* Evita definitivamente la flecha atrás duplicada en la vista de tienda */
.store-back::after{
  content:none!important;
  display:none!important;
}

/* Móvil: la información del banner de tienda permanece abajo a la izquierda */
@media(max-width:768px){
  .store-banner{
    flex-direction:row!important;
    align-items:flex-end!important;
    justify-content:flex-start!important;
  }
  .store-banner-copy{
    width:100%!important;
    max-width:100%!important;
    align-items:flex-start!important;
    text-align:left!important;
  }
}

/* Logo del pie: siempre mucho más sutil que el de cabecera */
footer .logo,
.site-footer .logo,
.footer .logo,
footer .brand-logo,
.site-footer .brand-logo,
.footer .brand-logo{
  font-size:14px!important;
}

/* Móvil: logo superior más grande; pie se mantiene sutil */
@media(max-width:768px){
  .header .logo,
  header .logo,
  .site-header .logo,
  .header .brand-logo,
  header .brand-logo,
  .site-header .brand-logo{
    font-size:30px!important;
  }
  footer .logo,
  .site-footer .logo,
  .footer .logo,
  footer .brand-logo,
  .site-footer .brand-logo,
  .footer .brand-logo{
    font-size:14px!important;
  }
}


/* FLECHA ATRÁS · reemplazo limpio del icono anterior */
.store-back{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.store-back .store-back-icon{
  width:18px;
  height:18px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:3.4;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex:0 0 auto;
}
.store-back::before,
.store-back::after{
  content:none!important;
  display:none!important;
}

/* Estado administrativo de producto visible para su tienda */
.admin-product-ban{margin-top:6px;display:flex;flex-direction:column;gap:2px;font-size:11px;color:#aaa}.admin-product-ban strong{color:#ff7b81;font-size:11px}.admin-product-ban span{line-height:1.3}


/* DESCUENTO PRODUCTO · aislado, sin redefinir la grilla aprobada */
.product-media,.product-detail-image,.manage-thumb{position:relative}
.product-discount-badge{
  position:absolute;top:9px;left:9px;z-index:4;
  display:inline-flex;align-items:center;min-height:24px;
  padding:5px 9px;border-radius:999px;
  background:rgba(224,255,0,.82);color:#101010;
  font-size:15px;line-height:1;font-weight:500;
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)
}
.product-price-sale{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap}
.product-price-old{color:#777;text-decoration:line-through;font-size:.68em;font-weight:400;margin-left:10px}
.product-price-final{color:inherit}

.product-form-panel .product-discount-row{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:118px 68px minmax(0,1fr);
  gap:10px;align-items:center;min-width:0
}
.product-form-panel .discount-switch-wrap{
  height:42px;display:flex;align-items:center;gap:8px;cursor:pointer;min-width:0
}
.product-form-panel .discount-switch-wrap>input{position:absolute;opacity:0;pointer-events:none}
.product-form-panel .discount-switch{
  width:34px;height:20px;flex:0 0 34px;border-radius:999px;background:#444;position:relative;transition:.16s ease
}
.product-form-panel .discount-switch::after{
  content:"";position:absolute;width:14px;height:14px;left:3px;top:3px;border-radius:50%;background:#bdbdbd;transition:.16s ease
}
.product-form-panel .discount-switch-wrap>input:checked+.discount-switch{background:#e0ff00}
.product-form-panel .discount-switch-wrap>input:checked+.discount-switch::after{transform:translateX(14px);background:#111}
.product-form-panel .discount-switch-label{font-size:12px;color:#aaa;white-space:nowrap}
.product-form-panel .discount-percent-wrap,.product-form-panel .discount-percent-wrap .form-control{width:68px!important;min-width:68px!important}
.product-form-panel .discount-percent-wrap .form-control{height:42px!important;padding-left:12px!important;padding-right:12px!important}
.product-form-panel .discount-preview{
  min-width:0;height:42px;display:flex;align-items:center;padding:0 4px;
  color:#8f8f8f;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
/* descripción más baja únicamente */
.product-form-panel .product-fields-grid textarea.form-control{height:76px!important;min-height:76px!important}

/* nueva fila debajo, sin tocar Nombre/Precio/Stock */
@media(min-width:761px){
  .product-form-panel .product-discount-row{grid-row:3!important}
}
@media(max-width:760px){
  .product-form-panel .field-detail{grid-row:3!important}
  .product-form-panel .product-discount-row{
    grid-row:4!important;
    grid-template-columns:112px 62px minmax(0,1fr)!important;
    gap:8px!important
  }
  .product-form-panel .discount-percent-wrap,
  .product-form-panel .discount-percent-wrap .form-control{width:62px!important;min-width:62px!important}
  .product-form-panel .discount-preview{font-size:11px!important}
}


/* AJUSTES PUNTUALES HOME + RECORTE PRODUCTO */
@media(min-width:761px){
  /* Desktop únicamente: buscador primero, categorías después */
  .home-filter-row{
    grid-template-columns:minmax(180px,260px) minmax(0,1fr)!important;
  }
  .home-filter-row .home-search{grid-column:1!important;grid-row:1!important}
  .home-filter-row .home-category-filter{grid-column:2!important;grid-row:1!important}

  /* Editor de imagen de producto: solo tipografía/slider, sin agrandar botones */
  .product-form-panel .compact-product-editor .inline-image-editor-actions .btn{
    font-size:14px!important;
  }
}

/* Zoom: sin texto visible y barra gris plana, sin contorno */
.product-form-panel .image-zoom-control{
  display:block!important;
  margin:8px 2px 0!important;
}
.product-form-panel .image-zoom-control input[type="range"]{
  width:100%!important;
  height:18px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  accent-color:#e0ff00!important;
  vertical-align:middle!important;
}

/* Móvil: imagen 140x140 y controles debajo; texto derecho se adapta al espacio restante */
@media(max-width:760px){
  .product-form-panel:not(.oculto){
    grid-template-columns:140px minmax(0,1fr)!important;
    align-items:start!important;
  }
  .product-form-panel .product-image-field{
    width:140px!important;
    max-width:140px!important;
  }
  .product-form-panel .product-upload-zone{
    width:140px!important;
    height:140px!important;
  }
  .product-form-panel .product-crop-mount{
    width:140px!important;
    max-width:140px!important;
  }
  .product-form-panel .product-crop-mount .inline-image-editor.compact-product-editor{
    width:140px!important;
    max-width:140px!important;
  }
  .product-form-panel .compact-product-editor .inline-image-crop{
    width:140px!important;
    height:140px!important;
  }
  .product-form-panel .product-form-head{
    min-width:0!important;
    width:100%!important;
    align-self:start!important;
  }
  .product-form-panel .product-form-head h4,
  .product-form-panel .product-form-head span{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }
  .product-form-panel .compact-product-editor .inline-image-editor-actions{
    width:140px!important;
    grid-template-columns:1fr 1fr!important;
  }
}


/* CORRECCIONES PUNTUALES EDITOR PRODUCTO */
.product-form-panel .product-discount-row{
  justify-content:center!important;
  align-items:center!important;
}
.product-form-panel .discount-switch-wrap,
.product-form-panel .discount-percent-wrap,
.product-form-panel .discount-preview{
  align-self:center!important;
}

@media(max-width:760px){
  /* Texto derecho centrado verticalmente respecto a la imagen, manteniendo alineación izquierda */
  .product-form-panel .product-form-head{
    align-self:center!important;
    justify-content:center!important;
    text-align:left!important;
  }

  /* Botones del editor de imagen: solo aumenta el texto */
  .product-form-panel .compact-product-editor .inline-image-editor-actions .btn{
    font-size:12px!important;
  }

  /* Fila descuento centrada con sus campos */
  .product-form-panel .product-discount-row{
    justify-self:center!important;
    justify-content:center!important;
    align-items:center!important;
  }
}


/* AJUSTE PUNTUAL CATEGORÍAS HOME */
.home-index .category-chip{
  font-size:10px!important;
}
@media(min-width:761px){
  .home-filter-row{
    align-items:center!important;
  }
  .home-filter-row .home-category-filter{
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
  }
}


/* AJUSTE PUNTUAL: sin padding que desplace las categorías del Home */
.home-index .home-category-filter{
  padding:0!important;
}


/* =========================================================
   PRODUCTOS · GALERÍA MÁXIMO 5 FOTOS
   ========================================================= */
.product-card-gallery{position:absolute;inset:0}
.product-gallery-image{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .16s ease,transform .35s}
.product-gallery-image.activo{opacity:1}
.product-gallery-arrow,.product-detail-arrow{
  position:absolute;top:50%;z-index:7;transform:translateY(-50%);
  width:28px;height:42px;border:0;border-radius:999px;background:rgba(7,7,7,.42);
  color:#fff;font-size:25px;line-height:1;display:grid;place-items:center;cursor:pointer;
  opacity:0;transition:opacity .16s ease,background .16s ease
}
.product-gallery-arrow.prev,.product-detail-arrow.prev{left:7px}
.product-gallery-arrow.next,.product-detail-arrow.next{right:7px}
.product-media:hover .product-gallery-arrow,.product-detail-image:hover .product-detail-arrow{opacity:.78}
.product-gallery-arrow:hover,.product-detail-arrow:hover{opacity:1!important;background:rgba(7,7,7,.72)}
@media(hover:none){.product-gallery-arrow,.product-detail-arrow{opacity:.6}}

.product-detail-gallery{min-width:0;background:#111;align-self:start}
.product-detail-gallery .product-detail-image{border-radius:16px 0 0 0}
.product-detail-gallery-image{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;opacity:0;pointer-events:none}
.product-detail-gallery-image.activo{opacity:1}
.product-detail-thumbs{display:flex;gap:7px;padding:9px;background:#0d0d0d;border-radius:0 0 0 16px;overflow-x:auto}
.product-detail-thumb{width:54px;height:54px;flex:0 0 54px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#181818;cursor:pointer;opacity:.58}
.product-detail-thumb.activo{border-color:#e0ff00;opacity:1}
.product-detail-thumb img{width:100%;height:100%;object-fit:cover;display:block}

.product-form-image-strip{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px;background:#111}
.product-form-mini{position:relative;flex:1 1 0;min-width:0;aspect-ratio:1;border-radius:7px;overflow:hidden;background:#222;border:1px solid rgba(255,255,255,.08)}
.product-form-mini img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover}
.product-form-mini b{position:absolute;left:3px;right:3px;bottom:3px;z-index:2;padding:2px 3px;border-radius:999px;background:rgba(224,255,0,.88);color:#111;font-size:7px;font-weight:600;text-align:center}

.product-form-panel.multi-image-mode>.product-form-head,
.product-form-panel.multi-image-mode>.product-form-layout,
.product-form-panel.multi-image-mode>.product-form-actions,
.product-form-panel.multi-image-mode>#prod-id{display:none!important}
.product-form-panel.multi-image-mode{width:min(960px,calc(100vw - 36px));max-width:960px}
.product-multi-editor{display:block;width:100%}
.product-multi-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px}
.product-multi-head strong{font-size:18px;color:#fff}
.product-multi-head span{font-size:11px;color:#777}
.product-multi-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:14px;align-items:start}
.product-multi-thumb{position:relative;aspect-ratio:1;padding:0;border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow:hidden;background:#181818;cursor:pointer}
.product-multi-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.product-multi-thumb.activo{border-color:#e0ff00}
.product-multi-thumb.principal{border-color:#e0ff00;box-shadow:0 0 0 1px rgba(224,255,0,.22)}
.product-multi-thumb b{position:absolute;left:6px;bottom:6px;padding:4px 7px;border-radius:999px;background:#e0ff00;color:#111;font-size:9px;font-weight:500}
.product-multi-editor-cell{position:relative;min-width:0}
.product-multi-editor-cell.principal{padding:2px;border-radius:14px;box-shadow:0 0 0 2px #e0ff00}
.product-multi-principal-label{position:absolute;left:7px;top:7px;z-index:6;padding:4px 7px;border-radius:999px;background:#e0ff00;color:#111;font-size:9px;font-weight:500}
.product-multi-crop{width:100%;margin:0}
.product-multi-crop .inline-image-editor.compact-product-editor{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important}
.product-multi-crop .compact-product-editor .inline-image-crop{width:100%!important;height:auto!important;aspect-ratio:1!important;border-radius:14px!important;margin:0!important}
.product-multi-crop .compact-product-editor .image-zoom-control{display:block!important;margin:8px 2px 0!important}
.product-multi-crop .compact-product-editor .inline-image-editor-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin-top:7px!important}
.product-multi-crop .compact-product-editor .inline-image-editor-actions .btn{height:34px!important;padding:0 8px!important;font-size:10px!important;margin:0!important}
.product-multi-static{aspect-ratio:1;overflow:hidden;border-radius:14px;background:#171717}
.product-multi-static img{width:100%;height:100%;object-fit:cover}
.product-multi-actions{display:flex;justify-content:center;gap:8px;margin-top:14px}
.product-multi-actions .btn{min-width:120px}
@media(max-width:700px){
  .product-detail-gallery .product-detail-image{border-radius:16px 16px 0 0}
  .product-detail-thumbs{border-radius:0}
  .product-detail-thumb{width:46px;height:46px;flex-basis:46px}
  .product-multi-head{display:block}
  .product-multi-head span{display:block;margin-top:4px}
  .product-multi-strip{gap:5px}
  .product-multi-thumb{border-radius:8px}
  .product-multi-thumb b{left:3px;bottom:3px;padding:2px 4px;font-size:7px}
  .product-multi-crop{width:100%}
  .product-multi-crop .compact-product-editor .inline-image-editor-actions .btn{font-size:10px!important}
}

.product-multi-actions .btn:disabled{opacity:.32;pointer-events:none}


/* Corrección galería producto: imágenes cuadradas, nunca circulares + reordenamiento */
.product-multi-thumb,
.product-multi-editor-cell,
.product-multi-crop .inline-image-crop,
.product-form-mini{
  border-radius:14px!important;
}
.product-multi-thumb img,
.product-multi-editor-cell img,
.product-multi-crop img,
.product-form-mini img{
  border-radius:0!important;
}
.product-multi-thumb{
  cursor:grab!important;
}
.product-multi-thumb:active{
  cursor:grabbing!important;
}
.product-multi-thumb.dragging{
  opacity:.45!important;
  transform:scale(.98);
}
.product-multi-thumb.drag-target{
  border-color:#e0ff00!important;
  box-shadow:0 0 0 2px rgba(224,255,0,.22)!important;
}
.product-multi-thumb b,
.product-multi-principal-label,
.product-form-mini b{
  border-radius:5px!important;
}
.product-multi-editor-cell{
  overflow:visible;
}

/* =========================================================
   AJUSTE PUNTUAL · FOTOS PRODUCTO
   ========================================================= */

/* Ninguna foto de producto circular */
.product-upload-preview img,
.product-form-main-photo img,
.product-form-thumb img,
.product-multi-thumb img,
.product-detail-thumb img,
.product-gallery-image,
.product-detail-gallery-image{
  border-radius:0!important;
}

/* Preview del formulario: principal arriba + 4 thumbs debajo */
.product-upload-preview{
  padding:8px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:7px!important;
}
.product-form-main-photo{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:12px!important;
  background:#171717;
  border:1px solid rgba(255,255,255,.08);
}
.product-form-main-photo img{
  position:absolute!important;
  inset:0;
  width:100%!important;
  height:100%!important;
  object-fit:cover;
}
.product-form-main-photo b{
  position:absolute;
  left:7px;
  bottom:7px;
  z-index:3;
  padding:3px 6px;
  border-radius:5px!important;
  background:#e0ff00;
  color:#111;
  font-size:8px;
  font-weight:600;
}
.product-form-thumbs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:5px;
  width:100%;
}
.product-form-thumb{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:8px!important;
  background:#1a1a1a;
  border:1px solid rgba(255,255,255,.08);
}
.product-form-thumb img{
  position:absolute!important;
  inset:0;
  width:100%!important;
  height:100%!important;
  object-fit:cover;
}
.product-upload-preview .product-upload-change{
  position:static!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  align-self:center;
}

/* Detalle: hasta 5 thumbs ocupan proporcionalmente todo el ancho de la imagen */
.product-detail-gallery{width:100%}
.product-detail-thumbs{
  width:100%;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  padding:9px!important;
  overflow:visible!important;
}
.product-detail-thumb{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  flex:none!important;
  aspect-ratio:1/1;
  border-radius:9px!important;
  overflow:hidden;
}
.product-detail-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover;
  display:block;
}

/* Controles del detalle cerca de la descripción */
.product-detail-buy-compact{
  margin-top:12px!important;
  gap:8px!important;
  align-items:center!important;
}
.product-detail-info .product-detail-description{
  margin-bottom:0!important;
}

/* Flechas de navegación de la grid: circulares y sin salto al click */
.product-gallery-arrow-stable{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  border-radius:50%!important;
  padding:0!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
  transform:translateY(-50%)!important;
  transition:opacity .16s ease,background .16s ease!important;
}
.product-gallery-arrow-stable:hover,
.product-gallery-arrow-stable:active,
.product-gallery-arrow-stable:focus{
  transform:translateY(-50%)!important;
}
.product-card-gallery .product-gallery-image{
  transition:opacity .16s ease!important;
}
.product-card:hover .product-card-gallery .product-gallery-image{
  transform:none!important;
}


/* =========================================================
   AJUSTE PUNTUAL · EDICIÓN DE PRODUCTO + AGOTADO
   ========================================================= */

/* En grid, Agotado ocupa exactamente la zona del indicador de stock. */
.product-media .soldout{
  top:10px!important;
  right:10px!important;
  left:auto!important;
  z-index:5!important;
}
@media(max-width:768px){
  .product-media .soldout{
    top:7px!important;
    right:7px!important;
    left:auto!important;
  }
}

/* El área total del selector conserva su tamaño aprobado. */
.product-upload-zone{
  border-radius:22px!important;
}
.product-upload-preview{
  height:100%!important;
  min-height:0!important;
  padding:8px!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) 34px auto!important;
  align-content:stretch!important;
  gap:6px!important;
}

/* Principal siempre cuadrada/rectangular, nunca circular. */
.product-form-main-photo{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:#171717!important;
  border:1px solid rgba(255,255,255,.08)!important;
  cursor:pointer;
}
.product-form-main-photo-single{
  grid-row:1 / span 2;
}
.product-form-main-photo img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:0!important;
}

/* Thumbs debajo: hasta 4, misma altura siempre y alineados a la izquierda si hay menos. */
.product-form-thumbs{
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:100%!important;
  height:34px!important;
  min-height:34px!important;
  overflow:hidden!important;
}
.product-form-thumb{
  appearance:none;
  -webkit-appearance:none;
  position:relative!important;
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:8px!important;
  background:#1a1a1a!important;
  border:1px solid rgba(255,255,255,.10)!important;
  cursor:pointer;
}
.product-form-thumb:hover{
  border-color:#e0ff00!important;
}
.product-form-thumb img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:0!important;
}

/* Etiqueta principal y botón cambiar no deforman el layout. */
.product-form-main-photo b{
  border-radius:5px!important;
}
.product-upload-preview .product-upload-change{
  justify-self:center!important;
  align-self:center!important;
  position:static!important;
  transform:none!important;
  margin:0!important;
}

/* El pespunte exterior solicitado queda a 22px. */
.product-upload-zone,
.product-upload-zone:hover,
.product-upload-zone:focus-visible,
.product-upload-zone.dragover{
  border-radius:22px!important;
}


/* =========================================================
   AJUSTE PUNTUAL · EDICIÓN INDIVIDUAL DE FOTOS
   ========================================================= */

/* El contenedor crece hacia abajo: la foto principal nunca pierde su formato 1:1 */
.product-upload-zone.has-image{
  height:auto!important;
  min-height:190px!important;
  aspect-ratio:auto!important;
  overflow:visible!important;
}
.product-upload-zone.has-image .product-upload-preview{
  height:auto!important;
  min-height:190px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:7px!important;
  padding:8px!important;
}
.product-form-main-photo-wrap{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  flex:0 0 auto;
}
.product-form-main-photo{
  width:100%!important;
  height:100%!important;
  aspect-ratio:1/1!important;
  display:block!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.product-form-main-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Thumbs: siempre cuadrados, misma altura y alineados a la izquierda */
.product-form-thumbs{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  gap:5px!important;
  width:100%!important;
  height:34px!important;
  min-height:34px!important;
}
.product-form-thumb-wrap{
  position:relative;
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
}
.product-form-thumb{
  width:34px!important;
  height:34px!important;
  aspect-ratio:1/1!important;
  border-radius:8px!important;
  overflow:hidden!important;
}
.product-form-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Tacho discreto sobre cada foto */
.product-form-delete-photo{
  position:absolute;
  top:6px;
  right:6px;
  z-index:8;
  width:25px;
  height:25px;
  padding:0;
  border:1px solid rgba(255,255,255,.14);
  border-radius:7px!important;
  background:rgba(8,8,8,.72);
  color:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  opacity:.82;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.product-form-delete-photo:hover{
  opacity:1;
  background:#1a1a1a;
  color:#ff6b6b;
}
.product-form-delete-photo svg{
  width:13px;
  height:13px;
  display:block;
}
.product-form-delete-thumb{
  top:2px;
  right:2px;
  width:18px;
  height:18px;
  border-radius:5px!important;
}
.product-form-delete-thumb svg{
  width:10px;
  height:10px;
}

/* Botón Cambiar con el mismo lenguaje visual del sitio */
.product-upload-preview .product-upload-change-btn{
  position:static!important;
  transform:none!important;
  align-self:center!important;
  width:auto!important;
  min-width:84px!important;
  height:32px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#e8e8e8!important;
  font-size:10px!important;
}
.product-upload-preview .product-upload-change-btn:hover{
  background:rgba(224,255,0,.12)!important;
  color:#e0ff00!important;
  border-color:rgba(224,255,0,.35)!important;
}

/* Mantiene el pespunte exterior aprobado */
.product-upload-zone,
.product-upload-zone.has-image{
  border-radius:22px!important;
}

/* Mobile conserva el mismo ancho aprobado y crece solo hacia abajo */
@media(max-width:760px){
  .product-upload-zone.has-image{
    min-height:140px!important;
  }
  .product-upload-zone.has-image .product-upload-preview{
    min-height:140px!important;
  }
}


/* =========================================================
   AJUSTE PUNTUAL · FORMULARIO + GALERÍA DE EDICIÓN
   ========================================================= */

/* Nuevo producto: restaura exactamente el centrado original del cuadro vacío. */
.product-upload-zone:not(.has-image) .product-upload-preview{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
}
.product-upload-zone:not(.has-image) .product-upload-preview strong{
  position:static!important;
}
.product-upload-zone:not(.has-image) .product-upload-preview small{
  position:static!important;
}

/* Con fotos, la principal conserva 1:1 y el bloque crece únicamente hacia abajo. */
.product-upload-zone.has-image{
  height:auto!important;
  aspect-ratio:auto!important;
  overflow:visible!important;
}
.product-upload-zone.has-image .product-upload-preview{
  height:auto!important;
  min-height:0!important;
  padding:8px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:7px!important;
}
.product-form-main-photo{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  flex:0 0 auto!important;
  border-radius:14px!important;
  overflow:hidden!important;
  position:relative!important;
  padding:0!important;
}
.product-form-main-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Las 4 miniaturas ocupan todo el ancho de la principal. */
.product-form-thumbs{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:5px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  align-items:start!important;
}
.product-form-thumb{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  min-width:0!important;
  border-radius:8px!important;
  overflow:hidden!important;
  padding:0!important;
}
.product-form-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Guardar/Cancelar viven dentro de los campos y ya no bajan por el crecimiento de fotos. */
.product-fields-grid .product-form-actions{
  grid-column:1 / -1!important;
  width:100%!important;
  margin-top:2px!important;
  justify-content:flex-start!important;
  align-items:center!important;
}
.product-fields-grid .product-form-actions .btn{
  min-width:112px!important;
}

/* Vista para ordenar: icono eliminar debajo, centrado y fuera de la foto. */
.product-multi-strip{
  align-items:start!important;
}
.product-multi-item{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.product-multi-item[draggable="true"]{
  cursor:grab;
}
.product-multi-item.dragging{
  opacity:.45;
}
.product-multi-item.drag-target .product-multi-thumb{
  border-color:#e0ff00!important;
  box-shadow:0 0 0 2px rgba(224,255,0,.22)!important;
}
.product-multi-thumb{
  width:100%!important;
  aspect-ratio:1/1!important;
  cursor:pointer!important;
}
.product-multi-thumb:disabled{
  cursor:default!important;
  opacity:1!important;
}
.product-multi-delete{
  width:24px;
  height:24px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#777;
  cursor:pointer;
  opacity:.72;
}
.product-multi-delete:hover{
  color:#ff6b6b;
  opacity:1;
  background:rgba(255,255,255,.05);
}
.product-multi-delete svg{
  width:13px;
  height:13px;
  display:block;
}

/* Mientras una imagen se edita no aparece ningún tacho. */
.product-multi-editor-cell + .product-multi-delete,
.product-multi-editor-cell .product-multi-delete{
  display:none!important;
}

@media(max-width:760px){
  .product-fields-grid .product-form-actions{
    justify-content:center!important;
  }
}


/* =========================================================
   CORRECCIÓN FINAL · GALERÍAS + MÓVIL
   Desktop se conserva; fuera de móvil solo se corrigen flechas.
   ========================================================= */

/* Flechas: símbolo perfectamente centrado y sin salto al click */
.product-gallery-arrow,
.product-detail-arrow{
  box-sizing:border-box!important;
  padding:0!important;
  text-indent:0!important;
  line-height:1!important;
  align-items:center!important;
  justify-content:center!important;
  font-family:Arial,sans-serif!important;
  font-weight:400!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}
.product-gallery-arrow::before,
.product-detail-arrow::before,
.product-gallery-arrow::after,
.product-detail-arrow::after{display:none!important}
.product-gallery-arrow:active,
.product-gallery-arrow:focus,
.product-gallery-arrow:hover,
.product-detail-arrow:active,
.product-detail-arrow:focus,
.product-detail-arrow:hover{
  transform:translateY(-50%)!important;
  margin:0!important;
}
.product-detail-arrow{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  border-radius:50%!important;
}
.product-detail-image:hover .product-detail-arrow{opacity:.78}
.product-detail-arrow:hover{opacity:1!important}

@media(max-width:760px){
  /* Overlay realmente bloqueado; solo el formulario hace scroll */
  html,body{overscroll-behavior:none}
  body.product-modal-open{overflow:hidden!important;touch-action:none!important}
  .product-modal-backdrop{position:fixed!important;inset:0!important;touch-action:none!important}

  /* Modal móvil limpio en una sola columna, sin superposiciones */
  .product-form-panel:not(.oculto){
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
    width:calc(100vw - 20px)!important;
    max-width:520px!important;
    max-height:calc(100dvh - 20px)!important;
    top:10px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    padding:16px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    border-radius:18px!important;
  }
  .product-form-panel .product-form-head{
    order:1!important;
    width:100%!important;
    margin:0!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:baseline!important;
    justify-content:flex-start!important;
    gap:10px!important;
    text-align:left!important;
  }
  .product-form-panel .product-form-head h4{font-size:18px!important;white-space:nowrap!important}
  .product-form-panel .product-form-head span{font-size:11px!important;overflow:visible!important}

  .product-form-panel .product-form-layout{
    order:2!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    gap:14px!important;
  }
  .product-form-panel .product-image-field{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
  }
  .product-form-panel .product-upload-zone{
    width:180px!important;
    height:180px!important;
    min-height:180px!important;
    max-width:180px!important;
    border-radius:22px!important;
  }
  .product-form-panel .product-upload-zone.has-image{
    width:180px!important;
    height:auto!important;
    min-height:180px!important;
    max-width:180px!important;
    overflow:visible!important;
  }
  .product-form-panel .product-upload-zone:not(.has-image) .product-upload-preview{
    width:100%!important;height:100%!important;padding:0!important;
    display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;gap:3px!important;
  }
  .product-form-panel .product-upload-zone.has-image .product-upload-preview{
    width:100%!important;height:auto!important;min-height:0!important;
    padding:8px!important;display:flex!important;flex-direction:column!important;
    align-items:stretch!important;justify-content:flex-start!important;gap:7px!important;
  }

  /* Fotos móviles: siempre cuadradas con esquinas redondeadas, jamás círculos */
  .product-form-main-photo,
  .product-form-thumb,
  .product-multi-thumb,
  .product-detail-thumb,
  .product-multi-editor-cell,
  .product-multi-crop .inline-image-crop{
    border-radius:10px!important;
  }
  .product-form-main-photo{
    width:100%!important;height:auto!important;aspect-ratio:1/1!important;
    overflow:hidden!important;padding:0!important;display:block!important;
  }
  .product-form-main-photo img,
  .product-form-thumb img,
  .product-multi-thumb img,
  .product-detail-thumb img,
  .product-detail-gallery-image{
    border-radius:0!important;width:100%!important;height:100%!important;object-fit:cover!important;
  }
  .product-form-thumbs{
    width:100%!important;height:auto!important;min-height:0!important;
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;align-items:start!important;
  }
  .product-form-thumb{
    width:100%!important;height:auto!important;aspect-ratio:1/1!important;
    min-width:0!important;overflow:hidden!important;padding:0!important;
  }
  .product-upload-preview .product-upload-change-btn{
    position:static!important;transform:none!important;margin:1px auto 0!important;
    min-width:86px!important;height:32px!important;padding:0 14px!important;
    border-radius:999px!important;z-index:auto!important;
  }

  /* Campos y Guardar/Cancelar quedan dentro del flujo normal */
  .product-form-panel .product-fields-grid{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(82px,.42fr)!important;
    gap:10px!important;
    align-items:start!important;
  }
  .product-form-panel .field-name{grid-column:1/-1!important;grid-row:auto!important}
  .product-form-panel .field-price{grid-column:1!important;grid-row:auto!important}
  .product-form-panel .field-stock{grid-column:2!important;grid-row:auto!important;width:auto!important;max-width:none!important}
  .product-form-panel .field-detail{grid-column:1/-1!important;grid-row:auto!important}
  .product-form-panel .product-discount-row{grid-column:1/-1!important;width:100%!important}
  .product-fields-grid .product-form-actions{
    position:static!important;
    grid-column:1/-1!important;
    width:100%!important;
    margin:2px 0 0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:8px!important;
    transform:none!important;
    z-index:auto!important;
  }
  .product-fields-grid .product-form-actions .btn{
    position:static!important;
    min-width:108px!important;
    height:40px!important;
    margin:0!important;
    transform:none!important;
  }

  /* Crop individual móvil: mismo editor compacto, sin invadir campos */
  .product-form-panel .product-crop-mount{
    width:180px!important;max-width:180px!important;margin:0 auto!important;
  }
  .product-form-panel .product-crop-mount .inline-image-editor.compact-product-editor{
    width:180px!important;max-width:180px!important;
  }
  .product-form-panel .compact-product-editor .inline-image-crop{
    width:180px!important;height:180px!important;aspect-ratio:1/1!important;
  }
  .product-form-panel .compact-product-editor .inline-image-editor-actions{
    width:180px!important;display:grid!important;grid-template-columns:1fr 1fr!important;
    gap:6px!important;margin-top:7px!important;
  }
  .product-form-panel .compact-product-editor .inline-image-editor-actions .btn{
    position:static!important;width:100%!important;height:34px!important;margin:0!important;
    padding:0 8px!important;font-size:12px!important;transform:none!important;
  }

  /* Modo ordenar/editar múltiples: contenido vertical y sin elementos flotantes */
  .product-form-panel.multi-image-mode{
    width:calc(100vw - 20px)!important;
    max-width:520px!important;
  }
  .product-form-panel.multi-image-mode>.product-form-head,
  .product-form-panel.multi-image-mode>.product-form-layout{display:none!important}
  .product-multi-editor{order:1!important;width:100%!important}
  .product-multi-head{display:block!important;margin-bottom:12px!important}
  .product-multi-head strong{display:block!important;font-size:17px!important}
  .product-multi-head span{display:block!important;margin-top:4px!important;font-size:10px!important}
  .product-multi-strip{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    align-items:start!important;
    margin-bottom:12px!important;
  }
  .product-multi-item{min-width:0!important;gap:4px!important}
  .product-multi-thumb{
    width:100%!important;height:auto!important;aspect-ratio:1/1!important;
    min-width:0!important;border-radius:9px!important;overflow:hidden!important;
  }
  .product-multi-delete{
    position:static!important;width:22px!important;height:22px!important;margin:0 auto!important;
    transform:none!important;z-index:auto!important;
  }
  .product-multi-crop{
    width:min(280px,100%)!important;max-width:280px!important;margin:0 auto!important;
  }
  .product-multi-crop .inline-image-editor.compact-product-editor{
    width:100%!important;max-width:none!important;
  }
  .product-multi-crop .compact-product-editor .inline-image-crop{
    width:100%!important;height:auto!important;aspect-ratio:1/1!important;
  }
  .product-multi-actions{
    position:static!important;
    display:flex!important;justify-content:center!important;gap:8px!important;
    margin-top:12px!important;transform:none!important;z-index:auto!important;
  }
  .product-multi-actions .btn{
    position:static!important;min-width:108px!important;height:40px!important;margin:0!important;transform:none!important;
  }

  /* Detalle móvil: flechas circulares, estables y thumbs no circulares */
  .product-detail-modal{
    width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    overflow-y:auto!important;
    grid-template-columns:1fr!important;
    overscroll-behavior:contain!important;
  }
  .product-detail-gallery .product-detail-image{border-radius:16px 16px 0 0!important}
  .product-detail-arrow{
    width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;
    border-radius:50%!important;padding:0!important;transform:translateY(-50%)!important;
  }
  .product-detail-arrow:active,.product-detail-arrow:focus,.product-detail-arrow:hover{
    transform:translateY(-50%)!important;
  }
  .product-detail-thumbs{
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;width:100%!important;padding:8px!important;
  }
  .product-detail-thumb{
    width:100%!important;height:auto!important;aspect-ratio:1/1!important;
    min-width:0!important;border-radius:8px!important;overflow:hidden!important;
  }
}


/* =========================================================
   CORRECCIÓN FINAL V2 · FLECHAS + MÓVIL
   Desktop: únicamente flechas.
   ========================================================= */

/* TODAS las flechas: círculo translúcido real, chevron ópticamente centrado y sin saltos */
.product-gallery-arrow,
.product-detail-arrow,
.product-gallery-arrow-stable{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  box-sizing:border-box!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:rgba(8,8,8,.52)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  top:50%!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  transition:opacity .16s ease,background .16s ease!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  line-height:0!important;
}
.product-gallery-arrow:hover,
.product-gallery-arrow:focus,
.product-gallery-arrow:active,
.product-detail-arrow:hover,
.product-detail-arrow:focus,
.product-detail-arrow:active{
  width:32px!important;
  height:32px!important;
  border-radius:50%!important;
  background:rgba(8,8,8,.74)!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}
.product-gallery-arrow span,
.product-detail-arrow span{
  display:block!important;
  width:8px!important;
  height:8px!important;
  flex:0 0 8px!important;
  border-style:solid!important;
  border-color:#fff!important;
  border-width:0 2px 2px 0!important;
  margin:0!important;
  padding:0!important;
  transform-origin:center!important;
  pointer-events:none!important;
}
.product-gallery-arrow.prev span,
.product-detail-arrow.prev span{
  transform:translateX(1px) rotate(135deg)!important;
}
.product-gallery-arrow.next span,
.product-detail-arrow.next span{
  transform:translateX(-1px) rotate(-45deg)!important;
}

/* elimina cualquier efecto heredado de click/feedback que pueda mover la flecha */
.product-gallery-arrow.button-feedback,
.product-detail-arrow.button-feedback{
  animation:none!important;
  transform:translateY(-50%)!important;
}

@media(max-width:760px){
  /* Fondo completamente inmóvil mientras el editor de producto está abierto */
  html.product-modal-lock,
  html.product-modal-lock body{
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  body.product-modal-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  .product-modal-backdrop{
    position:fixed!important;
    inset:0!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:none!important;
  }

  /* El formulario es el único elemento que puede desplazarse */
  .product-form-panel:not(.oculto){
    position:fixed!important;
    top:10px!important;
    bottom:auto!important;
    left:50%!important;
    right:auto!important;
    width:calc(100vw - 20px)!important;
    max-width:520px!important;
    height:auto!important;
    max-height:calc(100dvh - 20px)!important;
    transform:translateX(-50%)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
    padding:16px!important;
  }

  /* Guardar / Cancelar siempre dentro del flujo: nunca flotan ni se superponen */
  .product-form-panel .product-fields-grid{
    position:relative!important;
    overflow:visible!important;
  }
  .product-form-panel .product-form-actions,
  .product-fields-grid .product-form-actions{
    position:static!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    float:none!important;
    clear:both!important;
    z-index:auto!important;
    grid-column:1/-1!important;
    grid-row:auto!important;
    width:100%!important;
    min-height:40px!important;
    margin:4px 0 0!important;
    padding:0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:8px!important;
  }
  .product-form-panel .product-form-actions .btn,
  .product-fields-grid .product-form-actions .btn{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
    flex:0 0 auto!important;
    min-width:108px!important;
    height:40px!important;
  }

  /* NUNCA imágenes circulares en ningún estado del editor móvil */
  .product-form-main-photo,
  .product-form-thumb,
  .product-multi-item,
  .product-multi-thumb,
  .product-multi-editor-cell,
  .product-multi-crop,
  .product-multi-crop .inline-image-editor,
  .product-multi-crop .inline-image-crop,
  .product-form-panel .product-crop-mount,
  .product-form-panel .inline-image-crop{
    border-radius:10px!important;
    clip-path:none!important;
    -webkit-mask:none!important;
    mask:none!important;
  }
  .product-form-main-photo img,
  .product-form-thumb img,
  .product-multi-thumb img,
  .product-multi-editor-cell img,
  .product-multi-crop img,
  .product-form-panel .inline-image-crop img{
    border-radius:0!important;
    clip-path:none!important;
    -webkit-mask:none!important;
    mask:none!important;
  }

  /* Al editar UNA foto: editor cuadrado grande arriba; thumbs quedan debajo */
  .product-form-panel.multi-image-mode .product-multi-strip{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    align-items:start!important;
  }
  .product-form-panel.multi-image-mode .product-multi-editor-cell{
    grid-column:1/-1!important;
    order:-1!important;
    width:180px!important;
    max-width:180px!important;
    justify-self:center!important;
    aspect-ratio:auto!important;
    padding:0!important;
    border-radius:10px!important;
  }
  .product-form-panel.multi-image-mode .product-multi-editor-cell.principal{
    padding:2px!important;
  }
  .product-form-panel.multi-image-mode .product-multi-crop{
    width:100%!important;
    max-width:180px!important;
    margin:0 auto!important;
  }
  .product-form-panel.multi-image-mode .product-multi-crop .inline-image-editor.compact-product-editor{
    width:180px!important;
    max-width:180px!important;
    margin:0 auto!important;
    padding:0!important;
    border-radius:10px!important;
  }
  .product-form-panel.multi-image-mode .product-multi-crop .compact-product-editor .inline-image-crop{
    width:180px!important;
    height:180px!important;
    aspect-ratio:1/1!important;
    border-radius:10px!important;
  }
  .product-form-panel.multi-image-mode .product-multi-crop .compact-product-editor .image-zoom-control{
    width:180px!important;
    margin:8px auto 0!important;
  }
  .product-form-panel.multi-image-mode .product-multi-crop .compact-product-editor .inline-image-editor-actions{
    width:180px!important;
    margin:7px auto 0!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }
  .product-form-panel.multi-image-mode .product-multi-crop .compact-product-editor .inline-image-editor-actions .btn{
    position:static!important;
    width:100%!important;
    height:34px!important;
    margin:0!important;
    transform:none!important;
  }

  /* Thumbs de ordenar: cuadrados con esquina suave, nunca círculos */
  .product-form-panel.multi-image-mode .product-multi-item{
    width:100%!important;
    min-width:0!important;
    border-radius:9px!important;
  }
  .product-form-panel.multi-image-mode .product-multi-thumb{
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    border-radius:9px!important;
    padding:0!important;
    overflow:hidden!important;
  }

  /* Flechas del detalle móvil: mismo círculo y misma estabilidad que la grid */
  .product-detail-arrow{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    border-radius:50%!important;
    background:rgba(8,8,8,.52)!important;
    transform:translateY(-50%)!important;
  }
}


/* =========================================================
   AJUSTE MÓVIL · OVERLAYS CENTRADOS + DETALLE MÁS COMPACTO
   Desktop intacto.
   ========================================================= */
@media(max-width:760px){

  /* Overlays centrados vertical y horizontalmente */
  .pedido-modal-overlay,
  .auth-overlay,
  .product-detail-overlay,
  .product-modal-backdrop{
    align-items:center!important;
    justify-items:center!important;
    place-items:center!important;
  }

  /* El formulario de producto deja de pegarse arriba */
  .product-form-panel:not(.oculto){
    top:50%!important;
    bottom:auto!important;
    left:50%!important;
    right:auto!important;
    transform:translate(-50%,-50%)!important;
    max-height:calc(100dvh - 32px)!important;
  }

  /* Detalle de producto más pequeño para dejar margen clickeable alrededor */
  .product-detail-overlay{
    padding:22px!important;
  }
  .product-detail-modal{
    width:min(92vw,430px)!important;
    max-width:430px!important;
    max-height:calc(100dvh - 44px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-radius:18px!important;
  }
  .product-detail-image{
    max-height:48dvh!important;
  }
  .product-detail-gallery{
    max-width:100%!important;
  }
}


/* =========================================================
   SOLO OVERLAY DETALLE DE PRODUCTO · MÁS COMPACTO EN MÓVIL
   ========================================================= */
@media(max-width:760px){

  .product-detail-overlay{
    padding:30px!important;
  }

  .product-detail-modal{
    width:min(88vw,390px)!important;
    max-width:390px!important;
    max-height:calc(100dvh - 60px)!important;
    overflow-y:auto!important;
    border-radius:16px!important;
  }

  .product-detail-gallery{
    width:100%!important;
  }

  .product-detail-image{
    max-height:40dvh!important;
  }

  .product-detail-thumbs{
    gap:5px!important;
    padding:7px!important;
  }

  .product-detail-thumb{
    border-radius:7px!important;
  }

  .product-detail-info{
    padding:14px!important;
  }

  .product-detail-info .product-detail-store{
    display:none!important;
  }

  .product-detail-info h2{
    font-size:17px!important;
    line-height:1.15!important;
    margin:0 0 6px!important;
  }

  .product-detail-price,
  .product-detail-price .product-price-final{
    font-size:16px!important;
    line-height:1.1!important;
  }

  .product-detail-price .product-price-old{
    font-size:10px!important;
    margin-left:7px!important;
  }

  .product-detail-description{
    font-size:11px!important;
    line-height:1.35!important;
    margin:7px 0 0!important;
  }

  .product-detail-buy-compact{
    margin-top:9px!important;
    gap:6px!important;
  }

  .product-detail-buy .qty{
    height:30px!important;
  }

  .product-detail-buy .qty button{
    width:30px!important;
    height:30px!important;
    font-size:15px!important;
  }

  .product-detail-buy .qty span{
    font-size:11px!important;
  }

  .product-detail-buy .btn{
    height:34px!important;
    padding:0 12px!important;
    font-size:11px!important;
  }

  .product-detail-arrow{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    min-height:28px!important;
  }
}


/* =========================================================
   MÓVIL · EDITAR PRODUCTO
   Vista inicial: miniaturas a la izquierda.
   Vista individual: vuelve al layout anterior + más aire vertical.
   Desktop intacto.
   ========================================================= */
@media(max-width:760px){

  /* VISTA INICIAL al abrir Editar producto:
     miniaturas pequeñas a la izquierda y principal a la derecha */
  .product-upload-zone.has-image .product-upload-preview{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:7px!important;
    row-gap:7px!important;
    align-items:start!important;
  }

  .product-upload-zone.has-image .product-form-thumbs{
    grid-column:1!important;
    grid-row:1!important;
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    width:44px!important;
    min-width:44px!important;
    align-self:start!important;
  }

  .product-upload-zone.has-image .product-form-thumb{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    aspect-ratio:1/1!important;
    border-radius:8px!important;
    overflow:hidden!important;
    padding:0!important;
  }

  .product-upload-zone.has-image .product-form-thumb img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .product-upload-zone.has-image .product-form-main-photo{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }

  .product-upload-zone.has-image .product-upload-change-btn{
    grid-column:1 / -1!important;
    grid-row:2!important;
    justify-self:center!important;
    margin-top:0!important;
  }

  /* Si solo existe una imagen, la principal usa todo el ancho */
  .product-upload-zone.has-image .product-upload-preview:not(:has(.product-form-thumbs)){
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }

  /* VISTA SIGUIENTE: edición individual de una foto.
     Se conserva el layout anterior y solo se agrega separación vertical. */
  .product-form-panel.multi-image-mode .product-multi-editor-cell{
    margin-top:12px!important;
    margin-bottom:12px!important;
  }

  .product-form-panel.multi-image-mode .product-multi-crop{
    margin-top:8px!important;
    margin-bottom:10px!important;
  }

  .product-form-panel.multi-image-mode .product-multi-crop .compact-product-editor .inline-image-editor-actions{
    margin-top:12px!important;
    margin-bottom:8px!important;
  }
}


/* SOLO MÓVIL · vista inicial de Editar producto:
   principal a la izquierda + thumbs verticales a la derecha */
@media(max-width:760px){

  .product-upload-zone.has-image .product-upload-preview{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px!important;
    grid-template-rows:auto auto!important;
    column-gap:7px!important;
    row-gap:7px!important;
    align-items:start!important;
  }

  .product-upload-zone.has-image .product-form-main-photo{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }

  .product-upload-zone.has-image .product-form-thumbs{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    width:44px!important;
    min-width:44px!important;
    align-self:start!important;
  }

  .product-upload-zone.has-image .product-form-thumb{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    aspect-ratio:1/1!important;
    border-radius:8px!important;
    overflow:hidden!important;
    padding:0!important;
  }

  .product-upload-zone.has-image .product-form-thumb img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .product-upload-zone.has-image .product-upload-change-btn{
    grid-column:1 / -1!important;
    grid-row:2!important;
    justify-self:center!important;
    margin-top:0!important;
  }
}


/* FIX FINAL: la regla móvil anterior estaba perdiendo contra una regla
   más específica del formulario. Solo vista inicial Editar producto. */
@media(max-width:760px){
  .product-form-panel .product-upload-zone.has-image .product-upload-preview{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 46px!important;
    grid-template-rows:auto auto!important;
    column-gap:7px!important;
    row-gap:7px!important;
    align-items:start!important;
    width:100%!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-form-main-photo{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    margin:0!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-form-thumbs{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:5px!important;
    width:46px!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    overflow:visible!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-form-thumb{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    flex:0 0 46px!important;
    aspect-ratio:1/1!important;
    border-radius:8px!important;
    margin:0!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-upload-change-btn{
    grid-column:1 / -1!important;
    grid-row:2!important;
    position:static!important;
    justify-self:center!important;
    margin:0 auto!important;
  }
}


/* SOLO MÓVIL · Editar producto:
   principal + 2 columnas de thumbs (2 por columna) */
@media(max-width:760px){
  .product-form-panel .product-upload-zone.has-image .product-upload-preview{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 46px 46px!important;
    grid-template-rows:auto auto!important;
    column-gap:6px!important;
    row-gap:7px!important;
    align-items:start!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-form-main-photo{
    grid-column:1!important;
    grid-row:1!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-form-thumbs{
    grid-column:2 / 4!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:46px 46px!important;
    grid-template-rows:46px 46px!important;
    grid-auto-flow:column!important;
    grid-auto-columns:46px!important;
    gap:6px!important;
    width:98px!important;
    min-width:98px!important;
    height:98px!important;
    margin:0!important;
    align-content:start!important;
    justify-content:start!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-form-thumb{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    flex:none!important;
    margin:0!important;
    border-radius:8px!important;
  }

  .product-form-panel .product-upload-zone.has-image .product-upload-change-btn{
    grid-column:1 / -1!important;
    grid-row:2!important;
  }
}

/* SOLO MÓVIL · Banner home completo, sin recorte */
@media(max-width:768px){
  .home-index .banner-container{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/5!important;
  }
  .home-index .banner-slide{
    height:100%!important;
    min-height:0!important;
    background-size:contain!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
}


/* Logo Mercado Lemon · Mercado blanco / Lemon verde */
.logo .logo-mercado,
.auth-title.logo .logo-mercado,
.footer-brand.logo .logo-mercado{color:#fff!important;}
.logo .logo-lemon,
.auth-title.logo .logo-lemon,
.footer-brand.logo .logo-lemon,
.logo .logo-o,
.auth-title.logo .logo-o,
.footer-brand.logo .logo-o{color:#e0ff00!important;}
