/* Módulo tienda: la tienda en línea con la marca del negocio (receta de la tienda de IDEALL).
   Todo prefijado con .ti / .ti-* / .v-tienda. --m = color de la marca del negocio. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

.ti,.ti-velo{
  --m:#C2410C;
  --m-osc:color-mix(in srgb,var(--m) 72%,#000);
  --m-suave:color-mix(in srgb,var(--m) 9%,#fff);
  --t-fondo:#ECEEF1;--t-sup:#fff;--t-plato:#F3F4F6;
  --t-tinta:#14171A;--t-sec:#3F464D;--t-ter:#5F6773;--t-ter2:#7C8590;
  --t-linea:#E6E8EB;--t-linea2:#D2D5DA;
  --t-ok:#0E744E;--t-ok-s:rgba(14,116,78,.10);--t-ambar:#9A5800;--t-rojo:#C8102E;
  --carbon:#0F1316;--carbon-2:#1A2128;--carbon-3:#2A333C;
  --t-s1:0 0 0 1px rgba(20,23,26,.07),0 1px 2px rgba(20,23,26,.04);
  --t-s2:0 6px 20px rgba(20,23,26,.18);
  --curva:cubic-bezier(.2,.7,.2,1);
  font-family:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color:var(--t-tinta);
}
.ti-ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none;display:block}
.ti button,.ti-velo button{font-family:inherit}
.ti button:focus-visible,.ti-velo button:focus-visible,.ti input:focus-visible,.ti-velo input:focus-visible,.ti select:focus-visible{outline:2px solid var(--m);outline-offset:2px}

/* La tienda ocupa todo el ancho del área de contenido */
main.v-tienda{max-width:none;padding:0 0 160px}
@media(min-width:900px){main.v-tienda{padding:0}}
.ti{background:var(--t-fondo);min-height:100%;position:relative}
.ti-cont{max-width:1280px;margin:0 auto;padding:0 16px}
@media(min-width:900px){.ti-cont{padding:0 28px}}

/* Aviso del demo (arriba, discreto) */
.ti-aviso{display:flex;align-items:center;gap:10px;padding:8px 16px;font-size:12.5px;line-height:1.35;color:#4A5868;background:#fff;border-bottom:1px solid var(--t-linea);font-family:"SG",ui-sans-serif,system-ui,sans-serif}
.ti-aviso b{color:#0B1F3A}
.ti-punto{width:8px;height:8px;border-radius:50%;background:#14C4B8;flex:none;box-shadow:0 0 0 4px rgba(20,196,184,.18)}
@media(max-width:560px){.ti-aviso-l{display:none}}
@media(min-width:900px){.ti-aviso{padding:9px 28px;justify-content:center}}

/* ---------- Encabezado de la tienda (carbón, pegajoso) ---------- */
.ti-cab{position:sticky;top:var(--ti-top,0px);z-index:15;background:var(--carbon);color:#F2F5F7}
.ti-cab-in{max-width:1280px;margin:0 auto;padding:10px 16px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"logo fav carro" "buscar buscar buscar";align-items:center;gap:10px 8px}
.ti-logo{grid-area:logo;display:flex;align-items:center;gap:10px;min-width:0;text-align:left;color:inherit}
.ti-logo-m{width:38px;height:38px;border-radius:10px;background:var(--m);color:#fff;display:grid;place-items:center;font-weight:800;font-size:15px;letter-spacing:.02em;flex:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.ti-logo-t{min-width:0;display:flex;flex-direction:column;line-height:1.15}
.ti-logo-t b{font-size:15px;font-weight:800;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-logo-t small{font-size:11.5px;color:#AEB9C3;font-weight:500}
.ti-btn-cats,.ti-cuenta{display:none}
.ti-cfav{grid-area:fav;position:relative;width:42px;height:42px;border-radius:999px;display:grid;place-items:center;color:#F2F5F7;background:var(--carbon-2)}
.ti-buscar{grid-area:buscar;display:flex;align-items:center;gap:8px;height:46px;padding:0 6px 0 14px;border-radius:12px;background:#ECEEF1;color:#57606A;cursor:text}
.ti-buscar input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:var(--t-tinta);height:100%}
.ti-buscar input::placeholder{color:#57606A}
.ti-buscar input::-webkit-search-cancel-button{display:none}
.ti-buscar:focus-within{box-shadow:0 0 0 2px var(--m)}
.ti-limpiar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#57606A;background:#DFE3E7}
.ti-limpiar .ti-ic{width:16px;height:16px}
.ti-carro{grid-area:carro;display:flex;align-items:center;gap:8px;height:42px;padding:0 14px 0 10px;border-radius:999px;background:var(--m);color:#fff;font-weight:700;transition:transform .12s var(--curva)}
.ti-carro:active{transform:scale(.97)}
.ti-carro-i{position:relative;display:block}
.ti-carro-t{display:flex;flex-direction:column;line-height:1.05;text-align:left}
.ti-carro-t small{font-size:10.5px;font-weight:600;opacity:.85}
.ti-carro-t b{font-size:14px;font-weight:800;font-variant-numeric:tabular-nums}
.ti-badge{position:absolute;top:-7px;right:-9px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#fff;color:var(--m);font-size:11px;font-weight:800;font-style:normal;display:grid;place-items:center;line-height:1;box-shadow:0 0 0 2px var(--m)}
.ti-cfav .ti-badge{top:2px;right:0;background:var(--m);color:#fff;box-shadow:0 0 0 2px var(--carbon-2)}
@media(max-width:420px){.ti-carro-t small{display:none}.ti-carro{padding:0 12px 0 10px}}

/* Barra de accesos */
.ti-acc{border-top:1px solid var(--carbon-3);background:var(--carbon)}
.ti-acc-in{max-width:1280px;margin:0 auto;display:flex;gap:6px;overflow-x:auto;padding:8px 16px 10px;scrollbar-width:none}
.ti-acc-in::-webkit-scrollbar{display:none}
.ti-chip{flex:none;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 13px;border-radius:999px;background:var(--carbon-2);color:#DCE2E8;font-size:13px;font-weight:600;white-space:nowrap;transition:background .15s}
.ti-chip .ti-ic{width:16px;height:16px}
.ti-chip.on{background:#fff;color:var(--t-tinta)}
.ti-chip-of{color:#fff;background:var(--m)}
.ti-chip-of.on{background:#fff;color:var(--m)}
.ti-chip-cats{display:inline-flex}
.ti-acc-sep{flex:none;width:1px;background:var(--carbon-3);margin:6px 4px}
@media(hover:hover){.ti-chip:not(.on):not(.ti-chip-of):hover{background:var(--carbon-3)}}

@media(min-width:900px){
  .ti-cab-in{grid-template-columns:auto auto minmax(0,1fr) auto auto auto;grid-template-areas:"logo cats buscar cuenta fav carro";padding:12px 28px;gap:14px}
  .ti-logo-m{width:42px;height:42px;font-size:16px}
  .ti-logo-t b{font-size:16px}
  .ti-btn-cats{grid-area:cats;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:12px;background:var(--carbon-2);color:#F2F5F7;font-weight:700;font-size:14px}
  .ti-btn-cats:hover{background:var(--carbon-3)}
  .ti-bus{max-width:640px;width:100%;justify-self:center}
  .ti-cuenta{grid-area:cuenta;display:flex;align-items:center;gap:8px;color:#F2F5F7;text-align:left;padding:4px 6px;border-radius:10px}
  .ti-cuenta:hover{background:var(--carbon-2)}
  .ti-cuenta span{display:flex;flex-direction:column;line-height:1.15}
  .ti-cuenta small{font-size:11px;color:#AEB9C3}
  .ti-cuenta b{font-size:13.5px}
  .ti-carro{height:46px;padding:0 18px 0 14px}
  .ti-carro-t b{font-size:15px}
  .ti-acc-in{padding:8px 28px 10px}
  .ti-chip-cats{display:none}
}

/* ---------- Portada ---------- */
.ti-hero{margin-top:14px;border-radius:16px;overflow:hidden;position:relative;color:#fff;
  background:radial-gradient(120% 140% at 100% 0%,color-mix(in srgb,var(--m) 70%,#fff 0%) 0%,var(--m) 35%,var(--m-osc) 100%);
  display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:20px 18px 18px}
.ti-hero:before{content:"";position:absolute;inset:auto -40px -80px auto;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.08)}
.ti-hero:after{content:"";position:absolute;inset:-60px auto auto -60px;width:180px;height:180px;border-radius:50%;background:rgba(0,0,0,.08)}
.ti-hero-t{position:relative;z-index:1}
.ti-hero-k{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:rgba(255,255,255,.18);border-radius:999px;padding:4px 10px}
.ti-hero h1{color:#fff;font-size:25px;line-height:1.12;letter-spacing:-.025em;margin:10px 0 6px;font-weight:800;max-width:15em}
.ti-hero p{margin:0 0 14px;opacity:.92;font-size:14px;max-width:30em}
.ti-hero-b{display:flex;gap:8px;flex-wrap:wrap}
.ti-b-blanco,.ti-b-linea{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 16px;border-radius:999px;font-weight:700;font-size:14px}
.ti-b-blanco{background:#fff;color:var(--m-osc)}
.ti-b-linea{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)}
.ti-b-blanco .ti-ic,.ti-b-linea .ti-ic{width:18px;height:18px}
.ti-hero-f{position:relative;z-index:1;display:flex;gap:8px;margin-top:14px}
.ti-hero-p{flex:1;min-width:0;background:#fff;border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:4px;box-shadow:0 8px 20px rgba(0,0,0,.18);transition:transform .2s var(--curva)}
.ti-hero-p .foto-prod{background:#fff;border-radius:8px;font-size:22px}
.ti-hero-p span{font-size:12.5px;font-weight:800;color:var(--t-tinta);text-align:center}
@media(min-width:700px){
  .ti-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;padding:34px 36px;min-height:280px}
  .ti-hero h1{font-size:36px}
  .ti-hero p{font-size:16px}
  .ti-hero-f{margin:0;gap:12px;align-items:center}
  .ti-hero-p{padding:10px;border-radius:14px}
  .ti-hero-p.h1{transform:translateY(-14px)}
  .ti-hero-p.h0,.ti-hero-p.h2{transform:translateY(10px)}
  .ti-hero-p:hover{transform:translateY(-18px)}
  .ti-hero-p span{font-size:14px}
}

/* Beneficios */
.ti-ben{display:flex;gap:8px;overflow-x:auto;margin:12px -16px 0;padding:0 16px 2px;scrollbar-width:none}
.ti-ben::-webkit-scrollbar{display:none}
.ti-ben-i{flex:none;display:flex;align-items:center;gap:10px;background:var(--t-sup);box-shadow:var(--t-s1);border-radius:12px;padding:10px 14px 10px 10px;max-width:250px}
.ti-ben-i > span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--m-suave);color:var(--m);flex:none}
.ti-ben-i b{display:block;font-size:13px;line-height:1.25}
.ti-ben-i small{display:block;font-size:11.5px;color:var(--t-ter);line-height:1.3}
@media(min-width:900px){.ti-ben{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0 0;padding:0;overflow:visible}.ti-ben-i{max-width:none;padding:14px}}

/* Para tu moto */
.ti-moto{margin-top:12px;background:var(--carbon);color:#fff;border-radius:14px;padding:14px 16px;display:grid;gap:10px}
.ti-moto b{display:flex;align-items:center;gap:8px;font-size:15px}
.ti-moto p{margin:2px 0 0;font-size:12.5px;color:#AEB9C3}
.ti-moto-l{display:flex;gap:6px;flex-wrap:wrap}
.ti-moto-l button{height:36px;padding:0 13px;border-radius:999px;background:var(--carbon-2);color:#fff;font-size:13px;font-weight:600;box-shadow:inset 0 0 0 1px var(--carbon-3)}
.ti-moto-l button:hover{background:var(--m)}
@media(min-width:900px){.ti-moto{grid-template-columns:auto 1fr;align-items:center;gap:24px;padding:16px 22px}.ti-moto-l{justify-content:flex-end}}

/* Secciones */
.ti-sec{margin-top:26px}
.ti-sec-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.ti-sec h2{font-size:19px;font-weight:800;letter-spacing:-.02em;margin:0;display:flex;align-items:center;gap:8px}
.ti-sec-cab p{margin:2px 0 0;font-size:12.5px;color:var(--t-ter)}
.ti-rojo{color:var(--m)}
.ti-ver-todo{display:inline-flex;align-items:center;gap:2px;font-size:13px;font-weight:700;color:var(--m);white-space:nowrap;height:36px}
.ti-ver-todo .ti-ic{width:16px;height:16px}
@media(min-width:900px){.ti-sec{margin-top:34px}.ti-sec h2{font-size:22px}}

/* Mosaico de categorías (vitrina: 2 productos sobre el tinte de la categoría) */
.ti-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ti-cat{display:flex;flex-direction:column;border-radius:12px;overflow:hidden;text-align:left;min-width:0;
  background:color-mix(in srgb,var(--c) 11%,#fff);transition:transform .2s var(--curva),box-shadow .2s}
.ti-vit{height:104px;display:flex;align-items:flex-end;justify-content:center;gap:10px;padding:12px 12px 8px}
.ti-vit .foto-prod{flex:1 1 0;min-width:0;height:100%;aspect-ratio:auto;background:transparent;border-radius:8px;font-size:34px}
.ti-vit.n1 .foto-prod{flex:0 1 60%}
.ti-vit .foto-prod img{mix-blend-mode:multiply}
.ti-cat-pie{display:flex;align-items:center;gap:8px;margin:0 4px 4px;padding:8px;min-height:48px;border-radius:9px;background:#fff}
.ti-cat-ic{flex:none;width:28px;height:28px;border-radius:8px;background:var(--c);color:#fff;display:grid;place-items:center}
.ti-cat-ic .ti-ic{width:16px;height:16px;stroke-width:2}
.ti-cat-n{min-width:0;font-size:13px;line-height:1.25;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(min-width:700px){.ti-cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ti-vit{height:130px}}
@media(min-width:1100px){.ti-cats{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
@media(hover:hover){.ti-cat:hover{transform:translateY(-3px);box-shadow:var(--t-s2)}}

/* ---------- Tarjeta de producto ---------- */
.ti-rejilla{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ti-p{background:var(--t-sup);box-shadow:var(--t-s1);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;position:relative;min-width:0;animation:tiEntra .25s var(--curva) both}
@keyframes tiEntra{from{opacity:0;transform:translateY(6px)}}
.ti-plato{position:relative;background:var(--t-plato)}
.ti-plato .foto-prod{border-radius:0;background:var(--t-plato);font-size:40px;width:100%}
.ti-plato .foto-prod img{transition:transform .3s var(--curva)}
.ti-p.agot .ti-plato img,.ti-p.agot .ti-plato i{opacity:.5}
.ti-cinta{position:absolute;top:8px;left:8px;z-index:2;height:22px;padding:0 7px;border-radius:7px;background:var(--m);color:#fff;font-size:11.5px;font-weight:800;display:grid;place-items:center}
.ti-sello{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);z-index:2;height:30px;display:grid;place-items:center;background:var(--carbon);color:#fff;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;pointer-events:none}
.ti-fav{position:absolute;top:7px;right:7px;z-index:3;width:32px;height:32px;border-radius:50%;background:#fff;box-shadow:var(--t-s1);display:grid;place-items:center;color:var(--t-tinta);transition:transform .12s var(--curva),color .12s}
.ti-fav:before{content:"";position:absolute;top:-7px;right:-7px;width:46px;height:46px}
.ti-fav .ti-ic{width:17px;height:17px}
.ti-fav:active{transform:scale(.86)}
.ti-fav.on{color:var(--t-rojo)}
.ti-fav.on .ti-ic{fill:currentColor}
.ti-pc{padding:10px 11px 11px;display:flex;flex-direction:column;flex:1;gap:1px;min-width:0}
.ti-marca{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t-ter);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-n{margin:1px 0 0;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:-.003em}
.ti-n button{all:unset;cursor:pointer;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word}
.ti-n button:after{content:"";position:absolute;inset:0;z-index:1}
.ti-n button:focus-visible{outline:none}
.ti-p:has(.ti-n button:focus-visible){outline:2px solid var(--m);outline-offset:2px}
.ti-ref{font-size:11px;font-weight:600;color:var(--t-ter);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.ti-disp{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;margin-top:4px;line-height:1.3}
.ti-disp:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.ti-disp.ok{color:var(--t-ok)}.ti-disp.poco{color:var(--t-ambar)}.ti-disp.no{color:var(--t-ter)}
.ti-pie{margin-top:auto;padding-top:8px;display:flex;flex-direction:column;gap:3px;min-width:0}
.ti-esc{font-size:11px;font-weight:700;color:var(--t-sec);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-esc b{color:var(--t-ok)}
.ti-pf{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:6px;min-width:0}
.ti-precio{display:flex;flex-direction:column;min-width:0;line-height:1.1}
.ti-precio small{font-size:10.5px;font-weight:700;color:var(--t-ter);margin-bottom:1px}
.ti-precio b{font-size:17px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ti-precio s{font-size:11.5px;color:var(--t-ter);font-weight:600;margin-top:2px}
.ti-precio.oferta b{color:var(--t-rojo)}
/* El "+" redondo del color de la marca que se vuelve contador */
.ti-mas{position:relative;z-index:3;margin-left:auto;height:36px;min-width:36px;border-radius:999px;background:var(--m);color:#fff;display:flex;align-items:center;justify-content:flex-end;flex:none;box-shadow:0 3px 10px color-mix(in srgb,var(--m) 35%,transparent)}
.ti-mas button{position:relative;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff;flex:none;transition:transform .12s var(--curva)}
.ti-mas button:before{content:"";position:absolute;inset:-4px}
.ti-mas button:active{transform:scale(.88)}
.ti-mas button[disabled]{opacity:.4;cursor:default}
.ti-mas .ti-ic{width:20px;height:20px;stroke-width:2.5}
.ti-mas.lleno{flex:1 0 100%;justify-content:space-between;animation:tiCrece .2s var(--curva)}
@keyframes tiCrece{from{opacity:.6;transform:scaleX(.9)}}
.ti-mas-n{flex:1;text-align:center;font-weight:800;font-size:14px;line-height:1.05;font-variant-numeric:tabular-nums}
.ti-mas-n small{display:block;font-size:9.5px;font-weight:600;opacity:.88}
.ti-avisa{position:relative;z-index:3;margin-left:auto;display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 11px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--t-linea2);font-size:12px;font-weight:700;color:var(--t-sec)}
.ti-avisa .ti-ic{width:15px;height:15px;color:var(--m)}

/* Celular: tres columnas desde 375 px, tarjeta apretada (como app) */
@media(min-width:375px) and (max-width:699px){
  .ti-rejilla{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .ti-rejilla .ti-pc{padding:7px 8px 8px}
  .ti-rejilla .ti-marca{font-size:9.5px}
  .ti-rejilla .ti-n{font-size:12px}
  .ti-rejilla .ti-n button{-webkit-line-clamp:2}
  .ti-rejilla .ti-ref{display:none}
  .ti-rejilla .ti-disp{font-size:10px;gap:4px}
  .ti-rejilla .ti-disp:before{width:6px;height:6px}
  .ti-rejilla .ti-esc{font-size:10px;white-space:normal;line-height:1.25}
  .ti-rejilla .ti-precio b{font-size:14px;letter-spacing:-.01em}
  .ti-rejilla .ti-precio s,.ti-rejilla .ti-precio small{font-size:9.5px}
  .ti-rejilla .ti-pf{gap:4px;flex-wrap:nowrap}
  .ti-rejilla .ti-pf:has(.lleno),.ti-rejilla .ti-pf:has(.ti-avisa){flex-wrap:wrap}
  .ti-rejilla .ti-mas{height:30px;min-width:30px}
  .ti-rejilla .ti-mas button{width:30px;height:30px}
  .ti-rejilla .ti-mas button:before{inset:-7px}
  .ti-rejilla .ti-mas .ti-ic{width:17px;height:17px}
  .ti-rejilla .ti-mas-n{font-size:13px}
  .ti-rejilla .ti-mas-n small{display:none}
  .ti-rejilla .ti-avisa{flex:1 0 100%;justify-content:center;height:30px;font-size:11px}
  .ti-rejilla .ti-fav{top:5px;right:5px;width:28px;height:28px}
  .ti-rejilla .ti-fav .ti-ic{width:15px;height:15px}
  .ti-rejilla .ti-cinta{top:5px;left:5px;height:19px;font-size:10px;padding:0 5px}
  .ti-rejilla .ti-sello{height:24px;font-size:10px;letter-spacing:.12em}
  .ti-rejilla .ti-plato .foto-prod{font-size:30px}
}
@media(min-width:700px){.ti-rejilla{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
@media(min-width:1000px){
  .ti-rejilla{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:16px}
  .ti-pc{padding:12px 14px 14px}
  .ti-n{font-size:14px;line-height:1.36}
  .ti-precio b{font-size:20px}
}
@media(hover:hover) and (min-width:900px){
  .ti-p{transition:transform .2s var(--curva),box-shadow .2s var(--curva)}
  .ti-p:hover{transform:translateY(-3px);box-shadow:var(--t-s2)}
  .ti-p:hover .ti-plato img{transform:scale(1.06)}
  .ti-p:hover .ti-n{color:var(--m)}
}

/* Fila que se desliza (ofertas, relacionados) */
.ti-fila{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:2px 16px 10px;scrollbar-width:none}
.ti-fila::-webkit-scrollbar{display:none}
.ti-fila > .ti-p{flex:none;width:158px;scroll-snap-align:start}
@media(min-width:1000px){
  .ti-fila{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));overflow:visible;margin:0;padding:0 0 4px;gap:16px}
  .ti-fila > .ti-p{width:auto}
}
.ti-p.comp .ti-ref{display:none}
.ti-p.comp .ti-n button{-webkit-line-clamp:2}

/* ---------- Listado ---------- */
.ti-lcab{padding-top:14px;margin-bottom:12px}
.ti-migas{display:flex;align-items:center;gap:4px;font-size:12.5px;color:var(--t-ter);font-weight:600}
.ti-migas button{color:var(--t-ter);font-weight:600;height:32px}
.ti-migas button:hover{color:var(--m)}
.ti-migas .ti-ic{width:14px;height:14px}
.ti-migas span{color:var(--t-tinta);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-lcab-f{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ti-lcab h1{font-size:22px;font-weight:800;letter-spacing:-.025em;margin:0;line-height:1.2}
.ti-lcab-f p{margin:2px 0 0;font-size:13px;color:var(--t-ter)}
.ti-orden{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--t-ter);font-weight:600}
.ti-orden select{height:38px;border-radius:10px;border:0;box-shadow:var(--t-s1);background:#fff;padding:0 10px;font:inherit;font-size:13.5px;font-weight:600;color:var(--t-tinta)}
.ti-activos{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ti-activos button{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px 0 12px;border-radius:999px;background:#fff;box-shadow:var(--t-s1);font-size:12.5px;font-weight:700}
.ti-activos .ti-ic{width:14px;height:14px}
.ti-activos .ti-borrar{background:transparent;box-shadow:none;color:var(--m)}
@media(min-width:900px){.ti-lcab{padding-top:20px}.ti-lcab h1{font-size:28px}}

.ti-vacio{text-align:center;padding:34px 16px;display:grid;justify-items:center;gap:6px}
.ti-vacio > .ti-ic{width:44px;height:44px;color:var(--t-ter2);stroke-width:1.5;margin-bottom:4px}
.ti-vacio h2{font-size:18px;margin:0;font-weight:800}
.ti-vacio p{margin:0 0 10px;color:var(--t-ter);font-size:14px;max-width:34em}
.ti-vacio-b{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}

/* Botones */
.ti-b-marca,.ti-b-gris,.ti-b-navegia{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border-radius:12px;font-weight:700;font-size:15px;transition:transform .12s var(--curva),filter .15s}
.ti-b-marca{background:var(--m);color:#fff}
.ti-b-marca:hover{filter:brightness(1.07)}
.ti-b-gris{background:#fff;color:var(--t-tinta);box-shadow:inset 0 0 0 1px var(--t-linea2)}
.ti-b-navegia{background:#0B1F3A;color:#fff;font-family:"SG",ui-sans-serif,system-ui,sans-serif}
.ti-b-navegia .ti-ic:last-child{color:#14C4B8}
.ti-b-marca:active,.ti-b-gris:active,.ti-b-navegia:active{transform:scale(.98)}
.ancho{width:100%}
.grande{min-height:52px;font-size:16px}
.ti-b-marca .ti-ic,.ti-b-gris .ti-ic,.ti-b-navegia .ti-ic{width:19px;height:19px}

/* Pie de la tienda */
.ti-pie-t{background:var(--carbon);color:#AEB9C3;margin-top:40px;padding:26px 0 24px;font-size:13px}
.ti-pie-g{display:grid;gap:18px}
.ti-pie-g b{color:#F2F5F7;display:block;font-size:14px;margin-bottom:4px}
.ti-pie-g p{margin:0;line-height:1.55}
.ti-pie-g .ti-logo-m{width:34px;height:34px;font-size:13px;margin-bottom:8px}
.ti-hecho{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--carbon-3);font-size:12px}
.ti-hecho b{color:#14C4B8}
@media(min-width:700px){.ti-pie-g{grid-template-columns:1.2fr 1fr 1fr}}

/* Barra flotante del pedido (celular) y WhatsApp */
.ti-flota{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:25;transform:translateY(140%);opacity:0;transition:transform .26s var(--curva),opacity .2s;pointer-events:none}
.ti-flota.ver{transform:none;opacity:1;pointer-events:auto}
.ti-flota button{width:100%;display:flex;align-items:center;gap:10px;height:54px;padding:0 16px 0 10px;border-radius:14px;background:var(--m);color:#fff;font-weight:700;box-shadow:0 10px 28px rgba(15,19,22,.32)}
.ti-flota-n{min-width:34px;height:34px;padding:0 8px;border-radius:10px;background:rgba(255,255,255,.2);display:grid;place-items:center;font-weight:800}
.ti-flota-t{flex:1;text-align:left;font-size:15px}
.ti-flota b{font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}
.ti-wa{position:fixed;right:14px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:24;display:flex;align-items:center;gap:8px;height:52px;width:52px;border-radius:999px;background:#25D366;color:#fff;justify-content:center;box-shadow:0 8px 22px rgba(37,211,102,.4),0 2px 6px rgba(0,0,0,.15);transition:bottom .26s var(--curva),transform .15s}
.ti-wa svg{width:28px;height:28px;flex:none}
.ti-wa span{display:none}
.ti-wa:hover{transform:scale(1.05)}
.ti.con-pedido .ti-wa{bottom:calc(142px + env(safe-area-inset-bottom))}
@media(min-width:900px){
  .ti-flota{display:none}
  .ti-wa,.ti.con-pedido .ti-wa{bottom:24px;right:24px;width:auto;padding:0 18px 0 14px}
  .ti-wa span{display:inline;font-weight:700;font-size:14px}
}

/* ---------- Hojas (ficha, pedido, listas) ---------- */
.ti-velo{background:rgba(15,19,22,.55)}
.hoja.ti-hoja{padding:0 16px calc(16px + env(safe-area-inset-bottom));background:#fff;color:var(--t-tinta)}
.ti-hcab{position:sticky;top:0;z-index:5;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0 10px;margin-bottom:4px}
.ti-hcab h2{font-size:18px;font-weight:800;margin:0;letter-spacing:-.02em;display:flex;align-items:baseline;gap:8px}
.ti-hcab-n{font-size:13px;font-weight:600;color:var(--t-ter)}
.ti-migas-h{font-size:13px;font-weight:700;color:var(--t-ter);text-transform:uppercase;letter-spacing:.08em}
.ti-cerrar{width:38px;height:38px;border-radius:50%;background:#F1F3F5;display:grid;place-items:center;flex:none}
.ti-cerrar .ti-ic{width:18px;height:18px}
.ti-hsub{margin:-4px 0 12px;font-size:13.5px;color:var(--t-ter)}

/* Ficha */
.ti-f{display:grid;gap:14px}
.ti-f-foto{position:relative;border-radius:14px;overflow:hidden;background:var(--t-plato)}
.ti-f-foto .foto-prod{border-radius:0;font-size:84px;width:100%;max-height:48vh;aspect-ratio:1/1;margin:0 auto}
.ti-f-foto .ti-fav{top:12px;right:12px;width:40px;height:40px}
.ti-f-foto .ti-fav .ti-ic{width:20px;height:20px}
.ti-f-foto .ti-cinta{top:12px;left:12px;height:26px;font-size:13px;padding:0 9px}
.ti-f-n{font-size:21px;line-height:1.25;font-weight:800;letter-spacing:-.02em;margin:2px 0 4px}
.ti-f-ref{font-size:12.5px;color:var(--t-ter);font-weight:600}
.ti-f-precio{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-top:12px;line-height:1.05}
.ti-f-precio small{flex-basis:100%;font-size:12px;font-weight:700;color:var(--t-ter)}
.ti-f-precio b{font-size:32px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ti-f-precio s{font-size:15px;color:var(--t-ter);font-weight:600}
.ti-f-precio.oferta b{color:var(--t-rojo)}
.ti-iva{font-size:12px;color:var(--t-ter);font-weight:600;margin-top:4px}
.ti-f-esc{display:flex;align-items:center;gap:8px;margin-top:10px;padding:9px 12px;border-radius:10px;background:var(--t-ok-s);color:#0A5A3C;font-size:13px;font-weight:600}
.ti-f-esc .ti-ic{width:18px;height:18px}
.ti-f-disp{margin-top:8px}
.ti-f-disp .ti-disp{font-size:13px}
.ti-f-moto{margin-top:12px;border-radius:12px;background:#F4F5F7;padding:12px}
.ti-f-moto b{display:flex;align-items:center;gap:8px;font-size:14px}
.ti-f-moto div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ti-f-moto div span{font-size:12.5px;font-weight:600;background:#fff;box-shadow:var(--t-s1);border-radius:999px;padding:4px 10px}
.ti-f-moto p{display:flex;align-items:center;gap:6px;margin:10px 0 0;font-size:13px;font-weight:700}
.ti-f-moto p.si{color:var(--t-ok)}.ti-f-moto p.no{display:none}
.ti-f-moto p .ti-ic{width:16px;height:16px}
.ti-f-acc{margin-top:14px;display:grid;gap:10px}
.ti-f-fila{display:flex;gap:10px}
.ti-f-fila .ti-b-marca{flex:1;min-height:50px}
.ti-paso{display:flex;align-items:center;border-radius:12px;box-shadow:inset 0 0 0 1px var(--t-linea2);height:50px;flex:none}
.ti-paso button{width:44px;height:100%;display:grid;place-items:center;color:var(--t-tinta)}
.ti-paso button[disabled]{opacity:.3;cursor:default}
.ti-paso b{min-width:28px;text-align:center;font-size:16px;font-variant-numeric:tabular-nums}
.ti-paso .ti-ic{width:18px;height:18px;stroke-width:2.3}
.ti-paso.chico{height:36px;border-radius:999px}
.ti-paso.chico button{width:36px}
.ti-paso.chico .ti-ic{width:16px;height:16px}
.ti-f-ya{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--t-ok);font-weight:600}
.ti-f-ya span{color:var(--t-sec)}
.ti-f-ya button{color:var(--m);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ti-f-ben{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--t-linea);display:grid;gap:10px}
.ti-f-ben li{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--t-ter)}
.ti-f-ben li .ti-ic{color:var(--m);margin-top:1px}
.ti-f-ben b{display:block;color:var(--t-tinta);font-size:13px}
.ti-f-rel{margin-top:20px;padding-top:16px;border-top:1px solid var(--t-linea)}
.ti-f-rel h3{font-size:16px;margin:0 0 10px;font-weight:800}
.ti-f-rel .ti-fila{margin:0 -16px;padding-left:16px;padding-right:16px}
.ti-f-rel .ti-p{box-shadow:var(--t-s1),0 0 0 1px var(--t-linea)}
.ti-f-rel .ti-plato{background:var(--t-plato)}
@media(min-width:760px){
  .ti-velo-ficha .hoja.ti-hoja{max-width:940px;padding:0 28px 24px;border-radius:18px}
  .ti-f{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
  .ti-f-foto .foto-prod{max-height:none}
  .ti-f-n{font-size:24px}
  .ti-f-rel .ti-fila{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:0;padding:0;overflow:visible;gap:12px}
  .ti-f-rel .ti-fila > .ti-p{width:auto}
  .ti-f-rel .ti-fila > .ti-p:nth-child(n+6){display:none}
}

/* Pedido: lateral en escritorio, hoja en el celular */
.ti-rens{display:grid}
.ti-ren{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--t-linea)}
.ti-ren-f{width:64px;height:64px;border-radius:10px;font-size:28px}
.ti-ren-c{min-width:0;display:flex;flex-direction:column;gap:2px}
.ti-ren-n{text-align:left;font-size:13.5px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ti-ren-n:hover{color:var(--m)}
.ti-ren-c small{font-size:12px;color:var(--t-ter)}
.ti-ren-c small em{font-style:normal;color:var(--t-ok);font-weight:700}
.ti-ren-f2{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}
.ti-ren-f2 > b{font-size:15px;font-variant-numeric:tabular-nums}
.ti-seguir{display:inline-flex;align-items:center;gap:4px;height:40px;font-size:13.5px;font-weight:700;color:var(--m);margin:4px 0}
.ti-seguir .ti-ic{width:16px;height:16px}
.ti-bloque{margin-top:12px;padding:14px;border-radius:14px;background:#F6F7F9}
.ti-bloque h3{display:flex;align-items:center;gap:8px;font-size:14.5px;margin:0 0 10px;font-weight:800}
.ti-bloque h3 .ti-ic{width:18px;height:18px;color:var(--m)}
.ti-campo{display:grid;gap:3px;margin-bottom:8px}
.ti-campo span{font-size:12px;font-weight:600;color:var(--t-ter)}
.ti-campo input{height:44px;border-radius:10px;border:1px solid var(--t-linea2);background:#fff;padding:0 12px;font:inherit;font-size:16px;color:var(--t-tinta);outline:0}
.ti-campo input:focus{border-color:var(--m);box-shadow:0 0 0 3px color-mix(in srgb,var(--m) 18%,transparent)}
.ti-cuando{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:12.5px;color:var(--t-ok);font-weight:600}
.ti-cuando .ti-ic{width:16px;height:16px}
.ti-pagos{display:grid;gap:8px}
.ti-pago{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px var(--t-linea2);text-align:left;transition:box-shadow .15s}
.ti-pago > .ti-ic{color:var(--t-sec)}
.ti-pago span{flex:1;display:flex;flex-direction:column;line-height:1.25}
.ti-pago b{font-size:14px}
.ti-pago small{font-size:12px;color:var(--t-ter)}

.ti-pago.on{box-shadow:inset 0 0 0 2px var(--m)}
.ti-pago.on > .ti-ic{color:var(--m)}

.ti-resumen{margin-top:14px;display:grid;gap:6px;font-size:14px}
.ti-resumen div{display:flex;justify-content:space-between;gap:12px}
.ti-resumen span{color:var(--t-ter)}
.ti-resumen b{font-variant-numeric:tabular-nums;text-align:right}
.ti-resumen .ok b,.ti-resumen .ok span{color:var(--t-ok)}
.ti-resumen .tot{border-top:1px solid var(--t-linea);padding-top:10px;margin-top:4px;font-size:17px}
.ti-resumen .tot span{color:var(--t-tinta);font-weight:700}
.ti-resumen .tot b{font-size:21px;font-weight:800;letter-spacing:-.02em}
.hoja.ti-hoja-lado{padding-bottom:0}
.ti-pedir{position:sticky;bottom:0;background:linear-gradient(rgba(255,255,255,0),#fff 18%);padding:16px 0 calc(16px + env(safe-area-inset-bottom));z-index:4}
.ti-pedir p{text-align:center;font-size:11.5px;color:var(--t-ter);margin:8px 0 0}
@media(min-width:900px){
  .ti-velo-lado{justify-content:flex-end!important;align-items:stretch!important}
  .ti-velo-lado .hoja.ti-hoja{max-width:440px;max-height:100vh;height:100vh;border-radius:0;padding:0 24px 0;animation:tiLado .26s var(--curva)}
  .ti-velo-lado .ti-pedir{padding-bottom:20px}
}
@keyframes tiLado{from{transform:translateX(40px);opacity:.5}}

/* Confirmación */
.ti-ok{text-align:center;padding:6px 0 18px}
.ti-ok-check{width:76px;height:76px;border-radius:50%;background:var(--t-ok-s);color:var(--t-ok);display:grid;place-items:center;margin:4px auto 12px;animation:tiPop .45s var(--curva)}
.ti-ok-check .ti-ic{width:40px;height:40px;stroke-width:2.6}
@keyframes tiPop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.08)}100%{transform:none;opacity:1}}
.ti-ok h2{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0}
.ti-ok > p{margin:4px 0 0;color:var(--t-ter)}
.ti-ok-num{display:inline-flex;align-items:center;gap:8px;margin:14px 0 4px;padding:6px 14px;border-radius:999px;background:var(--m-suave);color:var(--m)}
.ti-ok-num span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.ti-ok-num b{font-size:17px;font-weight:800}
.ti-ok .ti-resumen{text-align:left;background:#F6F7F9;border-radius:12px;padding:12px 14px}
.ti-ok .ti-resumen b{max-width:60%;overflow-wrap:anywhere}
.ti-pasos{list-style:none;margin:16px 0 0;padding:0;text-align:left;display:grid}
.ti-pasos li{display:flex;gap:12px;position:relative;padding-bottom:14px}
.ti-pasos li:not(:last-child):before{content:"";position:absolute;left:11px;top:24px;bottom:0;width:2px;background:var(--t-linea)}
.ti-pasos li.hecho:before{background:var(--t-ok)}
.ti-pasos i{width:24px;height:24px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 2px var(--t-linea2);background:#fff;display:grid;place-items:center;position:relative;z-index:1}
.ti-pasos .hecho i{background:var(--t-ok);box-shadow:none;color:#fff}
.ti-pasos .hecho i .ti-ic{width:14px;height:14px;stroke-width:3}
.ti-pasos .ahora i{box-shadow:inset 0 0 0 2px var(--m)}
.ti-pasos .ahora i:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--m);animation:tiLatido 1.4s ease-in-out infinite}
@keyframes tiLatido{50%{transform:scale(.6);opacity:.5}}
.ti-pasos span{display:flex;flex-direction:column;font-size:12.5px;color:var(--t-ter);line-height:1.35}
.ti-pasos b{font-size:14px;color:var(--t-tinta)}
.ti-ok-wa{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;color:#0A5A3C;background:#E7F8EE;border-radius:10px;padding:10px;margin:4px 0 0}
.ti-ok-wa .ti-ic{width:18px;height:18px;color:#25D366}
.ti-ok-b{display:grid;gap:8px;margin-top:16px}
.ti-nota{font-size:11.5px;color:var(--t-ter);margin:10px 0 0}

/* Listas en hoja: categorías, marcas, motos, catálogos */
.ti-lcats{display:grid}
.ti-lcat{display:flex;align-items:center;gap:12px;padding:10px 4px;border-bottom:1px solid var(--t-linea);text-align:left;min-height:56px}
.ti-lcat:hover{background:#F6F7F9}
.ti-lcat b{flex:1;font-size:14.5px}
.ti-lcat small{font-size:12px;color:var(--t-ter);font-weight:600}
.ti-lcat > .ti-ic:last-child{width:16px;height:16px;color:var(--t-ter2)}
.ti-lcat .ti-cat-ic{width:34px;height:34px;border-radius:10px}
.ti-marcas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-bottom:6px}
.ti-marcas button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;border-radius:12px;background:#F6F7F9;text-align:left;min-height:64px}
.ti-marcas button:hover{box-shadow:inset 0 0 0 2px var(--m)}
.ti-marcas b{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.ti-marcas small{font-size:12px;color:var(--t-ter)}
.ti-marcas .ti-ic{color:var(--m)}
.ti-catals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
.ti-catal{display:grid;gap:6px;text-align:left}
.ti-catal-p{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:linear-gradient(160deg,var(--c),color-mix(in srgb,var(--c) 60%,#000));display:flex;flex-direction:column;justify-content:flex-end;padding:10px;color:#fff;box-shadow:var(--t-s2)}
.ti-catal-p .foto-prod{position:absolute;inset:34px 18px auto;background:#fff;border-radius:8px;font-size:34px}
.ti-catal-l{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:6px;background:var(--m);font-size:10px;font-weight:800;display:grid;place-items:center}
.ti-catal-p b{position:relative;font-size:14px;line-height:1.2}
.ti-catal small{font-size:12px;color:var(--t-ter);font-weight:600}
@media(min-width:700px){.ti-catals{grid-template-columns:repeat(4,minmax(0,1fr))}.ti-velo-lista .hoja.ti-hoja{max-width:600px}}
@media(prefers-reduced-motion:reduce){.ti *,.ti-velo *{animation:none!important;transition:none!important}}

/* Ajustes tras las capturas */
.ti-ren-n{padding:0}
.ti-ok .ti-resumen b{overflow-wrap:normal}
@media(max-width:699px){
  .ti-hero{padding:16px 16px 14px}
  .ti-hero h1{font-size:23px;margin:8px 0 4px}
  .ti-hero p{font-size:13.5px;margin-bottom:12px}
  .ti-hero-b .ti-b-linea{display:none}
  .ti-hero-b .ti-b-blanco{height:40px}
  .ti-hero-f{margin-top:12px}
  .ti-hero-p .foto-prod{aspect-ratio:auto;height:64px}
  .ti-f-foto .foto-prod{aspect-ratio:auto;height:min(38vh,320px)}
}
/* mientras la foto carga (lazy) no se ve el texto alterno */
.ti .foto-prod img,.ti-velo .foto-prod img{font-size:0;color:transparent}
@media(max-width:699px){.ti-rejilla .ti-pub,.ti-fila .ti-pub{display:none}.ti-rejilla .ti-esc{font-size:9.5px}}
.ti-carro{gap:12px}

/* ===================== Pequeños detalles (QoL) ===================== */
/* Buscador con sugerencias */
.ti-bus{grid-area:buscar;position:relative;min-width:0}
.ti-sug{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:#fff;color:var(--t-tinta);border-radius:14px;box-shadow:0 14px 40px rgba(15,19,22,.28),0 0 0 1px rgba(15,19,22,.06);max-height:min(64vh,560px);overflow:auto;padding:6px;animation:tiEntra .16s var(--curva)}
.ti-sug-g{display:grid;padding:4px 0}
.ti-sug-g + .ti-sug-g{border-top:1px solid var(--t-linea)}
.ti-sug-t{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t-ter);padding:6px 10px}
.ti-sug-t button{font-size:12px;font-weight:700;color:var(--m);text-transform:none;letter-spacing:0}
.ti-sug-r{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 10px;border-radius:10px;text-align:left;font-size:14px;color:var(--t-sec)}
.ti-sug-r .ti-ic{width:17px;height:17px;color:var(--t-ter2)}
.ti-sug-chips{display:flex;flex-wrap:wrap;gap:6px;padding:2px 8px 8px}
.ti-sug-chips button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:999px;background:#F1F3F5;font-size:13px;font-weight:600}
.ti-sug-chips .ti-ic{width:15px;height:15px;color:var(--t-ter)}
.ti-sug-chips small{color:var(--t-ter);font-weight:700}
.ti-sug-cats{border-top:1px solid var(--t-linea);padding-top:8px}
.ti-sug-p{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 8px;border-radius:10px;text-align:left}
.ti-sug-f{width:48px;height:48px;border-radius:8px;font-size:22px}
.ti-sug-c{display:flex;flex-direction:column;min-width:0;gap:1px}
.ti-sug-n{font-size:13.5px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ti-sug-c small{font-size:11.5px;color:var(--t-ter);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-sug-c em{font-style:normal;font-size:11.5px;color:var(--t-ok);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-sug mark{background:color-mix(in srgb,var(--m) 16%,#fff);color:inherit;font-weight:800;border-radius:3px;padding:0 1px}
.ti-sug-pr{display:flex;flex-direction:column;align-items:flex-end;gap:1px}
.ti-sug-pr b{font-size:14px;font-variant-numeric:tabular-nums}
.ti-sug-pr b.of{color:var(--t-rojo)}
.ti-sug-pr small{font-size:11px;color:var(--t-ter);font-weight:600}
.ti-sug-pr small.ok{color:var(--t-ok)}
.ti-sug-todo{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:44px;margin-top:4px;border-radius:10px;background:var(--m-suave);color:var(--m);font-weight:700;font-size:13.5px}
.ti-sug-todo .ti-ic{width:16px;height:16px}
.ti-sug-nada{display:flex;gap:12px;align-items:flex-start;padding:12px 10px}
.ti-sug-nada > .ti-ic{width:28px;height:28px;color:var(--t-ter2)}
.ti-sug-nada b{display:block;font-size:14px}
.ti-sug-nada span{font-size:13px;color:var(--t-ter)}
.ti-sug-nada span button{color:var(--m);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.ti-sug-wa,.ti-b-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:12px;background:#25D366;color:#fff;font-weight:700;font-size:14.5px}
.ti-sug-wa{width:100%}
.ti-sug-wa svg,.ti-b-wa svg{width:20px;height:20px}
.ti-sug [data-ti-sugi].activo,.ti-sug [data-ti-sugi]:hover{background:#F1F3F5}
.ti-sug .ti-sug-todo.activo,.ti-sug .ti-sug-todo:hover{background:color-mix(in srgb,var(--m) 16%,#fff)}
.ti-sug .ti-sug-wa.activo,.ti-sug .ti-sug-wa:hover{background:#1FB857}
.ti-sug .ti-sug-chips button.activo{box-shadow:inset 0 0 0 2px var(--m)}

/* Resultados: afinar, quisiste decir */
.ti-afinar{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:10px;font-size:12.5px;color:var(--t-ter);font-weight:600}
.ti-afinar button{height:32px;padding:0 12px;border-radius:999px;background:#fff;box-shadow:var(--t-s1);font-size:12.5px;font-weight:700;color:var(--t-tinta)}
.ti-afinar small{color:var(--t-ter)}
.ti-quisiste{color:var(--m);font-weight:800;font-size:inherit;text-decoration:underline;text-underline-offset:2px}

/* Contador que se escribe */
.ti-mas button.ti-mas-n{width:auto;flex:1;border-radius:999px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ti-mas button.ti-mas-n:active{transform:none}
.ti-mas-in{flex:1;min-width:0;width:48px;height:28px;margin:0 2px;border:0;border-radius:8px;text-align:center;font:inherit;font-size:16px;font-weight:800;color:var(--t-tinta);background:#fff;outline:0;-moz-appearance:textfield}
.ti-mas-in::-webkit-inner-spin-button{-webkit-appearance:none}
.ti-iva-t{font-size:10.5px;color:var(--t-ter);font-weight:600}
@media(max-width:699px){.ti-rejilla .ti-iva-t,.ti-fila .ti-iva-t{display:none}}

/* Ficha: extras */
.ti-disp-t{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--t-sec);font-weight:600;margin-top:6px}
.ti-disp-t .ti-ic{width:16px;height:16px;color:var(--t-ter)}
.ti-f-nota{margin:0;font-size:12.5px;color:var(--t-ter)}
.ti-f-tec{margin-top:12px;border-top:1px solid var(--t-linea);padding-top:10px}
.ti-f-tec summary{cursor:pointer;font-weight:700;font-size:14px;min-height:32px;display:flex;align-items:center}
.ti-f-tec dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:8px 0 0;font-size:13px}
.ti-f-tec dt{color:var(--t-ter)}
.ti-f-tec dd{margin:0;font-weight:600}

/* Carrito: envío gratis, acciones, reglas */
.ti-gratis{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#F6F7F9;font-size:13px;color:var(--t-sec);margin-bottom:4px}
.ti-gratis > .ti-ic{color:var(--m)}
.ti-gratis span{flex:1}
.ti-gratis i{display:block;height:6px;border-radius:6px;background:#E2E5E9;margin-top:6px;overflow:hidden}
.ti-gratis em{display:block;height:100%;border-radius:6px;background:var(--m);transition:width .6s var(--curva)}
.ti-gratis.listo{background:var(--t-ok-s);color:#0A5A3C}
.ti-gratis.listo > .ti-ic{color:var(--t-ok)}
.ti-carro-acc{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.ti-carro-acc > span{display:flex;gap:6px}
.ti-mini-b{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 10px;border-radius:999px;background:#F1F3F5;font-size:12.5px;font-weight:700}
.ti-mini-b .ti-ic{width:15px;height:15px}
.ti-campo select{height:44px;border-radius:10px;border:1px solid var(--t-linea2);background:#fff;padding:0 10px;font:inherit;font-size:16px;color:var(--t-tinta)}
.ti-pago[disabled]{opacity:.55;cursor:not-allowed}
.ti-pago .ti-radio{width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--t-linea2);flex:none}
.ti-pago.on .ti-radio{box-shadow:inset 0 0 0 6px var(--m)}
.ti-medios{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:4px;margin-top:5px}
.ti-medios i{font-style:normal;font-size:10px;font-weight:800;letter-spacing:.02em;padding:2px 6px;border-radius:5px;background:#F1F3F5;color:var(--t-sec)}
.ti-reglas{margin:10px 0 0;padding:0 0 0 16px;font-size:12px;color:var(--t-ter);line-height:1.45;display:grid;gap:3px}
.ti-resumen b.gratis{color:var(--t-ok)}
.ti-resumen .tot small{font-size:11px;color:var(--t-ter);font-weight:600;margin-left:4px}
.ti-ren-c small em{font-style:normal;color:var(--t-ok);font-weight:700}

/* Pasarela de pago simulada */
.ti-velo-pago .hoja.ti-hoja{max-width:440px;background:#F6F7F9}
.ti-pg{padding:14px 0 6px}
.ti-pg-cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.ti-pg-cab span{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--t-ok)}
.ti-pg-cab .ti-ic{width:16px;height:16px}
.ti-pg-com{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:14px;box-shadow:var(--t-s1)}
.ti-pg-com div{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
.ti-pg-com small{font-size:11.5px;color:var(--t-ter)}
.ti-pg-com b{font-size:14.5px}
.ti-pg-com strong{font-size:21px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ti-pg-met{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:14px 0 10px}
.ti-pg-met button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:12px;background:#fff;box-shadow:var(--t-s1);font-size:12.5px;font-weight:700;color:var(--t-sec)}
.ti-pg-met button.on{box-shadow:inset 0 0 0 2px var(--m);color:var(--m)}
.ti-pg-cuerpo{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--t-s1);margin-bottom:14px}
.ti-pg-nota{margin:2px 0 0;font-size:12.5px;color:var(--t-ter)}
.ti-pg-pie{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11.5px;color:var(--t-ter);margin:10px 0 0;text-align:center}
.ti-pg-pie .ti-ic{width:14px;height:14px}
.ti-tarj{position:relative;aspect-ratio:1.6;max-width:300px;margin:0 auto 12px;border-radius:14px;padding:16px;color:#fff;background:linear-gradient(135deg,#1A2128,#3F4A55);display:grid;grid-template-columns:1fr auto;align-content:space-between;box-shadow:0 10px 24px rgba(15,19,22,.25)}
.ti-tarj b{grid-column:1/-1;font-size:17px;letter-spacing:.08em;font-variant-numeric:tabular-nums;font-weight:600}
.ti-tarj span{display:flex;flex-direction:column;font-size:12px;font-weight:600}
.ti-tarj small{font-size:9px;opacity:.7;text-transform:uppercase;letter-spacing:.08em}
.ti-tarj-chip{width:34px;height:26px;border-radius:5px;background:linear-gradient(135deg,#E9C46A,#B08A2E)}
.ti-breb{display:flex;gap:14px;align-items:center}
.ti-breb small{font-size:11.5px;color:var(--t-ter)}
.ti-breb b{display:block;font-size:16px;color:var(--m)}
.ti-breb p{margin:4px 0 0;font-size:12.5px;color:var(--t-ter)}
.ti-qr{flex:none;width:104px;height:104px;padding:6px;border-radius:10px;box-shadow:inset 0 0 0 1px var(--t-linea2);display:grid;grid-template-columns:repeat(9,1fr);gap:1px}
.ti-qr i{background:#fff;border-radius:1px}
.ti-qr i.on{background:var(--t-tinta)}
.ti-pg-proc,.ti-pg-ok{text-align:center;padding:40px 10px;display:grid;justify-items:center;gap:8px}
.ti-pg-proc b{font-size:16px}
.ti-pg-proc small{color:var(--t-ter)}
.ti-giro{width:46px;height:46px;border-radius:50%;border:4px solid #E2E5E9;border-top-color:var(--m);animation:tiGiro .8s linear infinite;margin-bottom:6px}
@keyframes tiGiro{to{transform:rotate(360deg)}}
.ti-pg-ok{padding:24px 4px 6px}
.ti-pg-ok h2{margin:0;font-size:22px;font-weight:800}
.ti-pg-ok strong{font-size:28px;font-weight:800;letter-spacing:-.02em}
.ti-pg-ok dl{width:100%;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;background:#fff;border-radius:12px;padding:12px 14px;margin:6px 0 10px;font-size:13px;text-align:left;box-shadow:var(--t-s1)}
.ti-pg-ok dt{color:var(--t-ter)}
.ti-pg-ok dd{margin:0;font-weight:700;text-align:right}

/* Confirmación: WhatsApp, seguimiento, link de pago */
.ti-wa-prev{margin:14px 0 4px;border-radius:14px;overflow:hidden;background:#ECE5DD;text-align:left;box-shadow:var(--t-s1)}
.ti-wa-cab{display:flex;align-items:center;gap:8px;background:#075E54;color:#fff;padding:8px 12px;font-size:13px}
.ti-wa-cab svg{width:18px;height:18px}
.ti-wa-cab small{margin-left:auto;opacity:.8}
.ti-wa-bur{margin:10px;background:#fff;border-radius:10px 10px 10px 2px;padding:8px 10px 6px;font-size:13.5px;line-height:1.45;max-width:88%;box-shadow:0 1px 1px rgba(0,0,0,.08)}
.ti-wa-bur span{display:block;text-align:right;font-size:10.5px;color:#53BDEB;margin-top:2px}
.ti-ok-sub{text-align:left;font-size:15px;margin:16px 0 0;font-weight:800}
.ti-pasos li i .ti-ic{display:none}
.ti-pasos li.hecho i .ti-ic{display:block}
.ti-link-box{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:start;text-align:left;margin-top:12px;padding:14px;border-radius:12px;background:var(--m-suave)}
.ti-link-box > .ti-ic{color:var(--m);margin-top:2px}
.ti-link-box b{display:block;font-size:14px}
.ti-link-box span{font-size:12.5px;color:var(--t-sec)}
.ti-link-box button{grid-column:1/-1;margin-top:8px}
.ti-ok-b2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ti-ok-b2 .ti-b-gris,.ti-ok-b2 .ti-b-marca,.ti-ok-b2 .ti-b-wa{font-size:14px;padding:0 10px}

/* Página del link de pago */
.ti-lk{margin:0 -16px}
.ti-lk-url{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#F1F3F5;font-size:12.5px;color:var(--t-sec);position:sticky;top:0;z-index:2}
.ti-lk-url .ti-ic{width:15px;height:15px;color:var(--t-ok)}
.ti-lk-url span{flex:1;background:#fff;border-radius:999px;padding:6px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti-lk-url .ti-cerrar{width:32px;height:32px}
.ti-lk-cab{display:flex;align-items:center;gap:10px;padding:16px;color:#fff}
.ti-lk-cab .ti-logo-m{background:rgba(255,255,255,.2)}
.ti-lk-c{padding:16px}
.ti-lk-hola{margin:0 0 12px;font-size:14px;color:var(--t-sec)}
.ti-lk-items{display:grid;gap:8px;font-size:13.5px;padding:12px 0;border-top:1px solid var(--t-linea);border-bottom:1px solid var(--t-linea)}
.ti-lk-items div{display:flex;justify-content:space-between;gap:12px}
.ti-lk-items .tachado{color:var(--t-ter);text-decoration:line-through}
.ti-lk-tot{display:flex;justify-content:space-between;align-items:baseline;margin:12px 0 14px}
.ti-lk-tot b{font-size:24px;font-weight:800;letter-spacing:-.02em}

/* Mis pedidos */
.ti-chip-ped i{font-style:normal;font-size:11px;font-weight:800;background:var(--m);color:#fff;border-radius:999px;padding:1px 6px}
.ti-mped{display:grid;gap:12px;padding-bottom:16px}
.ti-mp{border-radius:14px;padding:14px;background:#F6F7F9}
.ti-mp-cab{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.ti-mp-cab b{font-size:16px}
.ti-mp-cab small{display:block;font-size:12px;color:var(--t-ter)}
.ti-mp-cab strong{font-size:17px;font-variant-numeric:tabular-nums}
.ti-mp-fotos{display:flex;gap:6px;margin:10px 0}
.ti-mp-f{width:44px;height:44px;border-radius:8px;background:#fff;font-size:20px}
.ti-mp-fotos > span{width:44px;height:44px;border-radius:8px;background:#fff;display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--t-ter)}
.ti-mp-est{display:flex;gap:6px;flex-wrap:wrap}
.ti-chip-e{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px;background:#fff;color:var(--t-sec)}
.ti-chip-e .ti-ic{width:14px;height:14px}
.ti-chip-e.ok{background:var(--t-ok-s);color:var(--t-ok)}
.ti-chip-e.am{background:rgba(184,106,0,.12);color:#6B3D00}
.ti-mp .ti-pasos{margin-top:12px}
.ti-mp .ti-b-gris{margin-top:4px;font-size:14px}

/* Cotización (vista del PDF) */
.ti-velo-doc .hoja.ti-hoja{max-width:720px}
.ti-doc{background:#fff;border:1px solid var(--t-linea);border-radius:6px;padding:18px;box-shadow:0 10px 30px rgba(15,19,22,.12);font-size:12.5px;margin-bottom:14px}
.ti-doc-h{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:3px solid var(--m)}
.ti-doc-h > div{flex:1;min-width:0;display:flex;flex-direction:column}
.ti-doc-h b{font-size:15px}
.ti-doc-h small{font-size:11px;color:var(--t-ter)}
.ti-doc-n{align-items:flex-end;text-align:right;flex:none!important}
.ti-doc-n b{color:var(--m);letter-spacing:.08em;font-size:13px}
.ti-doc-cli{margin:12px 0}
.ti-doc table{width:100%;border-collapse:collapse}
.ti-doc th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--t-ter);border-bottom:1px solid var(--t-linea2);padding:6px 4px}
.ti-doc td{padding:7px 4px;border-bottom:1px solid var(--t-linea);vertical-align:top}
.ti-doc td small{display:block;color:var(--t-ter);font-size:10.5px}
.ti-doc th:nth-child(n+3),.ti-doc td:nth-child(n+3){text-align:right;white-space:nowrap}
.ti-doc-t{margin:10px 0 0 auto;max-width:260px;display:grid;gap:4px}
.ti-doc-t div{display:flex;justify-content:space-between}
.ti-doc-t .tot{font-weight:800;font-size:14px;border-top:2px solid var(--t-tinta);padding-top:6px;margin-top:2px}
.ti-doc-pie{margin:14px 0 0;color:var(--t-ter);font-size:11px}
.ti #tiQ:focus-visible{outline:none}
.ti-lk-url .ti-cerrar .ti-ic{color:var(--t-tinta)}.ti-lk-hola b,.ti-wa-bur b{white-space:nowrap}

/* Fotos reales: siempre completas (contain) dentro de un cuadro con margen */
.ti .foto-prod,.ti-velo .foto-prod{display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.ti .foto-prod img,.ti-velo .foto-prod img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;min-height:0}
.ti-plato .foto-prod{padding:8%}
.ti-hero-p .foto-prod{aspect-ratio:1/1;height:auto;padding:8%}
.ti-f-foto .foto-prod{padding:6%}
.ti-vit .foto-prod{padding:0}
.ti-sug-f,.ti-ren-f,.ti-mp-f{padding:4px}
.ti-catal-p .foto-prod{aspect-ratio:1/1;padding:8%}
@media(max-width:699px){
  .ti-hero-p .foto-prod{aspect-ratio:auto;height:78px;padding:6px}
  .ti-f-foto .foto-prod{aspect-ratio:auto;height:min(38vh,320px)}
}
/* el sello va abajo de la foto: en el medio tapaba productos delgados (termómetro) */
.ti-sello{top:auto;bottom:0;transform:none}
.ti-p.agot .ti-plato .foto-prod{padding-bottom:calc(8% + 26px)}
