/* Tienda de Luxury Pets (T3, s129): colores y letras de la web de Luxury (dashboard.html :root). */
:root{--g:#0d7a5c;--gl:#10916b;--nv:#1a1a3e;--nd:#12122a;--r:10px;--glass:rgba(255,255,255,.05);
  --border:rgba(255,255,255,.09);--tx:#ecebf5;--mu:#a9a8c4;--oro:#d8b46a;--rojo:#e0626b;--amar:#e6b450}
*{box-sizing:border-box}
html,body{margin:0;background:var(--nd);color:var(--tx);font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:16px;line-height:1.5}
a{color:var(--gl)}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:.2px;margin:.2em 0 .4em}
h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.2rem}
.cab{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;
  background:var(--nv);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5}
.cab img{height:34px}
.cab .quien{color:var(--mu);font-size:.9rem;text-align:right}
main{max-width:1100px;margin:0 auto;padding:16px}
.caja{background:var(--glass);border:1px solid var(--border);border-radius:var(--r);padding:16px;margin:0 0 16px}
.fila{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.fila>*{flex:1 1 180px}
label{display:block;font-size:.85rem;color:var(--mu);margin:0 0 4px}
input,select,textarea{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);
  background:#0f0f24;color:var(--tx);font:inherit}
textarea{min-height:70px;resize:vertical}
button{background:var(--g);color:#fff;border:0;border-radius:8px;padding:10px 14px;font:inherit;font-weight:600;
  cursor:pointer}
button:hover{background:var(--gl)}
button.sec{background:transparent;border:1px solid var(--border);color:var(--tx)}
button.peligro{background:#8a2f37}
button:disabled{opacity:.5;cursor:default}
.rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.prod{display:flex;flex-direction:column;gap:8px}
.rejilla > p{grid-column:1/-1}
.prod img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#22224a}
.prod .precio{font-size:1.25rem;font-weight:700;color:var(--oro)}
.etiqueta{display:inline-block;font-size:.78rem;padding:3px 8px;border-radius:20px;border:1px solid var(--border)}
.etiqueta.si{color:#7fe0bd;border-color:#1f6f57}
.etiqueta.no{color:#f0a3a9;border-color:#7a3940}
.etiqueta.espera{color:#f3d58a;border-color:#7a6230}
.mu{color:var(--mu)}
.chico{font-size:.85rem}
.aviso{padding:10px 12px;border-radius:8px;background:rgba(13,122,92,.15);border:1px solid #1f6f57;margin:8px 0}
.aviso.error{background:rgba(224,98,107,.12);border-color:#7a3940}
.codigo{font-size:2rem;letter-spacing:6px;font-weight:700;color:var(--oro);font-family:ui-monospace,monospace}
table{width:100%;border-collapse:collapse;font-size:.92rem}
td,th{padding:8px 6px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.oculto{display:none!important}
.pestanas{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.pestanas button{background:transparent;border:1px solid var(--border)}
.pestanas button.activa{background:var(--g);border-color:var(--g)}
@media (max-width:600px){h1{font-size:1.6rem}main{padding:12px}.cab img{height:28px}}
.mt{margin-top:12px}
.casilla{display:flex;gap:8px;align-items:center;margin-top:10px}
.casilla input{width:auto}
.distritos label{display:flex;gap:6px;align-items:center;flex:0 1 auto;color:var(--tx);font-size:.95rem}
.distritos input{width:auto}
/* ---- catálogo mundial (LUX-S129): portada, barra, pestañas, categorías, tarjetas y ficha */
.portada{padding:18px 0 6px}
.portada p{color:var(--mu);max-width:820px}
.barra{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:6px 0 10px}
.barra .pestanas{margin:0}
.barra input[type=search]{flex:1 1 260px;max-width:420px}
.pestanas button.activo{background:var(--g);border-color:var(--g)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.chip{background:transparent;border:1px solid var(--border);color:var(--tx);border-radius:999px;padding:7px 12px;
  font-weight:500;font-size:.9rem}
.chip.activo{background:rgba(13,122,92,.25);border-color:var(--g);color:#bff0dd}
.filtros{margin:0 0 10px}
.filtros>*{flex:1 1 160px}
.prod{position:relative;padding:12px}
.prod .abrir{background:transparent;border:0;padding:0;text-align:left;color:inherit;display:flex;flex-direction:column;
  gap:6px;cursor:pointer;font-weight:400}
.prod .abrir:hover h3{color:#fff;text-decoration:underline}
.prod img,.ficha img.grande{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:8px;padding:8px}
.prod h3{font-family:'Inter',system-ui,sans-serif;font-size:.98rem;font-weight:600;line-height:1.3;margin:0;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.marca{color:var(--oro);font-size:.78rem;letter-spacing:.6px;text-transform:uppercase;font-weight:600}
.sinfoto{width:100%;aspect-ratio:1/1;border-radius:8px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#1f1f4a,#0d3b30);color:var(--oro);font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.6rem;text-align:center;padding:10px}
.sinfoto.barf{background:linear-gradient(135deg,#4a1f24,#2a1530)}
.etiqueta.receta{color:#c9b8ff;border-color:#4d3f8a}
#ficha{max-width:860px;width:calc(100% - 32px);background:var(--nv);color:var(--tx);border:1px solid var(--border);
  border-radius:14px;padding:20px}
#ficha::backdrop{background:rgba(5,5,20,.7)}
#ficha .cerrar{position:absolute;right:12px;top:12px;padding:6px 10px}
.ficha{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px;align-items:start}
.ficha .precio{font-size:1.4rem;font-weight:700;color:var(--oro);margin:6px 0}
.ficha input{max-width:120px;margin:8px 0}
@media (max-width:700px){.ficha{grid-template-columns:1fr}.rejilla{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .prod{padding:8px}.barra input[type=search]{max-width:none}}
#sec-zona h2{margin-top:0}
.zona{align-items:flex-end}
.zona .pais{flex:1 1 200px}
.zona .niveles{flex:3 1 420px;gap:10px}
.zona .niveles>*{flex:1 1 180px}
#sec-identidad{padding:10px 14px;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
#sec-identidad p{margin:0}
.portada{padding:8px 0 2px}
.portada h1{margin-bottom:.2em}
#ficha .cerrar{z-index:2;background:var(--nd);border-color:var(--mu);color:#fff;font-size:1rem}
.pie{margin:28px 0 8px;border-top:1px solid var(--border);padding-top:12px}
