/* Gäste-Seiten im Plakat-Stil: Grundton (hell oder dunkel) und Farben kommen je Laden als CSS-Variablen.
   Elemente: Keil in Primärfarbe im Kopf, Titel in fetter Condensed-Schrift, Preise in Akzent-Kreisen, Fotos rund rechts. */
@font-face { font-family: 'Barlow Condensed'; font-weight: 400; src: url('/schriften/BarlowCondensed-Regular.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'Barlow Condensed'; font-weight: 600; src: url('/schriften/BarlowCondensed-SemiBold.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'Barlow Condensed'; font-weight: 700; src: url('/schriften/BarlowCondensed-Bold.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'Barlow Condensed'; font-weight: 800; src: url('/schriften/BarlowCondensed-ExtraBold.ttf') format('truetype'); font-display: swap; }

:root {
  --primaer: #b8432f; --dunkel: #7c2a1d; --akzent: #e9b65b; --hintergrund: #f6f2ea; --karte: #fffdf9; --text: #151514; --grau: #6f6a62;
  --auf-akzent: #151514; --auf-primaer: #ffffff; --gruen: #3ec37a; --rot: #d9442b;
  --linie: color-mix(in srgb, var(--text) 14%, transparent);
  --kopf: 'Barlow Condensed', 'Arial Narrow', sans-serif;
  --lauf: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--hintergrund); color: var(--text); font-family: var(--lauf); font-size: 16px; line-height: 1.4; }
a { color: var(--akzent); }
button { font: inherit; cursor: pointer; }
input, select, textarea { font: inherit; }
h1, h2, h3 { font-family: var(--kopf); letter-spacing: 0.02em; margin: 0; }
.verborgen { display: none !important; }
.hinweis { color: var(--grau); font-size: 0.9rem; }
.warnung { background: color-mix(in srgb, var(--akzent) 25%, var(--karte)); border-left: 4px solid var(--akzent); padding: 10px 12px; border-radius: 6px; margin: 12px 0; }
.fehler { background: color-mix(in srgb, var(--rot) 22%, var(--karte)); border-left: 4px solid var(--rot); padding: 10px 12px; border-radius: 6px; margin: 12px 0; }
mark { background: var(--akzent); color: var(--auf-akzent); padding: 0 3px; }

/* Kopf mit Keil (Plakat) */
.held { position: relative; overflow: hidden; background: var(--hintergrund); }
.held::before { content: ''; position: absolute; inset: 0; background: var(--primaer); clip-path: polygon(62% 0, 100% 0, 100% 100%, 40% 100%); }
.held .innen { position: relative; display: grid; grid-template-columns: 92px 1fr; grid-template-rows: auto auto; gap: 4px 14px; align-items: center; padding: 16px 16px 20px; max-width: 760px; margin: 0 auto; }
.held .innen > a:first-child { grid-row: 1 / 3; }
.held .logo { width: 92px; height: 92px; border-radius: 50%; background: #fff; box-shadow: 0 4px 14px rgba(0,0,0,0.35); display: block; }
.held .tel { grid-row: 1; grid-column: 2; justify-self: start; font-family: var(--kopf); font-weight: 800; font-size: 1.75rem; line-height: 1; letter-spacing: 0.03em; color: #fff; text-decoration: none; text-shadow: 0 1px 3px rgba(0,0,0,0.4); white-space: nowrap; }
.held .tel::before { content: '☎ '; font-size: 1.2rem; }
.held .rechts { grid-row: 2; grid-column: 2; text-align: right; color: var(--auf-primaer); text-shadow: 0 1px 2px rgba(0,0,0,0.25); }
.held .ober { font-family: var(--kopf); font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; font-size: 0.82rem; }
.held .slogan { font-family: var(--kopf); font-weight: 800; text-transform: uppercase; font-size: 2.4rem; line-height: 0.95; margin-top: 4px; }
.held .slogan.leer { font-size: 1.9rem; }
.kopf.klein { display: flex; align-items: center; gap: 12px; padding: 12px 16px; max-width: 760px; margin: 0 auto; }
.kopf.klein img { width: 56px; height: 56px; border-radius: 50%; background: #fff; }
.kopf.klein h1 { font-size: 1.7rem; text-transform: uppercase; font-weight: 800; line-height: 1; }
.kopf.klein .unter { color: var(--grau); font-size: 0.85rem; margin-top: 3px; }

/* Status-Pille (wie «NUR 110 METER») */
.chips-zeile { max-width: 760px; margin: 0 auto; padding: 10px 16px 0; }
.status-chip { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 999px; background: var(--akzent); color: var(--auf-akzent); font-family: var(--kopf); font-weight: 700; font-size: 1rem; letter-spacing: 0.05em; text-transform: uppercase; }
.status-chip::before { content: ''; width: 9px; height: 9px; border-radius: 50%; background: var(--gruen); }
.status-chip.zu { background: var(--karte); color: var(--text); border: 1.5px solid var(--linie); }
.status-chip.zu::before { background: var(--rot); }
.status-chip.pause { background: var(--primaer); color: var(--auf-primaer); }
.status-chip.pause::before { background: #fff; }

/* Kategorie-Navigation */
.kat-nav { position: sticky; top: 0; z-index: 5; background: var(--hintergrund); border-bottom: 1px solid var(--linie); }
.kat-nav .innen { display: flex; gap: 8px; overflow-x: auto; padding: 10px 16px; max-width: 760px; margin: 0 auto; scrollbar-width: none; }
.kat-nav .innen::-webkit-scrollbar { display: none; }
.kat-nav a { flex: 0 0 auto; padding: 7px 14px; border-radius: 999px; background: var(--karte); border: 1.5px solid var(--linie); color: var(--text); text-decoration: none; font-family: var(--kopf); font-weight: 700; font-size: 1rem; text-transform: uppercase; letter-spacing: 0.04em; }
.kat-nav a.aktiv { background: var(--akzent); color: var(--auf-akzent); border-color: var(--akzent); }

/* Speisekarte: je Kategorie eine Seite, seitlich wischbar; Gerichte als Kacheln zu zweit nebeneinander */
main.karte { max-width: 760px; margin: 0 auto; padding: 4px 0 110px; }
.seiten { display: flex; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; align-items: flex-start; }
.seiten::-webkit-scrollbar { display: none; }
.seite { flex: 0 0 100%; width: 100%; scroll-snap-align: start; scroll-snap-stop: always; padding: 22px 16px 0; }
.seite h2 { font-size: 2rem; font-weight: 800; text-transform: uppercase; display: flex; align-items: center; gap: 10px; }
.seite h2::before { content: ''; width: 7px; height: 1.5rem; background: var(--primaer); border-radius: 2px; }
.seite h2 .pfeile { margin-left: auto; font-size: 0.8rem; color: var(--grau); font-weight: 600; letter-spacing: 0.05em; }
.seite .kat-hinweis { color: var(--grau); font-size: 0.88rem; margin: 4px 0 10px 17px; }
.gitter { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.kachel { position: relative; background: var(--karte); border-radius: 16px; overflow: visible; box-shadow: 0 2px 8px rgba(0,0,0,0.12); display: flex; flex-direction: column; }
.kachel .bild { position: relative; display: block; width: 100%; aspect-ratio: 3 / 2; border: 0; padding: 0; margin: 0; border-radius: 16px 16px 0 0; background: var(--hintergrund); overflow: hidden; cursor: zoom-in; }
.kachel .bild img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.25s ease; }
.kachel .bild.leer { aspect-ratio: auto; height: 34px; cursor: default; background: transparent; }
.kachel .bild .nr { position: absolute; left: 8px; top: 8px; font-family: var(--kopf); font-weight: 800; font-size: 0.95rem; color: var(--auf-primaer); background: var(--primaer); border-radius: 5px; min-width: 26px; padding: 1px 6px; text-align: center; box-shadow: 0 2px 6px rgba(0,0,0,0.3); }
.kachel .text { display: block; width: 100%; text-align: left; background: transparent; border: 0; color: inherit; padding: 10px 12px 12px; flex: 1; }
.kachel .name { font-family: var(--kopf); font-weight: 800; font-size: 1.2rem; line-height: 1.05; text-transform: uppercase; display: block; padding-right: 54px; }
.kachel .besch { color: var(--grau); font-size: 0.82rem; margin-top: 3px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.kachel .menu-hinweis { color: var(--akzent); font-size: 0.8rem; font-weight: 700; margin-top: 3px; display: block; }
.kachel .bild-rahmen { position: relative; }
.kachel .preis-kreis { position: absolute; right: 8px; bottom: -22px; width: 58px; height: 58px; z-index: 2; }
.kachel .bild-rahmen.leer .preis-kreis { bottom: auto; top: 8px; }
.kachel .bild-rahmen:not(.leer) + .text { padding-top: 12px; }
.kachel.aus { opacity: 0.5; }
.kachel .aus-marke { font-size: 0.75rem; color: var(--rot); font-weight: 700; text-transform: uppercase; display: block; }
.kachel .im-korb { font-size: 0.78rem; color: var(--gruen); font-weight: 700; display: block; }
.preis-kreis { width: 64px; height: 64px; border-radius: 50%; background: var(--akzent); color: var(--auf-akzent); display: flex; flex-direction: column; align-items: center; justify-content: center; font-family: var(--kopf); flex: 0 0 auto; box-shadow: 0 3px 10px rgba(0,0,0,0.25); pointer-events: none; }
.preis-kreis .chf { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.06em; line-height: 1; }
.preis-kreis .zahl { font-size: 1.3rem; font-weight: 800; line-height: 1.05; }
.preis-kreis.lang .zahl { font-size: 1.05rem; }
/* Lupe: beim Darüberfahren wächst das Bild, beim Antippen öffnet es gross */
@media (hover: hover) {
  .kachel .bild:hover { overflow: visible; z-index: 3; }
  .kachel .bild:hover img { transform: scale(1.45); border-radius: 12px; box-shadow: 0 12px 30px rgba(0,0,0,0.5); }
}
.lupe-hg { position: fixed; inset: 0; background: rgba(0,0,0,0.82); z-index: 40; display: flex; align-items: center; justify-content: center; padding: 16px; }
.lupe { position: relative; width: min(96vw, 640px); background: var(--karte); border-radius: 18px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,0.6); }
.lupe img { width: 100%; max-height: 62vh; object-fit: cover; display: block; cursor: zoom-out; }
.lupe .lupe-fuss { display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center; padding: 12px 14px; }
.lupe h3 { font-size: 1.5rem; font-weight: 800; text-transform: uppercase; line-height: 1; }
.lupe .besch { color: var(--grau); font-size: 0.88rem; margin-top: 4px; }
.lupe .knopf { border-radius: 0; }
.lupe .schliessen { position: absolute; right: 8px; top: 6px; color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,0.7); font-size: 1.5rem; }

/* Warenkorb-Leiste (rotes Band) */
.korb-leiste { position: fixed; left: 0; right: 0; bottom: 0; z-index: 20; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: linear-gradient(transparent, var(--hintergrund) 40%); }
.korb-leiste a { display: flex; justify-content: space-between; align-items: center; max-width: 728px; margin: 0 auto; background: var(--primaer); color: var(--auf-primaer); text-decoration: none; padding: 14px 18px; border-radius: 14px; font-family: var(--kopf); font-weight: 800; font-size: 1.25rem; text-transform: uppercase; letter-spacing: 0.03em; box-shadow: 0 6px 18px rgba(0,0,0,0.35); }
.korb-leiste .anz { background: var(--akzent); color: var(--auf-akzent); border-radius: 999px; padding: 1px 10px; margin-right: 8px; }

/* Blatt (Gericht wählen) */
.blatt-hintergrund { position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 30; display: flex; align-items: flex-end; justify-content: center; }
.blatt { background: var(--hintergrund); width: 100%; max-width: 560px; max-height: 92vh; overflow: auto; border-radius: 18px 18px 0 0; padding: 18px 18px calc(18px + env(safe-area-inset-bottom)); }
.blatt .held-bild { width: calc(100% + 36px); margin: -18px -18px 12px; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.blatt .blatt-kopf { display: flex; gap: 12px; align-items: center; padding-right: 36px; }
.blatt h3 { font-size: 1.7rem; font-weight: 800; text-transform: uppercase; line-height: 1; }
.blatt .besch { color: var(--grau); margin: 4px 0 0; }
.wahl-gruppe { margin-top: 14px; }
.wahl-gruppe .titel { font-family: var(--kopf); font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; font-size: 1rem; margin-bottom: 6px; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chips label { border: 1.5px solid var(--linie); background: var(--karte); border-radius: 999px; padding: 9px 14px; cursor: pointer; display: inline-flex; gap: 6px; align-items: center; font-weight: 600; }
.chips label:has(input:checked) { border-color: var(--primaer); background: var(--primaer); color: var(--auf-primaer); }
.chips input { display: none; }
.menu-box { margin-top: 14px; display: flex; gap: 10px; align-items: center; background: var(--karte); border: 1.5px solid var(--linie); border-radius: 12px; padding: 10px 12px; cursor: pointer; }
.menu-box:has(input:checked) { border-color: var(--akzent); }
.menu-box input { width: 22px; height: 22px; accent-color: var(--primaer); }
.menu-box .mb { flex: 1; }
.menu-box .mb small { display: block; color: var(--grau); }
.menge { display: inline-flex; align-items: center; border: 1.5px solid var(--linie); border-radius: 999px; background: var(--karte); }
.menge button { width: 44px; height: 44px; border: 0; background: transparent; font-size: 1.5rem; color: var(--akzent); font-weight: 700; }
.menge span { min-width: 36px; text-align: center; font-weight: 700; }
.blatt textarea, .feld input, .feld select, .feld textarea { width: 100%; border: 1.5px solid var(--linie); border-radius: 10px; padding: 12px; background: var(--karte); color: var(--text); }
.feld input:focus, .feld select:focus, .feld textarea:focus, .blatt textarea:focus { outline: 2px solid var(--akzent); outline-offset: 1px; }
.blatt-fuss { display: flex; gap: 12px; align-items: center; margin-top: 16px; }
.knopf { border: 0; background: var(--primaer); color: var(--auf-primaer); font-family: var(--kopf); font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; padding: 14px 18px; border-radius: 12px; width: 100%; font-size: 1.2rem; }
.knopf.zweit { background: var(--karte); color: var(--text); border: 1.5px solid var(--linie); }
.knopf.leise { background: transparent; color: var(--grau); width: auto; padding: 8px 10px; font-family: var(--lauf); text-transform: none; font-size: 1.2rem; }
.knopf:disabled { opacity: 0.55; cursor: default; }
.schliessen { position: absolute; right: 10px; top: 8px; }

/* Fuss: rotes Band wie «Jetzt bestellen · auch Lieferung» + Angaben */
footer.fuss { margin-top: 36px; }
.band { background: var(--primaer); color: var(--auf-primaer); }
.band .innen { max-width: 760px; margin: 0 auto; padding: 18px 16px 20px; display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center; }
.band .titel { font-family: var(--kopf); font-weight: 800; text-transform: uppercase; font-size: 1.25rem; letter-spacing: 0.04em; }
.band .tel { font-family: var(--kopf); font-weight: 800; font-size: 2.3rem; line-height: 1; color: inherit; text-decoration: none; display: block; margin-top: 2px; }
.band .wa { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 50%; background: #fff; color: #25d366; font-weight: 800; text-decoration: none; font-family: var(--kopf); font-size: 0.9rem; }
.fuss .angaben { max-width: 760px; margin: 0 auto; padding: 16px 16px 130px; color: var(--grau); font-size: 0.88rem; }
.fuss .angaben h3 { color: var(--text); font-size: 1.2rem; text-transform: uppercase; margin-top: 14px; font-weight: 700; }
.fuss .angaben p { margin: 4px 0; }
.rechts-links { margin-top: 16px; }

/* Bestellen & Status */
main.formular { max-width: 640px; margin: 0 auto; padding: 8px 16px 40px; }
main.formular h2 { font-size: 1.7rem; font-weight: 800; text-transform: uppercase; margin: 24px 0 8px; display: flex; align-items: center; gap: 10px; }
main.formular h2::before { content: ''; width: 6px; height: 1.3rem; background: var(--primaer); border-radius: 2px; }
.zeile { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--linie); }
.zeile .l { flex: 1; }
.zeile .l small { display: block; color: var(--grau); }
.zeile .r { font-family: var(--kopf); font-weight: 800; font-size: 1.2rem; white-space: nowrap; }
.zeile .menge { transform: scale(0.85); transform-origin: right center; }
.summe { display: flex; justify-content: space-between; padding: 8px 0; font-size: 1.05rem; }
.summe.total { font-family: var(--kopf); font-weight: 800; font-size: 1.7rem; border-top: 3px solid var(--akzent); margin-top: 4px; padding-top: 10px; text-transform: uppercase; }
.feld { margin-top: 12px; }
.feld label { display: block; font-weight: 600; font-size: 0.92rem; margin-bottom: 5px; }
.feld .hinweis { margin-top: 4px; }
.zwei { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.umschalter { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.umschalter label { border: 1.5px solid var(--linie); background: var(--karte); border-radius: 12px; padding: 14px; text-align: center; font-family: var(--kopf); font-weight: 800; font-size: 1.2rem; text-transform: uppercase; cursor: pointer; }
.umschalter label:has(input:checked) { border-color: var(--primaer); background: var(--primaer); color: var(--auf-primaer); }
.umschalter input { display: none; }
.radio-liste label { display: flex; gap: 10px; align-items: flex-start; background: var(--karte); border: 1.5px solid var(--linie); border-radius: 12px; padding: 12px; margin-top: 8px; cursor: pointer; }
.radio-liste label:has(input:checked) { border-color: var(--akzent); }
.radio-liste input { margin-top: 3px; accent-color: var(--primaer); }
.radio-liste small { display: block; color: var(--grau); }
.agb { display: flex; gap: 10px; align-items: flex-start; margin-top: 16px; }
.agb input { width: 22px; height: 22px; margin-top: 2px; accent-color: var(--primaer); }
.leer { text-align: center; padding: 40px 10px; color: var(--grau); }

/* Statusseite */
.status-kopf { text-align: center; padding: 22px 0 6px; }
.status-kopf .nummer { font-family: var(--kopf); font-weight: 800; font-size: 3.6rem; line-height: 1; color: var(--akzent); }
.status-kopf .zustand { font-family: var(--kopf); font-size: 1.5rem; font-weight: 800; text-transform: uppercase; margin-top: 6px; }
.status-kopf .zeit { color: var(--grau); margin-top: 4px; }
.schritte { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 18px 0; }
.schritte div { text-align: center; font-size: 0.78rem; color: var(--grau); padding-top: 8px; border-top: 4px solid var(--linie); }
.schritte div.erledigt { border-color: var(--gruen); color: var(--text); font-weight: 600; }
.schritte div.aktiv { border-color: var(--akzent); color: var(--akzent); font-weight: 700; }
.status-box { background: var(--karte); border: 1px solid var(--linie); border-radius: 12px; padding: 14px; margin-top: 12px; }
.status-box.rot { border-color: var(--rot); }
.status-box.gelb { border-color: var(--akzent); }
.whatsapp { background: #25d366; color: #fff; }
.pulsiert { animation: puls 1.2s ease-in-out infinite; }
@keyframes puls { 50% { opacity: 0.55; } }

/* Rechtsseiten */
.rechtstext { max-width: 720px; margin: 0 auto; padding: 8px 16px 60px; }
.rechtstext h1 { font-size: 2rem; font-weight: 800; text-transform: uppercase; }
.rechtstext h2 { font-size: 1.3rem; margin-top: 20px; }
.rechtstext .stand { color: var(--grau); margin-top: 24px; }

@media (min-width: 640px) {
  .held .innen { grid-template-columns: 120px 1fr; padding: 26px 16px; }
  .held .logo { width: 120px; height: 120px; }
  .held .tel { font-size: 2.2rem; }
  .held .slogan { font-size: 3.2rem; }
  .kachel .name { font-size: 1.35rem; }
  .blatt { border-radius: 18px; margin-bottom: 20px; }
  .blatt-hintergrund { align-items: center; }
}

/* Modul «Aktionen»: Band unter dem Öffnungsstatus, roter Preis-Kreis, «statt»-Preis */
.aktionen { max-width: 760px; margin: 0 auto; padding: 10px 16px 0; display: grid; gap: 8px; }
.demo-band { background: #151514; color: #e9b65b; text-align: center; font-weight: 700; font-size: 0.85rem; padding: 6px 12px; letter-spacing: 0.02em; }
.aktion-band { background: var(--primaer); color: var(--auf-primaer); border-radius: 14px; padding: 10px 14px; box-shadow: 0 4px 14px rgba(0,0,0,0.25); }
.aktion-band strong { display: block; font-family: var(--kopf); font-weight: 800; font-size: 1.45rem; line-height: 1.05; text-transform: uppercase; letter-spacing: 0.02em; }
.aktion-band span { display: block; font-size: 0.9rem; opacity: 0.9; }
.preis-kreis.aktion { background: var(--primaer); color: var(--auf-primaer); }
.kachel .statt { display: block; font-size: 0.8rem; color: var(--grau); }
/* Modul «Gutscheine»: Code-Feld und Rabattzeile auf der Bestellseite */
.gutschein-feld { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.gutschein-feld input { border: 1.5px solid var(--linie); border-radius: 10px; padding: 12px; background: var(--karte); color: var(--text); text-transform: uppercase; min-width: 0; }
.gutschein-feld .knopf { width: auto; padding: 12px 16px; font-size: 1.05rem; }
#g-info.ok { color: var(--gruen); font-weight: 700; }
.summe.rabatt { color: var(--gruen); font-weight: 700; }
/* Modul «Stempelkarte»: Hinweis beim Bestellen, Karte auf der Statusseite */
.stempel-hinweis { background: color-mix(in srgb, var(--akzent) 18%, var(--karte)); border-radius: 10px; padding: 10px 12px; margin: 10px 0 0; font-size: 0.92rem; }
.stempel-box { background: var(--karte); border: 1.5px solid var(--akzent); border-radius: 14px; padding: 12px 14px; margin-top: 16px; }
.stempel-box strong { display: block; font-family: var(--kopf); font-weight: 800; font-size: 1.3rem; text-transform: uppercase; }
.stempel-box span { display: block; color: var(--grau); font-size: 0.9rem; margin-top: 6px; }
.stempel { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.stempel i { width: 26px; height: 26px; border-radius: 50%; border: 2px solid var(--akzent); display: inline-flex; align-items: center; justify-content: center; font-style: normal; }
.stempel i.voll { background: var(--akzent); }
.stempel i.ziel { background: var(--primaer); border-color: var(--primaer); color: var(--auf-primaer); font-size: 0.85rem; }
/* Modul «Tischbestellung»: Band «Tisch 5» */
.tisch-band { background: var(--akzent); color: var(--auf-akzent); }
.tisch-band button { background: none; border: 0; padding: 0; color: inherit; text-decoration: underline; font: inherit; }
/* Module «Sprachen»: Sprachwahl DE / EN / TR */
.chips-zeile { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sprachwahl { display: inline-flex; margin-left: auto; border: 1.5px solid var(--linie); border-radius: 999px; overflow: hidden; }
.sprachwahl button { background: transparent; border: 0; color: var(--text); padding: 6px 11px; font-family: var(--kopf); font-weight: 700; font-size: 0.95rem; letter-spacing: 0.04em; }
.sprachwahl button.aktiv { background: var(--akzent); color: var(--auf-akzent); }
.formular > .sprachwahl { float: right; margin-top: 4px; }
