:root{--akzent:#2f7f8f;--akzent-dunkel:#266a78;--akzent-hell:#e4f0f1;--kasse:#34506e;--kasse-hell:#e6ecf3;--text:#1f2a30;--grau:#6b767d;--linie:#e6e8eb;--rot:#b0413a;color:var(--text);-webkit-font-smoothing:antialiased;background:#fff;font-family:Segoe UI,system-ui,-apple-system,sans-serif}html.thema-sophie{--akzent:#2b6fd6;--akzent-dunkel:#1c4f9e;--akzent-hell:#e7f0fd;--kasse:#16202e;--kasse-hell:#eaf1fb}*{box-sizing:border-box}body{background:#fff;margin:0}.kopf{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:18px 20px 8px;display:flex}.marke{align-items:center;gap:14px;min-width:0;display:flex}.logo{background:var(--akzent);color:#fff;letter-spacing:.5px;border-radius:12px;flex:none;place-items:center;width:46px;height:46px;font-size:16px;font-weight:700;display:grid}.kopf h1{letter-spacing:-.2px;margin:0;font-size:24px;font-weight:650}.kopf p{color:var(--grau);margin:2px 0 0;font-size:14px}.kopf-rechts{align-items:center;gap:14px;margin-left:auto;display:flex}.kopf-info{color:var(--grau);white-space:nowrap;font-size:13px}.neu-knopf{font:inherit;color:#fff;background:var(--akzent);cursor:pointer;white-space:nowrap;border:0;border-radius:10px;padding:10px 16px;font-weight:650}.neu-knopf:hover{background:var(--akzent-dunkel)}.neu-knopf:focus-visible{outline:2px solid var(--akzent-dunkel);outline-offset:2px}.seite{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start;gap:20px;width:100%;padding:8px 20px 28px;display:grid}main,.filter{min-width:0}.feld{color:var(--grau);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.feld input{font:inherit;color:var(--text);border:1px solid var(--linie);background:#fff;border-radius:10px;width:100%;padding:10px 12px;font-size:15px;font-weight:400}.feld input:focus{outline:2px solid var(--akzent);border-color:#0000}.monat{justify-content:space-between;align-items:center;margin:18px 0 8px;display:flex}.monat strong{font-size:14px}.monat button,.alle,.tag{font:inherit;border:1px solid var(--linie);cursor:pointer;color:var(--text);background:#fff;border-radius:8px}.monat button{width:32px;height:32px}.tage{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.wt{text-align:center;color:var(--grau);padding:2px 0 4px;font-size:11px}.tag{background:0 0;height:34px;padding:0}.tag.hat{box-shadow:inset 0 -2px 0 var(--akzent);font-weight:700}.tag.heute{color:var(--akzent-dunkel)}.tag.gewahlt,.alle.an{background:var(--akzent);color:#fff;border-color:var(--akzent)}.alle{width:100%;margin-top:10px;padding:8px}.filter-gruppe{margin-top:16px}.filter-titel{color:var(--grau);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:inherit;border:1px solid var(--linie);cursor:pointer;color:var(--text);background:#fff;border-radius:8px;padding:5px 10px;font-size:13px}.chip.an{background:var(--akzent);color:#fff;border-color:var(--akzent)}.chip:hover{border-color:var(--akzent)}.chip:focus-visible{outline:2px solid var(--akzent-dunkel);outline-offset:2px}.liste{border:1px solid var(--linie);border-radius:12px;width:100%;overflow:hidden}.zeile{color:inherit;border-top:1px solid var(--linie);grid-template-columns:88px minmax(140px,1.6fr) minmax(90px,1fr) minmax(120px,.9fr) 120px 158px 196px;align-items:center;gap:10px;padding:11px 10px 11px 16px;text-decoration:none;display:grid;position:relative}.zeile a.sp-patient{color:inherit;text-decoration:none}.zeile a.sp-patient:after{content:"";position:absolute;inset:0}.zeile a.sp-patient:focus-visible{outline:none}.zeile a.sp-patient:focus-visible:after{outline:2px solid var(--akzent);outline-offset:-2px}.sp-aktionen{justify-content:flex-end;gap:2px;display:flex}.aktion{z-index:1;width:34px;height:34px;color:var(--grau);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:grid;position:relative}.aktion:hover{background:var(--akzent-hell);color:var(--akzent-dunkel)}.aktion:focus-visible{outline:2px solid var(--akzent-dunkel);outline-offset:1px}.aktion.aus{opacity:.25;cursor:not-allowed}.aktion.aus:hover{color:var(--grau);background:0 0}.aktion.leer{visibility:hidden}.aktion.befund{color:var(--akzent-dunkel)}.aktion.pvs-knopf{background:var(--akzent);color:#fff;width:auto;height:38px;font:inherit;letter-spacing:.06em;border-radius:10px;gap:7px;margin-right:6px;padding:0 16px 0 12px;font-size:14px;font-weight:800;display:inline-flex;box-shadow:0 2px 6px #00000026}.aktion.pvs-knopf svg{width:24px;height:24px}.aktion.pvs-knopf:hover{background:var(--akzent-dunkel);color:#fff}.aktion.pvs-knopf.im-pvs{background:#1a7f37}.aktion.pvs-knopf.im-pvs:hover{background:#146c2e}.import-knopf{font:inherit;color:var(--akzent-dunkel);border:1px solid var(--linie);cursor:pointer;white-space:nowrap;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:9px 14px;font-weight:600;display:inline-flex}.import-knopf:hover{background:var(--akzent-hell)}.import-knopf.hervor{border-color:var(--akzent);color:var(--akzent-dunkel);font-weight:600}.import-knopf .punkt{background:var(--akzent);border-radius:50%;width:8px;height:8px}.import-knopf:focus-visible{outline:2px solid var(--akzent-dunkel);outline-offset:2px}.tonne:hover{color:#b3261e;background:#fde8e6}.tonne:focus-visible{outline-offset:1px;outline:2px solid #b3261e}.meldung{z-index:30;color:#fff;background:#1f2a33;border-radius:10px;align-items:center;gap:14px;max-width:calc(100vw - 24px);padding:10px 12px 10px 16px;font-size:14px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #141e284d}.meldung button{color:#8fd3df;cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:14px;font-weight:700}.kopfzeile{color:var(--grau);letter-spacing:.06em;text-transform:uppercase;background:#f7f8f9;border-top:0;font-size:11px;font-weight:650}.liste>.zeile:nth-child(2n){background:#f4f7f8}.liste>.zeile.mit-link:hover{background:#e5f2f4}.kuerzel{text-align:center;background:var(--akzent-hell);min-width:52px;color:var(--akzent-dunkel);letter-spacing:.4px;border-radius:8px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-block}.sp-patient{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.kopfzeile .sp-patient{font-weight:650}.sp-nr,.sp-status{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13.5px;overflow:hidden}.sp-status,.kopfzeile .sp-status,.kopfzeile .sp-zeit{color:var(--grau)}.sp-betrag{text-align:right;font-variant-numeric:tabular-nums}.sp-zeit{color:var(--grau);text-align:right;white-space:nowrap;font-size:13px}.leer{color:var(--grau);margin:12px 0}.wahl{z-index:20;place-items:start end;padding:68px 20px 20px;display:grid;position:fixed;inset:0}.wahl-grund{cursor:pointer;background:#141e2859;border:0;padding:0;position:absolute;inset:0}.wahl-karte{background:#fff;border-radius:14px;width:min(760px,100%);max-height:calc(100vh - 88px);padding:8px 14px 14px;position:relative;overflow:auto;box-shadow:0 16px 48px #141e2838}.wahl-kopf{background:#fff;justify-content:space-between;align-items:center;padding:8px 0;display:flex;position:sticky;top:0}.wahl-kopf h2{margin:0;font-size:18px}.wahl-kopf button{cursor:pointer;color:var(--grau);background:0 0;border:0;padding:6px;font-size:18px;line-height:1}.einstellungen{flex-direction:column;gap:14px;width:min(520px,100%);padding:8px 20px 18px;display:flex}.wahl-kopf h2 small{color:var(--grau);margin-left:6px;font-size:12px;font-weight:500}.feld select{font:inherit;color:var(--text);border:1px solid var(--linie);background:#fff;border-radius:10px;width:100%;padding:10px 12px;font-size:15px;font-weight:400}.feld select:focus{outline:2px solid var(--akzent);border-color:#0000}.pvs-info{color:var(--grau);flex-wrap:wrap;align-items:center;gap:8px;margin:-6px 0 0;font-size:13px;display:flex}.marke-bridge{border-radius:99px;padding:2px 8px;font-size:11px;font-weight:650}.marke-bridge.bereit{color:#1e6b35;background:#e3f4e8}.marke-bridge.bald{color:#8a5a00;background:#fdf1dc}.schalter{border:1px solid var(--linie);cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;padding:12px;display:flex}.schalter input{width:18px;height:18px;accent-color:var(--akzent);margin:2px 0 0}.schalter b{font-weight:600;display:block}.schalter small{color:var(--grau);margin-top:2px;font-size:12px;display:block}.schalter.aus{opacity:.55;cursor:not-allowed}.pvs-hinweis{color:#6b4600;background:#fdf1dc;border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.katalog{border:1px solid var(--linie);border-radius:10px;flex-direction:column;gap:12px;min-width:0;margin:0;padding:12px 14px 14px;display:flex}.katalog legend{padding:0 6px;font-size:13px;font-weight:650}.katalog .pvs-info{margin:0}.katalog-wahl{grid-template-columns:1fr 1fr;gap:10px;display:grid}.katalog-fuss{align-items:center;gap:10px;display:flex}.katalog-fuss small{color:var(--grau);margin-right:auto;font-size:12px}.katalog-fuss button:disabled{opacity:.55;cursor:default}.einst-fuss{align-items:center;gap:10px;margin-top:4px;display:flex}.einst-fuss span{color:var(--grau);margin-right:auto;font-size:12px}.neu-knopf:disabled{opacity:.45;cursor:default;background:var(--akzent)}.pvs-import{flex-direction:column;gap:12px;padding:8px 20px 18px;display:flex}.pvs-suche{gap:8px;display:flex}.pvs-suche input{min-width:0;font:inherit;border:1px solid var(--linie);border-radius:10px;flex:1;padding:10px 12px;font-size:15px}.pvs-suche input:focus{outline:2px solid var(--akzent);border-color:#0000}.pvs-bereich:empty{display:none}.pvs-bereich{flex-direction:column;gap:4px;display:flex}.pvs-patient,.pvs-tabelle button{font:inherit;text-align:left;border:1px solid var(--linie);cursor:pointer;color:var(--text);background:#fff;border-radius:10px;padding:9px 12px}.pvs-patient{justify-content:space-between;gap:12px;display:flex}.pvs-patient span{color:var(--grau);font-size:13px}.pvs-patient:hover,.pvs-tabelle button:hover,.pvs-tabelle button:focus{background:var(--akzent-hell);border-color:var(--akzent);outline:none}.pvs-patient.an{border-color:var(--akzent);box-shadow:inset 3px 0 0 var(--akzent)}.pvs-titel{letter-spacing:.06em;text-transform:uppercase;color:var(--grau);margin:8px 0 2px;font-size:12px;font-weight:650}.pvs-tabelle{flex-direction:column;gap:4px;display:flex}.pvs-tabelle button{-webkit-user-select:none;user-select:none;grid-template-columns:64px 86px 120px minmax(0,1fr) 88px 96px;align-items:center;gap:10px;font-size:14px;display:grid}.pvs-tabelle .pvs-bez{text-overflow:ellipsis;white-space:nowrap;color:var(--grau);overflow:hidden}.pvs-tabelle .pvs-betrag{text-align:right}.pvs-status{min-height:1.2em;color:var(--grau);margin:0;font-size:13px}.link-knopf{font:inherit;color:var(--akzent-dunkel);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:4px;font-size:13px;text-decoration:underline}.wahl-spalten,.wahl-liste{grid-template-columns:1fr 1fr;gap:4px 12px;display:grid}.wahl-spalten{color:var(--akzent);padding:0 8px;font-size:12px;font-weight:650}.bereich-name{letter-spacing:.08em;text-transform:uppercase;color:var(--grau);margin:12px 0 4px;font-size:11px;font-weight:650}.wahl-liste a,.wahl-liste div{color:inherit;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:8px;text-decoration:none;display:grid}.wahl-liste a:hover{background:var(--akzent-hell)}.wahl-liste b{font-weight:600;display:block}.wahl-liste small{color:var(--grau);font-size:12px;display:block}@media (width<=980px){.zeile{grid-template-columns:72px minmax(0,1.4fr) minmax(0,.9fr) 110px 196px}.sp-nr,.sp-zeit{display:none}}@media (width<=800px){.seite{grid-template-columns:1fr;padding:8px 16px 24px}.kopf{padding:14px 16px 4px}.tage{max-width:360px}}@media (width<=640px){.kopf-rechts{width:100%}.neu-knopf{flex:1}.import-knopf span,.kopfzeile{display:none}.zeile{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"art name tonne""art status tonne""art betrag tonne";row-gap:2px}.sp-art{grid-area:art;align-self:start}.sp-aktionen{grid-area:tonne;align-self:center}.aktion.leer{display:none}.sp-patient{white-space:normal;grid-area:name}.sp-status{grid-area:status}.sp-betrag{text-align:left;grid-area:betrag}.wahl{justify-items:stretch;padding:64px 12px 12px}.wahl-spalten{display:none}.wahl-liste{grid-template-columns:1fr}.wahl-leer{display:none}}.anmelde-seite{background:linear-gradient(160deg, var(--akzent-hell), #fff 60%);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.anmelde-karte{flex-direction:column;gap:14px;width:min(400px,100%);padding:28px 26px 22px;display:flex}.anmelde-karte h2{margin:6px 0 0;font-size:20px}.anmelde-text{color:var(--grau);margin:-6px 0 0;font-size:14px}.anmelde-karte input{font-size:16px}.anmelde-meldung{min-height:1.2em;color:var(--rot);margin:0;font-size:13px}.anmelde-meldung:empty{display:none}.anmelde-karte .neu-knopf{justify-content:center;padding:12px}.anmelde-karte .link-knopf{margin:-6px auto 0}.anmelde-neu{border-top:1px solid var(--linie);text-align:center;color:var(--grau);margin:4px 0 0;padding-top:14px;font-size:14px}.anmelde-neu a{color:var(--akzent-dunkel);font-weight:600}.konto-knopf{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-end;max-width:180px;padding:2px 6px;font-size:13px;font-weight:600;display:inline-flex}.konto-knopf small{color:var(--grau);font-weight:400}.konto-knopf:hover small{color:var(--rot);text-decoration:underline}.freischalt-hinweis{color:#6b4600;background:#fdf1dc;border-radius:10px;margin:12px 24px 0;padding:12px 14px;font-size:14px}.benutzer-tabelle{flex-direction:column;gap:2px;display:flex;overflow-x:auto}.benutzer-zeile{border-bottom:1px solid var(--linie);grid-template-columns:minmax(180px,1fr);grid-auto-columns:minmax(84px,auto);grid-auto-flow:column;align-items:center;gap:8px;padding:6px 4px;font-size:13px;display:grid}.benutzer-zeile.kopfzeile{color:var(--akzent);font-size:12px;font-weight:650}.benutzer-zeile>span:first-child{flex-direction:column;min-width:0;display:flex}.benutzer-zeile small{color:var(--grau);text-overflow:ellipsis;overflow:hidden}.benutzer-zeile label{justify-content:center;display:flex}.benutzer-zeile input{width:18px;height:18px;accent-color:var(--akzent)}@media (width<=640px){.konto-knopf{max-width:110px;overflow:hidden}}
