/* A vendégoldali étlap kiegészítései a látványterv (salute.css) fölött. A salute.css változatlan marad: itt csak az van,
   ami a látványtervben nincs (a Twigből adódó jelölések, a nyelvfüggő feliratok, a kosár nélküli tételablak lába). */

/* ---------- Nyelvváltó: a látványtervben gomb, itt hivatkozás (más-más oldal, nem JS-állapot) ---------- */
.lang-switch a {
  padding: 4px 10px; font-size: var(--t-xs); color: var(--ink-on-dark-soft); text-decoration: none; display: inline-flex; align-items: center;
}
.lang-switch a[aria-current="true"] { background: var(--carbone-3); color: var(--ink-on-dark); }
.site-footer nav a[aria-current="true"] { color: var(--ink-on-dark); }

/* ---------- Nyelvfüggő feliratok: a salute.css-ben magyar szöveg áll a CSS-ben, itt a Twig adja a megfelelő nyelvűt ---------- */
.chip.exclude[aria-pressed="true"]::before { content: attr(data-prefix); }
.ing[aria-pressed="false"]::after { content: attr(data-off); }

/* ---------- Jelölések, amik a látványtervben nincsenek ---------- */
.item-name > span:not(.item-no) { text-transform: uppercase; }
.diet.local-only { border: 1px solid color-mix(in srgb, currentColor 45%, transparent); }
/* a betétdíj felirata hosszú („+50 Ft visszaváltási díj házhozszállításkor”, a felhasználó kérése, 2026-10-25): két sorba törik,
   különben telefonon kiszorítja a tétel nevét */
.item-deposit { font-size: .7rem; line-height: 1.3; opacity: .8; text-align: right; max-width: 7rem; text-wrap: balance; }

/* ---------- Tételablak: csere-csoport tetszőleges számú opcióval; az összetevő, ami nem vehető le ---------- */
/* legfeljebb 3 oszlop (a sablon korlátozza): egy elem legalább a sor harmada, a többi új sorba törik (a felhasználó kérése, 2026-10-25) */
.seg { grid-template-columns: repeat(var(--seg-count, 2), minmax(0, 1fr)); }
.ing:disabled { cursor: default; opacity: .75; }
.ing small { font-weight: 500; }

/* Az ablak lába kosár nélkül: az összeg és a Bezárás gomb */
.sheet-total { flex: 1; margin: 0; display: grid; gap: 0; line-height: 1.25; }
.sheet-total span { font-size: var(--t-xs); color: var(--ink-on-light-soft); }
.sheet-total b { font-size: var(--t-lg); font-variant-numeric: tabular-nums; }
.sheet-total small { font-size: .7rem; color: var(--ink-on-light-soft); }
.item-sheet .sheet-foot .btn { flex: none; }

/* ---------- Fejléc: a még nem létező oldal menüpontja inaktív (span, nem hivatkozás); mellette a mobil menü is így listázza ---------- */
.main-nav .nav-soon {
  font-size: var(--t-sm); color: var(--ink-on-dark-soft); padding: 6px 0; border-bottom: 1px solid transparent; opacity: .55; cursor: default;
}
@media (max-width: 900px) { .main-nav .nav-soon { padding: 12px 0; font-size: var(--t-md); border-bottom: 1px solid var(--carbone-3); } }

/* ---------- Az étlap és az itallap végén az átnavigáló link ---------- */
.page-switch { margin-top: 32px; display: flex; justify-content: center; }

/* ---------- Az ár nem törik több sorba (a szóköz a terv szerint közönséges szóköz, nem nem-törhető) ---------- */
.item-price, .price, .extra small, .seg small, .sheet-total b { white-space: nowrap; }

/* ---------- Kiszerelések (rendszerterv 4.1): a tétel jobb oldalán külön sor mindegyiknek, a saját árával.
   A látványterv egy sorban, perjellel mutatja („800 Ft / 1 500 Ft”); itt a felirat balra, az ár jobbra, az árak egymás alatt. ---------- */
.sizes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: auto auto; justify-content: end; column-gap: 16px; row-gap: 8px; }
.size { display: grid; grid-template-columns: subgrid; grid-column: 1 / -1; align-items: baseline; }
.size-label { font-size: var(--t-xs); opacity: .82; white-space: nowrap; text-align: right; }
.size-price { display: grid; justify-items: end; gap: 1px; }
@media (max-width: 480px) {
  .sizes { column-gap: 12px; row-gap: 6px; }
}
