@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:400;src:url(../media/merriweather-latin-400-normal.15i_apm7eo5q0.woff2)format("woff2"),url(../media/merriweather-latin-400-normal.29_1cypd4-_1g.woff)format("woff")}
@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:700;src:url(../media/merriweather-latin-700-normal.2i4ve5-s38qas.woff2)format("woff2"),url(../media/merriweather-latin-700-normal.1_6dc2uj3h-ao.woff)format("woff")}
@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/open-sans-latin-400-normal.34xmh-n4wgyp6.woff2)format("woff2"),url(../media/open-sans-latin-400-normal.331jqme-8yluc.woff)format("woff")}
@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/open-sans-latin-600-normal.34baavpivw_qg.woff2)format("woff2"),url(../media/open-sans-latin-600-normal.2lsxlfoxurs3n.woff)format("woff")}
@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(../media/open-sans-latin-700-normal.3ljhf88d9rj6y.woff2)format("woff2"),url(../media/open-sans-latin-700-normal.1uxvf9mj3xor1.woff)format("woff")}
:root{--navy:#1b365d;--blau:#2c5e8c;--blau-hell:#72a4d0;--blau-zart:#e8f0f7;--sand:#e9b896;--sand-zart:#fbf1e9;--grund:#f8f8f8;--flaeche:#fff;--text:#151515;--text-leise:#5b6470;--linie:#e3e6ea;--gruen:#2f7d5b;--gruen-zart:#e6f3ec;--rot:#b23b3b;--rot-zart:#f8e7e7;--gelb:#8a6110;--gelb-zart:#fbf3dc;--radius:12px;--schatten:0 1px 2px #1b365d0f, 0 4px 16px #1b365d0d;--serif:"Merriweather", Georgia, serif;--sans:"Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--grund);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55}h1,h2,h3{font-family:var(--serif);color:var(--navy);margin:0 0 .6em;font-weight:700;line-height:1.25}h1{font-size:1.7rem}h2{font-size:1.2rem}h3{font-size:1.02rem}p{margin:0 0 1em}a{color:var(--blau)}a:hover{color:var(--navy)}.kopf{background:var(--flaeche);border-bottom:1px solid var(--linie);z-index:10;position:sticky;top:0}.kopf-innen{flex-wrap:wrap;align-items:center;gap:1.5rem;max-width:1320px;margin:0 auto;padding:.7rem 1.25rem;display:flex}.marke{color:var(--navy);align-items:center;gap:.6rem;text-decoration:none;display:flex}.marke-zeichen{flex:none;width:34px;height:34px}.marke-text{font-family:var(--serif);font-size:1.02rem;line-height:1.15}.marke-text small{font-family:var(--sans);color:var(--text-leise);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;display:block}.navi{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.navi a{color:var(--text);white-space:nowrap;border-radius:8px;padding:.45rem .65rem;font-size:.93rem;text-decoration:none}.navi a:hover{background:var(--blau-zart);color:var(--navy)}.navi a[aria-current=page]{background:var(--blau-zart);color:var(--navy);font-weight:600}.kopf-rechts{align-items:center;gap:.75rem;margin-left:auto;display:flex}.wer{color:var(--text-leise);text-align:right;font-size:.88rem;line-height:1.2}.wer strong{color:var(--text);font-weight:600;display:block}.timer{color:var(--text-leise);font-variant-numeric:tabular-nums;font-size:.78rem}.timer.bald{color:var(--rot);font-weight:600}main{max-width:1120px;margin:0 auto;padding:2rem 1.25rem 4rem}.seitenkopf{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.seitenkopf h1{margin:0}.unterzeile{color:var(--text-leise);margin:.3rem 0 0}.karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten);margin-bottom:1.25rem;padding:1.4rem 1.5rem}.karte>h2:first-child{margin-top:0}.raster{gap:1.25rem;display:grid}.raster-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.zahlen{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem;display:grid}.zahl{background:var(--grund);border-radius:10px;padding:.9rem 1rem}.zahl b{font-family:var(--serif);color:var(--navy);font-variant-numeric:tabular-nums;font-size:1.7rem;line-height:1.1;display:block}.zahl span{color:var(--text-leise);font-size:.85rem}.zahl.hervor{background:var(--blau)}.zahl.hervor b,.zahl.hervor span{color:#fff}label{color:var(--navy);margin-bottom:.3rem;font-size:.92rem;font-weight:600;display:block}.feld{margin-bottom:1rem}.hilfe{color:var(--text-leise);margin-top:.25rem;font-size:.85rem;font-weight:400}input[type=text],input[type=email],input[type=password],input[type=date],input[type=number],select,textarea{width:100%;font:inherit;color:var(--text);background:#fff;border:1px solid #cfd5dc;border-radius:8px;min-height:44px;padding:.6rem .75rem}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:1px;border-color:var(--blau);outline:3px solid #2c5e8c59}.zeile{flex-wrap:wrap;gap:1rem;display:flex}.zeile>*{flex:180px}.haken{color:var(--text);cursor:pointer;align-items:center;gap:.5rem;margin:0;font-weight:400;display:flex}.haken input{width:18px;height:18px;accent-color:var(--blau)}.wochentage{flex-wrap:wrap;gap:.4rem;display:flex}.wochentage label{cursor:pointer;min-width:48px;height:44px;color:var(--text-leise);background:#fff;border:1px solid #cfd5dc;border-radius:8px;justify-content:center;align-items:center;margin:0;font-weight:600;display:inline-flex}.wochentage input{opacity:0;pointer-events:none;position:absolute}.wochentage label:has(input:checked){background:var(--blau);border-color:var(--blau);color:#fff}.wochentage label:has(input:focus-visible){outline:3px solid #2c5e8c59}.knopf{font:inherit;cursor:pointer;border:1px solid var(--blau);background:var(--blau);color:#fff;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.6rem 1.1rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.knopf:hover{background:var(--navy);border-color:var(--navy);color:#fff}.knopf:disabled{opacity:.55;cursor:not-allowed}.knopf.zweit{color:var(--blau);background:#fff}.knopf.zweit:hover{background:var(--blau-zart);color:var(--navy)}.knopf.gruen{background:var(--gruen);border-color:var(--gruen)}.knopf.gruen:hover{background:#24624a;border-color:#24624a}.knopf.rot{color:var(--rot);background:#fff;border-color:#e2b6b6}.knopf.rot:hover{background:var(--rot-zart)}.knopf.klein{min-height:36px;padding:.35rem .7rem;font-size:.88rem}.knopf.abmelden{color:var(--navy);border-color:var(--navy);background:#fff}.knopf.abmelden:hover{background:var(--navy);color:#fff}.knopfreihe{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.hinweis{border:1px solid #0000;border-radius:10px;margin-bottom:1rem;padding:.8rem 1rem;font-size:.95rem}.hinweis.info{background:var(--blau-zart);color:var(--navy)}.hinweis.ok{background:var(--gruen-zart);color:#1e5a40;border-color:#cde6d9}.hinweis.warn{background:var(--gelb-zart);color:var(--gelb);border-color:#f0e2b5}.hinweis.fehler{background:var(--rot-zart);color:var(--rot);border-color:#efcaca}.hinweis p:last-child{margin:0}.tabelle-huelle{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th{text-align:left;color:var(--text-leise);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--linie);padding:.5rem .6rem;font-size:.8rem;font-weight:600}td{border-bottom:1px solid var(--linie);vertical-align:middle;padding:.75rem .6rem}tr:last-child td{border-bottom:none}td.zahl-zelle,th.zahl-zelle{text-align:right;font-variant-numeric:tabular-nums}.leer{color:var(--text-leise);padding:1rem 0}.marke-status{white-space:nowrap;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.s-offen{background:var(--gelb-zart);color:var(--gelb)}.s-bewilligt{background:var(--gruen-zart);color:var(--gruen)}.s-abgelehnt,.s-storniert{background:var(--rot-zart);color:var(--rot)}.s-zurueckgezogen{color:var(--text-leise);background:#eef0f2}.art{border-radius:6px;padding:.1rem .45rem;font-size:.8rem;font-weight:600}.art-urlaub{background:var(--blau-zart);color:var(--blau)}.art-fortbildung{background:var(--sand-zart);color:#9a5b2c}.art-krank{color:#5b4b7a;background:#f1eef6}.antrag{border:1px solid var(--linie);border-radius:10px;margin-bottom:.75rem;padding:1rem 1.1rem}.antrag-kopf{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.antrag-kopf strong{font-size:1.05rem}.meta{color:var(--text-leise);font-size:.9rem}.mitteilung{border-left:3px solid var(--blau-hell);background:var(--grund);border-radius:0 8px 8px 0;margin-bottom:.6rem;padding:.5rem .9rem}.mitteilung.neu{border-left-color:var(--sand);background:var(--sand-zart)}.mitteilung time{color:var(--text-leise);font-size:.8rem;display:block}.kal-kopf{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.kal-kopf h3{margin:0}.kalender{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.kalender .wt{color:var(--text-leise);text-align:center;padding-bottom:.25rem;font-size:.75rem;font-weight:600}.tag{aspect-ratio:1/.85;border:1px solid var(--linie);background:#fff;border-radius:8px;flex-direction:column;justify-content:space-between;min-height:44px;padding:.25rem .35rem;font-size:.85rem;display:flex;position:relative}.tag.aus{background:0 0;border-color:#0000}.tag.wochenende,.tag.feiertag{color:#9aa1aa;background:#f1f2f4}.tag.heute{border:2px solid var(--sand)}.tag.gewaehlt{background:var(--blau);border-color:var(--blau);color:#fff}.tag.gewaehlt .zaehler{color:var(--blau);background:#fff}.tag .zaehler{background:var(--blau-zart);color:var(--navy);border-radius:999px;align-self:flex-end;padding:0 .4rem;font-size:.72rem;font-weight:700}.tag .zaehler.voll{background:var(--gelb-zart);color:var(--gelb)}.tag button{all:unset;cursor:pointer;border-radius:8px;position:absolute;inset:0}.tag button:focus-visible{outline:3px solid #2c5e8c59}.legende{color:var(--text-leise);flex-wrap:wrap;gap:1rem;margin-top:.75rem;font-size:.82rem;display:flex}.punkt{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:.3rem;display:inline-block}.plan{border-collapse:separate;border-spacing:0;font-size:.8rem}.plan th,.plan td{border-bottom:1px solid var(--linie);text-align:center;padding:0}.plan th.name,.plan td.name{text-align:left;white-space:nowrap;z-index:1;text-transform:none;letter-spacing:0;color:var(--text);background:#fff;padding:.4rem .75rem .4rem 0;font-size:.9rem;font-weight:600;position:sticky;left:0}.plan th{min-width:26px;padding:.3rem 0;font-size:.7rem}.plan td div{border-radius:4px;height:28px;margin:2px 1px}.plan .we{background:#f3f4f6}.plan .u{background:var(--blau-hell)}.plan .u.offen{background:repeating-linear-gradient(45deg,#cfe0ef,#cfe0ef 4px,#e8f0f7 4px 8px)}.plan .f{background:var(--sand)}.plan .k{background:#b3a6cc}.plan .halb{background-image:linear-gradient(90deg,#0000 50%,#ffffffbf 50%)}.jahr-raster{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.mini .tag{aspect-ratio:auto;min-height:30px;padding:.15rem .25rem;font-size:.72rem}.mini .tag.belegt{background:var(--blau-zart);border-color:var(--blau-hell);color:var(--navy);font-weight:700}.anmelde-huelle{background:radial-gradient(circle at 15% 10%, #e9b89638, transparent 40%), radial-gradient(circle at 85% 90%, #72a4d033, transparent 45%), var(--grund);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.anmelde-karte{width:100%;max-width:420px;box-shadow:var(--schatten);border:1px solid var(--linie);background:#fff;border-radius:16px;padding:2.2rem 2rem}.anmelde-karte .marke{justify-content:center;margin-bottom:1.5rem}.anmelde-karte h1{text-align:center;font-size:1.35rem}.qr{justify-content:center;margin:1rem 0;display:flex}.qr img{width:200px;height:200px}code.geheim{word-break:break-all;background:var(--grund);text-align:center;border-radius:6px;padding:.5rem;font-size:.85rem;display:block}.versteckt{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:640px){.kopf-innen{gap:.6rem}.navi{flex-basis:100%;order:3}main{padding-top:1.25rem}.karte{padding:1.1rem}.wer{display:none}}@media print{.kopf,.knopf{display:none!important}body{background:#fff}.karte{box-shadow:none}}.testmodus{color:#fff;text-align:center;background:#b3261e;padding:.45rem 1rem;font-size:.9rem;font-weight:600}
