
:root{--paper:#FFFBF5;--ink:#24201C;--ink-2:#5A5148;--terra:#9C3412;--sage:#2F5D50;--line:#E4D9C8;--sand:#F6EEE2;
  --display:'Iowan Old Style','Hoefler Text','Palatino Linotype',Palatino,Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:var(--sans);color:var(--ink);background:#D9D4CC;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.istruzioni{max-width:210mm;margin:16px auto;background:#FFFFFF;border-radius:10px;padding:14px 18px;font-size:14px;line-height:1.5}
.istruzioni h1{font-family:var(--display);margin:0 0 6px;font-size:22px}
/* I link del riquadro istruzioni si TOCCANO col dito (Artur apre questi fogli
   dal telefono): 44 px di altezza minima, come tutti i bersagli del sito
   (WCAG 2.5.5 / 2.5.8). Il link alla versione a caratteri grandi era alto
   37,5 px ed era l'ultimo bersaglio sotto misura rimasto. inline-flex invece
   di inline-block così il testo resta centrato anche quando sta su una riga
   sola. Il riquadro non si stampa: qui l'altezza non costa carta. */
.istruzioni a{color:var(--terra);display:inline-flex;align-items:center;min-height:44px;padding:4px 2px}
.istruzioni ul{margin:6px 0;padding-left:20px}
.istruzioni .da-fare{background:#FFF3E8;border-left:4px solid var(--terra);padding:8px 12px;margin:10px 0;border-radius:0 6px 6px 0}
.istruzioni button{font:inherit;font-weight:700;padding:8px 14px;border-radius:999px;border:1.5px solid var(--ink);background:#FFFFFF;cursor:pointer;margin:4px 6px 0 0}
.istruzioni button[aria-pressed="true"]{background:var(--ink);color:#FFFFFF}
.manca{color:#B3261E;font-weight:800;border:1.5px dashed #B3261E;padding:0 .4em;border-radius:3px}
/* Fascia "BOZZA — NON STAMPARE" delle build di ANTEPRIMA. Sta DENTRO al foglio e
   si stampa apposta: il riquadro .istruzioni sparisce in stampa, quindi non
   basterebbe. È in posizione assoluta per non spostare di un millimetro
   l'impaginazione dei fogli a misura fissa (A4/A5/A6). Cornice nera spessa
   perché su una stampante in bianco e nero il rosso diventa grigio. */
.foglio{position:relative}
.bozza-stampa{position:absolute;top:0;left:0;right:0;z-index:9;margin:0;
  background:#B42318;color:#FFFFFF;border:1.2mm solid #000000;
  font-size:13pt;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-align:center;
  padding:2.2mm 3mm;line-height:1.25;-webkit-print-color-adjust:exact;print-color-adjust:exact}
@media print{body{background:#FFFFFF}.istruzioni{display:none}}
/* un orario ("ven–sab 07:00–01:30") non va mai a capo a metà: si spezza solo fra un giorno e l'altro */
.nw{white-space:nowrap}

@page{size:A4 portrait;margin:13mm 12mm 12mm}
:root{--col:2;--gap:8mm;--t-cat:15pt;--t-sub:8pt;--t-nome:9.6pt;--t-desc:8.1pt;--t-prezzo:9.6pt;--t-all:7.4pt;--riga:1.28;--salto:2.4mm}
body.grande{--col:1;--gap:0;--t-cat:20pt;--t-sub:11pt;--t-nome:13.5pt;--t-desc:11pt;--t-prezzo:13.5pt;--t-all:10.5pt;--riga:1.35;--salto:3.4mm}
.foglio{width:210mm;margin:0 auto 16px;background:#FFFFFF;padding:13mm 12mm 12mm}
@media print{.foglio{width:auto;margin:0;padding:0}}

/* ---- testata ---- */
.testa{border-bottom:0.8mm solid var(--ink);padding-bottom:3mm;margin-bottom:3mm;display:flex;align-items:flex-end;justify-content:space-between;gap:6mm}
.marchio{margin:0;font-family:var(--display);font-weight:600;font-size:34pt;line-height:.92;letter-spacing:-.01em}
.marchio span{color:var(--terra)}
.sotto{margin:1mm 0 0;font-size:8.5pt;letter-spacing:.22em;text-transform:uppercase;color:var(--sage);font-weight:700}
.testa .dx{margin:0;text-align:right;font-size:8.2pt;line-height:1.4;color:var(--ink-2);max-width:96mm}
body.grande .testa .dx{font-size:10.5pt;max-width:95mm}

/* ---- fascia della legenda breve, in cima alla prima pagina ---- */
.legenda-breve{border:0.3mm solid var(--line);border-left:1.2mm solid var(--sage);padding:2.2mm 3mm;margin:0 0 3.5mm;font-size:7.6pt;line-height:1.45;break-inside:avoid}
body.grande .legenda-breve{font-size:10pt}
.legenda-breve b{color:var(--sage)}
.legenda-breve .n{font-weight:800}

/* ---- corpo a colonne ---- */
.corpo{column-count:var(--col);column-gap:var(--gap);column-rule:0.2mm solid var(--line)}
.cat{break-inside:auto;margin:0 0 var(--salto)}
.cat h2{margin:0 0 1.2mm;font-family:var(--display);font-size:var(--t-cat);font-weight:700;line-height:1.1;
  border-bottom:0.5mm solid var(--ink);padding-bottom:.8mm;break-after:avoid;break-inside:avoid}
.sub{margin:2.4mm 0 .8mm;font-size:var(--t-sub);font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:var(--sage);break-after:avoid;break-inside:avoid}
ul{list-style:none;margin:0;padding:0}
li{break-inside:avoid;padding:.55mm 0;font-size:var(--t-nome);line-height:var(--riga)}
.riga{display:flex;align-items:baseline;gap:1.2mm}
.nm{flex:0 1 auto;font-weight:600}
.surg{color:var(--terra);font-weight:800}
.all{flex:0 0 auto;font-size:var(--t-all);color:var(--sage);font-weight:700;white-space:nowrap;letter-spacing:.02em}
.all.vuoto{color:var(--ink-2);font-weight:600}
.dots{flex:1 1 4mm;border-bottom:0.35mm dotted #8E8579;transform:translateY(-.9mm);min-width:3mm}
.pr{flex:0 0 auto;font-weight:700;font-size:var(--t-prezzo);white-space:nowrap;font-variant-numeric:tabular-nums}
.ds{margin:.2mm 0 0;font-size:var(--t-desc);line-height:1.3;color:var(--ink-2);padding-right:14mm}
.nd{font-size:var(--t-desc);color:var(--terra);font-weight:700}
/* riga delle tracce: testo di sicurezza, NON schiarito (nero pieno) */
.tr-carta{margin:.2mm 0 0;font-size:var(--t-all);line-height:1.3;color:var(--ink);font-weight:600;padding-right:14mm}
.nota-cat{margin:1.2mm 0 0;font-size:var(--t-all);line-height:1.35;color:var(--ink);font-weight:700;break-inside:avoid}
/* giro 4: sezione "Componi il tuo panino" (solo anteprima: etichette rosse delle bozze) */
.cmp-spiega{margin:0 0 .8mm;font-size:var(--t-desc);line-height:1.3;color:var(--ink)}
.bozza-riga{display:inline-block;margin-left:1mm;padding:0 1mm;font-size:var(--t-all);font-weight:800;color:#FFFFFF;background:#B3261E}

/* ---- piede: legenda completa e dati del locale ---- */
.piede{break-before:auto;margin-top:5mm;border-top:0.8mm solid var(--ink);padding-top:3mm;font-size:8pt;line-height:1.45}
body.grande .piede{font-size:11pt}
.piede h2{margin:0 0 1.5mm;font-family:var(--display);font-size:var(--t-cat);font-weight:700}
.legenda{list-style:none;margin:0 0 3mm;padding:0;column-count:var(--col);column-gap:var(--gap);font-size:7.8pt}
body.grande .legenda{font-size:10.5pt;column-count:2}
.legenda li{break-inside:avoid;padding:.2mm 0;display:flex;gap:1.5mm}
.legenda .n{font-weight:800;color:var(--sage);flex:0 0 5mm}
.avvisi{margin:0 0 2.5mm;padding:2.2mm 3mm;border:0.3mm solid var(--line);border-left:1.2mm solid var(--terra);break-inside:avoid}
.avvisi p{margin:0 0 1mm}
.avvisi p:last-child{margin:0}
.locale{margin:0;padding-top:2mm;border-top:0.3mm solid var(--line);font-size:7.6pt;line-height:1.45;color:var(--ink-2);display:flex;justify-content:space-between;gap:6mm;flex-wrap:wrap}
body.grande .locale{font-size:10pt}
.locale b{color:var(--ink)}
.locale .agg{text-align:right;white-space:nowrap}
