:root,:root[data-schema=hell]{--tinte: #1b2434;--papier: #f4f6f9;--flaeche: #ffffff;--flaeche-2: #fafbfd;--linie: #dde3ec;--linie-stark: #c4cdd9;--siegel: #7a1f2b;--siegel-dunkel: #611722;--siegel-hell: #fbeef0;--gruen: #1d5c3a;--gruen-hell: #e7f3ec;--orange: #a05a1f;--orange-hell: #faf0e4;--grau: #55627a;--grau-hell: #66748e;--fokus: #2f5fa8;--schatten-1: 0 1px 2px rgba(20, 28, 45, .06);--schatten-2: 0 3px 10px rgba(20, 28, 45, .09);--schatten-3: 0 14px 40px rgba(20, 28, 45, .2);--radius-1: .35rem;--radius-2: .55rem;--radius-3: .8rem}:root[data-schema=dunkel]{--tinte: #e9edf4;--papier: #12161d;--flaeche: #1a202b;--flaeche-2: #171c26;--linie: #2b3444;--linie-stark: #3a4558;--siegel: #b8515f;--siegel-dunkel: #d06a77;--siegel-hell: #34222a;--gruen: #52b183;--gruen-hell: #1c2f26;--orange: #d1904f;--orange-hell: #322718;--grau: #9aa6bb;--grau-hell: #8794ab;--fokus: #6ea0e8;--schatten-1: 0 1px 2px rgba(0, 0, 0, .4);--schatten-2: 0 3px 10px rgba(0, 0, 0, .45);--schatten-3: 0 14px 40px rgba(0, 0, 0, .6)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,system-ui,sans-serif;background:var(--papier);color:var(--tinte);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;transition:background .2s,color .2s}h1,h2,h3{line-height:1.25;letter-spacing:-.012em;margin:0}button{font:inherit;cursor:pointer;border:none;border-radius:var(--radius-1);background:var(--siegel);color:#fff;padding:.55rem 1.05rem;font-weight:600;transition:background .12s,transform .06s,box-shadow .12s}button:hover{background:var(--siegel-dunkel)}button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--fokus);outline-offset:2px}.zweitrangig{background:var(--flaeche);color:var(--tinte);border:1px solid var(--linie-stark);font-weight:550}.zweitrangig:hover{background:var(--flaeche-2);border-color:var(--grau-hell)}.klein{font-size:.84rem;padding:.34rem .7rem}input,select{font:inherit;color:var(--tinte);background:var(--flaeche);border:1px solid var(--linie-stark);border-radius:var(--radius-1);padding:.5rem .65rem;transition:border-color .12s,box-shadow .12s}input:focus,select:focus{border-color:var(--fokus);box-shadow:0 0 0 3px color-mix(in srgb,var(--fokus) 18%,transparent)}label{font-weight:600;font-size:.86rem}.fehler{background:var(--siegel-hell);color:var(--siegel);border:1px solid color-mix(in srgb,var(--siegel) 30%,transparent);border-radius:var(--radius-1);padding:.55rem .8rem;font-size:.9rem;margin:.6rem 0}.hinweis{background:var(--gruen-hell);color:var(--gruen);border:1px solid color-mix(in srgb,var(--gruen) 30%,transparent);border-radius:var(--radius-1);padding:.55rem .8rem;font-size:.9rem;margin:.6rem 0}.symbol{width:1.15em;height:1.15em;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em;flex-shrink:0}.anmeldung{max-width:24.5rem;margin:9vh auto 0;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius-3);box-shadow:var(--schatten-2);padding:2.4rem 2.4rem 2.2rem;display:flex;flex-direction:column;gap:.45rem}.anmeldung h1{font-size:1.65rem;display:flex;align-items:center;gap:.6rem}.anmeldung .untertitel{margin:0 0 1.1rem}.anmeldung input{margin-bottom:.7rem}.anmeldung button{margin-top:.5rem;padding:.7rem}.untertitel{color:var(--grau);font-size:.92rem;margin:0}.logo-siegel{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--siegel);color:#f7e9eb;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:700;flex-shrink:0;box-shadow:inset 0 0 0 2px color-mix(in srgb,#000 18%,transparent),var(--schatten-1)}.logo-siegel.kleiner{width:1.65rem;height:1.65rem;font-size:.95rem}.rahmen{min-height:100vh}.kopfzeile{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1.4rem;border-bottom:1px solid var(--linie);background:var(--flaeche);position:sticky;top:0;z-index:20;box-shadow:var(--schatten-1)}.kopf-links{display:flex;align-items:center;gap:.7rem}.wortmarke{font-weight:700;font-size:1.12rem;letter-spacing:.01em}.bereichsname{color:var(--grau);font-size:.9rem;border-left:1px solid var(--linie-stark);padding-left:.7rem}.kopf-steuerung{display:flex;align-items:center;gap:.7rem}.angemeldet{color:var(--grau);font-size:.85rem}.start{max-width:56rem;margin:0 auto;padding:3rem 1.4rem}.start-kopf h1{font-size:1.7rem}.start-kopf .untertitel{margin-top:.25rem}.kacheln{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.1rem;margin-top:1.8rem}.kachel{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;text-align:left;background:var(--flaeche);color:var(--tinte);border:1px solid var(--linie);border-radius:var(--radius-2);padding:1.3rem 1.35rem 1.25rem;box-shadow:var(--schatten-1);transition:transform .1s,box-shadow .12s,border-color .12s;position:relative}.kachel:after{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:var(--radius-2) 0 0 var(--radius-2);background:var(--siegel);opacity:.9}.kachel:hover{background:var(--flaeche);transform:translateY(-2px);box-shadow:var(--schatten-2);border-color:var(--linie-stark)}.kachel-zeichen{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:var(--radius-1);background:var(--siegel-hell);color:var(--siegel);margin-bottom:.3rem}.kachel-zeichen .symbol{width:1.35rem;height:1.35rem}.kachel-titel{font-weight:650;font-size:1.06rem}.kachel-text{color:var(--grau);font-size:.87rem;line-height:1.4}.start-hinweis{margin-top:2.2rem;color:var(--grau-hell);font-size:.84rem}.einstellungen{max-width:38rem;margin:0 auto;padding:2.6rem 1.4rem;display:flex;flex-direction:column;gap:1.2rem}.einstellungen h1{font-size:1.5rem}.schema-wahl{border:1px solid var(--linie);border-radius:var(--radius-2);padding:1.1rem 1.3rem 1.2rem;display:flex;flex-direction:column;gap:.85rem;background:var(--flaeche);box-shadow:var(--schatten-1);margin:0}.schema-wahl legend{font-weight:650;padding:0 .3rem}.schema-option{display:flex;gap:.7rem;align-items:flex-start;cursor:pointer;font-weight:500}.schema-option strong{font-weight:650}.kontoblock{display:grid;gap:.35rem;border:1px solid var(--linie);border-radius:var(--radius-2);padding:1.1rem 1.3rem;background:var(--flaeche);color:var(--grau);font-size:.92rem;box-shadow:var(--schatten-1);margin:0}.kontoblock strong{color:var(--tinte)}.empfang{padding:1.1rem 1.4rem 2rem}.werkzeugleiste{display:flex;align-items:center;gap:.55rem;margin-bottom:.9rem}.zaehler{margin-left:auto;color:var(--grau);font-size:.88rem;font-variant-numeric:tabular-nums}.verschiebe-banner{background:var(--orange-hell);color:var(--orange);border:1px solid color-mix(in srgb,var(--orange) 30%,transparent);border-radius:var(--radius-1);padding:.55rem .8rem;font-size:.9rem;margin:0 0 .7rem;display:flex;align-items:center;gap:.7rem}.leerhinweis{color:var(--grau);background:var(--flaeche);border:1px dashed var(--linie-stark);border-radius:var(--radius-1);padding:.55rem .9rem;font-size:.9rem;margin:0 0 .7rem}.kalender{display:grid;border:1px solid var(--linie);border-radius:var(--radius-2);overflow:auto;background:var(--flaeche);box-shadow:var(--schatten-1);max-height:calc(100vh - 11rem)}.ecke{position:sticky;top:0;z-index:6;background:var(--flaeche);border-bottom:2px solid var(--linie-stark)}.spaltenkopf{position:sticky;top:0;z-index:6;background:var(--flaeche);font-size:.95rem;font-weight:650;padding:.6rem .75rem;border-bottom:2px solid var(--linie-stark);border-left:1px solid var(--linie)}.zeitspalte{display:grid;position:relative;background:var(--flaeche-2);border-right:1px solid var(--linie)}.stundenmarke{grid-column:1;font-size:.74rem;font-variant-numeric:tabular-nums;color:var(--grau-hell);padding:.1rem .5rem 0 0;text-align:right;border-top:1px solid var(--linie)}.behandlerspalte{display:grid;position:relative;border-left:1px solid var(--linie)}.zelle{grid-column:1;background:transparent;border:none;border-radius:0;border-top:1px solid var(--linie);padding:0;min-height:1.25rem;transition:background .1s}.zelle:nth-child(4n+1){border-top-color:var(--linie-stark)}.zelle:hover{background:color-mix(in srgb,var(--siegel) 7%,transparent)}.sperrzone{grid-column:1;background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--grau) 13%,transparent),color-mix(in srgb,var(--grau) 13%,transparent) 6px,color-mix(in srgb,var(--grau) 4%,transparent) 6px,color-mix(in srgb,var(--grau) 4%,transparent) 12px);pointer-events:none;z-index:0}.abwesenheit{grid-column:1;background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--siegel) 20%,transparent),color-mix(in srgb,var(--siegel) 20%,transparent) 8px,color-mix(in srgb,var(--siegel) 9%,transparent) 8px,color-mix(in srgb,var(--siegel) 9%,transparent) 16px);border-left:3px solid var(--siegel);pointer-events:none;z-index:1;display:flex;align-items:flex-start;padding:.3rem .4rem}.abwesenheit span{font-size:.74rem;font-weight:650;color:var(--siegel);background:var(--flaeche);padding:.06rem .45rem;border-radius:999px;box-shadow:var(--schatten-1)}.termin{grid-column:1;margin:1px 3px 1px 2px;z-index:2;display:flex}.termin-knopf{flex:1;display:flex;flex-direction:column;gap:.05rem;align-items:flex-start;text-align:left;background:var(--flaeche);color:var(--tinte);border:1px solid var(--linie-stark);border-left-width:4px;border-radius:var(--radius-1);padding:.3rem .5rem;font-size:.8rem;overflow:hidden;box-shadow:var(--schatten-1);transition:box-shadow .12s,transform .06s}.termin-knopf:hover{background:var(--flaeche);box-shadow:var(--schatten-2)}.termin-zeit{font-variant-numeric:tabular-nums;font-weight:650;font-size:.74rem;color:var(--grau)}.termin-patient{font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.termin-art{color:var(--grau);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.termin-status{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.termin[data-status=gebucht] .termin-knopf{border-left-color:var(--fokus)}.termin[data-status=bestaetigt] .termin-knopf{border-left-color:var(--siegel)}.termin[data-status=bestaetigt] .termin-status{color:var(--siegel)}.termin[data-status=erschienen] .termin-knopf{border-left-color:var(--gruen);background:var(--gruen-hell)}.termin[data-status=erschienen] .termin-status{color:var(--gruen)}.termin[data-status=abgerechnet] .termin-knopf{border-left-color:var(--gruen);opacity:.75}.termin[data-status=abgerechnet] .termin-status{color:var(--gruen)}.termin[data-status=nicht_erschienen] .termin-knopf{border-left-color:var(--orange);background:var(--orange-hell)}.termin[data-status=nicht_erschienen] .termin-status{color:var(--orange)}.schleier{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#0a0f18 45%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:8vh 1rem 2rem;z-index:50;overflow:auto}.dialog{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius-3);box-shadow:var(--schatten-3);padding:1.5rem 1.7rem 1.6rem;width:100%;max-width:26.5rem;display:flex;flex-direction:column;gap:.45rem}.dialog h2{font-size:1.18rem;margin-bottom:.1rem}.zeitvorschau{color:var(--grau);font-size:.92rem;font-variant-numeric:tabular-nums;margin:0 0 .5rem}.dialog label{margin-top:.35rem}.modus{border:1px solid var(--linie);border-radius:var(--radius-1);padding:.6rem .8rem;display:flex;gap:1.2rem;margin:.5rem 0 .2rem;background:var(--flaeche-2)}.modus legend{font-size:.8rem;font-weight:650;color:var(--grau);padding:0 .3rem}.modus label{display:flex;align-items:center;gap:.4rem;margin:0;font-weight:500}.trefferliste{list-style:none;margin:.3rem 0 0;padding:0;border:1px solid var(--linie);border-radius:var(--radius-1);max-height:11rem;overflow:auto;background:var(--flaeche)}.trefferliste li+li{border-top:1px solid var(--linie)}.trefferliste button{width:100%;text-align:left;background:var(--flaeche);color:var(--tinte);border:none;border-radius:0;padding:.5rem .7rem;font-weight:500}.trefferliste button:hover{background:var(--siegel-hell)}.gewaehlt{background:var(--gruen-hell);color:var(--gruen);border-radius:var(--radius-1);padding:.4rem .7rem;font-size:.9rem;margin:.4rem 0 0}.dialog-leiste{display:flex;gap:.6rem;margin-top:1rem;flex-wrap:wrap}.status-leiste{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.6rem}.status-leiste button{font-size:.85rem;padding:.4rem .8rem}.popover-zeile{margin:.15rem 0;color:var(--tinte);font-size:.95rem}.inhaber{max-width:64rem;margin:0 auto;padding:1.6rem 1.4rem 3rem;display:flex;flex-direction:column;gap:1.3rem}.stammkarte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius-2);padding:1.2rem 1.4rem 1.35rem;box-shadow:var(--schatten-1)}.stammkarte h2{font-size:1.12rem;margin-bottom:.55rem;display:flex;align-items:center;gap:.5rem}.stammkarte details{margin-bottom:.9rem;color:var(--grau);font-size:.89rem;border:1px solid var(--linie);border-radius:var(--radius-1);padding:.5rem .8rem;background:var(--flaeche-2)}.stammkarte summary{cursor:pointer;font-weight:600;color:var(--tinte)}.stammkarte ol{margin:.45rem 0 .2rem;padding-left:1.2rem}.stammkarte li+li{margin-top:.15rem}.stammliste{width:100%;border-collapse:collapse;font-size:.91rem}.stammliste th{text-align:left;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--grau);border-bottom:2px solid var(--linie-stark);padding:.35rem .55rem}.stammliste td{border-bottom:1px solid var(--linie);padding:.45rem .55rem;font-variant-numeric:tabular-nums}.stammliste tbody tr:hover{background:var(--flaeche-2)}.stammliste .knapp{white-space:nowrap;text-align:right}.zeilenform{display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--linie-stark)}.zeilenform label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;font-weight:600;color:var(--grau)}.zeilenform input,.zeilenform select{font-size:.93rem;padding:.42rem .55rem;min-width:5.5rem;color:var(--tinte)}.zeilenform input[type=checkbox]{min-width:auto;width:1.15rem;height:1.15rem;accent-color:var(--siegel)}.inaktiv{opacity:.5}input[type=radio],input[type=checkbox]{accent-color:var(--siegel)}.patienten{max-width:58rem;margin:0 auto;padding:1.6rem 1.4rem 3rem}.patienten-suchzeile{display:flex;gap:.7rem;align-items:flex-end;margin:1rem 0 1.1rem;flex-wrap:wrap}.patienten-suchzeile label{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:14rem;color:var(--grau);font-size:.8rem}.patienten-suchzeile input{font-size:1rem;padding:.55rem .7rem}.verordnung-abgelaufen{color:var(--siegel);font-weight:650}.blattform{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem .9rem;margin:.4rem 0}.blattform label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--grau)}.blattform .breit{grid-column:1 / -1}.blattform textarea{font:inherit;color:var(--tinte);background:var(--flaeche);border:1px solid var(--linie-stark);border-radius:var(--radius-1);padding:.5rem .65rem;min-height:4.5rem;resize:vertical}.blattform textarea:focus{border-color:var(--fokus);box-shadow:0 0 0 3px color-mix(in srgb,var(--fokus) 18%,transparent);outline:none}.umschalter{display:inline-flex;border:1px solid var(--linie-stark);border-radius:var(--radius-1);overflow:hidden}.umschalter button{border-radius:0;border:none;padding:.45rem .9rem;font-size:.9rem}.umschalter .aktiv{background:var(--siegel);color:#fff}.umschalter .zweitrangig{border:none}.kopfdatum{color:var(--grau);font-weight:500;font-size:.8rem;font-variant-numeric:tabular-nums}
