:root{--blau:#1f3a5f;--hell:#f4f6f9;--rand:#d5dbe3;--gruen:#1d7a46;--rot:#b3261e;--gelb:#9a6700;color:#1a1d21;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:18px}*{box-sizing:border-box}body{background:var(--hell);margin:0}header.kopf{background:var(--blau);color:#fff;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}header.kopf h1{flex:1;margin:0;font-size:1.1rem}nav.reiter{border-bottom:1px solid var(--rand);white-space:nowrap;background:#e8edf3;gap:.25rem;padding:.5rem 1rem 0;display:flex;overflow-x:auto}nav.reiter button{border:1px solid var(--rand);cursor:pointer;background:#fff;border-bottom:none;border-radius:8px 8px 0 0;padding:.6rem 1rem;font-size:1rem}nav.reiter button.aktiv{background:var(--blau);color:#fff;border-color:var(--blau)}main{max-width:1400px;margin:0 auto;padding:1rem}button{touch-action:manipulation}.karte{border:1px solid var(--rand);background:#fff;border-radius:12px;margin-bottom:1rem;padding:1rem}.zeile{flex-wrap:wrap;align-items:end;gap:.6rem;display:flex}label{color:#4a5361;flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}input,select{border:1px solid var(--rand);border-radius:8px;min-width:7rem;padding:.55rem .6rem;font-size:1.05rem}input[type=checkbox],input[type=radio]{width:auto;min-width:0;accent-color:var(--blau);margin:0}:is(label:has(>input[type=checkbox]),label:has(>input[type=radio])){color:inherit;flex-direction:row;align-items:center;gap:.4rem;font-size:.95rem}:is(.zeile>label:has(>input[type=checkbox]),.zeile>label:has(>input[type=radio])){min-height:var(--feld-hoehe,2.5rem)}input[type=checkbox],input[type=radio]{cursor:pointer;flex:none;width:1.1rem;height:1.1rem}button.taste{border:1px solid var(--blau);background:var(--blau);color:#fff;cursor:pointer;border-radius:10px;min-height:3rem;padding:.7rem 1.1rem;font-size:1.05rem}button.taste.gross{padding:1rem 1.4rem;font-size:1.3rem}button.taste.zweit{color:var(--blau);background:#fff}button.taste.gefahr{color:var(--rot);border-color:var(--rot);background:#fff}button.taste.gefahr:not(:disabled):hover{background:var(--rot);color:#fff}button.taste:disabled{opacity:.5;cursor:default}table.positionen{border-collapse:collapse;width:100%;margin:.8rem 0}main.verwaltung{font-size:16px}main.verwaltung .karte{border-radius:10px;padding:.9rem 1rem}main.verwaltung .karte h2,main.verwaltung .karte h3,main.verwaltung .karte h4{margin:0 0 .5rem;font-size:1.05rem}main.verwaltung .karte h2{font-size:1.2rem}main.verwaltung label{font-size:.8rem}main.verwaltung input:not([type=checkbox]):not([type=radio]),main.verwaltung select{box-sizing:border-box;min-width:6rem;height:2.5rem;padding:0 .55rem;font-size:.95rem}main.verwaltung select{padding-right:2rem}main.verwaltung button.taste{border-radius:8px;min-height:2.5rem;padding:.5rem .9rem;font-size:.95rem}main.verwaltung .zeile{gap:.5rem}main.verwaltung p{margin:.4rem 0}main.verwaltung table.positionen{margin:.5rem 0;font-size:.95rem}main.verwaltung table.positionen th,main.verwaltung table.positionen td{vertical-align:middle;padding:.3rem .4rem}main.verwaltung table.positionen th{color:#4a5361;font-size:.85rem;font-weight:600}main.verwaltung table.positionen button.taste{border-radius:7px;min-height:2rem;padding:.25rem .6rem;font-size:.9rem}main.verwaltung dl.status{gap:.25rem 1rem;font-size:.95rem}main.verwaltung .chips button{min-height:2.25rem;padding:0 .75rem;font-size:.9rem}main.verwaltung .zaehlbrett input{font-size:1.05rem}main.verwaltung .summe{font-size:1.3rem}table.liste{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.95rem}table.liste th,table.liste td{text-align:left;border-bottom:1px solid var(--rand);vertical-align:middle;padding:.3rem .4rem}table.liste th{color:#4a5361;font-size:.85rem;font-weight:600}table.liste td.betrag,table.liste th.betrag{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}table.liste td.aktionen,table.liste th.aktionen{white-space:nowrap;text-align:right;width:1%}table.liste input,table.liste select{width:100%;min-width:4rem;padding:.3rem .45rem;font-size:.95rem}table.liste select{min-width:6rem;max-width:14rem}main.verwaltung .karte h3:not(:first-child),main.verwaltung .karte h4:not(:first-child){margin-top:1rem}table.liste button.taste,button.taste.klein{border-radius:7px;min-height:2rem;padding:.25rem .6rem;font-size:.9rem}.farbpunkt{vertical-align:-1px;border-radius:3px;width:.8rem;height:.8rem;margin-right:.4rem;display:inline-block}table.positionen th,table.positionen td{text-align:left;border-bottom:1px solid var(--rand);padding:.45rem .4rem}table.positionen td.betrag,table.positionen th.betrag{text-align:right;font-variant-numeric:tabular-nums}.summe{text-align:right;font-size:1.6rem;font-weight:700}.hinweis{color:#4a5361;font-size:.9rem}.fehler{color:var(--rot);font-weight:600}.ok{color:var(--gruen);font-weight:600}.warnung{color:var(--gelb);font-weight:600}pre.bon{border:1px dashed var(--rand);white-space:pre;background:#fff;padding:1rem;font-family:Courier New,Courier,monospace;font-size:.95rem;overflow-x:auto}.beleg-druck{grid-template-columns:1fr auto;align-items:start;gap:1rem;display:grid}dl.status{grid-template-columns:max-content 1fr;gap:.3rem 1rem;margin:0;display:grid}dl.status dt{color:#4a5361}dl.status dd{margin:0}.zahlung-dialog{z-index:50;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.zahlung-dialog .karte{text-align:center;width:min(520px,100%)}.zahlung-dialog .betrag{margin:.5rem 0;font-size:2.4rem;font-weight:700}.verkauf-raster{grid-template:"bon gruppen kacheln""tasten gruppen kacheln""tasten aktionen aktionen"/minmax(300px,2fr) 11rem minmax(0,4fr);align-items:start;gap:.8rem;display:grid}.verkauf-raster>.bon-panel{grid-area:bon;margin:0}.verkauf-raster>.tasten-feld{grid-area:tasten;margin:0}.verkauf-raster>.gruppen{grid-area:gruppen}.verkauf-raster>.kachel-feld{grid-area:kacheln;min-height:24rem;margin:0}.verkauf-raster>.zahl-leiste{grid-area:aktionen}.gruppen{flex-direction:column;gap:.5rem;display:flex}button.gruppe{border:1px solid var(--rand);border-left:8px solid var(--gruppe-farbe,var(--blau));text-align:left;cursor:pointer;background:#fff;border-radius:10px;min-height:64px;padding:.5rem .7rem;font-size:1.05rem;font-weight:600}button.gruppe.aktiv{background:var(--gruppe-farbe,var(--blau));color:#fff;border-color:var(--gruppe-farbe,var(--blau))}button.gruppe:active{filter:brightness(.92)}.kacheln{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.6rem;display:grid}button.kachel{color:#fff;text-align:left;cursor:pointer;text-shadow:0 1px 1px #00000040;border:none;border-radius:10px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.4rem;min-height:96px;padding:.6rem;font-size:1rem;line-height:1.2;display:flex}button.kachel:active{filter:brightness(.88);transform:scale(.98)}button.kachel .name{overflow-wrap:anywhere;font-weight:600}button.kachel .preis{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.zahl-leiste{grid-template-columns:auto auto auto auto auto auto auto 1fr 1fr;align-items:stretch;gap:.6rem;display:grid}.zahl-leiste .rabatt-chips,.zahl-leiste .notiz-feld{grid-column:1/-1}.zahl-leiste button.taste.zweit.aktiv{background:var(--gelb);border-color:var(--gelb);color:#fff}button.gruppe{align-items:center;display:flex}.gruppe-icon{flex:none;margin-right:.5rem}.kachel-icon{opacity:.95}.zahl-leiste button.taste.gross{min-height:76px;font-size:1.45rem}.zahl-leiste .zahl-summe{display:none}.zahl-leiste .training-schalter{flex-direction:row;align-items:center;gap:.4rem;font-size:1rem;display:flex}button.taste.bar{background:var(--gruen);border-color:var(--gruen)}.ziffernblock{outline:none;grid-template-columns:1fr;gap:.6rem;display:grid}.ziffernblock:focus-visible{border-radius:12px;box-shadow:0 0 0 3px #9fb6d4}.ziffern-anzeige{text-align:right;font-variant-numeric:tabular-nums;background:var(--hell);border:1px solid var(--rand);border-radius:10px;margin-bottom:.6rem;padding:.4rem .8rem;font-size:2rem;font-weight:700}.ziffern-tasten{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.ziffern-tasten button{border:1px solid var(--rand);cursor:pointer;background:#fff;border-radius:10px;min-height:58px;font-size:1.4rem}.ziffern-tasten button:active{background:#dfe7f1}.ziffern-seite{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.ziffern-seite input{width:100%;min-width:0}.ziffern-seite .chips{width:100%}.ziffern-seite button.taste.gross{flex:1;min-height:56px;font-size:1.15rem;width:auto!important}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chips button{border:1px solid var(--rand);cursor:pointer;background:#fff;border-radius:999px;min-height:44px;padding:0 .9rem;font-size:1rem}.chips button.aktiv{background:var(--blau);color:#fff;border-color:var(--blau)}.stepper{border:1px solid var(--rand);background:#fff;border-radius:10px;align-items:center;display:inline-flex;overflow:hidden}.stepper button{cursor:pointer;background:#fff;border:none;min-width:46px;min-height:46px;font-size:1.4rem}.stepper button:active{background:#dfe7f1}.stepper span{text-align:center;min-width:2.6rem;font-weight:600}.bon-panel h2{color:#4a5361;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.bon-liste{max-height:40vh;margin:0;padding:0;list-style:none;overflow:auto}.bon-liste li{border-bottom:1px solid var(--rand);grid-template-columns:1fr auto;align-items:center;gap:.3rem .6rem;padding:.5rem 0;display:grid}.bon-liste .bez{overflow-wrap:anywhere;grid-column:1/-1;font-weight:600}.bon-liste .einzel{color:#4a5361;margin-left:.4rem;font-size:.85rem;font-weight:400;display:inline}.bon-liste .betrag{font-variant-numeric:tabular-nums;text-align:right;min-width:5.5rem;font-weight:600}.bon-summe{justify-content:space-between;align-items:baseline;margin:.8rem 0 .4rem;font-size:1.2rem;display:flex}.bon-summe strong{font-variant-numeric:tabular-nums;font-size:2.4rem}@media (width<=1100px){.verkauf-raster{grid-template-columns:minmax(280px,2fr) 9rem minmax(0,3fr)}}@media (width<=900px){.verkauf-raster{grid-template-columns:1fr;grid-template-areas:"gruppen""kacheln""tasten""bon""aktionen"}.verkauf-raster>.kachel-feld{min-height:0}.gruppen{flex-direction:row;padding-bottom:.2rem;overflow-x:auto}button.gruppe{border-left-width:6px;flex:none;min-height:52px}.zahl-leiste{z-index:2;background:var(--hell);grid-template-columns:1fr 1fr;padding:.5rem 0;position:sticky;bottom:0}.zahl-leiste button.taste.zweit{min-height:44px;padding:.3rem .5rem;font-size:.95rem}.zahl-leiste .training-schalter{grid-column:1/-1}.zahl-leiste .zahl-summe{text-align:right;font-variant-numeric:tabular-nums;grid-column:1/-1;font-size:1.6rem;font-weight:700;display:block}.bon-liste{max-height:30vh}}@media (width<=600px){.kacheln{grid-template-columns:repeat(2,1fr)}button.kachel{min-height:80px;padding:.5rem}}@media print{header,nav,.kein-druck{display:none!important}main{max-width:none;padding:0}pre.bon{border:none;font-size:11pt}}.rueckgeld-anzeige{text-align:center;background:#fff8e1;border-color:#d9a400;font-size:1.3rem}.rueckgeld-anzeige strong{font-size:2rem}.abschluss-schritte{gap:.4rem;margin:.5rem 0 1rem;padding:0;list-style:none;display:grid}.abschluss-schritte .schritt{align-items:baseline;gap:.6rem;display:flex}.schritt-zeichen{border:2px solid var(--rand);border-radius:50%;flex:none;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-weight:700;display:inline-flex}.schritt.erledigt .schritt-zeichen{background:var(--gruen);border-color:var(--gruen);color:#fff}.schritt.warnung .schritt-zeichen{background:var(--gelb);border-color:var(--gelb);color:#fff}.schritt.uebersprungen{color:#7a8290}.zaehlbrett{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.5rem;margin:.5rem 0;display:grid}.zaehlbrett label{flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.zaehlbrett input{text-align:right;box-sizing:border-box;width:100%;padding:.4rem;font-size:1.2rem}.kundenanzeige{color:#fff;box-sizing:border-box;background:#1f3a5f;flex-direction:column;min-height:100vh;padding:3vh 4vw;font-size:clamp(1.4rem,3vw,2.6rem);display:flex}.kundenanzeige header{opacity:.8;margin-bottom:2vh;font-size:.7em}.kundenanzeige h1{margin:0 0 3vh;font-size:2.2em}.kundenanzeige-mitte{flex-direction:column;flex:1;justify-content:center;display:flex}.kundenanzeige-liste{flex:1;margin:0;padding:0;list-style:none;overflow:hidden}.kundenanzeige-liste li,.kundenanzeige-zeile,.kundenanzeige-summe{justify-content:space-between;gap:2vw;padding:.6vh 0;display:flex}.kundenanzeige-summe{border-top:2px solid #ffffff80;margin-top:2vh;padding-top:2vh;font-size:1.6em;font-weight:700}.kundenanzeige-zeile.gross{font-size:1.4em;font-weight:700}.kuerzel{opacity:.7;margin-left:.4em;font-size:.6em;display:none}@media (hover:hover) and (pointer:fine){.kuerzel{display:inline}}.kunden-treffer{gap:.3rem;width:100%;margin:.2rem 0 0;padding:0;list-style:none;display:grid}.kunden-treffer button{text-align:left;border:1px solid var(--rand);cursor:pointer;background:#fff;border-radius:8px;width:100%;min-height:48px;padding:.4rem .8rem;font-size:1rem}.kunden-treffer button:hover{background:#eef3fb}.pin-block{grid-template-columns:repeat(3,1fr);gap:.4rem;max-width:18rem;margin:.6rem auto;display:grid}.pin-block .taste{min-height:52px;font-size:1.3rem}.zahlung-dialog .karte.bar-dialog{width:min(720px,100%)}.geld-brett{flex-wrap:wrap;justify-content:center;gap:.35rem;margin:.4rem 0;display:flex}.geld-taste{border:1px solid var(--rand);cursor:pointer;background:#fff;border-radius:10px;padding:.25rem;line-height:0}.geld-taste:active{transform:scale(.95)}.geld-taste svg{display:block}.gegeben-zeile{justify-content:center;align-items:flex-end}.gegeben-teile{align-self:center}.rueckgeld-stuecke{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:.5rem;display:flex}.rueckgeld-stueck{align-items:center;gap:.3rem;display:inline-flex}.ziffern-mengenhinweis{text-align:right;min-height:1.1rem;margin:.15rem 0 .3rem;font-size:.8rem}@media (width>=901px) and (height>=600px){#app:has(>main.verkauf){flex-direction:column;height:100dvh;display:flex;overflow:hidden}main.verkauf{flex:1;width:100%;max-width:none;min-height:0;padding:.6rem .8rem}main.verkauf .verkauf-raster{grid-template-rows:minmax(0,1fr) auto auto;align-items:stretch;gap:.6rem;height:100%}main.verkauf .verkauf-raster>.bon-panel{flex-direction:column;min-height:0;padding:.7rem .9rem;display:flex;overflow-y:auto}main.verkauf .bon-panel .bon-liste{flex:auto;min-height:4rem;max-height:none}main.verkauf .verkauf-raster>.tasten-feld{min-height:0;padding:.7rem .9rem;overflow-y:auto}main.verkauf .verkauf-raster>.gruppen{overscroll-behavior:contain;min-height:0;padding-right:.15rem;overflow-y:auto}main.verkauf .gruppen button.gruppe{flex:none}main.verkauf .verkauf-raster>.kachel-feld{overscroll-behavior:contain;min-height:0;overflow-y:auto}main.verkauf .zahl-leiste{flex-wrap:wrap;align-items:stretch;gap:.5rem;display:flex}main.verkauf .zahl-leiste>*{flex:none}main.verkauf .zahl-leiste .rabatt-chips,main.verkauf .zahl-leiste .notiz-feld{flex:100%}main.verkauf .zahl-leiste button.taste.gross{flex:9rem;min-height:64px}main.verkauf .zahl-leiste button.taste.zweit{min-height:64px;padding:.4rem .8rem}}@media (width>=901px) and (height>=600px) and (height<=950px){main.verkauf .ziffern-anzeige{margin-bottom:.3rem;padding:.25rem .7rem;font-size:1.6rem}main.verkauf .ziffern-tasten button{min-height:46px;font-size:1.25rem}main.verkauf .ziffern-tasten{gap:.35rem}main.verkauf .ziffernblock,main.verkauf .ziffern-seite{gap:.4rem}main.verkauf .ziffern-seite .chips button{min-height:38px;padding:0 .7rem}main.verkauf .ziffern-seite button.taste.gross{min-height:46px}main.verkauf .stepper button{min-width:40px;min-height:40px}main.verkauf .bon-summe{margin:.4rem 0 .3rem}main.verkauf .bon-summe strong{font-size:2rem}main.verkauf button.gruppe,main.verkauf .zahl-leiste button.taste.gross,main.verkauf .zahl-leiste button.taste.zweit{min-height:54px}}@media (width>=901px) and (height>=600px) and (height<=820px){main.verkauf .ziffern-anzeige{margin-bottom:.2rem;padding:.15rem .6rem;font-size:1.35rem}main.verkauf .ziffern-mengenhinweis{margin:0 0 .15rem;font-size:.72rem}main.verkauf .ziffern-tasten button{min-height:38px;font-size:1.1rem}main.verkauf .ziffern-tasten{gap:.25rem}main.verkauf .ziffern-seite{gap:.3rem}main.verkauf .ziffern-seite input{padding:.3rem .5rem;font-size:.9rem}main.verkauf .ziffern-seite .chips{flex-wrap:nowrap;gap:.2rem}main.verkauf .ziffern-seite .chips button{flex:1 1 0;min-width:0;min-height:32px;padding:0 .2rem;font-size:.82rem}main.verkauf .stepper button{min-width:34px;min-height:36px;font-size:1.15rem}main.verkauf .ziffern-seite button.taste.gross{min-height:38px;padding:.3rem .6rem;font-size:1rem}main.verkauf .verkauf-raster>.tasten-feld,main.verkauf .verkauf-raster>.bon-panel{padding:.5rem .7rem}main.verkauf .bon-panel h2{margin-bottom:.2rem}main.verkauf .bon-summe strong{font-size:1.7rem}main.verkauf button.gruppe{min-height:48px;font-size:.95rem}main.verkauf .zahl-leiste button.taste.zweit{min-height:46px;padding:.3rem .6rem;font-size:.9rem}main.verkauf .zahl-leiste button.taste.gross{min-height:52px}}select{appearance:none;cursor:pointer;color:inherit;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%234a5361' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .7rem center;background-repeat:no-repeat;background-size:.75rem;padding-right:2rem}input[type=search]{appearance:none}table.liste select{background-position:right .45rem center;padding-right:1.6rem}main.verwaltung table.liste input:not([type=checkbox]):not([type=radio]),main.verwaltung table.liste select{height:2.1rem;padding-top:0;padding-bottom:0}.anmelde-seite{justify-content:center;padding:2rem 1rem;display:flex}.anmelde-seite .karte{text-align:center;width:min(720px,100%);padding:1.5rem}.anmelde-seite h2{margin:0 0 .5rem;font-size:1.5rem}.anmelde-seite .chips{justify-content:center;gap:.7rem;margin:1rem 0}.anmelde-seite .chips button{border-radius:14px;min-width:10rem;min-height:72px;padding:0 1.4rem;font-size:1.2rem}.zahlung-dialog .karte.kamera-scanner{width:min(560px,100%)}.kamera-bild{aspect-ratio:4/3;background:#000;border-radius:8px;position:relative;overflow:hidden}.kamera-bild video{object-fit:cover;width:100%;height:100%;display:block}.kamera-rahmen{border:2px solid #ffffffd9;border-radius:6px;position:absolute;inset:30% 10%;box-shadow:0 0 0 999px #00000040}.erfassung-scan{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.erfassung-scan .scan-code{flex:1;min-width:12rem}.erfassung-scan .scan-menge input{width:5rem;min-width:0}table.liste td.menge input{width:5.5rem;min-width:0}table.liste td .neu{color:var(--gelb);font-size:.85em}.kuechenmonitor{background:var(--hell);min-height:100vh;padding:1rem}.kuechenmonitor>header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.kuechenmonitor h1{color:var(--blau);margin:0;font-size:1.6rem}.kuechenmonitor .leer{color:#64748b;font-size:1.2rem}.kuechenmonitor .bestellungen{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:start;gap:.75rem;display:grid}.kuechenmonitor .bestellung{border:1px solid var(--rand);border-top:6px solid var(--gruen);background:#fff;border-radius:8px;flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.kuechenmonitor .bestellung.wartet{border-top-color:var(--gelb)}.kuechenmonitor .bestellung.spaet{border-top-color:var(--rot)}.kuechenmonitor .bestellung header{justify-content:space-between;align-items:baseline;gap:.5rem;font-size:1.15rem;display:flex}.kuechenmonitor .bestellung header span{white-space:nowrap;color:#64748b;font-size:.9rem}.kuechenmonitor .bestellung ul{margin:0;padding:0;font-size:1.2rem;list-style:none}.kuechenmonitor .bestellung li{padding:.15rem 0}.kuechenmonitor .bestellung li.storno{color:var(--rot);font-weight:700}.kuechenmonitor .bestellung .notiz{color:var(--gelb);margin:0;font-weight:600}.kuechenmonitor>footer{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem;display:flex}.zahlung-dialog.tischplan-dialog .karte{text-align:left;width:min(1100px,100%)}.tischplan-kopf{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.tischplan-raum{background:var(--hell);border:1px solid var(--rand);border-radius:8px;width:100%;max-height:75vh;position:relative}.raum-tisch{box-sizing:border-box;color:var(--blau);border:2px solid var(--rand);cursor:pointer;background:#fff;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;margin:0;padding:2px;font-size:.85rem;line-height:1.1;display:flex;position:absolute;overflow:hidden}.raum-tisch.rund{border-radius:50%}.raum-tisch.belegt{background:var(--blau);border-color:var(--blau);color:#fff}.raum-tisch.aktiv{box-shadow:0 0 0 3px #f5b400}.raum-tisch small{opacity:.8}.termin-tag{text-align:center;min-width:14rem}.termin-karte{overflow-x:auto}.termin-raster{grid-template-rows:2rem repeat(48,1.15rem);min-width:max-content;display:grid}.termin-kopf{text-align:center;border-bottom:1px solid var(--rand);padding:.3rem;font-weight:600}.termin-zeiten{color:#64748b;grid-column:1;grid-template-rows:repeat(12,1fr);font-size:.75rem;display:grid}.termin-zeiten span{transform:translateY(-.45rem)}.termin-spalte{border-left:1px solid var(--rand);grid-template-rows:repeat(48,1fr);display:grid;position:relative}.termin-feld{cursor:pointer;background:0 0;border:0;border-top:1px dotted #eef1f5;min-height:0;margin:0;padding:0}.termin-feld.volle{border-top:1px solid var(--rand)}.termin-feld:hover{background:#eef4fb}.termin{box-sizing:border-box;text-align:left;border:1px solid #9db7dd;border-left:4px solid var(--blau);color:var(--blau);cursor:pointer;background:#e8f0fb;border-radius:4px;flex-direction:column;align-items:flex-start;margin:0;padding:.15rem .35rem;font-size:.8rem;line-height:1.2;display:flex;position:absolute;left:3px;right:3px;overflow:hidden}.termin.erschienen{border-color:#9fd3b4;border-left-color:var(--gruen);background:#e7f5ed}.termin.abgesagt,.termin.nicht_erschienen{color:#888;background:#f6f6f6;border-color:#ddd #ddd #ddd #aaa;text-decoration:line-through}.termin-jetzt{border-top:2px solid var(--rot);pointer-events:none;z-index:1;position:absolute;left:0;right:0}.zahlung-dialog .karte.termin-dialog{text-align:left;width:min(640px,100%)}
