/* ============================================================
   theme-menu.css — pagina /menu (QR), standalone
   Stessa identità del sito: crema, verde bosco, terracotta, Georgia.
   Sovrascrive lo skin neutro di style.css; colori da var(--primary)/(--accent).
   ============================================================ */
:root {
  --background: #F6F1E7;
  --surface: #ffffff;
  --text: var(--primary);
  --text-light: #5D675F;
  --border: #D8D0C3;
  --accent-text: #963F27;
  --font-display: Georgia, 'Times New Roman', serif;
  --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;
  --shadow: none;
  --shadow-md: 0 12px 36px rgba(var(--primary-rgb), 0.08);
}
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition-duration: 0.01ms !important; } }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }

h1, h2, h3, .menu-category-title, .section-title { text-transform: none; letter-spacing: 0; font-family: var(--font-display); font-weight: 700; }

/* Testata: crema con logo a colori, niente velo scuro né pattern */
.header { background: var(--background); color: var(--primary); padding: 4.5rem 1.5rem 1.5rem; border-bottom: 1px solid var(--border); }
.header::before, .header::after, .header-decoration { display: none; }
.header-content { animation: none; }
.logo-image { max-width: 260px; filter: none; animation: none; margin-bottom: 0; }
.logo-text, .logo h1 { color: var(--primary); background: none; -webkit-text-fill-color: currentColor; text-shadow: none; font-family: var(--font-display); }
.tagline { text-shadow: none; color: var(--text-light); }

/* Navigazione categorie */
.category-nav { background: var(--background); backdrop-filter: none; border-bottom: 1px solid var(--border); }
.category-btn, .category-tab { border-radius: 8px; min-height: 48px; color: var(--primary); border-color: var(--border); box-shadow: none; }

/* Footer: verde bosco, testo crema */
.footer { background: var(--primary); color: var(--background); }
.footer::before, .footer::after { display: none; }
.footer-section h3 { color: var(--background); }
.footer-section a:hover { color: #fff; text-decoration: underline; }
.allergens-link, .admin-link { border-radius: 8px; opacity: 0.9; }

/* Schede prodotto: senza foto restano testuali; prezzo non definito in tono minore */
.product-card--text .product-content { padding-top: 1.5rem; }
.product-price--ask { font-family: var(--font-body); font-size: 0.95rem; font-weight: 600; color: var(--accent-text); }
/* quattro colonne su desktop: le categorie da 4 voci chiudono la riga */
.category-products { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); }
/* senza foto la scheda non si allunga all'altezza delle vicine */
.product-card--text { align-self: start; }
