/*
 * css/estilos.css — Estilos web Microdata Informática
 * V99 - 2026-10-21 - Cabecera de equipos más baja (migas y pestañas en una fila, enlace en la fila del título); inventario: características en negro
 * V98 - 2026-10-20 - Nuevos ↔ reacondicionados: enlace, tipos de la otra página y número que late; inventario con texto negro y más grande
 * V97 - 2026-10-20 - Fichas de equipos: texto bajo la foto con fondo gris muy claro
 * V96 - 2026-10-20 - Vista previa del inicio completo en el Panel (mensaje de aviso)
 * V95 - 2026-10-20 - Panel › 6 · Google (título y descripción de cada página)
 * V94 - 2026-10-20 - Mensaje de aviso: tamaño de la foto y vista previa en el panel
 * V93 - 2026-10-20 - Aviso de cookies de Google Analytics
 * V92 - 2026-10-20 - Stock de la ficha más pequeño (Ocultar, cifras, flechas); botón ↶ deshacer
 * V91 - 2026-10-20 - Título y ventajas siempre en una línea (en móvil se ven las ventajas que caben)
 * V90 - 2026-10-20 - Pestañas Equipos reacondicionados / nuevos minimalistas (una línea, sin subtítulo)
 * V89 - 2026-10-20 - Título de Equipos reacondicionados / nuevos y ventajas en una línea
 * V88 - 2026-10-20 - Alta: unidades por tienda (sin fondo amarillo); campos en gris hasta rellenar; desplegables con todas las opciones a la vista
 * V87 - 2026-10-20 - Campo obligatorio vacío marcado en rojo; ojo de la barra admin más bajo
 * V86 - 2026-10-20 - Pestañas Equipos reacondicionados / nuevos más bajas
 * V85 - 2026-10-20 - Botón ojo (vista cliente) en la barra de admin; mensaje de guardado bajo el botón; tienda al dar de alta; descripción en 3 líneas
 * V84 - 2026-10-20 - Modo Admin: ficha pulsable para editar
 * V83 - 2026-10-20 - «Me interesa» se pone gris al abrir la elección de tienda
 * V82 - 2026-10-20 - Pestañas Reacondicionados / Nuevos centradas
 * V81 - 2026-10-20 - Pestañas Reacondicionados / Nuevos, etiqueta «Nuevo» y garantía en el formulario
 * V80 - 2026-10-20 - Botón «Me interesa» por WhatsApp en las fichas (elige tienda si hay stock en las 2)
 * V79 - 2026-10-20 - Filtro por tienda (Modo Admin) junto al orden
 * V78 - 2026-10-20 - Etiqueta OFERTA en las fichas de reacondicionados
 * V77 - 2026-10-20 - Ventana de soporte remoto: contraseña centrada y aviso «Descargando…»
 * V76 - 2026-10-20 - Botón «?» como botón (abre la ventana de contraseña del soporte remoto)
 * V75 - 2026-10-20 - Botón «?» de soporte remoto en la franja negra de arriba
 * V74 - 2026-10-20 - Botón Ocultar/Mostrar en la ficha, junto al stock
 * V73 - 2026-10-20 - Badge «Agotado» y ficha agotada en gris; inventario: sección Ocultos y botón Ocultar/Mostrar
 * V72 - 2026-10-20 - Barra Modo Admin en 3 partes: izquierda, centro y derecha
 * V71 - 2026-10-19 - Contraseña del acceso admin con puntos sin ser campo de contraseña
 * V70 - 2026-10-19 - Formulario: mensaje debajo del botón y texto de privacidad
 * V69 - 2026-10-19 - Inventario: procesador, RAM y disco en la misma línea que el equipo
 * V68 - 2026-10-19 - Inventario: colores de MDC / MDN y características del equipo
 * V67 - 2026-10-19 - Inventario: botón «mover a» junto a cada tienda
 * V66 - 2026-10-19 - Inventario con botones − / + y mover
 * V65 - 2026-10-19 - Stock: MDC / MDN y flechas más grandes
 * V64 - 2026-10-19 - Inventario minimalista y compacto (cabe en una página)
 * V63 - 2026-10-19 - Stock: tiendas en columnas con «Mover a» → ← en medio
 * V62 - 2026-10-19 - Stock de reacondicionados (controles en ficha, resumen, inventario imprimible)
 * V61 - 2026-10-18 - Mantenimiento: logo más grande e imagen del operario
 * V60 - 2026-10-18 - Error de login en 2 líneas
 * V59 - 2026-10-18 - Ventana de login más cuidada
 * V58 - 2026-10-18 - Error de login dentro de la ventana
 * V57 - 2026-10-18 - Cabecera de ordenador igual que la del móvil (símbolo + «microdata informática»); menú ajustado para que quepa en una línea
 * V56 - 2026-10-18 - Móvil: «informática» en cursiva como «microdata»
 * V55 - 2026-10-18 - Móvil: cabecera con símbolo grande y texto «microdata Informática»
 * V54 - 2026-10-18 - Móvil: logo de cabecera más grande con «Informática» al lado
 * V53 - 2026-10-18 - Fondo borroso en menú móvil y login; menú móvil más bajo
 * V52 - 2026-10-18 - Menú móvil con línea entre secciones
 * V51 - 2026-10-18 - Pie más equilibrado: logo arriba en la columna de empresa y 3 columnas iguales
 * V50 - 2026-10-18 - Logo del pie más grande
 * V49 - 2026-10-18 - Móvil: aviso con 2 iconos y texto centrado
 * V48 - 2026-10-18 - Foto del aviso/festivo más grande: ancho del contenido (1160 px) respetando la proporción
 * V47 - 2026-10-18 - Foto del mensaje de aviso en el panel
 * V46 - 2026-10-18 - Foto del festivo entera (sin recortar ni deformar), centrada
 * V45 - 2026-10-18 - Foto del festivo debajo de la franja de aviso
 * V44 - 2026-10-18 - Festivos con foto (columna en el panel y banda con foto en el inicio)
 * V43 - 2026-10-18 - Equipo nuevo: solo Categoría hasta elegir el tipo
 * V42 - 2026-10-18 - Iconos de redes del pie en su color
 * V41 - 2026-10-18 - Logos oficiales a todo el ancho de la tarjeta
 * V40 - 2026-10-18 - Distribuidores: tarjetas con enlace y logo oficial; menú de 9 páginas en una línea
 * V39 - 2026-10-18 - Barra Modo Admin en rojo claro
 * V38 - 2026-10-18 - Sección Distribuidor oficial de en el inicio
 * V37 - 2026-10-18 - Festivos con fecha ya pasada también en rojo (no en gris)
 * V36 - 2026-10-18 - Festivos: «Revisar fecha» a la derecha en la misma fila
 * V35 - 2026-10-18 - Barra Modo Admin en azul; orden de equipos en una fila
 * V34 - 2026-10-18 - Abrir/cerrar web en el panel y aviso de web cerrada en la barra
 * V33 - 2026-10-18 - Aviso del inicio más vistoso; pestañas del panel como pestañas; Modo Admin en rojo
 * V32 - 2026-10-18 - Campo a todo el ancho en el panel; enlaces del aviso legal en color
 * V31 - 2026-10-18 - Móvil: franja negra en una sola fila
 * V30 - 2026-10-18 - Aviso de guardado junto al botón
 * V29 - 2026-10-18 - Ventana para recortar la foto de los equipos
 * V28 - 2026-10-18 - Bloque de hardware TPV con presupuesto en la página TPV
 * V27 - 2026-10-18 - Festivos: lista completa sin scroll
 * V26 - 2026-10-18 - Pestañas del panel de administración
 * V25 - 2026-10-18 - Reacondicionados: barra de orden y fichas arrastrables en modo edición; casillas redondas (radio) sin ancho completo
 * V24 - 2026-10-18 - Festivos sin columna Cierra
 * V23 - 2026-10-18 - Festivos variables en rojo con aviso de revisar fecha; columna «Cada año»
 * V22 - 2026-10-17 - Panel festivos: columnas felicitación y cierra; aviso personalizado con horas
 * V21 - 2026-10-17 - Panel: lista de festivos en filas (fecha + nombre + quitar)
 * V20 - 2026-10-17 - Franja de aviso en el inicio y su sección en el panel
 * V19 - 2026-10-17 - Botón Editar de equipos en rojo y negrita; vídeo del inicio sin recortar en móvil (16:9)
 * V18 - 2026-10-17 - Aún menos altura: cabecera con menú 48 px y banner oscuro muy ajustado
 * V17 - 2026-10-17 - Menos altura: barra modo edición, cabecera con menú, banner oscuro y espacio tras el banner
 * V16 - 2026-10-17 - Reacondicionados con la misma cabecera oscura minimalista
 * V15 - 2026-10-17 - Cabeceras oscuras de todas las páginas minimalistas (poca altura); precio TPV en una línea
 * V14 - 2026-10-17 - Página TPV y software (tarjetas de producto, aviso VeriFactu)
 * V13 - 2026-10-17 - Barra de modo edición compacta en negrita y avisos compactos
 * V12 - 2026-10-17 - Página de mantenimiento compacta: todo de un vistazo, tiendas con formato del pie
 * V11 - 2026-10-17 - Panel admin a todo el ancho, códigos MDC/MDN, estado de la web y página de mantenimiento
 * V10 - 2026-10-17 - Móvil: botones de la barra inferior y del menú más pequeños
 * V9 - 2026-10-17 - Móvil: barra inferior con fondo y menú Llamar / WhatsApp por tienda
 * V8 - 2026-10-17 - Móvil: botones flotantes a izquierda y derecha con llamada, hueco inferior, botones de WhatsApp que no desbordan
 * V7 - 2026-10-17 - Características de los productos en negro y negrita
 * V6 - 2026-10-17 - Editor de desplegables y panel de administración compacto
 * V5 - 2026-10-17 - Editor compacto de equipos de ocasión (campos grises, vista previa)
 * V4 - 2026-10-17 - Tarjeta de la última publicación de Instagram
 * V3 - 2026-10-17 - Iconos, pie compacto con logo, vídeo del inicio sin texto encima
 * V2 - 2026-10-17 - Franja superior minimalista en negrita, pie gris, Instagram, página reacondicionados estilo tienda online
 * V1 - 2026-10-17 - Extraído de inc.php V3. El color corporativo (--n y derivados) lo sobrescribe inc.php desde la configuración del admin
 */
:root{--n:#f47b20;--n2:#ff9a3c;--n-osc:#e06a10;--n-claro:#fff1e6;--n-borde:#fed7aa;--n-rgb:244,123,32;--osc:#14161a;--osc2:#1d2026;--txt:#1d2228;--gris:#6b7280;--fondo:#f6f6f4;--borde:#e6e6e2;--r:16px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:58px}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--txt);background:#fff;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.topbar{background:var(--osc);color:#d6d7da;font-size:11.5px;font-weight:700;padding:3px 0;line-height:1.6;white-space:nowrap}
.topbar .wrap{max-width:none;display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap}
.topbar i{font-style:normal;color:var(--n)}
.topbar a:hover{color:var(--n)}
header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--borde)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:48px;gap:16px}
.logo{font-weight:800;font-size:23px;letter-spacing:-.5px;white-space:nowrap}.logo span{color:var(--n)}
.logo img{height:52px;width:auto}
nav{display:flex;gap:4px;align-items:center}
nav a{padding:7px 10px;border-radius:999px;font-weight:500;font-size:14.5px}
nav a:hover{color:var(--n)}
nav a.act{background:var(--n-claro);color:var(--n)}
#menu-t,.menu-b{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--n);color:#fff;padding:12px 22px;border-radius:999px;font-weight:600;border:0;cursor:pointer;font-size:15px;font-family:inherit;white-space:nowrap;transition:background .15s}
.btn:hover{background:var(--n-osc)}
.btn.sec{background:transparent;border:1.5px solid rgba(255,255,255,.35);color:#fff}
.btn.sec:hover{border-color:var(--n)}
.btn.borde{background:#fff;border:1.5px solid var(--borde);color:var(--txt)}
.btn.borde:hover{border-color:var(--n);color:var(--n)}
.btn.peq{padding:8px 14px;font-size:13px}
.btn.gris{background:#e9e9e6;color:var(--txt)}
.btn.rojo{background:#d93b3b}
.btn.wa{background:#25d366}
.hero{background:radial-gradient(circle at 85% 10%,rgba(var(--n-rgb),.38),transparent 50%),var(--osc);color:#fff;padding:96px 0 76px}
.hero.peq{padding:64px 0 52px}
.etq{display:inline-block;color:var(--n2);font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;margin-bottom:14px}
.hero h1{font-size:clamp(34px,6vw,62px);line-height:1.05;letter-spacing:-1.5px;margin-bottom:18px}
.hero.peq h1{font-size:clamp(30px,5vw,48px)}
.hero p{max-width:620px;color:#c9cbd0;font-size:18px}
.hero .acc{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:60px}
.stat{border-top:2px solid var(--n);padding-top:14px}.stat b{display:block;font-size:32px;line-height:1.2}.stat span{color:#a5a8ae;font-size:14px}
section{padding:56px 0}
.alt{background:var(--fondo)}
h2{font-size:clamp(26px,4vw,40px);letter-spacing:-1px;line-height:1.15;margin-bottom:12px}
h3{line-height:1.3}
.sub{color:var(--gris);margin-bottom:40px;max-width:660px;font-size:17px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}
.grid3{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.card{background:#fff;border:1px solid var(--borde);border-radius:var(--r);padding:28px}
.card h3{font-size:19px;margin-bottom:8px}
.card p{color:var(--gris);font-size:15px}
.card .ico{width:44px;height:44px;border-radius:12px;background:var(--n-claro);color:var(--n);display:grid;place-items:center;font-weight:800;font-size:18px;margin-bottom:16px}
.alt .card{background:#fff}
.lista{list-style:none;display:grid;gap:10px}
.lista li{display:flex;gap:10px;align-items:flex-start}
.lista li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--n);flex:none;margin-top:9px}
.lista.cols{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{background:#fff;border:1px solid var(--borde);border-radius:12px;padding:12px 16px}
.chip b{display:block;font-size:15px}.chip span{font-size:13px;color:var(--gris)}
.cta{background:var(--osc);color:#fff;border-radius:22px;padding:44px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background-image:radial-gradient(circle at 100% 0,rgba(var(--n-rgb),.35),transparent 55%)}
.cta h2{margin:0}.cta p{color:#c9cbd0;margin-top:6px}
.cta .acc{display:flex;gap:12px;flex-wrap:wrap}
.equipos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.eq{background:#fff;border:1px solid var(--borde);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.eq:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.07)}
.eq .foto{aspect-ratio:4/3;background:#fff center/contain no-repeat;background-origin:content-box;padding:12px;border-bottom:1px solid var(--borde);display:grid;place-items:center;color:#aaa;font-size:14px}
.eq .cuerpo{padding:18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.eq h3{font-size:17px}
.eq .desc{color:var(--gris);font-size:14px;flex:1}
.eq .precio{font-size:26px;font-weight:800;color:var(--n)}
.cat-t{font-size:22px;margin:44px 0 18px;display:flex;align-items:center;gap:12px}
.cat-t:after{content:"";flex:1;height:1px;background:var(--borde)}
.vacio{color:var(--gris);padding:30px;text-align:center;border:1px dashed #cfcfca;border-radius:var(--r)}
.aviso{background:var(--n-claro);border:1px solid var(--n-borde);color:var(--n-osc);border-radius:12px;padding:14px 18px;font-size:14px}
.tienda h3{font-size:21px}
.tienda .zona{color:var(--n);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}
.tienda .tel{font-weight:700;font-size:18px;margin:8px 0 2px}
.tienda .dir{color:var(--gris);margin-bottom:16px}
.tienda .hor{white-space:pre-line;background:var(--fondo);border-radius:10px;padding:14px 16px;font-size:15px}
.tienda .nota{margin-top:12px;font-size:14px;color:var(--n-osc);font-weight:500}
.tienda .acc{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.form{display:grid;gap:10px}
.form label{font-size:13px;font-weight:600;color:var(--gris)}
.form input,.form textarea,.form select{width:100%;padding:11px 13px;border:1px solid var(--borde);border-radius:10px;font:inherit;font-size:15px;background:#fff}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--n-borde);border-color:var(--n)}
.form textarea{min-height:110px;resize:vertical}
.form .fila{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form .check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--gris);font-weight:400}
.form .check input{width:auto;margin-top:4px}
.hp{position:absolute;left:-9999px}
.texto h3{font-size:20px;margin:30px 0 8px}
.texto p,.texto li{color:#3f4650;margin-bottom:10px}
.texto ul{padding-left:20px}
.caja{background:#fff;border:1px solid var(--borde);border-radius:var(--r);padding:20px 22px;margin-bottom:26px}
details summary{cursor:pointer;font-weight:600;list-style:none;color:var(--n)}
details summary::-webkit-details-marker{display:none}
details[open] summary{margin-bottom:14px}
footer{background:#4b4c50;color:#e4e5e7;padding:26px 0 12px;font-size:13.5px;line-height:1.5}
footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:28px}
footer h4{color:#fff;font-size:14.5px;margin-bottom:8px}
footer .hor{white-space:pre-line}
footer .t-dat{color:#fff}
footer .nota{color:#fff;font-weight:600;margin-top:4px;padding-left:22px}
footer a:hover{color:var(--n)}
footer .redes{display:flex;gap:8px;margin-top:10px;flex-wrap:nowrap;align-items:center}
footer .legal{border-top:1px solid rgba(255,255,255,.15);margin-top:16px;padding-top:10px;font-size:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
footer .legal nav a{padding:0 6px;font-size:12px}
.wa-f{position:fixed;right:18px;bottom:18px;z-index:30;display:flex;flex-direction:column;align-items:stretch;gap:10px}
.wa-f .wa-b{display:flex;align-items:center;gap:10px;background:#25d366;color:#fff;border-radius:999px;padding:9px 16px 9px 10px;box-shadow:0 8px 24px rgba(0,0,0,.25);font-weight:600;font-size:14px;line-height:1.2;transition:transform .15s}
.wa-f .wa-b:hover{transform:translateY(-2px);background:#1fbd5a}
.wa-t{display:flex;gap:6px}
.wa-t .wa-b{flex:1}
.tel-b{display:none}
.wa-f .ico{width:26px;height:26px;flex:none}
.wa-f small{display:block;font-weight:400;font-size:11px;opacity:.9}
.hero.video{position:relative;overflow:hidden;background:var(--osc)}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero.video:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,22,26,.92) 0%,rgba(20,22,26,.72) 55%,rgba(20,22,26,.45) 100%),radial-gradient(circle at 85% 10%,rgba(var(--n-rgb),.35),transparent 50%)}
.hero.video .wrap{position:relative;z-index:2}
.confian{background:#4b4c50;border-radius:18px;padding:22px 0 24px;color:#fff}
.confian h4{text-align:center;font-size:12px;letter-spacing:4px;text-transform:uppercase;color:#c9cbd0;margin-bottom:16px}
.ticker{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.ticker-track{display:flex;width:max-content;animation:ticker 38s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.t-item{display:flex;align-items:center;gap:14px;padding:14px 44px;border-right:1px solid rgba(255,255,255,.14);white-space:nowrap}
.t-ico{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.14);display:grid;place-items:center;flex:none;transition:background .2s}
.t-ico svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.t-item:hover .t-ico{background:var(--n)}
.t-item b{display:block;font-size:16px}.t-item span{font-size:13px;color:#c9cbd0}
@keyframes ticker{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}.ticker-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.ticker-track [aria-hidden]{display:none}}
.adminbar{background:var(--n);color:#fff;font-size:14px;padding:8px 0}
.adminbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.adminbar a{text-decoration:underline;margin-right:14px}
.adminbar button{background:#fff;color:var(--n);border:0;border-radius:999px;padding:5px 14px;font-weight:600;cursor:pointer;font-family:inherit}
.flash{padding:12px 20px;text-align:center;font-weight:500}
.flash.ok{background:#e7f6ec;color:#166534}.flash.err{background:#fde8e8;color:#991b1b}
.overlay{position:fixed;inset:0;background:rgba(10,12,15,.7);display:grid;place-items:center;z-index:60;padding:20px}
.login{background:#fff;border-radius:18px;padding:32px;width:100%;max-width:360px}
.login h3{margin-bottom:16px}
@media(max-width:900px){
  .menu-b{display:block;cursor:pointer;font-size:26px;line-height:1;padding:6px 10px}
  nav.principal{display:none;position:absolute;top:48px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:10px 20px 20px;border-bottom:1px solid var(--borde)}
  #menu-t:checked~nav.principal{display:flex}
  nav.principal a{padding:12px 14px}
  header .btn{display:none}
  footer .cols{grid-template-columns:1fr}
}
@media(max-width:640px){
  .stats{grid-template-columns:repeat(2,1fr)}
  section{padding:60px 0}.hero{padding:64px 0 50px}
  .form .fila{grid-template-columns:1fr}
  .cta{padding:30px}
  .wa-f{right:12px;bottom:12px;gap:8px}
  .wa-f .wa-b{padding:7px 12px 7px 8px;font-size:13px}
  .wa-f .ico{width:22px;height:22px}
}
.btn-wa2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.btn-wa2 .btn{width:100%;min-width:0;white-space:normal;text-align:center;line-height:1.2}
.color-form{display:inline-flex;align-items:center;gap:6px;margin-right:14px}
.color-form input[type=color]{width:30px;height:24px;border:0;padding:0;background:none;cursor:pointer}
.tienda .foto-t{aspect-ratio:16/9;border-radius:12px;background:#ececea center/cover no-repeat;margin-bottom:16px}


/* --- V2: móvil franja superior --- */
@media(max-width:1250px){.topbar .tb-x{display:none}}
/* --- V2: Instagram (inicio) --- */
.insta{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:center}
.insta-box{background:#fff;border:1px solid var(--borde);border-radius:var(--r);padding:12px;min-height:200px;display:grid;place-items:center}
.insta-box .instagram-media{margin:0!important;min-width:0!important;width:100%!important}
@media(max-width:900px){.insta{grid-template-columns:1fr}}
/* --- V2: reacondicionados estilo tienda online --- */
.barra-pag{background:var(--fondo);border-bottom:1px solid var(--borde);padding:18px 0 16px}
.migas{font-size:13px;color:var(--gris);margin-bottom:4px}.migas a:hover{color:var(--n)}
.barra-pag h1{font-size:26px;letter-spacing:-.5px;line-height:1.2}
.barra-pag .cuenta{color:var(--gris);font-size:14px;font-weight:400;margin-left:6px}
.ventajas{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px;font-size:13px;color:var(--txt)}
.ventajas span:before{content:"✓ ";color:#16a34a;font-weight:800}
.filtros{position:sticky;top:48px;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--borde);padding:10px 0}
.filtros .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.f-cats{display:flex;gap:8px;flex-wrap:wrap}
.f-cats button{border:1px solid var(--borde);background:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:14px;font-weight:500;cursor:pointer}
.f-cats button:hover{border-color:var(--n)}
.f-cats button.on{background:var(--txt);border-color:var(--txt);color:#fff}
.f-cats button small{opacity:.6;margin-left:4px}
.filtros select{border:1px solid var(--borde);border-radius:8px;padding:7px 10px;font:inherit;font-size:14px;background:#fff}
.pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:16px;margin-top:22px}
.pc{position:relative;background:#fff;border:1px solid var(--borde);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .15s,border-color .15s}
.pc:hover{box-shadow:0 10px 28px rgba(0,0,0,.08);border-color:#d6d6d0}
.pc-img{aspect-ratio:1/1;background:#fff center/contain no-repeat;background-origin:content-box;padding:18px;display:grid;place-items:center;color:#aaa;font-size:13px}
.pc-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:5px;align-items:flex-start}
.pc-badge{font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--n);color:#fff;text-transform:uppercase;letter-spacing:.3px}
.pc-badge.gris{background:#eef0f2;color:var(--txt)}
.pc-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1;border-top:1px solid #ececea;background:#f7f7f5}
.pc-cat{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--gris);font-weight:600}
.pc h3{font-size:15px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:40px}
.pc-specs{list-style:none;font-size:13.5px;color:var(--txt);font-weight:600;display:grid;gap:3px;flex:1}
.pc-specs li:before{content:"· ";color:var(--n);font-weight:800}
.pc-precio{font-size:26px;font-weight:800;letter-spacing:-.5px;line-height:1.1}
.pc-precio small{display:block;font-size:11px;font-weight:400;color:var(--gris);letter-spacing:0}
.pc-stock{font-size:12px;color:#16a34a;font-weight:600}
.pc-stock:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#16a34a;margin-right:6px;vertical-align:1px}
.pc .btn-wa2 .btn{padding:8px 6px;font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis}
.pc-admin{border-top:1px dashed var(--borde);padding:10px 16px 14px;display:grid;gap:8px}

/* --- V3: iconos --- */
.ico{width:1em;height:1em;display:inline-block;vertical-align:-.125em;flex:none}
.btn .ico{width:17px;height:17px}
footer .f-emp{display:flex;gap:16px;align-items:flex-start}
footer .f-logo img{height:46px;width:auto;flex:none}
footer .f-lin{display:flex;gap:9px;align-items:flex-start;margin-bottom:3px}
footer .f-lin .ico{width:13px;height:13px;margin-top:3px;color:var(--n2);flex:none}
footer .red{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.12);display:inline-grid;place-items:center;color:#fff;transition:background .15s}
footer .red:hover{background:var(--n);color:#fff}
footer .red .ico{width:15px;height:15px}
footer .wa-red{width:auto;border-radius:999px;padding:0 12px 0 10px;display:inline-flex;gap:6px;font-size:12.5px;font-weight:600;background:#25d366;white-space:nowrap}
footer .wa-red:hover{background:#1fbd5a}
/* --- V3: inicio, vídeo limpio + presentación debajo --- */
.hero-v{position:relative;height:clamp(230px,52vh,540px);background:#14161a url(../img/hero.jpg) center/cover no-repeat;overflow:hidden}
.hero-v video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.intro{padding:48px 0 44px;border-bottom:1px solid var(--borde)}
.intro h1{font-size:clamp(32px,5vw,54px);line-height:1.05;letter-spacing:-1.5px;margin-bottom:14px}
.intro p{max-width:660px;color:var(--gris);font-size:18px}
.intro .acc{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.intro .stats{margin-top:40px}
.intro .stat span{color:var(--gris)}
@media(max-width:900px){footer .f-emp{flex-direction:column}footer .redes{flex-wrap:wrap}}
@media(min-width:641px){footer .legal nav{margin-right:180px}}
/* --- V4: última publicación de Instagram --- */
.insta-post{display:block;width:100%;color:var(--txt)}
.ip-img{aspect-ratio:1/1;border-radius:10px;background:#ececea center/cover no-repeat}
.ip-txt{padding:12px 4px 4px}
.ip-cab{display:flex;align-items:center;gap:8px;font-size:14px}
.ip-cab .ico{width:16px;height:16px;color:var(--n)}
.ip-cab span{margin-left:auto;color:var(--gris);font-size:13px}
.ip-txt p{font-size:14px;color:#3f4650;margin:8px 0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.ip-ver{font-size:13px;font-weight:600;color:var(--n)}
.insta-post:hover .ip-ver{text-decoration:underline}
/* --- V5: editor de equipos de ocasión --- */
.pc-oculto{opacity:.55}
.pc-badge.negro{background:var(--txt);color:#fff}
.ed-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
.ed-prev{position:sticky;top:90px}
.ed-prev-t{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--gris);font-weight:700;margin-bottom:8px}
.fe{display:grid;gap:12px;background:#fff;border:1px solid var(--borde);border-radius:12px;padding:18px}
.fe-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 12px}
.fe label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:600;color:var(--gris)}
.fe label small{font-weight:400}
.fe input:not([type=checkbox]):not([type=file]),.fe select{width:100%;padding:7px 10px;border:1px solid transparent;border-radius:8px;background:#eef0f2;font:inherit;font-size:14px;color:var(--txt)}
.fe input:focus,.fe select:focus{outline:none;background:#fff;border-color:var(--n)}
.fe input[type=file]{font-size:13px;padding:6px;background:#eef0f2;border-radius:8px}
.fe .fe-2{grid-column:span 2}
.fe .fe-chk{flex-direction:row;align-items:center;gap:8px;align-self:end;padding-bottom:8px;font-size:13px;color:var(--txt)}
.fe-ayuda{font-size:12px;color:var(--gris)}
.fe-btns{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.ed-grid{grid-template-columns:1fr}.ed-prev{position:static;max-width:320px}}
.pc .btn-wa2 .btn{gap:4px}
.pc .btn-wa2 .ico{width:13px;height:13px}
/* --- V6: editor de desplegables --- */
.ed-izq{display:grid;gap:16px;min-width:0}
.fe label>span{display:flex;gap:6px;align-items:center}
.fe-ed{color:var(--gris);text-decoration:none;font-size:13px;line-height:1}
.fe-ed:hover{color:var(--n)}
.fe-opc summary{font-size:14px;color:var(--txt)}
.fe-opc summary small{font-weight:400;color:var(--gris);font-size:12px}
.fe textarea{width:100%;padding:7px 10px;border:1px solid transparent;border-radius:8px;background:#eef0f2;font:inherit;font-size:13px;resize:vertical}
.fe textarea:focus{outline:none;background:#fff;border-color:var(--n)}
/* --- V6: panel de administración compacto --- */
.adm{padding:18px 0 40px}
.adm .fe{padding:14px 16px;gap:10px}
.adm .fe h3{font-size:15px}
.adm-fila{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:16px;align-items:start}
.adm-lado{display:grid;gap:16px}
.adm-tiendas{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.adm-tiendas .fe-g{grid-template-columns:1fr 1fr}
.adm-tiendas .fe-g+.fe-g{border-left:1px solid var(--borde);padding-left:18px}
.fe .ico{width:12px;height:12px;color:var(--n)}
@media(max-width:900px){.adm-fila,.adm-tiendas{grid-template-columns:1fr}.adm-tiendas .fe-g+.fe-g{border-left:0;padding-left:0}}
.adm-emp{grid-template-columns:repeat(6,minmax(0,1fr))}
.adm-emp .c2{grid-column:span 2}.adm-emp .c3{grid-column:span 3}.adm-emp .c4{grid-column:span 4}
@media(max-width:640px){.adm-emp{grid-template-columns:1fr}.adm-emp label{grid-column:auto!important}}
/* --- V8: móvil --- */
@media(max-width:640px){
  footer{padding-bottom:84px} /* hueco para los botones flotantes */
  .wa-f{left:10px;right:10px;bottom:10px;flex-direction:row;justify-content:space-between;align-items:flex-end;gap:8px}
  .wa-t{flex:0 1 auto;min-width:0}
  .wa-f .wa-b{padding:7px 11px 7px 8px;font-size:12.5px;min-width:0}
  .wa-f .wa-b span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .tel-b{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;background:var(--n);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.25)}
  .tel-b .ico{width:18px;height:18px}
  .cta .acc{display:grid;grid-template-columns:1fr;width:100%}
  .cta .acc .btn{white-space:normal;text-align:center}
}
@media(max-width:420px){.btn-wa2:not(.pc .btn-wa2){grid-template-columns:1fr}}
@media(max-width:640px){
  .grid2>*,.grid3>*{min-width:0}
  .card{padding:20px}
  .card h3{overflow-wrap:anywhere}
  .wa-t{flex:1 1 0}
  .wa-t:last-child{justify-content:flex-end}
  .wa-t .wa-b{flex:0 1 auto}
}
@media(max-width:400px){.wa-f .wa-b small{display:none}}
/* --- V9: móvil, barra inferior con fondo y elección Llamar / WhatsApp --- */
.wa-menu,.wa-f .wa-b .s-movil{display:none}
.wa-t{position:relative}
@media(max-width:640px){
  .wa-f{left:0;right:0;bottom:0;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--borde);box-shadow:0 -6px 20px rgba(0,0,0,.08);gap:10px;align-items:stretch}
  .wa-t,.wa-t:last-child{flex:1 1 0;justify-content:stretch}
  .wa-f .wa-b{flex:1;justify-content:center;box-shadow:none;padding:8px 10px}
  .wa-f .wa-b .s-pc{display:none}
  .wa-f .wa-b .s-movil{display:block}
  .tel-b{display:none}
  .wa-menu{position:absolute;bottom:calc(100% + 10px);left:0;right:0;background:#fff;border:1px solid var(--borde);border-radius:14px;box-shadow:0 12px 30px rgba(0,0,0,.18);padding:6px;flex-direction:column;gap:4px;min-width:230px}
  .wa-t:last-child .wa-menu{left:auto}
  .wa-t.abierto .wa-menu{display:flex}
  .wa-menu a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;font-weight:700;font-size:15px;color:#fff}
  .wa-menu a small{margin-left:auto;font-weight:400;font-size:12px;opacity:.9;white-space:nowrap}
  .wa-menu .ico{width:18px;height:18px}
  .wa-menu .wm-wa{background:#25d366}
  .wa-menu .wm-tel{background:var(--n)}
  footer{padding-bottom:90px}
}
/* --- V10: móvil, botones más pequeños --- */
@media(max-width:640px){
  .wa-f{padding:6px 8px calc(6px + env(safe-area-inset-bottom));gap:8px}
  .wa-f .wa-b{padding:5px 8px;gap:6px;font-size:12px;border-radius:12px;min-width:0}
  .wa-f .wa-b .ico{width:18px;height:18px}
  .wa-f .wa-b span{min-width:0;overflow:hidden;text-overflow:ellipsis}
  .wa-f .wa-b small{font-size:10px}
  .wa-menu{min-width:200px;padding:5px;gap:3px}
  .wa-menu a{padding:8px 10px;font-size:13px;gap:8px}
  .wa-menu a small{font-size:11px}
  .wa-menu .ico{width:15px;height:15px}
  footer{padding-bottom:70px}
}
@media(max-width:640px){
  .wa-menu{min-width:232px}
  .wa-menu a{font-size:12px}
  .wa-menu a small{font-size:16px;font-weight:800;opacity:1;letter-spacing:.2px}
}
/* --- V11: panel de administración a todo el ancho --- */
.adm .wrap{max-width:1500px;display:grid;gap:16px}
.adm-emp{grid-template-columns:repeat(12,minmax(0,1fr))}
.adm-emp .c2{grid-column:span 2}.adm-emp .c3{grid-column:span 3}.adm-emp .c4{grid-column:span 4}.adm-emp .c5{grid-column:span 5}
.adm-otros{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;align-items:start}
.adm-estado{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.adm-estado.cerrada{border-color:#fca5a5;background:#fef2f2}
.est-a{color:#16a34a;font-weight:800}.est-c{color:#dc2626;font-weight:800}
.adm-t{border:1px solid var(--borde);border-radius:10px;padding:12px;min-width:0}
.adm-t-cab{font-weight:700;font-size:15px;margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.adm-t-cab small{font-weight:400;color:var(--gris);font-size:12px}
.adm-cod{background:var(--txt);color:#fff;border-radius:6px;padding:2px 9px;font-size:13px;letter-spacing:.5px}
.adm-tiendas .fe-g+.fe-g{border-left:0;padding-left:0}
.adm .fe h3 small{font-weight:400}
.ab-cerrada{background:#dc2626;color:#fff!important;text-decoration:none!important;border-radius:999px;padding:1px 10px;font-weight:800;margin-left:6px}
@media(max-width:1000px){.adm-emp{grid-template-columns:repeat(2,minmax(0,1fr))}.adm-emp label{grid-column:auto!important}}
@media(max-width:640px){.adm-emp,.adm-tiendas .fe-g{grid-template-columns:1fr}}
/* --- V11: página de mantenimiento --- */
body.mant{background:var(--fondo);min-height:100vh;display:grid;place-items:center;padding:24px 16px}
.mant-c{max-width:860px;width:100%;text-align:center}
.mant-logo{height:110px;width:auto;margin:0 auto 18px}
.mant h1{font-size:clamp(28px,5vw,42px);letter-spacing:-1px;margin-bottom:10px}
.mant-p{color:var(--gris);font-size:17px;margin-bottom:28px}
.mant-t{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;text-align:left}
.mant-t .zona{color:var(--n);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.5px}
.mant-t h3{font-size:20px;margin:2px 0 10px}
.mant-t .f-lin{display:flex;gap:9px;align-items:flex-start;margin-bottom:6px;color:#3f4650;font-size:15px}
.mant-t .f-lin .ico{width:14px;height:14px;margin-top:4px;color:var(--n)}
.mant-t .hor{white-space:pre-line}
.mant-nota{font-weight:700;font-size:14px;margin:4px 0 0 23px}
.mant-b{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.mant-pie{margin-top:26px;color:var(--gris);font-size:14px}
.mant-pie a{color:var(--n)}
.card svg.ico{background:none;border-radius:0;margin-bottom:0;display:inline-block}
.mant-b .ico{width:15px;height:15px;color:#fff}
/* --- V12: mantenimiento compacto --- */
body.mant{padding:16px;align-content:center}
.mant-c{max-width:900px;margin:0 auto}
.mant-logo{height:96px;margin:0 auto 6px}
.mant-img{height:220px;width:auto;margin:0 auto 6px}
@media(max-width:640px){.mant-logo{height:72px}.mant-img{height:160px}}
.mant h1{font-size:clamp(24px,4vw,34px);margin-bottom:6px}
.mant-p{font-size:15px;margin:0 auto 18px;max-width:640px}
footer.mant-f{display:grid;grid-template-columns:1fr 1fr;gap:26px;text-align:left;border-radius:16px;padding:20px 24px}
footer.mant-f .mant-b{margin-top:10px;gap:6px}
footer.mant-f .btn.peq{padding:6px 11px;font-size:12.5px}
.mant-pie{margin-top:14px}
@media(max-width:640px){footer.mant-f{grid-template-columns:1fr;padding:18px;gap:20px}footer.mant-f{padding-bottom:18px}}
/* --- V13: barra de modo edición compacta --- */
.adminbar{font-size:13px;font-weight:700;padding:3px 0;line-height:1.3}
.adminbar .wrap{max-width:none;gap:8px 16px}
.adminbar .ab-izq,.adminbar .ab-der{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap}
.adminbar a{margin-right:0}
.adminbar form{display:inline-flex;align-items:center;gap:6px;margin:0}
.adminbar button{padding:2px 10px;font-size:12px;font-weight:800}
.adminbar .color-form{margin:0;font-weight:700}
.adminbar .color-form input[type=color]{width:24px;height:18px}
.adminbar .ab-rojo{background:#b91c1c;color:#fff}
.ab-abierta{color:#fff;opacity:.95}
.ab-cerrada{margin-left:0}
.flash{padding:5px 16px;font-size:13.5px}
.flash-adm{font-weight:700}
.barra-pag.mini{padding:8px 0}
.barra-pag.mini h1{font-size:18px;letter-spacing:-.2px}
.barra-pag.mini .cuenta{font-size:12.5px}
/* --- V14: página TPV y software --- */
.aviso-vf{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;background:var(--n-claro);border:1px solid var(--n-borde);border-radius:14px;padding:14px 18px}
.aviso-vf b{color:var(--n-osc);margin-right:6px}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;align-items:stretch}
.prod{position:relative;background:#fff;border:1px solid var(--borde);border-radius:16px;padding:26px 24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.prod.destacado{border:2px solid var(--n);box-shadow:0 14px 34px rgba(var(--n-rgb),.15)}
.prod-tag{position:absolute;top:-12px;left:22px;background:var(--n);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:3px 10px;border-radius:999px}
.prod h3{font-size:22px}
.prod-sub{color:var(--n);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.4px}
.prod p{color:var(--gris);font-size:15px}
.prod .lista{font-size:14px;gap:6px;flex:1}
.prod-precio{font-size:22px;font-weight:800;margin-top:6px}
@media(max-width:1200px) and (min-width:901px){nav a{padding:6px 7px;font-size:13.5px}header .btn.peq{padding:7px 11px}}
/* --- V15: cabecera de página minimalista (todas las páginas) --- */
.hero.peq{padding:18px 0 16px;background:radial-gradient(circle at 85% 0,rgba(var(--n-rgb),.32),transparent 45%),var(--osc)}
.hero.peq .etq{font-size:11px;margin-bottom:2px;letter-spacing:.8px}
.hero.peq h1{font-size:clamp(22px,3vw,28px);letter-spacing:-.5px;margin-bottom:2px;line-height:1.2}
.hero.peq p{font-size:14px;max-width:none;color:#b9bcc2}
.prod-precio{white-space:nowrap}
.prod-precio small{font-size:13px;font-weight:600;color:var(--gris)}
.adm-precios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.adm-p>b{display:block;font-size:14px;margin-bottom:6px}
.adm-p .fe-g{grid-template-columns:110px minmax(0,1fr)}
@media(max-width:900px){.adm-precios{grid-template-columns:1fr}}
/* --- V15: secciones compactas (página TPV) --- */
section.comp{padding:34px 0}
section.comp h2{font-size:clamp(22px,3vw,30px)}
section.comp .sub{margin-bottom:20px;font-size:15px}
section.comp .card{padding:20px}
section.comp .grid3{gap:14px}
.aviso-vf{padding:10px 16px;font-size:14px}
.prod{padding:20px;gap:8px}
/* --- V16: cabecera oscura en reacondicionados (igual que .hero.peq) --- */
.barra-pag.osc{background:radial-gradient(circle at 85% 0,rgba(var(--n-rgb),.32),transparent 45%),var(--osc);color:#fff;border-bottom:0;padding:18px 0 16px}
.barra-pag.osc .migas{color:var(--n2);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px}
.barra-pag.osc .migas a:hover{color:#fff}
.barra-pag.osc h1{font-size:clamp(22px,3vw,28px);letter-spacing:-.5px;color:#fff}
.barra-pag.osc .cuenta{color:#b9bcc2}
.barra-pag.osc .ventajas{color:#d6d7da;margin-top:6px}
.pc-badge.tienda{background:#2563eb}
.fe-chks{grid-column:span 2;display:flex;gap:6px 18px;flex-wrap:wrap;align-items:end;padding-bottom:8px}
.fe-chks .fe-chk{padding-bottom:0}
/* --- V17: galería de fotos ya subidas --- */
.fe-gal summary{font-size:13px;font-weight:600;color:var(--n);cursor:pointer}
.fe-gal summary small{font-weight:400;color:var(--gris)}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:10px;max-height:260px;overflow:auto;padding:2px}
.gal-i{border:2px solid var(--borde);border-radius:10px;background:#fff;padding:4px;cursor:pointer;display:flex;flex-direction:column;gap:3px;font:inherit}
.gal-i span{aspect-ratio:1/1;background:#fff center/contain no-repeat;border-radius:6px}
.gal-i small{font-size:10.5px;color:var(--gris);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gal-i:hover{border-color:var(--n-borde)}
.gal-i.actual{border-style:dashed}
.gal-i.sel{border-color:var(--n);box-shadow:0 0 0 2px var(--n-borde)}
.fe-conx{display:flex;flex-direction:column;gap:6px}
.fe-lab-t{font-size:12px;font-weight:600;color:var(--gris);display:flex;gap:6px;align-items:center}
.fe-conx .fe-chks{padding-bottom:0}
.fe [hidden]{display:none!important}
/* --- V17: menos altura en barras y banner --- */
.adminbar{padding:1px 0;font-size:12.5px}
.adminbar .wrap{flex-wrap:wrap}
.adminbar .ab-der{min-width:0}
.adminbar button{padding:1px 9px;font-size:11.5px}
.logo img{height:40px}
nav a{padding:5px 10px}
header .btn.peq{padding:6px 13px}
.hero.peq,.barra-pag.osc{padding:10px 0 9px}
.hero.peq h1,.barra-pag.osc h1{font-size:clamp(20px,2.6vw,25px)}
.barra-pag.osc .ventajas{margin-top:3px}
.hero.peq+section,.hero.peq+section.comp{padding-top:22px}
.barra-pag+section,.barra-pag+.filtros+section{padding-top:14px}
/* --- V18: aún menos altura --- */
.logo img{height:34px}
nav a{padding:4px 9px;line-height:1.3}
header .btn.peq{padding:5px 12px;line-height:1.2}
.hero.peq,.barra-pag.osc{padding:6px 0 7px}
.hero.peq .etq,.barra-pag.osc .migas{margin-bottom:0;line-height:1.3}
.hero.peq h1,.barra-pag.osc h1{margin:0;line-height:1.15}
.hero.peq p{line-height:1.35;margin-top:1px}
.barra-pag.osc .ventajas{margin-top:2px}
.texto>h3:first-child{margin-top:0}
/* --- V19: botón Editar en rojo y vídeo del inicio entero en móvil --- */
.pc .btn[href^="?editar="]{background:#dc2626;border-color:#dc2626;color:#fff;font-weight:800}
.pc .btn[href^="?editar="]:hover{background:#b91c1c;border-color:#b91c1c;color:#fff}
@media(max-width:900px){.hero-v{height:auto;aspect-ratio:16/9}}
/* --- V20: aviso del inicio --- */
.aviso-ini{background:var(--n);color:#fff;font-weight:700;font-size:14px;padding:7px 0;text-align:center}
.aviso-ini .wrap{display:flex;justify-content:center;align-items:center;gap:8px}
.aviso-ini .ico{width:15px;height:15px;flex:none}
.adm-sub{font-weight:800;font-size:13px;margin-bottom:6px;display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap}
.adm-sub small{font-weight:400;color:var(--gris)}
.fe .adm-inl{padding:0;font-weight:700}
.fe-g.adm-av1{grid-template-columns:minmax(0,1fr) 150px 125px 150px 125px}
.adm-av2{display:flex;flex-wrap:wrap;gap:4px 22px;margin-bottom:6px}
.fe .adm-av2 .fe-chk{padding:0}
.fest-lista{border:1px solid var(--borde);border-radius:8px;padding:4px}
.fest-f{display:grid;grid-template-columns:150px minmax(0,.8fr) minmax(0,1.4fr) 112px 58px 30px;gap:4px;margin-bottom:3px;align-items:center}
.fest-av{visibility:hidden;order:1;font-size:12px;color:#dc2626;font-weight:800;white-space:nowrap;text-align:center}
.fest-f .fa{order:2}.fest-f .fest-x{order:3}
.fest-f.var .fest-av{visibility:visible}
.fe .fest-lista .fest-f.var input:not([type=checkbox]){color:#dc2626;font-weight:700;background:#fef2f2}
.fe .fest-lista .fest-f input::placeholder{color:#b0b6bf;font-weight:400}
.fest-cab{font-size:11.5px;font-weight:700;color:var(--gris);background:#fff;padding:4px 2px;margin:0}
.fest-cab span:nth-child(5){text-align:center}
.fe .fest-lista .fest-f input:not([type=checkbox]){padding:5px 8px;font-size:13px}
.fe .fest-f .fa{display:flex;justify-content:center;padding:0}
.fest-x{border:0;background:none;color:#dc2626;font-weight:800;cursor:pointer;border-radius:6px;height:28px}
.fest-x:hover{background:#fee2e2}
@media(max-width:900px){
  .fe-g.adm-av1{grid-template-columns:1fr 1fr}.adm-av1>label:first-child{grid-column:1/-1}
  .fest-cab{display:none}
  .fest-f{grid-template-columns:minmax(0,1fr) 40px 30px;border-bottom:1px solid var(--borde);padding-bottom:5px;margin-bottom:5px}
  .fest-f .fa::after{content:"año";font-size:10px;margin-left:2px}
  .fest-f .fest-av{order:5;text-align:left;display:none;grid-column:1/-1}.fest-f.var .fest-av{display:block}
  .fest-f .fn,.fest-f .ff{grid-column:1/-1}.fest-f .fn{order:3}.fest-f .ff{order:4}.fest-f .fa{order:1}.fest-f .fest-x{order:2}
}
/* --- V25: orden de equipos (modo edición) --- */
.eq-orden{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:10px;padding:8px 14px}
.eq-orden .fe-chk{padding:0;align-self:center}
.eq-cats{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;font-weight:700}
.eq-cats label{display:inline-flex;flex-direction:row;align-items:center;gap:4px;font-size:13px;color:var(--txt)}
.fe .eq-cats input[type=number]{width:46px;padding:3px 6px;text-align:center}
.eq-man{position:sticky;top:52px;z-index:25;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;background:#fff7ed;border:1px solid var(--n-borde);border-radius:10px;padding:8px 14px;font-size:13px;font-weight:700}
.eq-man[hidden]{display:none}
.pc[draggable=true]{cursor:grab}
.pc.arrastrando{opacity:.4;outline:2px dashed var(--n)}
.fe input[type=radio]{width:auto;padding:0;background:none;border:0;accent-color:var(--n)}
.eq-orden .fe-chk{white-space:nowrap;flex:none}
/* --- V26: panel en pestañas --- */
.adm-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:2px solid var(--borde)}
.adm-tabs button{border:0;background:none;font:inherit;font-size:14px;font-weight:700;color:var(--gris);padding:8px 14px;border-radius:8px 8px 0 0;cursor:pointer;margin-bottom:-2px;border-bottom:2px solid transparent}
.adm-tabs button:hover{color:var(--txt);background:var(--fondo)}
.adm-tabs button.on{color:var(--n);border-bottom-color:var(--n);background:var(--n-claro)}
.adm-pt{display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a34a;vertical-align:1px;margin-left:3px}
.tab-p{display:grid;gap:16px}
.tab-p[hidden]{display:none}
@media(max-width:640px){.adm-tabs button{padding:6px 9px;font-size:12.5px}}
/* --- V28: hardware TPV al principio de la página TPV --- */
.hw-tpv{display:flex;justify-content:space-between;align-items:center;gap:16px 28px;flex-wrap:wrap;border:2px solid var(--n);background:var(--n-claro)}
.hw-tpv h2{font-size:clamp(20px,2.4vw,26px);margin-bottom:4px}
.hw-tpv p{color:var(--txt);font-size:15px;margin-bottom:10px}
.hw-l{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.hw-l li{background:#fff;border:1px solid var(--n-borde);border-radius:999px;padding:4px 12px;font-size:13.5px;font-weight:700}
@media(max-width:640px){.hw-tpv .btn{width:100%;white-space:normal;text-align:center}}
/* --- V29: recorte de la foto antes de subirla --- */
.fe-fila-foto{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.fe-fila-foto input[type=file]{flex:1;min-width:0}
.rc-fondo{position:fixed;inset:0;z-index:70;background:rgba(10,12,15,.7);display:grid;place-items:center;padding:16px}
.rc-fondo[hidden]{display:none}
.rc-caja{background:#fff;border-radius:14px;padding:16px;display:grid;gap:12px;max-width:min(96vw,760px)}
.rc-caja b small{font-weight:400;color:var(--gris)}
.rc-marco{position:relative;justify-self:center;line-height:0;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 0 0/16px 16px}
.rc-marco img{display:block;max-width:min(90vw,720px);max-height:65vh;user-select:none;-webkit-user-drag:none}
.rc-marco canvas{position:absolute;inset:0;cursor:crosshair;touch-action:none}
.rc-caja .btn:disabled{opacity:.45;cursor:not-allowed}
/* --- V30: aviso de guardado junto al botón --- */
.flash.flash-junto{border-radius:8px;text-align:left;padding:7px 12px;font-size:13.5px;font-weight:800;animation:flashJ 2.5s ease-out}
@keyframes flashJ{0%,30%{box-shadow:0 0 0 3px var(--n-borde)}100%{box-shadow:0 0 0 0 transparent}}
/* --- V31: móvil, franja negra en una sola fila --- */
@media(max-width:640px){
  .topbar .tb-m{display:none}
  .topbar .wrap{flex-wrap:nowrap;gap:5px;overflow:hidden;padding:0 10px}
  .topbar{font-size:10.5px}
}
@media(max-width:370px){.topbar{font-size:9.5px}.topbar .wrap{gap:3px}}
.adm-emp .c12{grid-column:1/-1}
.texto li a{color:var(--n)}
/* --- V33: aviso del inicio más vistoso --- */
.aviso-ini{position:relative;overflow:hidden;background:linear-gradient(100deg,var(--n-osc),var(--n) 45%,var(--n2));color:#fff;font-weight:800;font-size:15.5px;letter-spacing:.2px;padding:10px 0;text-shadow:0 1px 2px rgba(0,0,0,.18);box-shadow:inset 0 -3px 0 rgba(0,0,0,.08)}
.aviso-ini .wrap{position:relative;z-index:1;gap:12px}
.aviso-ini::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-45%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);animation:avBrillo 5s ease-in-out infinite}
@keyframes avBrillo{0%,55%{left:-45%}100%{left:110%}}
.aviso-ini.festivo{background-image:radial-gradient(circle,rgba(255,255,255,.35) 1.4px,transparent 2px),radial-gradient(circle,rgba(255,255,255,.2) 1px,transparent 1.6px),linear-gradient(100deg,var(--n-osc),var(--n) 45%,var(--n2));background-size:26px 26px,17px 17px,auto;background-position:0 0,9px 11px,0 0}
.av-ico{flex:none;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.22);box-shadow:0 0 0 2px rgba(255,255,255,.35);display:grid;place-items:center;font-size:17px;line-height:1;text-shadow:none}
.aviso-ini.mensaje .av-ico{animation:avLate 2.4s ease-in-out infinite}
@keyframes avLate{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}
@media(max-width:640px){.aviso-ini{font-size:13.5px;padding:8px 0;text-align:left}.aviso-ini .wrap{justify-content:flex-start;gap:9px}.av-ico{width:28px;height:28px;font-size:15px}.av-der{display:none}}
@media(prefers-reduced-motion:reduce){.aviso-ini::after,.aviso-ini .av-ico{animation:none}}
/* --- V33: pestañas del panel con aspecto de pestaña --- */
.adm-tabs{gap:3px;border-bottom:1px solid var(--borde);padding:0 6px}
.adm-tabs button{background:#eceee9;border:1px solid var(--borde);border-bottom:0;border-radius:10px 10px 0 0;margin-bottom:-1px;padding:8px 16px;color:var(--gris)}
.adm-tabs button:hover{background:#f6f6f3;color:var(--txt)}
.adm-tabs button.on{background:#fff;color:var(--n);border-color:var(--borde);border-top:3px solid var(--n);padding-top:6px;position:relative;z-index:1}
.tab-p{background:#fff;border:1px solid var(--borde);border-top:0;border-radius:0 0 12px 12px;padding:14px;margin-top:-16px}
.tab-p>.fe,.tab-p .adm-otros>.fe{border-color:#eceee9}
.adm-promo{grid-template-columns:minmax(0,360px)}
/* --- V33: Modo Admin en rojo (todo lo que solo ve el administrador) --- */
.adminbar{background:#b91c1c}
.adminbar button{color:#b91c1c}
.adminbar .ab-rojo{background:#111;color:#fff}
.ab-cerrada{background:#fff;color:#b91c1c!important}
.btn.adm-x,.pc .btn.adm-x{background:#dc2626;border:1.5px solid #dc2626;color:#fff;font-weight:800}
.btn.adm-x:hover,.pc .btn.adm-x:hover{background:#b91c1c;border-color:#b91c1c;color:#fff}
.fe.adm-x{border:1.5px dashed #f87171;background:#fef2f2}
.fe.adm-x>b,.fe.adm-x .eq-cats{color:#b91c1c}
.fe.adm-x .btn{background:#dc2626}
.fe.adm-x .btn:hover{background:#b91c1c}
.fe.adm-x .btn.gris{background:#fff;color:#b91c1c;border:1px solid #fca5a5}
.fe .adm-x input[type=radio],.fe.adm-x input[type=radio]{accent-color:#dc2626}
.eq-man.adm-x{background:#fef2f2;border-color:#f87171;color:#b91c1c}
.aviso.adm-x{background:#fef2f2;border-color:#fca5a5;color:#b91c1c;font-weight:700}
.aviso.adm-x a{color:#b91c1c}
.adm-cod-eq{color:#dc2626}
.pc-badge.negro{background:#dc2626}
/* --- V34: abrir/cerrar web en el panel --- */
.adm-web{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:8px 14px;font-size:14px}
.adm-web.cerrada{background:#fef2f2;border:2px solid #f87171}
.adminbar .ab-cerrada{background:#fff;color:#b91c1c!important;text-decoration:none!important;border-radius:999px;padding:1px 10px;font-weight:800;animation:avLate 1.6s ease-in-out infinite}
/* --- V35: barra Modo Admin azul y orden de equipos minimalista --- */
.adminbar{background:#1d4ed8}
.adminbar button{color:#1d4ed8}
.eq-orden.adm-x{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:14px;padding:6px 10px;border:1px dashed #f87171;border-radius:10px;background:#fef2f2;font-size:13px}
.eq-orden label{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:#b91c1c}
.eq-orden select{border:1px solid #fca5a5;border-radius:8px;padding:4px 8px;font:inherit;font-size:13px;background:#fff}
.eq-sep{width:1px;align-self:stretch;background:#fca5a5}
.eq-tipos{display:inline-flex;flex-wrap:wrap;gap:4px}
.eq-t{display:inline-flex;align-items:center;gap:2px;background:#fff;border:1px solid #fca5a5;border-radius:999px;padding:1px 2px;font-weight:600;font-size:12.5px;white-space:nowrap}
.eq-t b{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#dc2626;color:#fff;font-size:10.5px}
.eq-mv{border:0;background:none;color:#dc2626;font-weight:900;font-size:15px;line-height:1;cursor:pointer;padding:0 3px;border-radius:50%}
.eq-mv:hover{background:#fee2e2}
.eq-t:first-child .eq-mv[data-d="-1"],.eq-t:last-child .eq-mv[data-d="1"]{visibility:hidden}
.eq-orden .btn.peq{padding:5px 12px;font-size:12.5px}
/* --- V38: distribuidor oficial (inicio) --- */
.dist-s{padding:44px 0}
.dist-s .sub{margin-bottom:22px}
.dist{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.dist-i{background:#fff;border:1px solid var(--borde);border-top:3px solid var(--n);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.dist-i b{font-size:21px;letter-spacing:-.3px}
.dist-i span{color:var(--gris);font-size:14px}
/* --- V39: barra Modo Admin en rojo claro --- */
.adminbar{background:#ef4444}
.adminbar button{color:#dc2626}
/* --- V40: distribuidores con enlace y logo oficial --- */
a.dist-i{color:inherit;transition:box-shadow .15s,transform .15s}
a.dist-i:hover{box-shadow:0 10px 26px rgba(0,0,0,.08);transform:translateY(-2px)}
.dist-i img{height:44px;width:auto;max-width:100%;object-fit:contain;object-position:left center;margin-bottom:8px}
.dist-ver{font-style:normal;color:var(--n);font-weight:700;font-size:13px;margin-top:8px}
/* --- V40: menú en una línea (9 páginas) --- */
@media(min-width:901px){
  nav.principal{gap:0}
  nav.principal a{white-space:nowrap;padding:4px 8px;font-size:14px}
  header .wrap{gap:10px}
}
@media(min-width:901px) and (max-width:1250px){nav.principal a{padding:4px 5px;font-size:12.5px}header .btn.peq{padding:5px 9px;font-size:12px}}
.logo{flex:none}
@media(min-width:901px) and (max-width:1060px){nav.principal a{padding:3px 4px;font-size:12px}header .btn.peq{display:none}}
/* --- V42: iconos de redes del pie en su color --- */
footer .red-facebook{background:#1877f2}
footer .red-instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}
footer .red-tiktok{background:#000;box-shadow:inset 0 0 0 1.5px rgba(37,244,238,.7)}
footer .red-tiktok .ico{filter:drop-shadow(1px 1px 0 #fe2c55) drop-shadow(-1px -1px 0 #25f4ee)}
footer .red-facebook:hover{background:#1877f2;filter:brightness(1.12)}
footer .red-instagram:hover{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%);filter:brightness(1.12)}
footer .red-tiktok:hover{background:#000;filter:brightness(1.4)}
/* --- V43: equipo nuevo, hasta elegir el tipo solo se ve Categoría --- */
#f-eq.sin-tipo>*:not(.fe-g):not(input):not(.fe-btns),#f-eq.sin-tipo>.fe-g~.fe-g,#f-eq.sin-tipo .fe-btns>.btn:not(.gris){display:none}
#f-eq.sin-tipo>.fe-g:first-of-type>*:not(.fe-tipo){display:none}
#f-eq.sin-tipo .fe-tipo select{border:2px solid var(--n);background:#fff}
#f-eq.sin-tipo::after{content:"Elige el tipo de equipo para rellenar el resto de datos.";font-size:13px;color:var(--gris)}
/* --- V44: festivos con foto --- */
.fest-f{grid-template-columns:150px minmax(0,.7fr) minmax(0,1.1fr) 230px 112px 58px 30px}
.fest-foto{display:flex;align-items:center;gap:4px;min-width:0}
.ff-min{flex:none;width:30px;height:30px;border-radius:6px;background:#eef0f2 center/cover no-repeat;border:1px solid var(--borde)}
.fest-foto.nueva .ff-min{outline:2px solid var(--n)}
.fe .fest-foto select{flex:1;min-width:0;padding:5px 6px;font-size:12px}
.ff-sub{flex:none;cursor:pointer;font-size:17px;line-height:1;padding:4px 5px;border-radius:6px;display:inline-flex!important}
.ff-sub:hover{background:var(--n-claro)}
.aviso-foto{background:var(--fondo);line-height:0;text-align:center;padding:10px 0}
.aviso-foto img{display:inline-block;width:1160px;max-width:calc(100% - 40px);height:auto;max-height:80vh;object-fit:contain;border-radius:10px}
@media(max-width:900px){.fest-foto{order:4;grid-column:1/-1}}
@media(max-width:640px){.aviso-foto{padding:6px 0}.aviso-foto img{max-width:calc(100% - 20px);max-height:70vh}}
/* --- V47: foto del mensaje de aviso --- */
.adm-av-foto{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.adm-av-foto .fest-foto{width:300px;max-width:100%}
.av-tam{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--gris);flex-direction:row!important}
.av-tam input[type=range]{width:180px;accent-color:var(--n);padding:0;background:none}
.av-tam b{min-width:40px;color:var(--txt)}
.av-prev{margin-top:14px}
.av-prev-c{max-width:1160px;border:1px dashed #d1d5db;border-radius:10px;overflow:hidden;background:var(--fondo)}
.av-prev-c .aviso-foto img{width:100%;max-width:100%;max-height:none}
.av-prev-c [hidden]{display:none}
.av-prev-vacio{margin:0 0 6px;padding:8px 12px;background:#fef3c7;color:#92400e;border-radius:8px;font-size:13px;font-weight:600}
.av-prev-vacio[hidden]{display:none}
.av-ifr{border:1px solid #d1d5db;border-radius:10px;overflow:hidden;height:640px;background:#fff}
.av-ifr iframe{width:100%;height:100%;border:0;display:block}
.av-tam input[type=range]:disabled{opacity:.4}
/* --- V49: móvil, aviso centrado con icono a los dos lados --- */
@media(max-width:640px){.aviso-ini{text-align:center}.aviso-ini .wrap{justify-content:center;gap:8px}.aviso-ini .av-der{display:grid}.aviso-ini .av-txt{flex:1 1 auto;min-width:0}}
/* --- V51: pie más equilibrado: empresa en columna (logo arriba) y 3 columnas iguales --- */
footer .cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}
footer .f-emp{flex-direction:column;gap:10px;align-items:flex-start}
footer .f-logo img{height:72px}
footer .f-emp h4{margin-bottom:4px}
footer .f-emp .redes{margin-top:8px}
@media(max-width:900px){footer .cols{grid-template-columns:1fr;gap:22px}footer .f-logo img{height:60px}}
/* --- V52: menú móvil con línea entre secciones --- */
@media(max-width:900px){
  nav.principal{padding-top:4px;padding-bottom:10px}
  nav.principal a{border-radius:0;border-bottom:1px solid var(--borde)}
  nav.principal a:last-child{border-bottom:0}
  nav.principal a.act{border-radius:8px}
}
/* --- V53: fondo borroso en menú móvil y login; menú más bajo --- */
.menu-fondo{display:none;position:fixed;inset:0;z-index:35;background:rgba(15,17,20,.35);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
body.menu-abierto .menu-fondo{display:block}
body.menu-abierto{overflow:hidden}
@media(max-width:900px){nav.principal a{padding:8px 14px;font-size:15px;line-height:1.3}}
.overlay{background:rgba(10,12,15,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer}
.overlay .login{cursor:auto;box-shadow:0 20px 50px rgba(0,0,0,.3)}
/* --- V57: cabecera (móvil y ordenador): símbolo del logo + «microdata» (naranja) «informática» (negro) --- */
header .logo .logo-pc{display:none}
.logo-mov{display:flex;align-items:center;gap:7px}
.logo-mov img{height:38px;width:auto}
.logo-mov span{font-size:18px;font-weight:800;font-style:italic;letter-spacing:-.5px;line-height:1;color:#1d2228;white-space:nowrap}
.logo-mov b{color:#f47b20;font-style:italic;font-weight:800}
@media(max-width:900px){.logo-mov{gap:8px}.logo-mov img{height:42px}.logo-mov span{font-size:21px}}
@media(max-width:360px){.logo-mov span{font-size:18px}.logo-mov img{height:38px}}
@media(min-width:901px){header .wrap{max-width:1320px}}
@media(min-width:901px) and (max-width:1340px){nav.principal a{padding:4px 5px;font-size:13px}}
@media(min-width:901px) and (max-width:1060px){nav.principal a{padding:3px 4px;font-size:12px}}
@media(min-width:901px) and (max-width:1120px){.logo-mov span{display:none}}
.login-err{background:#fde8e8;color:#991b1b;border-radius:8px;padding:8px 12px;font-size:13.5px;font-weight:700;margin-bottom:6px;white-space:pre-line;line-height:1.45}
/* --- V59: ventana de login más cuidada --- */
.login{max-width:380px;padding:28px 30px 26px;border-top:4px solid var(--n)}
.login-cab{text-align:center;margin-bottom:10px}
.login-cab img{height:46px;width:auto;margin:0 auto 8px}
.login-cab h3{margin:0;font-size:20px}
.login-cab span{display:block;color:var(--gris);font-size:13px;margin-top:2px}
.login label{margin-top:4px}
.login input{background:#f6f6f4;border-color:transparent}
.login input:focus{background:#fff}
.login-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.login-btns .btn{width:100%}
.login-err{text-align:center}

/* ===== Stock de reacondicionados (Modo Admin) ===== */
.stk{border:1px dashed #fca5a5;background:#fff7f7;border-radius:10px;padding:8px 6px;display:flex;flex-direction:column;gap:5px}
.stk-cab{font-size:12px;font-weight:700;color:#991b1b;text-transform:uppercase;letter-spacing:.4px}
.stk-cab b{font-size:15px;color:#111}
.stk-cab span{font-weight:400;text-transform:none;color:var(--gris)}
.stk-g{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:3px;align-items:end;text-align:center}
.stk-col,.stk-mid{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.stk-n{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:-.1px;color:#3f4650;white-space:nowrap}
.stk-mid .stk-n{color:#2563eb;overflow:visible;text-overflow:clip}
.stk-cod{font-size:11px;font-weight:800;letter-spacing:.5px;color:#14161a}
.stk-c{display:flex;align-items:center;gap:3px}
.stk-c b{min-width:16px;text-align:center;font-size:14px}
.stk-c button{width:22px}
.stk .stk-mv{width:34px;height:22px;display:flex;align-items:center;justify-content:center;color:#2563eb;background:#eff6ff;border-color:#bfdbfe}
.stk .stk-mv:hover{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}
.stk button{height:22px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;font-size:14px;font-weight:800;line-height:1;cursor:pointer;color:#111;padding:0}
.stk button:hover{border-color:#dc2626;color:#dc2626}
.stk button[data-op="mas"]:hover{border-color:#16a34a;color:#16a34a}
.stk-flash{animation:stkf .6s}
@keyframes stkf{0%{background:#fde68a;border-radius:4px}100%{background:transparent}}
.stk-res{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:10px 0 4px;padding:10px 14px;border:1px solid #fecaca;background:#fff7f7;border-radius:10px;font-size:14px}
.stk-res b{font-size:16px}
.stk-res .btn{margin-left:auto}
#stk-aviso{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#111827;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;font-weight:600;z-index:999;opacity:0;transition:opacity .25s;pointer-events:none;max-width:90vw}
#stk-aviso.err{background:#b91c1c}
.inv{padding:18px 0 24px}
.inv-cab{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:8px}
.inv-cab h2{font-size:17px;margin-right:auto}
.inv-f{font-size:13px;color:#111;font-weight:600;display:flex;align-items:center;gap:5px}
.inv-f select{padding:3px 6px;border-radius:6px;border:1px solid var(--borde);font-size:12.5px}
.inv-cab .btn.peq{padding:4px 10px;font-size:12px}
.inv-tabla{overflow-x:auto;border-top:2px solid #14161a;border-bottom:2px solid #14161a}
.inv table{width:100%;border-collapse:collapse;font-size:13.5px;line-height:1.3;color:#111}
.inv th,.inv td{padding:4px 8px;color:#111;border-bottom:1px solid #eeeee9;text-align:left;white-space:nowrap}
.inv td:nth-child(2){white-space:normal;width:100%}
.inv th{font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:#111;font-weight:800;padding-top:5px;padding-bottom:5px}
.inv .num{text-align:right}
.inv-cat td{padding-top:7px;border-bottom:1px solid #d6d6d0;font-weight:800;color:#111;font-size:12px;text-transform:uppercase;letter-spacing:.4px}
.inv-cat small{color:#111;font-weight:400;text-transform:none;letter-spacing:0;margin-left:4px}
.inv-0 td{color:#111}
.inv-0 b{color:#dc2626}
.inv-oc{font-size:9.5px;background:#14161a;color:#fff;border-radius:4px;padding:0 5px;margin-left:4px}
.inv tfoot td{font-weight:800;border-bottom:0;border-top:1px solid #14161a;padding-top:5px;padding-bottom:5px}
.inv td a{color:var(--n);font-weight:700}
.inv-ayuda{margin-top:6px;font-size:12.5px;color:#111}
.inv .ct{text-align:center}
.inv-c{display:inline-flex;align-items:center;gap:3px}
.inv-c b{min-width:18px;text-align:center}
.inv-b{width:20px;height:20px;border:1px solid #e5e7eb;border-radius:5px;background:#fff;font-weight:800;font-size:13px;line-height:1;cursor:pointer;color:#111;padding:0;display:inline-flex;align-items:center;justify-content:center}
.inv-b:hover{border-color:#dc2626;color:#dc2626}
.inv-b[data-op="mas"]:hover{border-color:#16a34a;color:#16a34a}
.inv .inv-mv{width:auto;padding:0 7px;gap:4px;font-size:11.5px;font-weight:700;color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe;white-space:nowrap}
.inv-c .inv-mv:first-child{margin-right:6px}
.inv-c .inv-mv:last-child{margin-left:6px}
.inv .inv-mv:hover{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}
.inv-0 .inv-b{opacity:.6}
.inv-sp{font-size:12.5px;color:#111;font-weight:500;margin-left:8px}
.inv .tc0{background:#fff3e6}
.inv .tc1{background:#e8f6ee}
.inv th.tc0{background:#fbd9b4;color:#8a3b00}
.inv th.tc1{background:#bfe8cf;color:#14532d}
.inv th small{font-weight:400;text-transform:none;letter-spacing:0;opacity:.8}
.inv tfoot .tc0{background:#fbd9b4}
.inv tfoot .tc1{background:#bfe8cf}
.inv .inv-mv.mv0{color:#8a3b00;background:#fde7cf;border-color:#f6c08e}
.inv .inv-mv.mv0:hover{background:#fbd9b4;color:#6b2d00;border-color:#f0a35e}
.inv .inv-mv.mv1{color:#14532d;background:#d3f0de;border-color:#94d5ae}
.inv .inv-mv.mv1:hover{background:#bfe8cf;color:#0f3f22;border-color:#6cc392}
.form-msg{margin:0;padding:10px 14px;border-radius:10px;font-weight:600;font-size:14.5px}
.form-msg.ok{background:#e7f6ec;color:#166534}
.form-msg.err{background:#fde8e8;color:#991b1b}
.form-priv{margin:0;font-size:12px;line-height:1.45;color:var(--gris)}
.form-priv a{color:var(--n)}
.clave-oculta{-webkit-text-security:disc;text-security:disc;font-family:Verdana,sans-serif;letter-spacing:2px}
.adminbar .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.adminbar .ab-cen{display:flex;justify-content:center;align-items:center;gap:6px 18px;flex-wrap:wrap}
.adminbar .ab-der{justify-content:flex-end}
@media(max-width:700px){.adminbar .wrap{grid-template-columns:1fr auto;grid-template-areas:'izq der' 'cen cen';row-gap:2px}.adminbar .ab-izq{grid-area:izq}.adminbar .ab-der{grid-area:der}.adminbar .ab-cen{grid-area:cen;gap:2px 14px;white-space:nowrap}}
.pc-badge.agotado{background:#374151}
.pc-agotado .pc-img{filter:grayscale(1);opacity:.5}
.pc-agotado .pc-precio{color:var(--gris)}
.inv .inv-acc{text-align:right;width:1%}
.inv-ocb{border:1px solid #e5e7eb;border-radius:5px;background:#fff;font-size:11px;font-weight:700;color:#4b5563;padding:1px 8px;line-height:1.6;cursor:pointer;white-space:nowrap}
.inv-ocb:hover{border-color:#14161a;color:#14161a}
.inv-oculta td{color:#111}
.inv-oculta .inv-ocb{background:#14161a;border-color:#14161a;color:#fff}
.inv-cat-oc td{color:#14161a;border-top:2px solid #14161a}
.stk-cab{display:flex;align-items:center;gap:4px}
.pc-ocb{margin-left:auto;border:1px solid #e5e7eb;border-radius:5px;background:#fff;font-size:11px;font-weight:700;color:#4b5563;padding:1px 8px;line-height:1.6;cursor:pointer;white-space:nowrap;text-transform:none;letter-spacing:0}
.pc-ocb:hover{border-color:#14161a;color:#14161a}
.pc-oculto .pc-ocb{background:#14161a;border-color:#14161a;color:#fff}
.stk .stk-mv svg{width:15px;height:15px}
.stk .pc-ocb,.stk .stk-undo{height:20px;font-size:10.5px;font-weight:700;line-height:18px;padding:0 7px;border-radius:5px}
.stk .stk-undo{margin-left:auto;width:auto;padding:0 6px;font-size:13px;color:#4b5563}
.stk .stk-undo+.pc-ocb{margin-left:4px}
.stk-undo:disabled{opacity:.35;cursor:default}
.stk .stk-undo:disabled:hover{border-color:#e5e7eb;color:#4b5563}
.stk-cab{font-size:11px}.stk-cab b{font-size:13px}
.topbar{position:relative}
.topbar .tb-sop{border:0;padding:0;cursor:pointer;font-family:inherit;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:19px;height:19px;border-radius:50%;background:var(--n);color:#fff!important;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:900;line-height:1;text-decoration:none}
.topbar .tb-sop:hover{background:#fff;color:var(--n)!important}
@media(max-width:900px){.topbar .wrap{padding-right:34px}}
.overlay[hidden]{display:none}
#sop-f label{text-align:center}
#sop-f input[name=clave]{text-align:center;font-size:18px}
.sop-ok{background:#e7f6ec;color:#166534;border-radius:8px;padding:8px 12px;font-size:13.5px;font-weight:700;text-align:center;margin-bottom:6px;line-height:1.45}
.pc-badge.oferta{background:#e11d48;color:#fff;font-weight:800}
.filtros .f-tienda{margin-left:auto;border-color:#fca5a5;color:#991b1b;font-weight:700}
.filtros .f-tienda+#orden{margin-left:0}
.inv-f .f-tienda{padding:3px 6px;border-radius:6px;border:1px solid #fca5a5;font-size:12.5px;color:#991b1b;font-weight:700}
/* WhatsApp en la ficha de reacondicionados */
.pc .pc-wa{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;color:#fff;cursor:pointer;list-style:none}
.pc .pc-wa::-webkit-details-marker{display:none}
.pc .pc-wa .ico{width:15px;height:15px;color:#fff}
.pc-wa-d{position:relative}
.pc-wa-d[open] .pc-wa{border-radius:10px 10px 0 0}
.pc-wa-op{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px;border:1px solid #bbf7d0;border-top:0;border-radius:0 0 10px 10px;background:#f0fdf4}
.pc-wa-op span{grid-column:1/-1;font-size:12px;font-weight:700;color:#166534;text-align:center}
.pc-wa-op a{display:flex;align-items:center;justify-content:center;gap:5px;background:#25d366;color:#fff;border-radius:8px;padding:7px 6px;font-size:12.5px;font-weight:700;text-decoration:none}
.pc-wa-op a:hover{background:#1ebe5a}
.pc-wa-op .ico{width:13px;height:13px;color:#fff}
/* Venta de dispositivos: pestañas Reacondicionados / Nuevos */
.vd-tabs{display:flex;justify-content:center;gap:8px;margin:6px auto 8px;max-width:640px}
.vd-tab{flex:1 1 0;max-width:355px;text-align:center;align-items:center}
.vd-tab.vd-sin{opacity:.6;border-style:dashed}
.vd-tab{display:flex;flex-direction:column;gap:0;padding:4px 12px;border-radius:8px;background:rgba(255,255,255,.08);border:2px solid rgba(255,255,255,.18);color:#d6d7da;text-decoration:none;transition:background .15s,border-color .15s}
.vd-tab b{font-size:15px;line-height:1.3;color:#fff;letter-spacing:-.2px}
.vd-tab b small{display:inline-block;font-size:12px;font-weight:700;background:rgba(255,255,255,.18);border-radius:999px;padding:1px 8px;margin-left:4px;vertical-align:2px}
.vd-tab span{display:none}
.vd-tab .vd-eq{font-style:normal}
.vd-tab b{white-space:nowrap}
@media(max-width:600px){.vd-tab .vd-eq{display:none}.vd-tab b{text-transform:capitalize}}
.vd-tab:hover{border-color:var(--n);background:rgba(255,255,255,.14)}
.vd-tab.on{background:var(--n);border-color:var(--n);color:#fff}
.vd-tab.on b small{background:rgba(255,255,255,.3)}
@media(max-width:600px){.vd-tabs{gap:6px}.vd-tab{padding:4px 6px}.vd-tab b{font-size:13px}.vd-tab b small{font-size:11px;padding:0 6px;margin-left:2px}.vd-tab span{display:none}}
.pc-badge.nuevo{background:#16a34a;color:#fff}
.fe-gar{align-items:center}
.fe-gar>span{font-size:13px;font-weight:600;color:var(--gris);margin-right:4px}
.pc-wa-d[open] .pc-wa{background:#e5e7eb;border-color:#e5e7eb;color:#4b5563}
.pc-wa-d[open] .pc-wa .ico{color:#4b5563}
.pc.pc-ed{cursor:pointer}
.pc.pc-ed:hover{border-color:#fca5a5;box-shadow:0 0 0 2px #fecaca}
/* Barra de admin: ojo para ver la web como el cliente */
.adminbar .ab-izq{gap:6px 10px}
.adminbar .ab-ojo{display:inline-flex;align-items:center;gap:4px;text-decoration:none;background:rgba(255,255,255,.18);border-radius:999px;padding:0 8px;line-height:1;height:17px;margin:-3px 0}
.adminbar .ab-ojo svg{width:14px;height:14px}
.adminbar .ab-ojo:hover{background:rgba(255,255,255,.3)}
.adminbar.ab-cliente{background:#374151}
.adminbar.ab-cliente .ab-ojo{background:#fff;color:#111}
.adminbar.ab-cliente button{color:#374151}
/* Mensaje de guardado debajo del botón */
.form-res{margin:10px 0 0}
.falta input,.falta select,.falta textarea,input.falta,select.falta{border-color:#dc2626!important;box-shadow:0 0 0 2px rgba(220,38,38,.25)}
.fe-chks.falta{outline:2px solid #dc2626;outline-offset:3px;border-radius:6px}
/* Alta de equipo: tienda */
.fe-alta{grid-column:1/-1;margin:2px 0 12px}
.fe-alta>.fe-lab-t{display:block;margin-bottom:6px}
.alta-g{display:flex;flex-wrap:wrap;gap:10px}
.alta-t{display:flex;align-items:center;gap:8px;border:2px solid #e5e7eb;border-radius:10px;padding:6px 8px 6px 12px;background:#fff}
.alta-t b{font-size:15px;letter-spacing:.5px}
.alta-t small{font-size:13px;color:var(--gris);margin-right:4px}
.alta-c{display:flex;align-items:center;gap:4px}
.alta-c button,#f-eq .alta-c button{width:34px;height:34px;flex:none;border-radius:8px;border:1px solid #d1d5db;background:#fff;font-size:18px;font-weight:800;line-height:1;cursor:pointer;color:#111;padding:0}
.alta-c button:hover{border-color:var(--n);color:var(--n)}
#f-eq .alta-c input{width:52px;min-width:0;flex:none;height:34px;text-align:center;font-size:17px;font-weight:800;padding:0;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;-moz-appearance:textfield}
.alta-c input::-webkit-inner-spin-button,.alta-c input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.fe-alta.falta .alta-t{border-color:#dc2626}
.fe-gar .fe-chk{white-space:nowrap}
.vd-cab{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 22px}
.barra-pag.osc .vd-cab .ventajas{margin-top:0}
.vd-cab{flex-wrap:nowrap}.vd-cab h1{flex:none;white-space:nowrap}
.vd-cab .ventajas{flex:1 1 0;min-width:0;flex-wrap:wrap;height:1.6em;overflow:hidden;gap:0 16px}.vd-cab .ventajas span{white-space:nowrap}.vd-cab .ventajas::before{content:"\200b";width:0;margin-right:-16px}
@media(max-width:600px){.vd-cab{gap:0 10px}.vd-cab h1{font-size:19px}.vd-cab h1 .cuenta{font-size:11.5px}.vd-cab .ventajas{font-size:11.5px;gap:0 10px}.vd-cab .ventajas::before{margin-right:-10px}}
#f-eq label:has(>input:disabled,>select:disabled,>textarea:disabled),#f-eq .fe-chk:has(input:disabled),#f-eq .alta-t:has(input:disabled),#f-eq .fe-conx:has(input:disabled),#f-eq .fe-fila-foto:has(input:disabled),#f-eq .fe-gal:has(button:disabled){opacity:.4}
#f-eq :disabled{cursor:not-allowed}
#f-eq .fe-btns .btn:disabled{background:#d1d5db;color:#6b7280;border-color:#d1d5db}
.dd-l{position:relative}
.dd{position:absolute;left:0;top:calc(100% + 4px);z-index:1000;display:grid;gap:2px 4px;min-width:100%;width:max-content;max-width:min(640px,94vw);background:#fff;border:2px solid var(--n);border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.18);padding:6px}
.dd button{border:0;background:none;text-align:left;font:inherit;font-size:14px;font-weight:600;color:#111;padding:7px 10px;border-radius:7px;cursor:pointer;white-space:nowrap}
.dd button:hover,.dd button.on{background:var(--n);color:#fff}
.fe-micro{margin:-4px 0 8px}
.fe textarea[name=descripcion]{min-height:72px;resize:vertical}
/* Aviso de cookies (Google Analytics) */
.ck{position:fixed;left:12px;right:12px;bottom:12px;z-index:1100;max-width:760px;margin:0 auto;background:#14161a;color:#e5e7eb;border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;box-shadow:0 10px 30px rgba(0,0,0,.35);font-size:13.5px;line-height:1.45}
.ck[hidden]{display:none}
.ck p{margin:0;flex:1 1 320px}
.ck a{color:var(--n);text-decoration:underline}
.ck-b{display:flex;gap:8px;margin-left:auto}
/* Panel › 6 · Google (título y descripción de cada página) */
.seo-p{border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;margin-bottom:10px}
.seo-cab{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:14px}
.seo-cab a{font-size:12.5px;color:var(--n)}
.seo-mod{font-style:normal;font-size:11px;font-weight:700;background:#fef3c7;color:#92400e;border-radius:999px;padding:1px 8px}
.seo-mod[hidden]{display:none}
.seo-x{margin-left:auto;border:1px solid #e5e7eb;background:#fff;border-radius:6px;font:inherit;font-size:12px;padding:2px 9px;cursor:pointer;color:#4b5563}
.seo-x:hover{border-color:#111;color:#111}
.seo-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.seo-g2 label{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}
.seo-g2 textarea{resize:vertical}
.seo-n{font-weight:600;color:var(--gris)}.seo-n.mal{color:#dc2626}
.seo-gg{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;font-family:Arial,sans-serif}
.seo-gu{font-size:12px;color:#202124}
.seo-gt{font-size:18px;color:#1a0dab;line-height:1.3}
.seo-gd{font-size:13px;color:#4d5156;line-height:1.5}
@media(max-width:800px){.seo-g2{grid-template-columns:1fr}}
/* Nuevos ↔ reacondicionados: avisos al cliente */
.vd-otra{margin:0 0 0 auto;flex:none;white-space:nowrap;font-size:12.5px;color:#d6d7da;padding-left:12px}
.vd-top{display:grid;grid-template-columns:1fr minmax(0,620px) 1fr;align-items:center;gap:4px 12px}
.barra-pag.osc .vd-top .migas{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10.5px;letter-spacing:.3px}
.vd-top .vd-tabs{margin:0;max-width:none}
.barra-pag.osc:has(.vd-top){padding:6px 0 6px}
.vd-top+.vd-cab{margin-top:4px}
@media(max-width:1100px){.vd-top{display:block}.vd-top .vd-tabs{margin:3px auto 2px;max-width:640px}}
@media(max-width:900px){.vd-otra{display:none}}
@media(max-width:600px){.vd-top .migas{display:none}.vd-top .vd-tabs{margin:2px 0}}
.vd-otra a{color:var(--n);font-weight:700;text-decoration:none;margin-left:4px}
.vd-otra a:hover{text-decoration:underline}
.f-cats button.f-otra{border-style:dashed;color:var(--gris)}
.f-cats button.f-otra.on{background:#fff;color:var(--txt);border-color:var(--n);border-style:dashed}
.vd-vacio{border:2px dashed var(--n);border-radius:12px;padding:18px;text-align:center;margin:6px 0 18px;background:#fff}
.vd-vacio[hidden]{display:none}
.vd-vacio p{margin:0 0 10px;font-size:15px}
.vd-tab:not(.on):not(.vd-sin) b small{animation:vdLate 1s ease-in-out .6s 3}
@keyframes vdLate{0%,100%{transform:scale(1)}50%{transform:scale(1.35);background:var(--n);color:#fff}}
@media(prefers-reduced-motion:reduce){.vd-tab b small{animation:none!important}}
