/* =====================================================
   PRINT — A4 LANDSCAPE TRÍPTICO (PRO · 2 PÁGINAS)
   ===================================================== */
@media print{
  /* --- Página y fondo --- */
  @page{ size: A4 landscape; margin: 8mm; } /* margen más pequeño */
  html,body{ background:#fff !important; color:#000 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  body{ margin:0 !important; background-image:none !important; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,Helvetica,Georgia,serif; font-size:10pt; line-height:1.24; letter-spacing:.1px; }
  *,*::before,*::after{ box-shadow:none !important; text-shadow:none !important; }
  body::before,body::after{ content:none !important; display:none !important; }
  body,#carta,.menu{ page-break-before:auto !important; }

  /* --- Oculta todo lo que no es carta --- */
  header,.hero,#card-horario,#contacto,#info,footer,.small-note,.cta-bottom,#loading{ display:none !important; }

  /* --- Contenedor carta --- */
  section{ border:0; padding:0; }
  #carta{ padding:0; }
  #carta h2{ font-size:13pt; font-weight:800; text-transform:uppercase; letter-spacing:.4px; margin:0 0 4mm 0; border-bottom:1px solid #000; padding-bottom:2mm; }

  /* --- Tríptico (3 columnas) compacto --- */
  .menu{
    column-count:3;
    column-gap:9mm;            /* gap reducido */
    column-fill:balance;
    orphans:2; widows:2;
    /* compacta todo el flujo para que quepa en 2 páginas */
  }

  /* Evitar cortes feos dentro de cada bloque */
  .menu-cat,.item,.tags,.desc,img{ break-inside:avoid; page-break-inside:avoid; }

  /* --- Categorías --- */
  .menu-cat{
    border:0 !important; background:transparent !important;
    padding:0 0 3.5mm 0 !important; margin:0 0 5mm 0 !important;
  }
  .menu-cat h3{
    font-size:11pt !important; font-weight:900; text-transform:uppercase; letter-spacing:.6px;
    color:#000 !important; border-bottom:1px solid #000; padding-bottom:1.5mm; margin:0 0 2.5mm 0;
  }
  .menu-cat .cat-desc{ font-size:9pt; color:#333 !important; margin:1mm 0 2.5mm 0 !important; }

  /* --- Items (nombre · puntos · precio) --- */
  .item{
    display:grid; grid-template-columns:1fr max-content;
    gap:1.5mm 4mm; align-items:start;
    padding:.8mm 0; border-bottom:.25pt dotted #666;
  }
  .item:last-child{ border-bottom:0; }
  .item .name{
    font-weight:800; font-size:10pt; color:#000; position:relative; padding-right:2mm;
  }
  .item .name::after{
    content:""; display:block; position:absolute; left:0; right:0; bottom:-.8mm; height:.25pt;
    background:linear-gradient(90deg,#888 0 60%,transparent 60% 100%); background-size:2mm .25pt; opacity:.55;
  }
  .item .desc{ grid-column:1 / -1; font-size:8.8pt; color:#333 !important; margin-top:-.2mm; }
  .price{ font-weight:900; font-size:10pt; color:#000; white-space:nowrap; margin-left:2mm; }

  /* Sin fotos en papel */
  .item-pic{ display:none !important; }

  /* Etiquetas sobrias */
  .tags{ margin-top:.6mm; display:inline-flex; flex-wrap:wrap; gap:1.2mm; }
  .tag,.badge{
    font-size:8pt; font-weight:700; color:#111 !important; border:.3pt solid #999 !important;
    background:transparent !important; padding:.4mm 1.2mm; border-radius:2mm;
  }

  /* Notas legales compactas */
  .menu-notes{ font-size:8.8pt; color:#222 !important; border-top:1px solid #000; padding-top:1.5mm; margin-top:2mm; }

  /* --- Fuerza exactamente 2 páginas (opcional) --- */
  /* Añade la clase .break-here a la categoría donde quieras el salto entre página 1 y 2 */
  .menu-cat.break-here{ break-before:page; }

  /* Si prefieres sin clase, prueba con un corte aproximado por índice (ajusta el número): */
  /* .menu-cat:nth-of-type(5){ break-before:page; } */
}

/* En pantalla, oculta helpers de impresión si los hubiese */
@media screen{ .print-page-header,.print-page-footer{ display:none; } }


@media print{
  /* 1) Más contenido por página */
  @page{ margin: 6mm; }                 /* de 8mm -> 6mm */

  html, body{
    font-size: 9.6pt;                   /* de 10pt -> 9.6pt */
    line-height: 1.2;                   /* de 1.24 -> 1.2 */
  }

  /* 2) Mejor balance de columnas (menos huecos) */
  .menu{
    column-gap: 7mm;                    /* de 9mm -> 7mm */
  }
  /* Permitir partir categorías largas para evitar blancos */
  .menu-cat{ break-inside:auto; page-break-inside:auto; }

  /* 3) Compactar bloques */
  #carta h2{ display:none !important; } /* quita “📜 CARTA” para ganar vertical */
  .menu-cat{ margin: 0 0 3.5mm !important; padding: 0 0 2.5mm !important; }
  .menu-cat h3{
    font-size: 10.6pt !important;
    margin: 0 0 2mm !important;
    padding-bottom: 1mm !important;
  }
  .menu-cat .cat-desc{ display:none !important; }  /* si la usas, suele sobrar en papel */

  .item{
    gap: 1mm 3mm;                       /* de 1.5/4mm -> 1/3mm */
    padding: .6mm 0;                    /* de .8mm -> .6mm */
    border-bottom: .2pt dotted #666;    /* más fino */
  }
  .item:last-child{ border-bottom: 0; }

  .item .name{
    font-size: 9.6pt;                   /* un pelín menor */
    padding-right: 1.5mm;
  }
  /* Quita la línea decorativa (ahorra altura y evita desbordes) */
  .item .name::after{ content: none !important; }

  .item .desc{
    font-size: 8.4pt;                   /* más compacta */
    margin-top: 0;
  }

  .price{
    font-size: 9.6pt;
    margin-left: 1.5mm;
    font-weight: 800;
  }

  /* 4) Etiquetas: muy discretas o fuera (elige) */
  /* Opción A: compactas */
  .tags{ margin-top: .3mm; gap: .8mm; }
  .tag,.badge{
    font-size: 7pt; padding: .2mm .8mm; border-width: .25pt;
  }
  /* Opción B: ocultar del todo para ganar línea
     .tags{ display:none !important; } 
  */

  /* 5) Salto limpio a 2 páginas (ajusta el índice si quieres forzar corte) */
  /* .menu-cat:nth-of-type(5){ break-before: page; } */
}


@media print {
  /* Cada sección del menú se imprime sin cortarse en medio */
  .menu-section {
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 1.5em;
  }

  /* Los títulos de sección se diferencian más */
  .menu-section h2 {
    font-size: 1.6em;
    font-weight: bold;
    margin-bottom: 0.5em;
    border-bottom: 2px solid #000;
    padding-bottom: 0.2em;
  }

  /* Opcional: que cada sección ocupe columna completa si hace falta */
  .menu-section {
    display: block;
    width: 100%;
  }
}


