/* magnarben.com — "El menù": giallo acido, inchiostro, rosso pomodoro, tovaglia a quadretti */
@font-face { font-family: "Silkscreen"; src: url("/fonts/silkscreen-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Silkscreen"; src: url("/fonts/silkscreen-700.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("/fonts/plexmono-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }

:root {
  color-scheme: light;
  --giallo: #FFE600;
  --inchiostro: #141414;
  --pomodoro: #E4202B;
  --bianco: #FFFFFF;
  --oliva: #5A4F00;
  --f-pixel: "Silkscreen", "Courier New", monospace;
  --f-mono: "IBM Plex Mono", ui-monospace, "Courier New", monospace;
}
* { box-sizing: border-box; }
html, body { margin: 0; }
body { background: var(--giallo); color: var(--inchiostro); font: 15px/1.55 var(--f-mono); }
a { text-decoration: none; }

.pagina { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; }
.inner {
  flex: 1; width: 100%; max-width: 1180px; margin: 0 auto;
  display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 40px 56px; align-items: center;
  padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px));
  padding-block: max(56px, env(safe-area-inset-top, 0px)) 40px;
}
.tag { font: 700 14px/1 var(--f-pixel); letter-spacing: .1em; display: inline-block; background: var(--inchiostro); color: var(--giallo); padding: 8px 10px; }
h1 { margin: 18px 0 0; font: 700 clamp(40px, 6.4vw, 88px)/.92 var(--f-pixel); letter-spacing: -.01em; text-wrap: balance; }
h1 em { font-style: normal; color: var(--pomodoro); text-shadow: 6px 6px 0 var(--inchiostro); }
.sotto { margin: 22px 0 0; max-width: 34ch; }

.piatti { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.piatto {
  background: var(--bianco); border: 4px solid var(--inchiostro); box-shadow: 6px 6px 0 var(--inchiostro);
  display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 6px 12px; min-width: 0; text-align: center;
}
.piatto canvas { width: 64px; height: 64px; image-rendering: pixelated; image-rendering: crisp-edges; display: block; }
.piatto b { font: 700 15px/1.1 var(--f-pixel); text-transform: uppercase; }
.piatto small { font: 400 11px/1.2 var(--f-mono); color: var(--oliva); }

.tovaglia {
  margin-top: 24px; border-top: 6px solid var(--inchiostro);
  background:
    linear-gradient(90deg, rgba(228, 32, 43, .55) 50%, transparent 0) 0 0 / 44px 44px,
    linear-gradient(rgba(228, 32, 43, .55) 50%, transparent 0) 0 0 / 44px 44px,
    var(--bianco);
  padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px));
  padding-block: 44px max(52px, env(safe-area-inset-bottom, 0px));
  display: flex; justify-content: center;
}
.lavagna {
  background: var(--inchiostro); color: var(--bianco); padding: 22px 26px; box-shadow: 8px 8px 0 rgba(20, 20, 20, .35);
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px 22px; text-align: center;
}
.lavagna p { margin: 0; font: 700 22px/1.1 var(--f-pixel); }
.btn {
  display: inline-block; font: 700 18px/1 var(--f-pixel); color: var(--bianco); background: var(--pomodoro);
  padding: 14px 18px; box-shadow: 4px 4px 0 var(--giallo); text-transform: uppercase;
}
.btn:hover { background: #FF3B45; }
.btn:focus-visible { outline: 3px solid var(--giallo); outline-offset: 5px; }

@media (max-width: 760px) {
  .inner { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-block: max(36px, env(safe-area-inset-top, 0px)) 28px; }
  .piatto canvas { width: 48px; height: 48px; }
  .piatto b { font-size: 12px; }
}
