:root{
    --papel:hsl(42 33% 97%);
    --tinta:hsl(210 16% 11%);
    --tile:hsl(0 0% 100%);
    --borde:hsl(40 16% 86%);
    --humo:hsl(215 10% 40%);
    --suave:hsl(40 22% 93%);
    --real:hsl(158 46% 26%);
    --esperar:hsl(8 56% 44%);
    --ojo:hsl(33 74% 36%);
    --gris:hsl(215 10% 44%);
    --display:"Fraunces",Georgia,"Times New Roman",serif;
    --cuerpo:"Inter",ui-sans-serif,system-ui,sans-serif;
  }
  *{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%}
  body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--cuerpo);font-size:16px;line-height:1.5;
    font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  h1,h2,h3{margin:0;font-family:var(--display);font-weight:600;letter-spacing:-.02em}
  p{margin:0}
  button,input,select{font:inherit;color:inherit}
  .cont{max-width:1152px;margin:0 auto;padding:0 20px}
  @media (min-width:640px){.cont{padding:0 32px}}

  /* barra */
  .topbar{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--borde);
    background:hsl(42 33% 97% / .85);backdrop-filter:blur(10px)}
  .topbar .cont{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;
    padding-top:14px;padding-bottom:14px}
  .marca{display:flex;align-items:center}
  .marca img{display:block;height:56px;width:auto}
  @media (min-width:640px){.marca img{height:70px}}
  @media (min-width:1024px){.marca img{height:80px}}
  .topbar-l{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
  .pildoras{display:flex;flex-wrap:wrap;gap:8px}
  .pildora{border:1px solid var(--borde);border-radius:999px;background:transparent;padding:5px 12px;
    font-size:11px;font-weight:500;color:var(--humo);white-space:nowrap}
  .pildora--fuerte{border-color:var(--tinta);color:var(--tinta)}
  @media (max-width:639px){.pildora--fuerte{display:none}}
  /* en el celular y la tablet la barra baja a dos filas con la marca grande: se despega para no comerse la pantalla */
  @media (max-width:1023px){.topbar{position:static}}
  .redes{display:flex;gap:8px}
  .red{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--borde);border-radius:999px;
    color:var(--humo);transition:border-color .15s,color .15s}
  .red:hover,.red:focus-visible{border-color:var(--tinta);color:var(--tinta)}
  .red svg{width:15px;height:15px;display:block}

  /* portada */
  .portada{border-bottom:1px solid var(--borde)}
  .hora{margin-top:28px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--humo)}
  .portada .cont{padding-top:56px;padding-bottom:56px}
  @media (min-width:640px){.portada .cont{padding-top:80px;padding-bottom:80px}}
  .eyebrow{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.24em;color:var(--humo)}
  .portada h1{margin-top:24px;max-width:760px;font-size:32px;line-height:1.08}
  @media (min-width:640px){.portada h1{font-size:50px}}
  .lede{margin-top:24px;max-width:672px;font-size:16px;line-height:1.65;color:var(--humo)}
  @media (min-width:640px){.lede{font-size:18px}}
  .medidores{margin-top:40px;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:40px;row-gap:20px}
  .medidor{display:flex;align-items:baseline;gap:8px}
  .medidor b{font-family:var(--display);font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}
  .medidor span{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--humo)}
  .medidor--real b{color:var(--real)} .medidor--esperar b{color:var(--esperar)}
  .medidor--ojo b{color:var(--ojo)} .medidor--gris b{color:var(--gris)}

  /* secciones */
  .seccion{border-top:1px solid var(--borde)}
  .seccion .cont{padding-top:56px;padding-bottom:56px}
  .seccion-t{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}
  .seccion-t h2{font-size:24px}
  @media (min-width:640px){.seccion-t h2{font-size:30px}}
  .contador{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.2em;color:var(--humo)}

  /* barra de herramientas */
  .barra{margin-top:28px;display:flex;flex-direction:column;gap:16px}
  @media (min-width:1024px){.barra{flex-direction:row;align-items:center;justify-content:space-between}}
  .buscar{position:relative;width:100%}
  @media (min-width:1024px){.buscar{max-width:320px}}
  .buscar svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--humo)}
  .buscar input{width:100%;height:44px;border:1px solid var(--borde);border-radius:999px;background:transparent;
    padding:4px 12px 4px 36px;font-size:15px;box-shadow:0 1px 2px hsl(210 16% 11% / .04)}
  .buscar input::placeholder{color:var(--humo)}
  .buscar input:focus{outline:none;border-color:var(--tinta)}
  .filtros{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
  .chip{border:1px solid var(--borde);background:transparent;color:var(--humo);border-radius:999px;padding:8px 16px;
    font-size:12px;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
  .chip:hover{border-color:hsl(210 16% 11% / .3);color:var(--tinta)}
  .chip[aria-pressed="true"]{border-color:var(--tinta);background:var(--tinta);color:var(--papel)}
  /* las categorías van con la display del resto de la página, no con el emoji del oficial */
  .chip-cat{font-family:var(--display);font-size:13px;font-weight:500;letter-spacing:0}
  .chip-cat small{font-family:var(--cuerpo);font-size:10px;letter-spacing:.04em}
  .chip small{margin-left:6px;font-variant-numeric:tabular-nums;opacity:.7}
  .rubro{height:36px;border:1px solid var(--borde);border-radius:999px;background:var(--tile);color:var(--humo);
    padding:0 16px;font-size:12px;font-weight:500}
  .filas-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
  .filas-chips--sub .chip{font-size:12px;padding:6px 12px;border-style:dashed}
  .filas-chips:empty{display:none}
  /* el plegado de categorías es sólo para el teléfono: en desktop las 16 van todas a la vista */
  .chip-toggle{display:none;border-style:dashed;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
  @media (max-width:639px){
    #chips:not(.abierto) .chip-folda,#subchips:not(.abierto) .chip-folda{display:none}
    #chips .chip-toggle,#subchips .chip-toggle{display:inline-block}
  }

  /* fojas */
  .grilla{margin-top:28px;display:grid;gap:20px}
  @media (min-width:640px){.grilla{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media (min-width:1024px){.grilla{grid-template-columns:repeat(3,minmax(0,1fr))}}
  .foja{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--borde);border-radius:16px;
    background:var(--tile);transition:transform .2s,border-color .2s,box-shadow .2s}
  .foja:hover{transform:translateY(-2px);border-color:hsl(210 16% 11% / .25);box-shadow:0 20px 45px -32px hsl(210 16% 11% / .55)}
  .foja-foto{position:relative;background:var(--tile)}
  /* las fotos de Mercado Libre vienen en cualquier formato (0,4:1 a 2:1): contain las muestra enteras,
     cover las corta. El cuadro 4:3 deja la foto lo más grande posible sin estirar la grilla. */
  .foja-foto img{display:block;width:100%;aspect-ratio:4/3;min-height:170px;max-height:280px;object-fit:contain;
    padding:14px;box-sizing:border-box;background:var(--tile)}
  .sello{display:inline-flex;align-items:center;gap:8px;border-radius:999px;border:1px solid;padding:4px 12px;
    font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;line-height:1.4}
  .sello i{width:6px;height:6px;border-radius:999px;background:currentColor;flex:none}
  .sello--real{border-color:hsl(158 46% 26% / .3);color:var(--real)}
  .sello--esperar{border-color:hsl(8 56% 44% / .3);color:var(--esperar)}
  .sello--ojo{border-color:hsl(33 74% 36% / .3);color:var(--ojo)}
  .sello--gris{border-color:hsl(215 10% 44% / .3);color:var(--gris)}
  .foja .sello{position:absolute;left:12px;top:12px;background:hsl(0 0% 100% / .9);backdrop-filter:blur(4px)}
  .foja .por{position:absolute;right:12px;top:12px;background:var(--tinta);color:var(--papel);border:0;
    border-radius:999px;padding:5px 11px;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:none}
  .foja-cuerpo{display:flex;flex:1;flex-direction:column;gap:12px;padding:20px}
  .kicker{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;color:var(--humo)}
  .foja h3{margin-top:8px;font-family:var(--display);font-size:15px;font-weight:500;line-height:1.37;letter-spacing:0;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .foja-pie{margin-top:auto}
  .precios{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
  .precios b{font-family:var(--display);font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}
  .precios s{font-size:12px;color:var(--humo);font-variant-numeric:tabular-nums}
  .precios .off{font-size:11px;font-weight:600;color:var(--real)}
  .vence{margin-top:6px;font-size:11px;color:var(--humo)}
  .rival{margin-top:8px;font-size:12px;line-height:1.5;color:var(--humo)}
  .rival b{color:var(--tinta);font-weight:600;font-variant-numeric:tabular-nums}
  .foja-acciones{margin-top:10px;display:flex;gap:8px}
  .chip-mini{border:1px solid var(--borde);border-radius:999px;padding:4px 11px;font-size:11px;font-weight:500;
    color:var(--humo);cursor:pointer;transition:border-color .15s,color .15s}
  .chip-mini:hover,.chip-mini:focus-visible{border-color:var(--tinta);color:var(--tinta);outline:none}
  .vacio{grid-column:1/-1;border:1px dashed var(--borde);border-radius:16px;padding:32px;text-align:center;font-size:14px;color:var(--humo)}
  .mas{display:flex;justify-content:center;margin-top:32px}
  .mas button{height:44px;border:1px solid var(--borde);border-radius:999px;background:transparent;padding:0 24px;
    font-size:14px;font-weight:500;cursor:pointer;box-shadow:0 1px 2px hsl(210 16% 11% / .05)}
  .mas button:hover{border-color:var(--tinta)}

  /* cómo lo hago */
  .metodo{border-top:1px solid var(--borde);padding-top:28px;padding-bottom:32px}
  .metodo p{max-width:768px;font-size:15px;line-height:1.7;color:var(--humo)}
  .metodo strong{color:var(--tinta);font-weight:600}

  /* ficha */
  .volver{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:500;text-transform:uppercase;
    letter-spacing:.2em;color:var(--humo);padding-top:32px}
  .volver:hover{color:var(--tinta)}
  .ficha{display:grid;gap:40px;padding-top:40px;padding-bottom:40px}
  @media (min-width:1024px){.ficha{grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:start}}
  .ficha h1{margin-top:12px;font-family:var(--display);font-size:24px;font-weight:500;line-height:1.3;letter-spacing:0}
  @media (min-width:640px){.ficha h1{font-size:30px}}
  .etiqueta{display:inline-block;margin-top:12px;border-radius:999px;background:hsl(210 16% 11% / .1);color:var(--humo);
    padding:4px 12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.14em}
  .veredicto h2{margin-top:20px;font-size:34px;line-height:1.05}
  @media (min-width:640px){.veredicto h2{font-size:46px}}
  .veredicto .lede{margin-top:20px;font-size:17px}
  .quien{display:flex;align-items:center;gap:12px;margin-top:28px}
  .avatar{width:36px;height:36px;flex:none;border-radius:999px;background:var(--tinta);color:var(--papel);
    display:grid;place-items:center;font-family:var(--display);font-size:14px;font-weight:600}
  .quien p{font-size:14px;line-height:1.35}
  .quien b{font-weight:600}
  .quien span{color:var(--humo)}
  .compra{border:1px solid var(--borde);border-radius:24px;background:var(--tile);overflow:hidden}
  @media (min-width:1024px){.compra{position:sticky;top:122px}}
  .compra img{display:block;aspect-ratio:1/1;max-height:340px;width:100%;object-fit:contain;padding:24px;
    box-sizing:border-box;background:var(--tile)}
  .compra-cuerpo{padding:24px;display:grid;gap:20px}
  .compra .precios b{font-size:30px}
  .compra .precios s{font-size:14px}
  .cta{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;width:100%;border-radius:999px;
    background:var(--tinta);color:var(--papel);font-size:14px;font-weight:500;transition:opacity .15s}
  .cta:hover{opacity:.9}
  .nota{font-size:11px;line-height:1.6;color:var(--humo)}
  .diario{display:grid;gap:40px}
  @media (min-width:1024px){.diario{grid-template-columns:1.5fr 1fr;gap:56px;align-items:start}}
  .diario h2,.tiendas h2{font-size:24px}
  .diario-nota{margin-top:8px;max-width:576px;font-size:14px;line-height:1.65;color:var(--humo)}
  .grafico{margin-top:28px;border:1px solid var(--borde);border-radius:16px;background:var(--tile);padding:16px}
  .grafico svg{display:block;width:100%;height:auto}
  .numeros{border:1px solid var(--borde);border-radius:16px;background:var(--tile);padding:24px}
  .numeros-t{display:flex;align-items:center;justify-content:space-between;gap:16px}
  .numeros-t h3{font-size:18px}
  .tendencia{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--humo)}
  .tendencia i{width:6px;height:6px;border-radius:999px;background:currentColor}
  .dl{margin:20px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
  .dl > div{border-top:1px solid var(--borde);padding-top:12px}
  .dl dt{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--humo)}
  .dl dd{margin:4px 0 0;font-family:var(--display);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}
  .dd-dia{font-family:var(--cuerpo);font-size:11px;font-weight:500;letter-spacing:0;color:var(--humo)}
  .tiendas .enc{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}
  .lista-tiendas{margin-top:28px;display:grid;gap:12px}
  .fila-t{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;
    border:1px solid var(--borde);border-radius:16px;background:var(--tile);padding:16px 20px}
  .fila-t.gana{background:hsl(33 74% 36% / .05)}
  .fila-t b.n{font-size:14px;font-weight:500;font-family:var(--cuerpo)}
  .mas-barata{margin-left:8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--ojo)}
  .fila-t small{display:block;margin-top:2px;font-size:11px;color:var(--humo)}
  .fila-t small em{font-style:italic;color:var(--esperar)}
  .fila-d{display:flex;align-items:center;gap:20px}
  .fila-d .p{font-family:var(--display);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}
  .fila-d .dif{width:128px;text-align:right;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}
  .dif.abajo{color:var(--ojo)} .dif.arriba{color:var(--real)} .dif.parejo{color:var(--humo)}
  .ir{color:var(--humo);display:inline-flex}
  .ir:hover{color:var(--tinta)}
  @media (max-width:639px){
    .fila-d{flex-wrap:wrap;gap:12px}
    .fila-d .dif{width:auto;text-align:left;flex:1}
    .medidores{column-gap:24px}
  }

  /* pie */
  footer{border-top:1px solid var(--borde)}
  footer .cont{display:grid;gap:32px;padding-top:48px;padding-bottom:48px}
  .marca-p{font-family:var(--display);font-size:18px;font-weight:600}
  .baja{margin-top:12px;max-width:672px;font-size:14px;line-height:1.65;color:var(--humo)}
  .baja p+p{margin-top:12px}
  .baja strong{color:var(--tinta);font-weight:600}
  .legal{border-top:1px solid var(--borde);padding-top:24px;display:grid;gap:10px;font-size:12px;line-height:1.6;color:var(--humo)}
  /* radar de precios */
  .panel-graf{margin-top:20px;border:1px solid var(--borde);border-radius:16px;background:var(--tile);padding:20px}
  .panel-graf h4{margin:0 0 12px;font-family:var(--cuerpo);font-size:10px;font-weight:500;text-transform:uppercase;
    letter-spacing:.2em;color:var(--humo)}
  .rubro-t{margin-left:8px;border:1px dashed var(--borde);border-radius:999px;padding:2px 9px;font-size:10px;
    font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--humo)}
  .barras{display:flex;gap:6px;align-items:flex-end;height:96px}
  .mes{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:flex-end;height:100%}
  .mes i{display:block;width:100%;min-height:3px;border:1px solid var(--borde);border-radius:4px 4px 0 0;background:var(--suave)}
  .mes.activo i{background:var(--tinta);border-color:var(--tinta)}
  .mes b{font-size:9px;font-weight:500;letter-spacing:.04em;color:var(--humo)}
  .aviso{margin-top:20px;border:1px dashed var(--borde);border-radius:16px;padding:16px 18px;font-size:13px;
    line-height:1.65;color:var(--humo)}

  /* la mejor oferta del día */
  .oferta{position:fixed;right:16px;bottom:16px;z-index:50;width:min(340px,calc(100vw - 32px));
    border:1px solid var(--borde);border-radius:20px;background:var(--tile);
    box-shadow:0 28px 60px -34px hsl(210 16% 11% / .6);padding:16px 18px 18px}
  .oferta[hidden]{display:none}
  .oferta-enc{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:600;text-transform:uppercase;
    letter-spacing:.18em;color:var(--humo)}
  .oferta-cerrar{margin-left:auto;width:26px;height:26px;flex:none;border:1px solid var(--borde);border-radius:8px;
    background:transparent;color:var(--humo);font-size:15px;line-height:1;cursor:pointer}
  .oferta-cerrar:hover{border-color:var(--tinta);color:var(--tinta)}
  .oferta-cuerpo{margin-top:14px;display:flex;gap:14px}
  .oferta-cuerpo img{width:112px;height:112px;flex:none;object-fit:contain;padding:6px;box-sizing:border-box;
    margin:0;background:var(--tile);border:1px solid var(--borde);border-radius:14px}
  .oferta-texto{min-width:0}
  .oferta h3{margin-top:6px;font-family:var(--display);font-size:15px;font-weight:500;line-height:1.35;letter-spacing:0;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .oferta .precios{margin-top:10px}
  .oferta-motivos{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:5px;font-size:12px;line-height:1.5;color:var(--humo)}
  .oferta-motivos li{padding-left:16px;position:relative}
  .oferta-motivos li::before{content:"✓";position:absolute;left:0;color:var(--real);font-weight:600}
  .oferta .cta{margin-top:14px;height:44px;font-size:13px}
  .oferta-hoy{margin-top:10px;font-size:11px;color:var(--humo);text-align:center}
  @media (max-width:520px){.oferta{left:12px;right:12px;bottom:12px;width:auto}}

  @media (prefers-reduced-motion:reduce){*{transition:none!important}}
