/* ============================================================
   Delicata · CAHPSA — capa de identidad sobre el motor (app.css)
   Colores tomados del logo oficial vectorizado:
   marrón "DELÍCATA" #5A1301 (texto blanco 12:1) · verde cinta "Cremosa" #1EB04B (UI #0F7A36, texto blanco 5.6:1)
   amarillo sol #FDDD01 · naranja silo #F5941D · crema "Cremosa" #F7F8CB · cielo #B9E5F9 · granero #F37954
   ============================================================ */
:root{
  --rojo:#5A1301; --rojo-900:#3D0C00; --rojo-700:#6E1C06; --rojo-50:#FBF1E6; --rojo-100:#F1DCC4;
  --negro:#2A0A02; --negro-2:#3B1308; --negro-3:#4E1D0F;
  --amarillo:#FDDD01; --amarillo-50:#FFF8C9;
  --verde-marca:#0F7A36; --verde-cinta:#1EB04B; --naranja-marca:#F5941D; --crema:#F7F8CB; --cielo:#B9E5F9; --granero:#F37954;
  --carmin:#0F7A36;
  --fondo:#FBFAF1; --fondo-2:#F2EFE0;
  --disp:"Fraunces","Inter",serif;
}
body{background:var(--fondo)}
.gate__t,.hub-cab h2,.boot__k b{letter-spacing:.2px}
.hub-cab h2{font-weight:800}
.hub-cab h2 span{color:var(--verde-marca)}
.gate{background:radial-gradient(70% 60% at 50% 30%,#3B1308 0%,#170501 70%)}
.gate__bg i{background:linear-gradient(90deg,transparent,var(--naranja-marca) 40%,var(--amarillo) 55%,transparent);opacity:.10}
.gate__bg i:nth-child(2){background:linear-gradient(90deg,transparent,var(--verde-cinta) 40%,var(--verde-cinta) 60%,transparent)}
.gate__t{font-family:var(--disp);font-weight:800}
/* logo de entrada: SVG oficial inline sobre la tapa crema del pote; se dibuja y se rellena */
.la-wrap{display:block;width:100%;margin:0 auto;box-sizing:border-box}
.la-placa{background:radial-gradient(120% 120% at 50% 40%,#FFFFFF 0%,#F7F8CB 100%);border-radius:50%/42%;padding:18px 34px 14px;box-shadow:0 0 0 6px rgba(247,248,203,.18),0 18px 50px rgba(0,0,0,.5)}
svg.la{display:block;width:100%;height:auto;overflow:visible}
svg.la.la-run .la-g{fill-opacity:0;stroke-dasharray:var(--l) var(--l);stroke-dashoffset:var(--l);stroke-linejoin:round;stroke-linecap:round;animation:la-draw 1.1s cubic-bezier(.55,0,.3,1) var(--d,0s) forwards,la-fill .6s ease var(--fd,1s) forwards}
@keyframes la-draw{to{stroke-dashoffset:0}}
@keyframes la-fill{from{fill-opacity:0}to{fill-opacity:1;stroke-opacity:0}}
svg.la.la-done .la-g{animation:none!important;fill-opacity:1!important;stroke-opacity:0!important;stroke-dashoffset:0!important}
@media (prefers-reduced-motion:reduce){svg.la .la-g{animation:none!important;fill-opacity:1!important;stroke:none!important}}
.gate__logo{width:min(360px,78vw);filter:drop-shadow(0 14px 40px rgba(245,148,29,.25))}
.wipe{background:var(--negro)}
.wipe__emb{width:auto;height:auto}
.wipe__emb .la-wrap{width:min(260px,64vw)}
.boot__emb{width:min(300px,66vw)}
.marca__emb{width:58px;height:40px;flex:0 0 58px;display:grid;place-items:center}
.marca__emb .wm-svg{width:58px}
.marca__emb svg{width:58px;height:auto;display:block}
.card--rojo{background:linear-gradient(135deg,#5A1301 0%,#3D0C00 100%);border-color:#3D0C00}
.card--verde{background:linear-gradient(135deg,#0F7A36 0%,#0A5426 100%);border-color:#0A5426;color:#fff}
.card--verde .card__cab p{color:rgba(255,255,255,.85)}
.chip--rojo{background:var(--verde-marca);color:#fff}
.chip--crema{background:var(--crema);color:var(--rojo);border:1px solid #E5E3A8}
.g>*,.card,.lienzo-chart{min-width:0}
.h280{height:280px}.h320{height:320px}.h360{height:360px}
.kpi__spark{position:static;display:block;width:100%;height:26px;margin-top:8px}
.mapa-real .pt .et{font-size:30px;font-weight:700;paint-order:stroke;stroke:#fff;stroke-width:6px;stroke-linejoin:round}
.mapa-real .pt .ev{font-size:24px;font-weight:600;fill:var(--tinta-45);paint-order:stroke;stroke:#fff;stroke-width:6px;stroke-linejoin:round}
.mapa-real .reg{font-size:30px}
@media(max-width:700px){.mapa-real .pt .et{font-size:36px}.mapa-real .pt .ev{font-size:29px}}
/* góndola: tarjetas de pote con foto real */
.gond{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.gond__it{position:relative;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:10px 10px 12px;text-align:center;min-width:0;transition:transform .2s ease,box-shadow .2s ease}
.gond__it:hover{transform:translateY(-3px);box-shadow:var(--sombra-2)}
.gond__it img{width:100%;height:96px;object-fit:contain;display:block;margin:0 auto 6px}
.gond__it b{display:block;font-size:12.5px;line-height:1.25}
.gond__it span{display:block;font-size:11.5px;color:var(--tinta-45);margin-top:3px}
.gond__it .pr{font-family:var(--disp);font-size:20px;font-weight:800;color:var(--rojo);margin-top:6px}
.gond__it--cahpsa{border:2px solid var(--verde-marca);background:linear-gradient(180deg,#FFFFFF 0%,#F4FBF2 100%)}
.gond__it--cahpsa::after{content:'CAHPSA';position:absolute;top:8px;left:8px;font:700 9.5px/1 Inter,sans-serif;letter-spacing:.08em;background:var(--verde-marca);color:#fff;padding:4px 6px;border-radius:6px}
.gond__it .ean{font-family:var(--mono);font-size:10.5px;color:var(--tinta-45)}
.ean--py{color:#0F7A36!important;font-weight:700}
/* celdas de la matriz producto x cadena */
.mz td.c{text-align:center;font-variant-numeric:tabular-nums}
.mz .vacia{color:#B42318;font-weight:700}
.mz .promo{color:#0F7A36;font-weight:700}
.mz .alto{background:#FDECEC;color:#B42318;font-weight:700;border-radius:6px}
/* armado del plan modular */
.plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.plan__m{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border:1.5px solid var(--linea);border-radius:16px;padding:18px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s;text-align:left;font:inherit;color:inherit;min-width:0}
.plan__m:hover{transform:translateY(-2px);box-shadow:var(--sombra-2)}
.plan__m.on{border-color:var(--verde-marca);box-shadow:0 0 0 3px rgba(15,122,54,.15)}
.plan__m h4{margin:0;font-family:var(--disp);font-size:19px;color:var(--rojo)}
.plan__m p{margin:0;font-size:12.5px;color:var(--tinta-70);line-height:1.5}
.plan__m .hz{font-size:12px;background:var(--rojo-50);color:var(--rojo-900);padding:7px 9px;border-radius:8px;border-left:3px solid var(--rojo)}
.plan__m .ord{position:absolute;top:14px;right:14px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;background:var(--fondo-2);color:var(--tinta-45)}
.plan__m.on .ord{background:var(--verde-marca);color:#fff}
.plan__m .precios{margin-top:auto}
.plan__tot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:center}
@media(max-width:700px){.plan__tot{grid-template-columns:1fr}}
.pblo{text-align:center}
/* pote SVG que se llena (Lote Capiatá) */
.pote-svg{width:100%;max-width:220px;height:auto;display:block;margin:0 auto}
.pote-svg .nivel{transition:y 1s cubic-bezier(.2,.8,.2,1),height 1s cubic-bezier(.2,.8,.2,1)}
.cinta{position:relative;height:64px;border-radius:12px;background:repeating-linear-gradient(90deg,#E9E4CF 0 18px,#F3EFDC 18px 36px);overflow:hidden;animation:cinta 1.2s linear infinite}
@keyframes cinta{to{background-position:36px 0}}
.cinta i{position:absolute;top:12px;width:44px;height:40px;border-radius:8px 8px 14px 14px;background:linear-gradient(#FFFDF2,#F2EFC9);border:2px solid #E2DDB2;animation:viaja 6s linear infinite}
.cinta i::after{content:'';position:absolute;inset:9px 8px 14px;border-radius:4px;background:#5A1301;opacity:.85}
@keyframes viaja{from{left:-50px}to{left:105%}}
@media (prefers-reduced-motion:reduce){.cinta,.cinta i{animation:none}.cinta i{left:40%}}
.sello{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:5px 9px;border-radius:999px;background:#EEF8F0;color:#0A5426;border:1px solid #CBE9D3;margin:2px}
.sello--falta{background:#FDECEC;color:#B42318;border-color:#F6CACA}
.dns{font-family:var(--mono);font-size:12px;background:#1B0702;color:#F7F8CB;border-radius:12px;padding:14px 16px;line-height:1.7;overflow-x:auto}
.dns .ok{color:#7EE29A}.dns .ko{color:#FF8A80;font-weight:700}.dns .c{color:#C9B8A8}
/* hero: el logo vive sobre la tapa crema, como en el pote */
.wow-logo{background:radial-gradient(120% 120% at 50% 40%,#FFFFFF 0%,#F7F8CB 100%);border-radius:50%/42%;padding:12px 22px;box-shadow:0 10px 30px rgba(0,0,0,.35);--wow-logo-w:230px}
.wow-kin{font-family:"Fraunces",serif;font-weight:800}
.marca__emb .la-wrap{width:58px;padding:3px 6px;box-shadow:none;border-radius:50%/42%}
.marca__emb .la-placa{background:#FFFDF0}
.gate__t{max-width:520px}
.plan__m .pblo b{font-size:clamp(20px,2vw,26px);white-space:nowrap}
.card--rojo .pblo{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.card--rojo .pblo small,.card--rojo .pblo span{color:rgba(255,255,255,.82)}
.card--rojo .pblo b{color:#fff}
.card--rojo .as-nota{background:rgba(255,255,255,.08);color:rgba(255,255,255,.9);border-color:rgba(255,255,255,.2)}
.card--rojo .btn--rojo{background:#FDDD01;color:#2A0A02;border-color:#FDDD01}
