:root{--bg:#f7f5fa;--card:#fff;--ink:#20152b;--muted:#746b7b;--accent:#7c3aed;--accent2:#db2777;--line:#e9e1ef}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--ink)}header{position:sticky;top:0;z-index:5;background:#fff;border-bottom:1px solid var(--line);padding:16px 5%;display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{display:flex;align-items:center;gap:12px}.brand small{display:block;color:var(--muted);margin-top:3px}.logo{width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;display:grid;place-items:center;font-weight:800}nav{display:flex;gap:10px;align-items:center}input,select,textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit}nav input{min-width:260px}button,.button,.cta{border:0;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;padding:13px 18px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.hero{min-height:330px;padding:65px 8%;display:flex;align-items:center;background:radial-gradient(circle at 80% 20%,#e9d5ff,transparent 30%),linear-gradient(135deg,#251337,#4c1d95);color:#fff}.hero h1{font-size:clamp(38px,6vw,72px);max-width:760px;margin:10px 0}.hero p{font-size:20px;max-width:700px}.eyebrow{letter-spacing:.18em;font-weight:800;color:#f0abfc}main{padding:35px 5% 110px}.filters{display:flex;gap:12px;margin-bottom:28px}.filters select{max-width:240px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 30px #2b14320d}.card img{width:100%;height:260px;object-fit:cover;background:#eee}.cardbody{padding:16px}.price{font-size:20px;font-weight:800}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.chip{font-size:12px;background:#f1eafa;padding:6px 8px;border-radius:999px}.cartbar{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);width:min(900px,92%);background:#21162b;color:#fff;padding:14px 18px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 15px 50px #0005}.hidden{display:none}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;margin-bottom:22px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.formgrid label,#productForm label{display:grid;gap:7px;font-weight:700}.row,.productRow{display:flex;justify-content:space-between;gap:18px;align-items:center}.productRow{padding:14px 0;border-bottom:1px solid var(--line)}.productRow img{width:70px;height:70px;object-fit:cover;border-radius:12px}.productMeta{flex:1}.actions{display:flex;gap:8px}dialog{border:0;border-radius:20px;width:min(620px,92%);padding:0;box-shadow:0 30px 100px #0007}dialog::backdrop{background:#160b20aa}#productForm{padding:26px;display:grid;gap:14px}.dialogActions{display:flex;justify-content:flex-end;gap:10px}@media(max-width:720px){header{align-items:flex-start;flex-direction:column}nav{width:100%;flex-wrap:wrap}nav input{min-width:0;flex:1}.formgrid{grid-template-columns:1fr}.hero{min-height:280px}.cartbar{flex-direction:column;gap:10px}.filters{flex-direction:column}.productRow{align-items:flex-start;flex-wrap:wrap}}
/* Identidad VIBRA */
:root{--bg:#07070a;--card:#121116;--ink:#f7f3ff;--muted:#b9afc3;--accent:#7c2cff;--accent2:#f0008b;--line:#30263b}body{background:var(--bg);color:var(--ink)}header{background:#050507;border-color:#281e31}.brandLogo{width:64px;height:64px;object-fit:cover;border-radius:14px;border:2px solid #fff}.brand small{color:#a99db4}input,select,textarea{background:#111014;color:#fff;border-color:#33283d}.ghost{background:#0d0c10;color:#fff;border-color:#3a2c45}.panel,.card{background:#111014;border-color:#34253f}.chip{background:#28143b;color:#f4dfff}.vibraHero{position:relative;min-height:430px;overflow:hidden;background:#000;border-bottom:3px solid #a827ff}.vibraHero>img{width:100%;height:520px;object-fit:cover;object-position:center 34%;display:block;filter:brightness(.78)}.heroOverlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;background:linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.08),rgba(0,0,0,.38));text-shadow:0 2px 18px #000}.heroOverlay span{font-weight:900;letter-spacing:.12em;color:#ff21a6}.heroOverlay h1{font-size:clamp(38px,5vw,72px);margin:8px 0;max-width:850px}.heroOverlay p{font-size:22px}.cartbar{background:#130c19;border:1px solid #7c2cff}@media(max-width:720px){.vibraHero{min-height:390px}.vibraHero>img{height:440px;object-position:center}.brandLogo{width:54px;height:54px}}

/* Ajustes Vibra: banner limpio + precios de oferta */
.heroButtonOnly{justify-content:flex-end;padding-bottom:34px;background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.22))}.heroButtonOnly .cta{font-size:18px;padding:15px 28px;box-shadow:0 8px 28px rgba(240,0,139,.35)}.price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.oldPrice{color:#9f96a8;text-decoration:line-through;font-size:15px;font-weight:500}.offerPrice{color:#ff2aa6;font-size:22px;font-weight:900}@media(max-width:720px){.heroButtonOnly{padding-bottom:22px}}
.imagePreview{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.imagePreview div{width:78px}.imagePreview img,.thumbs img{width:70px;height:70px;object-fit:cover;border-radius:10px}.imagePreview small{display:block;text-align:center}.thumbs{display:flex;gap:5px;padding:6px}.thumbs img{width:48px;height:48px}.card select{width:100%;padding:10px;border-radius:10px;margin:6px 0 10px;background:#141116;color:#fff;border:1px solid #3b2945}

/* V4: stock por variante color + talle */
.variantsBox{border:1px solid var(--line);border-radius:14px;padding:14px;margin:0}.variantsBox legend{font-weight:800;padding:0 8px}.variantHelp{margin:0 0 10px;color:var(--muted);font-size:13px}.variantRow{display:grid;grid-template-columns:1.2fr 1fr .8fr auto;gap:8px;margin-bottom:8px;align-items:center}.variantRow input{min-width:0}.removeVariant{padding:10px 14px;font-size:20px}.variantsBox>label{margin-top:10px}.cardbody label{display:grid;gap:5px;margin-top:8px;font-size:13px;font-weight:700}@media(max-width:620px){.variantRow{grid-template-columns:1fr 1fr}.removeVariant{grid-column:2}.variantRow .vQty{grid-column:1}}


/* V5 — fotos de producto completas, sin recortes */
.card > img{width:100%;height:360px;object-fit:contain;object-position:center;background:#0b0a0d;padding:10px;display:block}
.productRow img{object-fit:contain;background:#0b0a0d;padding:3px}
.imagePreview img,.thumbs img{object-fit:contain;background:#0b0a0d}
@media(max-width:720px){.card > img{height:330px}}

/* V6 - galería de producto */
.thumbs{display:flex;gap:8px;padding:10px;flex-wrap:wrap}.thumbBtn{padding:0;border:2px solid transparent;border-radius:11px;background:transparent;line-height:0;cursor:pointer}.thumbBtn img{display:block;width:58px;height:58px;object-fit:contain;background:#0b0a0d;border-radius:9px}.thumbBtn.active{border-color:var(--accent2)}.productMainImage{transition:opacity .15s ease}

.adminPhoto{width:96px!important;text-align:center}.adminPhoto .deletePhoto{margin-top:5px;padding:6px 7px;font-size:11px;border-radius:8px;background:#2a101c;color:#ff9acb;border:1px solid #6d2146;cursor:pointer}.adminPhoto .deletePhoto:hover{background:#4a1530;color:#fff}
/* V8 · carrito y pedidos */
.cartButton{position:relative}.cartPanel{position:fixed;inset:0 0 0 auto;width:min(440px,100%);height:100vh;background:#111018;border-left:1px solid #38244d;z-index:50;padding:22px;overflow:auto;box-shadow:-18px 0 45px #0008}.cartPanel.hidden{display:none}.cartHead{display:flex;justify-content:space-between;align-items:center;gap:12px}.cartItem{display:grid;grid-template-columns:64px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid #33263f}.cartItem img{width:64px;height:74px;object-fit:contain;background:#fff;border-radius:10px}.cartQty{display:flex;align-items:center;gap:7px}.cartQty button{padding:5px 9px}.cartTotal{font-size:1.25rem;font-weight:800;margin:20px 0}.waButton{width:100%;background:#ec168c}.orderRow{border:1px solid #3b2b4c;border-radius:16px;padding:16px;margin:12px 0;background:#17131d}.orderTop{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.status{font-size:.8rem;padding:5px 9px;border-radius:999px;background:#332344}.orderItems{margin:10px 0;font-size:.92rem}.orderActions{display:flex;gap:8px;flex-wrap:wrap}.paid{background:#5b21b6}.cancelBtn{background:#3a303f}.qtyInput{width:70px}.stockHint{font-size:.82rem;opacity:.75}.adminTabs{display:flex;gap:8px;margin:18px 0}.adminTabs button.active{background:#7c3aed}
/* V9 · acceso protegido de Administración */
.loginPage{min-height:100vh;background:radial-gradient(circle at 50% 15%,#2a1038 0,transparent 35%),#07070a}.loginWrap{min-height:100vh;display:grid;place-items:center;padding:28px}.loginCard{width:min(430px,100%);background:#111014;border:1px solid #39264a;border-radius:24px;padding:30px;box-shadow:0 24px 80px #0009}.loginLogo{display:block;width:110px;height:110px;object-fit:cover;border-radius:22px;margin:0 auto 18px}.loginCard h1{text-align:center;margin:0 0 8px}.loginCard>p{text-align:center;color:var(--muted)}.loginCard form{display:grid;gap:14px;margin-top:22px}.loginCard label{display:grid;gap:7px;font-weight:700}.backCatalog{text-align:center}.loginError{margin:0!important;color:#ff86bb!important;background:#351226;border:1px solid #712149;padding:10px;border-radius:10px}.localSecurity{font-size:12px;margin:18px 0 0!important}.loginCard button:disabled{opacity:.55;cursor:wait}
/* V10 · Supabase Auth */
.authChecking body{visibility:hidden}.loginOk{margin:0!important;color:#b9ffd7!important;background:#102b20;border:1px solid #256b4b;padding:10px;border-radius:10px}.linkButton{background:transparent!important;color:#ff5fba!important;border:0!important;padding:4px!important;text-decoration:underline;box-shadow:none!important}.linkButton:hover{color:#fff!important}

/* V13: filtro automatico de liquidacion */
.saleBadge{display:inline-block;margin:0 0 8px;padding:6px 10px;border-radius:999px;background:linear-gradient(135deg,var(--accent2),var(--accent));color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em}.cardbody>small{display:block}

/* V14: buscador accionable por boton y Enter */
.searchForm{display:flex;gap:8px;align-items:center}.searchForm input{min-width:240px}.searchForm button{white-space:nowrap}@media(max-width:720px){.searchForm{width:100%}.searchForm input{min-width:0;flex:1}.searchForm button{padding-inline:14px}}
