@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#eef0ec;--surface:#fff;--surface-2:#f6f7f4;--surface-3:#e8ebe6;--ink:#1b2028;--ink-2:#4a5563;--ink-3:#7b8794;--line:#d7dbd5;--line-strong:#b9c0b8;--steel:#5b6e82;--steel-soft:#dfe6ed;--ok:#1f8f5f;--ok-soft:#dff3e8;--warn:#e7731c;--warn-soft:#fbe6d6;--danger:#c8433a;--krank:#c8433a;--krank-soft:#f8dedc;--urlaub:#c9950b;--urlaub-soft:#f9ecc6;--schulung:#4b6fc0;--schulung-soft:#dfe7f8;--sonstiges:#7b8794;--sonstiges-soft:#e4e8ec;--frueh:#f2dc8a;--spaet:#f0b986;--nacht:#a9b3dc;--tag:#cfe3c4;--labor:#cfe3c4;--radius-s:6px;--radius-m:10px;--radius-l:14px;--shadow-lift:0 10px 30px #1b20282e, 0 2px 6px #1b20281f;--font:"IBM Plex Sans", system-ui, sans-serif;--ease-spring:cubic-bezier(.2, .9, .3, 1.15);--ease-out:cubic-bezier(.2, .7, .2, 1)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:var(--bg);font-feature-settings:"tnum" 1, "ss02" 1;-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45;overflow:hidden}button,input{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--steel);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.app{-webkit-user-select:none;user-select:none;grid-template-rows:auto 1fr;height:100%;display:grid}.app input,.app textarea{-webkit-user-select:text;user-select:text}.topbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:28px;padding:12px 24px;display:flex}.brand{letter-spacing:-.01em;white-space:nowrap;flex:0 0 340px;align-items:baseline;gap:10px;font-size:17px;font-weight:700;display:flex}.brand small{color:var(--ink-3);font-size:12px;font-weight:500}.topbar-stats{color:var(--ink-2);gap:18px;margin-left:auto;font-size:13px;display:flex}.topbar-stats strong{color:var(--ink);font-weight:600}.topbar-stats .open strong{color:var(--warn)}.workspace{grid-template-columns:300px 1fr;min-height:0;display:grid}.weekstrip{align-items:center;gap:4px;display:flex}.weekstrip .nav{border-radius:var(--radius-s);width:30px;height:30px;color:var(--ink-2);transition:background .15s var(--ease-out);place-items:center;display:grid}.weekstrip .nav:hover{background:var(--surface-3)}.weekstrip .kw{isolation:isolate;color:var(--ink-2);border-radius:var(--radius-s);min-width:52px;height:38px;transition:color .15s var(--ease-out), background .15s var(--ease-out);margin:0 8px 0 4px;padding:0 10px;font-weight:600;position:relative}.weekstrip .kw:hover{background:var(--surface-3)}.weekstrip .kw.is-selected{color:#fff}.weekstrip .kw .pill,.daytab .pill{border-radius:var(--radius-s);background:var(--ink);z-index:-1;position:absolute;inset:0}.daytab{isolation:isolate;border-radius:var(--radius-s);width:50px;color:var(--ink-2);transition:color .15s var(--ease-out);flex-direction:column;align-items:center;padding:4px 0 6px;display:flex;position:relative}.daytab span:first-child{font-size:11px;font-weight:500}.daytab span:last-child{font-size:16px;font-weight:600;line-height:1.2}.daytab.is-today span:last-child{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--steel);text-decoration-color:var(--steel)}.daytab.is-selected{color:#fff}.daytab .pill{border-radius:var(--radius-s);background:var(--ink);z-index:-1;position:absolute;inset:0}.daytab .dot{background:var(--warn);border-radius:50%;width:4px;height:4px;position:absolute;bottom:1px}.pool{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.pool-head{border-bottom:1px solid var(--line);padding:16px 16px 10px}.pool-title{justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:15px;font-weight:600;display:flex}.pool-title small{color:var(--ink-3);font-size:12px;font-weight:500}.search{border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface-2);height:34px;color:var(--ink-3);transition:border-color .15s var(--ease-out), background .15s var(--ease-out);align-items:center;gap:8px;padding:0 10px;display:flex}.search:focus-within{border-color:var(--steel);background:var(--surface)}.search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0}.search input::placeholder{color:var(--ink-3)}.qualfilter{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.qual{letter-spacing:.02em;height:22px;color:var(--ink-2);background:var(--surface-3);transition:background .15s var(--ease-out), color .15s var(--ease-out), transform .15s var(--ease-spring);border-radius:999px;align-items:center;padding:0 8px;font-size:11.5px;font-weight:600;display:inline-flex}button.qual:hover{background:var(--steel-soft)}.qual.is-active{background:var(--ink);color:#fff}.qual.is-required{background:var(--ok-soft);color:var(--ok)}.pool-list{flex-direction:column;flex:1;gap:6px;padding:10px 12px 24px;display:flex;overflow-y:auto}.pool-section{color:var(--ink-3);align-items:center;gap:8px;margin:12px 4px 4px;font-size:12px;font-weight:600;display:flex}.pool-section button{color:var(--steel);margin-left:auto;font-size:12px;font-weight:500}.pool-section button:hover{text-decoration:underline}.pool-empty{text-align:center;color:var(--ink-3);padding:28px 12px;font-size:13px}.emp{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;transition:border-color .15s var(--ease-out), box-shadow .15s var(--ease-out), opacity .2s var(--ease-out);grid-template-rows:auto auto;grid-template-columns:34px 1fr auto;align-items:center;column-gap:10px;padding:8px 10px;display:grid}.emp:hover{border-color:var(--line-strong)}.emp.is-dragging{opacity:.35}.emp.is-absent{cursor:not-allowed;background:var(--surface-2);color:var(--ink-3)}.emp.is-absent .avatar{filter:grayscale();opacity:.6}.emp.in-overlay{cursor:grabbing;box-shadow:var(--shadow-lift);border-color:var(--ink)}.avatar{color:#fff;background:var(--steel);border-radius:50%;grid-row:1/3;place-items:center;width:34px;height:34px;font-size:12px;font-weight:600;display:grid}.emp-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;line-height:1.25;overflow:hidden}.emp-name small{color:var(--ink-3);margin-left:6px;font-weight:400}.emp-quals{grid-column:2/4;gap:4px;margin-top:3px;display:flex}.emp-quals .qual{height:18px;padding:0 6px;font-size:10.5px}.absence{border-radius:999px;grid-area:1/3;align-self:start;align-items:center;gap:4px;height:20px;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.absence.urlaub{background:var(--urlaub-soft);color:var(--urlaub)}.absence.krank{background:var(--krank-soft);color:var(--krank)}.absence.schulung{background:var(--schulung-soft);color:var(--schulung)}.absence.sonstiges{background:var(--sonstiges-soft);color:var(--sonstiges)}.board{padding:0 24px 40px;overflow:auto}.board-grid{grid-template-columns:180px repeat(3,minmax(230px,1fr));gap:0 16px;min-width:960px;display:grid}.shift-head{z-index:2;border-radius:var(--radius-m) var(--radius-m) 0 0;background:linear-gradient(180deg, var(--tint) 0%, var(--bg) 100%);margin-top:20px;padding:10px 14px 12px;position:sticky;top:0}.shift-head.is-off{opacity:.55}.shift-head h2{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:700}.shift-head .time{color:var(--ink-2);font-size:12px;font-weight:500}.shift-head .fill{float:right;color:var(--ink-2);font-size:12px;font-weight:600}.shift-head .fill.is-complete{color:var(--ok)}.area-label{padding:18px 0 0;font-size:14px;font-weight:600}.area-label small{color:var(--ink-3);font-size:12px;font-weight:400;display:block}.area-cell{flex-direction:column;gap:6px;padding:14px 0 0;display:flex}.staffing{min-height:20px;margin:0 2px 2px;font-size:12px;font-weight:600}.staffing-msg{align-items:center;gap:5px;display:inline-flex}.staffing.is-empty{color:var(--ink-3);font-weight:500}.staffing.is-understaffed{color:var(--warn)}.staffing.is-complete{color:var(--ok)}.shift-head .fill-warn{color:var(--warn);align-items:center;gap:3px;margin-left:8px;display:inline-flex}.area-cell+.area-cell,.area-label+.area-label{border-top:0}.group-head{border-bottom:2px solid var(--line-strong);color:var(--ink-2);grid-column:1/-1;margin:26px 0 -6px;padding-bottom:6px;font-size:13px;font-weight:700}.group-head:first-of-type{margin-top:10px}.area-cell.is-off{border-radius:var(--radius-m);background:repeating-linear-gradient(-45deg,#0000 0 10px,#00000006 10px 20px);min-height:40px;margin-top:14px}.area-cell.is-span{grid-column:2/-1;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));align-items:start;gap:6px 16px;display:grid}.area-cell.is-span .staffing{grid-column:1/-1}.area-label .hours{color:var(--ink-2);align-items:center;gap:4px;display:inline-flex}.weekslot{flex-direction:column;gap:6px;display:flex}.slot-emp .days{color:var(--ink-3);font-size:11px;font-weight:500}.slot-emp .days.is-partial{color:var(--warn)}.slot-emp .extra{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.shift-head .time .days{color:var(--ink-3)}.emp.is-partial .absence{opacity:.85}.row-rule{background:var(--line);grid-column:1/-1;height:1px;margin-top:16px}.slot{border-radius:var(--radius-m);border:1px dashed var(--line-strong);background:var(--surface-2);min-height:54px;transition:background .18s var(--ease-out), border-color .18s var(--ease-out), transform .18s var(--ease-spring), box-shadow .18s var(--ease-out);grid-template-columns:1fr auto;align-items:center;padding:6px 8px 6px 12px;display:grid;position:relative}.slot.is-filled{border-style:solid;border-color:var(--line);background:var(--surface);grid-template-columns:1fr auto}.slot-label{color:var(--ink-2);font-size:12px;font-weight:500}.slot.is-filled{grid-template-rows:auto auto;grid-template-columns:1fr auto;padding-top:5px;padding-bottom:6px}.slot.is-filled .slot-label{letter-spacing:.02em;color:var(--ink-3);grid-area:1/1;margin-bottom:2px;font-size:10.5px;line-height:14px}.slot.is-filled .slot-emp{grid-area:2/1}.slot.is-filled .slot-remove{grid-area:1/2/3;align-self:center}.slot.is-filled.is-generic .slot-label{color:var(--line-strong);grid-area:1/2;justify-self:end;margin:0 4px 0 0;font-weight:600}.slot.is-filled.is-generic .slot-emp{grid-row:1/3;align-self:center}.slot.is-filled.is-generic .slot-remove{grid-row:2}.slot-hint{color:var(--ink-3);font-size:11.5px}.slot.is-optional:not(.is-filled){border-color:var(--line)}.slot.is-optional .slot-label{color:var(--ink-3)}.slot.is-wanted{border-color:var(--warn);background:var(--warn-soft);border-width:1.5px}.slot.is-wanted .slot-hint{color:var(--warn);font-weight:500}.slot.can-drop{border-style:solid;border-color:var(--ok);background:var(--ok-soft)}.slot.can-drop.is-over{transform:scale(1.03);box-shadow:0 0 0 4px #1f8f5f2e}.slot.cannot-drop{background:repeating-linear-gradient(-45deg, var(--surface-3) 0 6px, transparent 6px 12px);opacity:.6;border-color:#0000}.slot.cannot-drop.is-over{border-color:var(--warn);background-color:var(--warn-soft);opacity:1}.slot.cannot-drop .slot-hint{color:var(--warn);font-weight:500}.slot-emp{align-items:center;gap:9px;min-width:0;display:flex}.slot-emp .avatar{width:28px;height:28px;font-size:11px}.slot-emp-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.slot-emp .name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.slot-emp .also{color:var(--schulung);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.slot-remove{width:26px;height:26px;color:var(--ink-3);opacity:0;transition:opacity .15s var(--ease-out), background .15s var(--ease-out), color .15s;border-radius:50%;place-items:center;display:grid}.slot:hover .slot-remove,.slot-remove:focus-visible{opacity:1}.slot-remove:hover{background:var(--krank-soft);color:var(--krank)}.toast{--tone:var(--warn);z-index:70;border-radius:var(--radius-l);border:1px solid var(--line-strong);background:var(--surface);width:max-content;min-width:300px;max-width:min(560px,100vw - 32px);color:var(--ink);box-shadow:var(--shadow-lift);-webkit-user-select:text;user-select:text;align-items:flex-start;gap:10px;padding:12px 10px 14px 16px;display:flex;position:fixed;bottom:24px;left:50%;overflow:hidden}.toast.is-info{--tone:var(--schulung)}.toast.is-ok{--tone:var(--ok)}.toast:before{content:"";background:var(--tone);width:4px;position:absolute;inset:0 auto 0 0}.toast-icon{color:var(--tone);flex:none;margin-top:1px;display:grid}.toast-body{flex:1;min-width:0;padding-top:1px}.toast-title{font-size:14px;font-weight:600;line-height:1.4}.toast-details{color:var(--ink-2);margin:6px 0 0;padding-left:18px;font-size:13px;line-height:1.5}.toast-details li::marker{color:var(--ink-3)}.toast-close{border-radius:var(--radius-s);width:28px;height:28px;color:var(--ink-3);flex:none;place-items:center;margin:-4px 0 0;display:grid}.toast-close:hover{background:var(--surface-3);color:var(--ink)}.toast-timer{background:var(--tone);opacity:.35;transform-origin:0;height:3px;animation-name:toast-timer;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;bottom:0;left:0;right:0}.toast-timer.is-paused{animation:none}@keyframes toast-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.topbar>.brand{flex:0 340px;min-width:0}.brand small{text-overflow:ellipsis;min-width:0;overflow:hidden}.topbar>.weekstrip,.topbar>.pagenav,.topbar>.copybtn,.topbar>.lockbtn{flex:none}.topbar-stats>span{white-space:nowrap}@media (width<=1760px){.topbar{gap:16px}.pagenav button{padding:0 10px}.pagenav button .label{display:none}}@media (width<=1500px){.topbar>.brand{flex-basis:230px}.topbar .copybtn .label:not(.is-keep),.topbar .lockbtn .label{display:none}.topbar .lockbtn{margin-left:0;padding:0 9px}.absences-toolbar{flex-wrap:wrap;gap:8px 12px}.absences-page .absences-toolbar .search{width:210px}.absences-toolbar .qualfilter{flex-wrap:nowrap}.absences-toolbar .legend{display:none}.absences-toolbar .modebtn{margin-left:auto}}@media (width<=1340px){.topbar{gap:12px;padding:10px 16px}.topbar>.brand{flex-basis:auto}.brand small{display:none}.topbar-stats{flex-direction:column;gap:0;font-size:12px;line-height:1.3}.workspace{grid-template-columns:264px 1fr}.board{padding:0 16px 40px}.board-grid{gap:0 12px;min-width:0}}.daytab.is-holiday:not(.is-selected) span{color:var(--danger)}.qual.is-expiring{background:var(--warn-soft);color:var(--warn)}.qual.is-expired{background:var(--krank-soft);color:var(--danger);text-decoration:line-through}.cert-alert{border-radius:var(--radius-s);background:var(--warn-soft);width:100%;color:var(--warn);text-align:left;align-items:center;gap:6px;margin:-2px 0 10px;padding:6px 10px;font-size:12.5px;font-weight:600;display:flex}.cert-alert.is-expired{background:var(--krank-soft);color:var(--danger)}.cert-alert[data-tip]{cursor:pointer}.shift-head .fill{cursor:help;align-items:baseline;gap:8px;display:inline-flex}.shift-head .fill-part{white-space:nowrap}.shift-head .fill-part+.fill-part:before{content:"·";color:var(--ink-3);margin-right:8px}.shift-head .fill-label{color:var(--ink-3);font-weight:500}.shift-head .fill.is-complete .fill-label{color:inherit;opacity:.75}.shift-head .fill .fill-warn{align-self:center;margin-left:0}.emp .absence.is-tentative{background-image:repeating-linear-gradient(135deg,#ffffff8c 0 4px,#0000 4px 8px);box-shadow:inset 0 0 0 1px #0000001f}.shift-head.is-special{background:repeating-linear-gradient(135deg, #00000009 0 8px, transparent 8px 16px), linear-gradient(180deg, var(--tint) 0%, var(--bg) 100%)}.shift-head .fill.is-hint{color:var(--ink-3);font-weight:500}.area-cell.is-special{border-radius:var(--radius-m);background:repeating-linear-gradient(135deg,#00000006 0 8px,#0000 8px 16px)}.plan-tabs{border-radius:var(--radius-m);background:var(--surface-3);flex:none;gap:4px;width:max-content;max-width:100%;margin:14px 0 -6px;padding:4px;display:flex;overflow-x:auto}.plan-tab{border-radius:var(--radius-s);color:var(--ink-2);white-space:nowrap;padding:6px 14px;font-size:13.5px;font-weight:600}.plan-tab:hover{color:var(--ink)}.plan-tab.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #00000014}.plan-tag{background:var(--steel-soft);color:var(--ink-2);vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10.5px;font-weight:600;display:inline-block}.pool-others{margin:-2px 0 10px;font-size:12.5px}.emp-quals .plan-tag{margin-left:0}.area-change-btn{float:right;border-radius:var(--radius-s);width:24px;height:24px;color:var(--ink-3);opacity:0;transition:opacity .15s var(--ease-out);place-items:center;margin:-2px -4px 0 4px;display:grid}.area-label:hover .area-change-btn,.area-change-btn:focus-visible{opacity:1}.area-change-btn:hover{background:var(--surface-3);color:var(--ink)}.shift-change-note{border-radius:999px;align-items:center;gap:5px;margin:0 0 6px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.shift-change-note.is-add{background:var(--schulung-soft,#e6ecfa);color:var(--schulung)}.shift-change-note.is-drop{background:var(--warn-soft);color:var(--warn)}.area-cell.is-dropped{border-radius:var(--radius-m);border:1px dashed var(--line-strong);min-height:48px;color:var(--ink-2);text-align:center;background:repeating-linear-gradient(135deg,#0000000a 0 8px,#0000 8px 16px);place-items:center;padding:8px;font-size:12.5px;font-weight:600;display:grid}.pubbtn.is-draft,.pubbtn.is-changed{border-color:var(--warn);color:var(--warn)}.pubbtn.is-published{color:var(--ok)}.pubbtn-count{background:var(--warn);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-grid}.pubchip{white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.pubchip.is-published{color:var(--ok)}.pubchip.is-none{color:var(--ink-3)}.slot.is-unpublished{box-shadow:inset 3px 0 0 var(--warn)}.slot.is-unpublished:after{content:"Entwurf";letter-spacing:.03em;text-transform:uppercase;color:var(--warn);font-size:9.5px;font-weight:700;position:absolute;top:3px;right:6px}.reader-notice{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);color:var(--ink-2);margin:16px 0 0;padding:12px 16px;font-size:13.5px}.pub-summary{flex-direction:column;gap:2px;margin:4px 0 14px;font-size:13.5px;display:flex}@media (width<=2000px){.topbar .copybtn:not(.pubbtn) .label:not(.is-keep){display:none}}@media (width<=1500px){.topbar .copybtn .label.is-keep{display:none}.topbar>.brand{flex-basis:170px}}@media (width<=2100px){.topbar{gap:16px}}@media (width<=1760px){.topbar>.brand{flex-basis:260px}}@media (width<=1500px){.topbar-stats{flex-direction:column;gap:0;font-size:12px;line-height:1.3}}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;max-width:520px;margin:48px auto;padding:0 20px;display:flex}.empty-state.is-compact{gap:6px;margin:24px auto}.empty-state-icon{background:var(--surface-3);width:48px;height:48px;color:var(--ink-2);border-radius:999px;place-items:center;display:grid}.empty-state.is-compact .empty-state-icon{width:36px;height:36px}.empty-state-title{font-size:15px}.empty-state.is-compact .empty-state-title{font-size:13.5px}.empty-state-text{color:var(--ink-2);font-size:13px;line-height:1.55}.empty-state-actions{gap:8px;margin-top:6px;display:flex}.empty-state-actions .btn{align-items:center;gap:5px;display:inline-flex}@media (width<=1700px){.topbar .pubbtn .label{display:none}}.app.has-banner{grid-template-rows:auto auto 1fr}.demo-banner{background:var(--steel-soft);border-bottom:1px solid color-mix(in srgb, var(--steel) 30%, transparent);color:var(--ink);align-items:center;gap:10px;padding:8px 24px;font-size:13px;display:flex}.demo-banner svg{color:var(--steel);flex:none}.demo-banner>span{flex:1;min-width:0}.demo-banner-btn{background:var(--steel);border-color:var(--steel);white-space:nowrap;flex:none}.help-section.help-demo{background:var(--steel-soft);border-top:none;margin:0 -20px;padding:14px 20px}.help-demo p{color:var(--ink-2);margin:4px 0;font-size:13px;line-height:1.5}@media (width<=1100px){.demo-banner>span{display:none}}@media (width<=1440px){.brand small{display:none}.topbar>.brand{flex-basis:auto}}.savebar-external{color:var(--warn);border-color:var(--warn)}.guide-note{border-radius:var(--radius-m);background:var(--steel-soft);border:1px solid color-mix(in srgb, var(--steel) 35%, transparent);align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 14px;display:flex}.absences-scroll .guide-note{margin:16px 24px 4px}.guide-note svg{color:var(--steel);flex:none;margin-top:2px}.guide-note strong{margin-bottom:2px;font-size:14px;display:block}.guide-note p{max-width:70ch;color:var(--ink-2);margin:0;font-size:13px;line-height:1.5}.guide-note-close{border-radius:var(--radius-s);width:28px;height:28px;color:var(--ink-3);place-items:center;margin-left:auto;display:grid}.guide-note-close:hover{color:var(--ink);background:#0000000f}.board>.guide-note{margin:16px 0 0}.lockbtn{border-radius:var(--radius-s);border:1px solid var(--line);background:var(--surface-2);height:32px;color:var(--ink-2);transition:background .15s var(--ease-out), color .15s var(--ease-out), border-color .15s var(--ease-out);align-items:center;gap:6px;margin-left:10px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.lockbtn:hover{border-color:var(--line-strong)}.lockbtn.is-open{background:var(--ok-soft);color:var(--ok);border-color:#0000}.emp.is-readonly{cursor:default}.modal-backdrop{z-index:100;background:#1b202859;place-items:center;display:grid;position:fixed;inset:0}.modal{border-radius:var(--radius-l);background:var(--surface);width:380px;box-shadow:var(--shadow-lift);flex-direction:column;gap:12px;padding:22px;display:flex}.modal h2{margin:0;font-size:17px;font-weight:700}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.btn:disabled{opacity:.45;cursor:not-allowed}.fullscreen{place-items:center;min-height:0;display:grid}.loading{text-align:center;max-width:460px;color:var(--ink-2);flex-direction:column;align-items:center;gap:10px;display:flex}.loading strong{color:var(--ink);font-size:17px}.spinner{border:2px solid var(--line-strong);border-top-color:var(--ink);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.config-main.is-readonly{opacity:.7}.config-detail-solo{height:100%;padding:24px 32px 60px}.security-status{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);max-width:620px;color:var(--ink-2);align-items:center;gap:12px;margin:16px 0 8px;padding:12px 14px;display:flex}.security-status.is-on{border-color:var(--ok);color:var(--ok)}.security-status>span{color:var(--ink);flex-direction:column;flex:1;font-weight:600;display:flex}.security-status small{color:var(--ink-3);font-weight:400}.absences-host{display:contents}.absences-host[inert] .ab-cell{cursor:default}.pagenav{border-radius:var(--radius-m);background:var(--surface-3);gap:2px;margin-left:8px;padding:3px;display:flex}.pagenav button{height:30px;color:var(--ink-2);transition:background .15s var(--ease-out), color .15s var(--ease-out);border-radius:7px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.pagenav button:hover{color:var(--ink)}.pagenav button.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #1b20281f}.config{grid-template-columns:260px 1fr;min-height:0;display:grid;overflow:hidden}.config>*{min-height:0}.config-nav{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:4px;padding:16px 12px;display:flex}.config-nav-item{border-radius:var(--radius-m);text-align:left;color:var(--ink-2);transition:background .15s var(--ease-out), color .15s var(--ease-out);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.config-nav-item svg{flex:none;margin-top:2px}.config-nav-item span{color:var(--ink);flex-direction:column;font-weight:600;display:flex}.config-nav-item small{color:var(--ink-3);font-size:12px;font-weight:400}.config-nav-item:hover{background:var(--surface-2)}.config-nav-item.is-active{background:var(--steel-soft)}.config-nav-item.is-active svg{color:var(--steel)}.config-note{color:var(--ink-3);margin:auto 4px 0;font-size:12px;line-height:1.45}.config-main{min-height:0;overflow:hidden}.config-split{grid-template-columns:minmax(320px,420px) 1fr;height:100%;min-height:0;display:grid}.config-list{border-right:1px solid var(--line);flex-direction:column;gap:4px;padding:16px 12px 40px;display:flex;overflow-y:auto}.config-list-head{color:var(--ink-3);justify-content:space-between;align-items:center;margin:0 4px 8px;font-size:13px;display:flex}.config-search{margin-bottom:8px}.config-group{flex-direction:column;gap:4px;margin-top:14px;display:flex}.config-group:first-of-type{margin-top:0}.config-row{border-radius:var(--radius-m);cursor:pointer;transition:background .12s var(--ease-out), border-color .12s var(--ease-out);border:1px solid #0000;align-items:center;gap:10px;padding:8px 8px 8px 10px;display:flex}.config-row:hover{background:var(--surface);border-color:var(--line)}.config-row.is-selected{background:var(--surface);border-color:var(--ink)}.config-row .row-tools{opacity:0}.config-row:hover .row-tools,.config-row.is-selected .row-tools{opacity:1}.config-row-main{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.config-row-main .title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.config-row-main .title small{color:var(--ink-3);margin-left:6px;font-weight:400}.config-row-main .sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.config-row-main.is-group .title{text-transform:none;color:var(--ink-2);font-size:12px}.config-group>.config-row:first-child{border-bottom:2px solid var(--line-strong);border-radius:0;padding-left:4px}.config-group>.config-row:first-child:hover,.config-group>.config-row.is-selected:first-child{border-color:transparent transparent var(--ink);background:0 0}.swatch{border-radius:4px;flex:none;width:12px;height:28px}.qual.is-static{flex:none;justify-content:center;min-width:36px}.config-add{align-self:flex-start;margin-left:6px}.config-detail{padding:24px 32px 60px;overflow-y:auto}.config-detail h2{letter-spacing:-.01em;margin:0 0 16px;font-size:20px;font-weight:700}.config-detail h3{color:var(--ink-2);margin:28px 0 10px;font-size:14px;font-weight:700}.config-empty{text-align:center;color:var(--ink-3);padding:60px 20px}.muted{color:var(--ink-3);font-size:13px}.plain-list{color:var(--ink-2);margin:0;padding-left:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;max-width:960px;display:grid}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field-label{color:var(--ink-2);font-size:12px;font-weight:600}.field-hint{color:var(--ink-3);font-size:11.5px}.input{border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface);height:34px;color:var(--ink);width:100%;min-width:0;transition:border-color .15s var(--ease-out), box-shadow .15s var(--ease-out);padding:0 10px}.input:focus{border-color:var(--steel);box-shadow:0 0 0 3px var(--steel-soft);outline:none}.input.is-number{width:72px}.input.is-time,.input.is-date{width:auto}.input.is-mono{font-feature-settings:"tnum" 1;letter-spacing:.04em}.input.is-select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-3) 50%), linear-gradient(135deg, var(--ink-3) 50%, transparent 50%);background-position:calc(100% - 15px) 15px,calc(100% - 10px) 15px;background-repeat:no-repeat;background-size:5px 5px;padding-right:28px}.input-with-icon{color:var(--ink-3);align-items:center;gap:8px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.toggle{height:34px;color:var(--ink-2);align-items:center;gap:8px;font-weight:500;display:inline-flex}.toggle-knob{background:var(--line-strong);width:34px;height:20px;transition:background .18s var(--ease-out);border-radius:999px;flex:none;position:relative}.toggle-knob:after{content:"";width:16px;height:16px;transition:transform .18s var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.toggle.is-on .toggle-knob{background:var(--ok)}.toggle.is-on .toggle-knob:after{transform:translate(14px)}.toggle.is-on{color:var(--ink)}.btn{border-radius:var(--radius-s);background:var(--ink);color:#fff;height:32px;transition:background .15s var(--ease-out), transform .15s var(--ease-spring);align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover{background:#2c3440}.btn:active{transform:scale(.97)}.btn.is-ghost{color:var(--steel);background:0 0;padding:0 8px}.btn.is-ghost:hover{background:var(--steel-soft)}.btn.is-danger{color:var(--danger);border:1px solid var(--krank-soft);background:0 0}.btn.is-danger:hover{background:var(--krank-soft)}.btn.is-danger[data-armed]{background:var(--danger);color:#fff;border-color:var(--danger)}.btn.is-danger[data-armed]:before{content:attr(data-confirm) " – "}.row-tools{flex:none;gap:2px;display:inline-flex}.row-tools button{border-radius:var(--radius-s);width:26px;height:26px;color:var(--ink-3);transition:background .12s var(--ease-out), color .12s var(--ease-out);place-items:center;display:grid}.row-tools button:hover{background:var(--surface-3);color:var(--ink)}.row-tools button.is-danger:hover{background:var(--krank-soft);color:var(--danger)}.row-tools button.is-danger[data-armed]{background:var(--danger);color:#fff;align-items:center;gap:4px;width:auto;padding:0 8px;display:inline-flex}.row-tools button.is-danger[data-armed]:after{content:"Entfernen?";font-size:12px;font-weight:600}.config-row .row-tools:has([data-armed]){opacity:1}.form-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:32px;padding-top:16px;display:flex}.positions{flex-direction:column;gap:6px;display:flex}.positions-head,.positions-row{grid-template-columns:minmax(140px,1.2fr) minmax(150px,1fr) 72px 72px minmax(160px,1.2fr) auto;align-items:center;gap:8px;display:grid}.positions-head{color:var(--ink-3);padding:0 2px 2px;font-size:11.5px;font-weight:600}.positions-row{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);padding:6px}.positions-shifts{flex-direction:column;gap:6px;display:flex}.positions-shifts .toggle{height:24px;font-size:12px}.positions-shifts .toggle-knob{width:28px;height:16px}.positions-shifts .toggle-knob:after{width:12px;height:12px}.positions-shifts .toggle.is-on .toggle-knob:after{transform:translate(12px)}.absences{flex-direction:column;gap:6px;display:flex}.absence-row{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);grid-template-columns:130px auto auto auto 1fr auto;align-items:center;gap:8px;padding:6px;display:grid}.absence-row.is-past{opacity:.6}.config-list-foot{border-top:1px solid var(--line);margin:20px 4px 0;padding-top:16px}.cert-intro{margin:-4px 0 10px;font-size:12.5px}.cert-list{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.cert-row{grid-template-columns:44px minmax(120px,1fr) auto auto 110px;align-items:center;gap:10px;display:grid}.cert-name{font-weight:500}.cert-state{font-size:12px;font-weight:600}.cert-row.is-expiring .cert-state{color:var(--warn)}.cert-row.is-expired .cert-state,.cert-row.is-expired .cert-name{color:var(--danger)}.cert-flag{color:var(--warn);font-weight:600}.cert-flag.is-expired{color:var(--danger)}.absence-row{grid-template-columns:130px auto auto auto 1fr auto auto}.change-list{flex-direction:column;gap:6px;display:flex}.change-row{grid-template-columns:minmax(130px,1fr) 120px auto auto auto minmax(120px,1fr) auto;align-items:center;gap:8px;display:grid}.change-row.is-past{opacity:.55}.plan-tabs.is-config{margin:0 4px 14px}.plan-members{margin:0 0 8px;padding-left:18px;line-height:1.7}.absence-overview ul{flex-direction:column;gap:2px;margin:0 0 6px;padding:0;list-style:none;display:flex}.absence-overview-row{border-radius:var(--radius-s);text-align:left;align-items:center;gap:10px;width:100%;padding:6px 8px;font-size:13px;display:flex}.absence-overview-row:hover{background:var(--surface-3)}.absence-overview li.muted{padding:4px 8px;font-size:12.5px}.former-toggle{margin:0 4px 8px;font-size:12.5px}.former-flag{color:var(--ink-3);font-weight:600}.former-banner{border-radius:var(--radius-s);background:var(--surface-3);color:var(--ink-2);margin:-6px 0 16px;padding:10px 12px;font-size:13px}.retire-action{align-items:center;gap:12px;display:inline-flex}.retire-action .muted{text-align:right;max-width:300px;font-size:12px}.former-positions{flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;font-size:12.5px;display:flex}.former-position{color:var(--ink-2);align-items:baseline;gap:6px;display:inline-flex}.former-position small{color:var(--ink-3)}.holder-list{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);flex-direction:column;max-width:520px;margin-bottom:8px;display:flex;overflow:hidden}.holder-row{align-items:center;gap:10px;min-height:44px;padding:6px 8px 6px 12px;display:flex}.holder-row+.holder-row{border-top:1px solid var(--line)}.holder-row:hover{background:var(--surface-2)}.holder-row .row-tools{margin-left:auto}.holder-name{font-size:13.5px}.holder-cert{border-radius:999px;padding:1px 7px;font-size:11.5px;font-weight:600}.holder-cert.is-expiring{background:var(--warn-soft);color:var(--warn)}.holder-cert.is-expired{background:var(--krank-soft);color:var(--danger)}.wizard-host{background:var(--bg);place-items:center;min-height:100vh;padding:32px 16px;display:grid}.wizard{border-radius:var(--radius-l);background:var(--surface);width:min(1040px,100%);min-height:min(720px,100vh - 64px);box-shadow:var(--shadow-lift);grid-template-columns:220px 1fr;display:grid;overflow:hidden}.wizard-steps{background:var(--surface-2);border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:24px 14px;display:flex}.wizard-brand{margin:0 8px 18px;font-size:15px;font-weight:700}.wizard-step{border-radius:var(--radius-s);color:var(--ink-3);align-items:center;gap:10px;padding:8px;font-size:13.5px;font-weight:500;display:flex}.wizard-step-icon{background:var(--surface-3);border-radius:999px;place-items:center;width:24px;height:24px;display:grid}.wizard-step.is-current{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000000f}.wizard-step.is-current .wizard-step-icon{background:var(--steel);color:#fff}.wizard-step.is-done{color:var(--ink-2)}.wizard-step.is-done .wizard-step-icon{background:var(--ok-soft);color:var(--ok)}.wizard-body{flex-direction:column;min-width:0;display:flex}.wizard-page{flex:1;padding:32px 36px 16px;overflow:auto}.wizard-page h1{margin:0 0 6px;font-size:24px}.wizard-lead{max-width:640px;color:var(--ink-2);margin:0 0 20px;line-height:1.5}.wizard-note{max-width:640px;margin-top:14px;font-size:12.5px}.wizard-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:680px;margin-bottom:20px;display:grid}.wizard-choice.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-card{border-radius:var(--radius-m);border:1.5px solid var(--line);background:var(--surface);text-align:left;transition:border-color .15s var(--ease-out), box-shadow .15s var(--ease-out);flex-direction:column;gap:4px;padding:16px;display:flex}.wizard-card:hover{border-color:var(--line-strong)}.wizard-card strong{font-size:15px}.wizard-card span{color:var(--ink-2);font-size:13px;line-height:1.45}.wizard-card.is-primary,.wizard-card.is-selected{border-color:var(--steel);background:color-mix(in srgb, var(--steel-soft) 55%, var(--surface));box-shadow:0 0 0 1px var(--steel) inset}.wizard-card.is-primary:hover{background:var(--steel-soft)}.wizard-choice.is-start .wizard-card{gap:6px;padding:20px;position:relative}.wizard-card-icon{border-radius:var(--radius-s);background:var(--surface-3);place-items:center;width:38px;height:38px;margin-bottom:4px;display:grid;color:var(--ink-2)!important}.wizard-card.is-primary .wizard-card-icon{background:var(--steel);color:#fff!important}.wizard-card-badge{background:var(--steel);border-radius:999px;padding:2px 8px;font-weight:600;position:absolute;top:14px;right:14px;color:#fff!important;font-size:11px!important}.wizard-card-go{align-items:center;gap:6px;margin-top:auto;padding-top:10px;font-weight:600;display:inline-flex;color:var(--steel)!important;font-size:13.5px!important}.wizard-card-go.is-quiet{color:var(--ink-2)!important}.wizard-outlook{border-top:1px solid var(--line);flex-direction:column;gap:12px;max-width:680px;margin:28px 0 0;padding:18px 0 0;list-style:none;display:flex}.wizard-outlook li{color:var(--ink-2);align-items:center;gap:12px;font-size:13.5px;display:flex}.wizard-outlook svg{color:var(--steel);flex:none}.wizard-outlook strong{color:var(--ink)}.wizard-table{flex-direction:column;gap:6px;display:flex}.wizard-row{grid-template-columns:minmax(120px,1fr) 76px 118px 118px minmax(290px,auto);align-items:center;gap:8px;display:grid}.wizard-row.is-head{color:var(--ink-3);font-size:12px;font-weight:600}.wizard-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.wizard-chip{border:1.5px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:5px;padding:7px 12px;font-size:13.5px;font-weight:500;display:inline-flex}.wizard-chip.is-on{border-color:var(--steel);background:var(--steel);color:#fff}.wizard-inline{gap:8px;max-width:520px;display:flex}.wizard-areas{flex-direction:column;gap:12px;margin:14px 0 10px;display:flex}.wizard-area{border-radius:var(--radius-m);border:1px solid var(--line);background:var(--surface-2);padding:12px}.wizard-area-head{grid-template-columns:minmax(160px,1.5fr) 110px minmax(140px,1fr) 28px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.wizard-position{grid-template-columns:minmax(160px,1.5fr) minmax(150px,1fr) 150px 28px;align-items:center;gap:8px;margin:0 0 6px 16px;display:grid}.wizard-count{align-items:center;gap:6px;display:inline-flex}.wizard-count .input{width:64px}.wizard-add{margin-left:16px}.wizard-icon{border-radius:var(--radius-s);width:28px;height:28px;color:var(--ink-3);place-items:center;display:grid}.wizard-icon:hover{background:var(--krank-soft);color:var(--danger)}.wizard-paste{border-radius:var(--radius-s);border:1px solid var(--line-strong);resize:vertical;width:100%;max-width:680px;padding:10px 12px;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.wizard-preview{max-width:680px;margin-top:12px;font-size:13px}.wizard-preview table{border-collapse:collapse;width:100%;margin-top:6px}.wizard-preview th,.wizard-preview td{border-bottom:1px solid var(--line);text-align:left;padding:4px 8px}.wizard-preview th{color:var(--ink-3);font-size:12px}.wizard-preview tr.is-problem td{color:var(--danger);background:var(--krank-soft)}.wizard-summary{margin:0 0 16px;padding-left:18px;line-height:1.8}.wizard-footer{border-top:1px solid var(--line);align-items:center;gap:12px;padding:14px 36px;display:flex}.wizard-blocker{text-align:right;color:var(--warn);flex:1;font-size:12.5px}@media (width<=900px){.wizard{grid-template-columns:1fr}.wizard-steps{display:none}}.helpbtn{border-radius:var(--radius-s);width:34px;height:34px;color:var(--ink-2);flex:none;place-items:center;display:grid;position:relative}.helpbtn:hover{background:var(--surface-3);color:var(--ink)}.helpbtn-badge{background:var(--warn);color:#fff;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:grid;position:absolute;top:1px;right:0}.help-backdrop{z-index:80;background:#14181e2e;position:fixed;inset:0}.help-panel{background:var(--surface);width:min(420px,100vw);box-shadow:var(--shadow-lift);padding:18px 20px 24px;position:absolute;top:0;bottom:0;right:0;overflow:auto}.help-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.help-head h2{margin:0;font-size:18px}.help-section{border-top:1px solid var(--line);padding:14px 0}.help-section h3{margin:0 0 8px;font-size:14px}.help-section-head{justify-content:space-between;align-items:baseline;display:flex}.help-progress{background:var(--surface-3);border-radius:999px;height:5px;margin:2px 0 12px;overflow:hidden}.help-progress span{background:var(--ok);height:100%;transition:width .3s var(--ease-out);display:block}.help-steps{flex-direction:column;gap:10px;margin:0 0 10px;padding:0;list-style:none;display:flex}.help-steps li{grid-template-columns:22px 1fr;gap:8px;font-size:13px;display:grid}.help-steps li p{color:var(--ink-2);margin:2px 0 6px;line-height:1.45}.help-steps li.is-done strong{color:var(--ink-3);font-weight:500;text-decoration:line-through}.help-check{border:1.5px solid var(--line-strong);border-radius:999px;place-items:center;width:20px;height:20px;margin-top:-1px;display:grid}.help-steps li.is-done .help-check{border-color:var(--ok);background:var(--ok);color:#fff}.help-action{align-items:center;gap:5px;height:28px;padding:0 10px;font-size:12.5px;display:inline-flex}.help-warn{color:var(--warn)!important}.help-list{color:var(--ink-2);margin:0;padding-left:18px;font-size:13px;line-height:1.5}.help-list li+li{margin-top:6px}.help-faq{margin-bottom:6px;font-size:13px}.help-faq summary{cursor:pointer;padding:4px 0;font-weight:600}.help-faq p{color:var(--ink-2);margin:2px 0 8px;line-height:1.45}.system-page{max-width:820px}.system-card{border-radius:var(--radius-m);border:1px solid var(--line);background:var(--surface);margin-top:18px;padding:18px 20px}.system-card h3{align-items:center;gap:8px;margin:0 0 6px;font-size:15px;display:flex}.system-card>.muted{margin:0 0 12px;line-height:1.5}.system-urls{border:1px solid var(--line);border-radius:var(--radius-s);flex-direction:column;display:flex;overflow:hidden}.system-url{justify-content:space-between;align-items:center;gap:12px;padding:8px 10px 8px 12px;font:13.5px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:flex}.system-url+.system-url{border-top:1px solid var(--line)}.system-url span{flex-direction:column;display:flex}.system-url small{color:var(--ink-3);font-family:inherit;font-size:11px}.system-url .btn{font-family:var(--font,inherit);align-items:center;gap:5px;display:inline-flex}.system-hint{margin:10px 0 0;font-size:12.5px}.system-actions{gap:8px;margin-bottom:12px;display:flex}.system-actions .btn{align-items:center;gap:6px;display:inline-flex}.system-backups{max-width:none}.system-backup-when{font-size:13.5px;font-weight:600}.system-backup-actions{gap:4px;margin-left:auto;display:inline-flex}.system-backup-actions .btn{place-items:center;width:32px;height:30px;padding:0;display:inline-grid}.system-facts{grid-template-columns:120px 1fr;gap:6px 12px;margin:4px 0 0;font-size:13.5px;display:grid}.system-facts dt{color:var(--ink-3)}.system-facts dd{margin:0}.system-facts .is-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.wizard .qual.is-active{background:var(--steel);border-color:var(--steel);color:#fff}.wizard .chips{flex-wrap:nowrap}.wizard-area-head .chips,.wizard-row .chips{flex-wrap:wrap}.wizard-row .chips{flex-wrap:nowrap}.wizard-footer .btn:not(.is-ghost),.wizard-inline .btn:not(.is-ghost){background:var(--steel);border-color:var(--steel)}.wizard-footer .btn:not(.is-ghost):hover:not(:disabled){background:#4b5d70}.system-card.is-danger{border-color:color-mix(in srgb, var(--danger) 25%, var(--line))}.wizard-restore-link{align-items:center;gap:6px;margin-top:14px;font-size:13px;display:inline-flex}.wizard-restore{border-radius:var(--radius-m);border:1px solid var(--line);background:var(--surface-2);max-width:680px;margin-top:16px;padding:14px 16px}.wizard-restore .muted{margin:2px 0 10px}.wizard-restore-btn{align-items:center;gap:5px;margin-left:auto;display:inline-flex}.wizard-restore-file{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.wizard-restore-file.is-disabled{opacity:.5;pointer-events:none}.wizard-restore .system-backup-when{white-space:nowrap}.wizard-preview tr.is-hint td:last-child{color:var(--ink-3)}.wizard-resumed{border-radius:var(--radius-s);background:var(--steel-soft);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:16px 36px 0;padding:8px 12px;font-size:13px;display:flex}.wizard-resumed svg{color:var(--steel)}.wizard-resumed-close{border-radius:var(--radius-s);width:24px;height:24px;color:var(--ink-3);margin-left:auto;font-size:18px;line-height:1}.wizard-resumed-close:hover{background:#0000000f}.help-skip{color:var(--ink-3);margin-left:10px;font-size:12.5px}.help-foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:14px;padding-top:12px;font-size:12.5px;display:flex}.recovery-link{color:var(--ink-3);font-size:12.5px}.recovery-hint{border-radius:var(--radius-m);border:1px solid var(--line);background:var(--surface-2);text-align:left;align-items:flex-start;gap:10px;max-width:640px;margin:12px 0;padding:12px 14px;display:flex}.recovery-hint svg{color:var(--ink-2);flex:none;margin-top:2px}.recovery-hint strong{margin-bottom:2px;font-size:13.5px;display:block}.recovery-hint p{color:var(--ink-2);margin:0 0 4px;font-size:12.5px;line-height:1.5}.recovery-hint code{background:var(--surface-3);border-radius:4px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.recovery-path{word-break:break-all}.absences-page{grid-template-rows:auto 1fr;min-height:0;display:grid}.absences-head{background:var(--surface);border-bottom:1px solid var(--line)}.absences-toolbar{align-items:center;gap:18px;padding:12px 24px;display:flex}.modebtn{border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface);height:32px;color:var(--ink);white-space:nowrap;transition:background .15s var(--ease-out), color .15s var(--ease-out), border-color .15s var(--ease-out);align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.modebtn:hover{background:var(--surface-3)}.modebtn.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.modebtn.is-locked{color:var(--ink-3);border-color:var(--line);background:var(--surface-2);cursor:not-allowed}.ab-editbanner{overflow:hidden}.ab-editbanner-inner{color:var(--ink-2);background:var(--urlaub-soft);border-top:1px solid #c9950b40;align-items:center;gap:16px;padding:8px 24px;font-size:12.5px;display:flex}.ab-editbanner-inner>span{align-items:center;gap:6px;display:inline-flex}.ab-editbanner-inner>.muted{margin-left:auto}.ab-editbanner-pill{background:var(--urlaub);color:#fff;border-radius:999px;padding:2px 10px 2px 8px;font-weight:600}.ab-editbanner kbd{font:inherit;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600}.absences-toolbar .search{width:260px}.absences-toolbar .qualfilter{margin-top:0}.absences-month{align-items:center;gap:4px;display:flex}.absences-month h2{text-align:center;min-width:150px;margin:0 6px;font-size:16px;font-weight:700}.absences-month .nav{border-radius:var(--radius-s);width:30px;height:30px;color:var(--ink-2);place-items:center;display:grid}.absences-month .nav:hover{background:var(--surface-3)}.legend{color:var(--ink-2);gap:12px;margin-left:auto;font-size:12px;display:flex}.legend-item{align-items:center;gap:6px;display:inline-flex}.legend-item:before{content:"";border-radius:3px;width:14px;height:10px}.legend-item.urlaub:before{background:var(--urlaub)}.legend-item.krank:before{background:var(--krank)}.legend-item.schulung:before{background:var(--schulung)}.legend-item.sonstiges:before{background:var(--sonstiges)}.absences-scroll{padding:0 24px 40px;overflow:auto}.absences-grid{-webkit-user-select:none;user-select:none;grid-auto-rows:36px;min-width:100%;display:grid}.absences-grid>*{min-width:0}.ab-corner,.ab-name,.ab-foot-label{z-index:3;background:var(--bg);position:sticky;left:0}.ab-corner,.ab-kw,.ab-day{z-index:4;background:var(--bg);position:sticky;top:0}.ab-corner.is-second,.ab-day{border-bottom:1px solid var(--line-strong);top:36px}.ab-corner{z-index:5}.ab-corner.is-second{color:var(--ink-3);align-items:flex-end;padding:0 4px 6px;font-size:12px;display:flex}.ab-kw{color:var(--ink-3);border-left:1px solid var(--line-strong);align-items:flex-end;padding:10px 6px 4px;font-size:12px;font-weight:600;display:flex}.ab-day{color:var(--ink-3);flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:4px;font-size:10.5px;line-height:1.15;display:flex}.ab-day strong{color:var(--ink-2);font-size:13px}.ab-day.is-weekend strong{color:var(--ink-3)}.ab-day.is-other{opacity:.45}.ab-day.is-today strong{color:#fff;background:var(--ink);border-radius:6px;padding:0 5px}.ab-name{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:0 8px 0 4px;display:flex}.ab-name-text{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.ab-name-text small{color:var(--ink-3);margin-left:6px;font-weight:400}.ab-cell{border-bottom:1px solid var(--line);border-left:1px solid #0000}.absences-grid.is-editing .ab-cell{cursor:crosshair}.absences-grid.is-editing .ab-cell:hover{background:var(--steel-soft)}.ab-cell.is-weekend{background:#00000009}.ab-cell.is-other{background:repeating-linear-gradient(-45deg,#0000 0 5px,#00000008 5px 10px)}.ab-cell.is-today{box-shadow:inset 1.5px 0 0 var(--steel)}.ab-bar{z-index:2;color:#fff;cursor:pointer;height:24px;transition:transform .15s var(--ease-spring), box-shadow .15s var(--ease-out);border-radius:6px;align-self:center;align-items:center;margin:0 1px;padding:0 8px;font-size:11.5px;font-weight:600;display:flex;position:relative;overflow:visible}.ab-bar>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ab-bar:hover{transform:translateY(-1px);box-shadow:0 3px 8px #1b20282e}.ab-bar.is-editing{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--ink);z-index:6}.ab-bar.urlaub{background:var(--urlaub)}.ab-bar.krank{background:var(--krank)}.ab-bar.schulung{background:var(--schulung)}.ab-bar.sonstiges{background:var(--sonstiges)}.ab-bar.is-clipped-start{border-top-left-radius:0;border-bottom-left-radius:0}.ab-bar.is-clipped-end{border-top-right-radius:0;border-bottom-right-radius:0}.ab-bar.is-draft{background:var(--urlaub-soft);border:1.5px dashed var(--urlaub);pointer-events:none}.ab-bar.is-draft.is-pending{pointer-events:auto;cursor:default;z-index:6;color:var(--ink-2);animation:1.4s ease-in-out infinite ab-pending}.ab-bar.is-draft.is-pending:hover{box-shadow:none;transform:none}.ab-bar.is-draft.is-pending>span{font-weight:600}@keyframes ab-pending{50%{border-color:#0000}}.ab-editor{z-index:20;border-radius:var(--radius-l);background:var(--surface);width:320px;color:var(--ink);box-shadow:var(--shadow-lift);border:1px solid var(--line);cursor:default;flex-direction:column;gap:8px;padding:12px;font-weight:400;display:flex;position:absolute;top:30px;left:0}.ab-editor.is-right{left:auto;right:0}.ab-editor-row{align-items:center;gap:8px;display:flex}.ab-editor-row .input.is-select{flex:1}.ab-editor-row.is-footer{justify-content:space-between;gap:12px;margin-top:4px}.ab-editor-row.is-footer>.muted{white-space:nowrap}.ab-editor.is-pending{width:340px;font-size:13px;animation:none}.ab-editor-title{align-items:center;gap:8px;font-size:13.5px;display:flex}.ab-editor-title strong{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.ab-editor-actions{gap:6px;display:inline-flex}.ab-editor-actions .btn{align-items:center;gap:5px;display:inline-flex}.ab-editor-warn{border-radius:var(--radius-s);background:var(--krank-soft);color:var(--danger);align-items:flex-start;gap:6px;padding:8px 10px;font-size:12px;line-height:1.35;display:flex}.ab-editor-warn svg{flex:none;margin-top:1px}.ab-dot{border-radius:3px;flex:none;width:10px;height:10px}.ab-dot.urlaub{background:var(--urlaub)}.ab-dot.krank{background:var(--krank)}.ab-dot.schulung{background:var(--schulung)}.ab-dot.sonstiges{background:var(--sonstiges)}.ab-editor-dates{white-space:nowrap;flex-direction:column;gap:2px;font-size:13px;font-weight:600;display:flex}.ab-editor-dates .muted{font-size:12px;font-weight:400}.ab-editor-note{color:var(--ink-2);font-size:12.5px}.ab-editor-hint{border-top:1px solid var(--line);color:var(--ink-3);align-items:center;gap:6px;padding-top:8px;font-size:12px;display:flex}.row-tools-close{border-radius:var(--radius-s);width:28px;height:28px;color:var(--ink-3);place-items:center;display:grid}.row-tools-close:hover{background:var(--surface-3);color:var(--ink)}.ab-sect{z-index:3;background:var(--surface-3);border-radius:var(--radius-s) 0 0 var(--radius-s);height:30px;color:var(--ink);text-align:left;align-items:center;gap:6px;margin-top:6px;padding:0 6px;display:flex;position:sticky;left:0}.ab-sect-name{white-space:nowrap;flex:none;font-size:13px;font-weight:700}.ab-sect-meta{min-width:0;color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:11px;overflow:hidden}.ab-sect-fill{background:var(--surface-3);height:30px;margin-top:6px}.ab-sect-fill.is-weekend{background:#dfe2dc}.ab-stat-label{z-index:3;color:var(--ink-3);background:var(--bg);border-bottom:1px solid var(--line);align-items:center;padding:0 6px 0 26px;font-size:11px;display:flex;position:sticky;left:0}.ab-stat{color:var(--ok);border-bottom:1px solid var(--line);place-items:center;font-size:11.5px;font-weight:600;display:grid}.ab-stat.is-weekend{color:var(--ink-3);background:#00000009}.ab-stat.is-low{color:var(--warn)}.ab-stat.is-zero{color:#fff;background:var(--danger)}.chipbtn{border:1px solid var(--line);background:var(--surface);height:28px;color:var(--ink-2);white-space:nowrap;border-radius:999px;padding:0 12px;font-size:12.5px;font-weight:600}.chipbtn.is-active{background:var(--warn-soft);color:var(--warn);border-color:#0000}.linkbtn{color:var(--steel);font-weight:500}.linkbtn:hover{text-decoration:underline}.ab-foot-label{color:var(--ink-2);align-items:center;gap:6px;padding:0 4px;font-size:12px;font-weight:600;display:flex}.ab-foot-label small{color:var(--ink-3);font-weight:400}.ab-foot{color:var(--ink-3);place-items:center;font-size:12px;font-weight:600;display:grid}.ab-foot.is-weekend{background:#00000009}.ab-foot.has-value{color:var(--ink)}.ab-foot.is-available{color:var(--ok)}.ab-foot.is-available.is-low{color:var(--warn)}.ab-foot.is-available.is-zero{color:#fff;background:var(--danger)}.ab-day.is-holiday span,.ab-day.is-holiday strong{color:var(--danger)}.ab-editor-notice{border-radius:var(--radius-s);background:var(--warn-soft);color:var(--ink);align-items:flex-start;gap:8px;padding:8px 10px;font-size:12.5px;line-height:1.4;display:flex}.ab-editor-notice svg{color:var(--warn);flex:none;margin-top:1px}.ab-editor-notice strong{font-weight:600}.chipbtn.is-muted{opacity:.55;cursor:default}.ab-empty{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);color:var(--ink-2);margin:16px 24px 0;padding:12px 16px;font-size:13px}.ab-bar.is-tentative{text-shadow:0 1px 2px #00000073;background-image:repeating-linear-gradient(135deg,#ffffff80 0 5px,#0000 5px 10px);box-shadow:inset 0 0 0 1.5px #0000002e}.legend-item.tentative:before{background:var(--urlaub);background-image:repeating-linear-gradient(135deg,#ffffff8c 0 3px,#0000 3px 6px)}.ab-dot.is-tentative{background-image:repeating-linear-gradient(135deg,#ffffff8c 0 2px,#0000 2px 4px)}.copybtn{border-radius:var(--radius-s);border:1px solid var(--line);background:var(--surface);height:32px;color:var(--ink-2);white-space:nowrap;transition:border-color .15s var(--ease-out), color .15s var(--ease-out);align-items:center;gap:6px;margin-left:12px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.copybtn:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.copybtn:disabled{opacity:.45;cursor:not-allowed}.modal.is-wide{width:520px}.copy-row{grid-template-columns:48px 1fr auto;align-items:center;gap:12px;display:grid}.copy-label{color:var(--ink-3);font-size:12px;font-weight:600}.copy-target{align-items:center;gap:4px;display:inline-flex}.copy-target .nav{border-radius:var(--radius-s);width:28px;height:28px;color:var(--ink-2);place-items:center;display:grid}.copy-target .nav:hover{background:var(--surface-3)}.muted.is-warn{color:var(--warn);font-weight:600}.copy-options{flex-direction:column;gap:6px;margin-top:6px;display:flex}.copy-warn{border-radius:var(--radius-s);background:var(--krank-soft);color:var(--danger);align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.copy-warn svg{flex:none;margin-top:2px}.btn.is-confirm-danger{background:var(--danger);color:#fff}.btn.is-confirm-danger:hover{background:#b03830}.copy-option{border-radius:var(--radius-m);border:1px solid var(--line);cursor:pointer;transition:border-color .15s var(--ease-out), background .15s var(--ease-out);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.copy-option:hover{background:var(--surface-2)}.copy-option.is-active{border-color:var(--ink)}.copy-option input{accent-color:var(--ink);margin-top:3px}.copy-option>span{flex-direction:column;font-weight:600;display:flex}.copy-option small{color:var(--ink-3);font-weight:400}.rota{background:var(--schulung-soft);height:18px;color:var(--schulung);border-radius:999px;align-items:center;gap:3px;padding:0 6px;font-size:10.5px;font-weight:600;display:inline-flex}.rota.is-free{background:var(--sonstiges-soft);color:var(--sonstiges)}.rotation{flex-direction:column;gap:12px;display:flex}.rotation-weeks{flex-direction:column;gap:6px;max-width:560px;display:flex}.rotation-week{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);grid-template-columns:70px 1fr auto;align-items:center;gap:8px;padding:6px;display:grid}.rotation-week-label{color:var(--ink-3);padding-left:4px;font-size:12px;font-weight:600}.input.is-static{background:var(--surface-2);color:var(--ink-2);border-style:dashed;align-items:center;display:inline-flex}.savebar{z-index:60;background:var(--ink);color:#fff;box-shadow:var(--shadow-lift);border-radius:999px;align-items:center;gap:8px;padding:8px 8px 8px 16px;display:flex;position:fixed;bottom:22px;left:50%}.savebar-count{color:#ffffffbf;white-space:nowrap;margin-right:8px;font-size:13px}.savebar-count strong{color:#fff}.savebar .btn.is-ghost{color:#ffffffd9;border-radius:999px}.savebar .btn.is-ghost:hover{background:#ffffff1f}.savebar .btn.is-ghost.is-armed{background:var(--danger);color:#fff;white-space:nowrap}.savebar .btn.is-ghost.is-armed:hover{background:#b03830}.savebar .btn.is-save{background:var(--ok);border-radius:999px;padding:0 16px}.savebar .btn.is-save:hover{background:#1a7a51}.toast{bottom:84px}.tooltip{z-index:200;border-radius:var(--radius-s);background:var(--surface);width:max-content;max-width:min(320px,100vw - 16px);color:var(--ink);border:1px solid var(--line-strong);white-space:normal;overflow-wrap:break-word;text-wrap:pretty;pointer-events:none;flex-direction:column;gap:2px;padding:7px 10px;font-size:12px;font-weight:600;line-height:1.35;display:flex;position:fixed;box-shadow:0 6px 18px #1b202824}.tooltip span+span{color:var(--ink-2);font-weight:400}.tooltip:after{content:"";left:calc(50% + var(--arrow-shift,0px));background:var(--surface);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);border-radius:0 0 2px;width:10px;height:10px;position:absolute;bottom:-6px;transform:translate(-50%)rotate(45deg)}.tooltip.is-below:after{border:0;border-left:1px solid var(--line-strong);border-top:1px solid var(--line-strong);border-radius:2px 0 0;top:-6px;bottom:auto}.datefield{align-items:center;display:inline-flex;position:relative}.datefield .input.is-date{font-feature-settings:"tnum" 1;width:118px;padding-right:30px}.datefield.is-bad .input.is-date{border-color:var(--danger);box-shadow:0 0 0 3px var(--krank-soft)}.datefield-btn{border-radius:var(--radius-s);width:26px;height:26px;color:var(--ink-3);place-items:center;display:grid;position:absolute;right:4px}.datefield-btn:hover{background:var(--surface-3);color:var(--ink)}.datefield-native{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;bottom:0;right:4px}.print-root{box-sizing:border-box;height:100vh;font-family:var(--font);color:#111;background:#cfd3cc;padding:24px 0 60px;overflow:auto}.print-toolbar{z-index:5;border-radius:var(--radius-m);background:var(--surface);width:210mm;box-shadow:var(--shadow-lift);color:var(--ink-2);align-items:center;gap:10px;margin:0 auto 16px;padding:10px 14px;font-size:13px;display:flex;position:sticky;top:0}.print-toolbar span{flex:1}.print-page{box-sizing:border-box;background:#fff;flex-direction:column;width:210mm;min-height:297mm;margin:0 auto 18px;padding:14mm 14mm 12mm;display:flex;box-shadow:0 4px 24px #0000002e}.print-head{border-bottom:3px solid #111;grid-template-columns:1fr auto;align-items:end;gap:16px;margin-bottom:10px;padding-bottom:8px;display:grid}.print-head h1{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700}.print-sub{margin-top:2px;font-size:13px;font-weight:600}.print-group{color:#444;font-weight:500}.print-group:before{content:"· ";color:#999}.print-meta{text-align:right;color:#444;font-size:11px;line-height:1.4}.print-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.print-table th,.print-table td{vertical-align:top;border:1px solid #111;height:11mm;padding:6px 8px}.print-table thead th{text-align:center;background:#e8e8e8;font-size:13px;font-weight:700}.print-table thead th small{color:#b3261e;font-size:11px;font-weight:600;display:block}.print-table .col-area{text-align:left;width:32mm;font-size:12.5px;font-weight:700}.print-table .col-pos{color:#333;background:#f6f6f6;width:36mm;font-weight:500}.print-table .col-area small{color:#333;margin-top:2px;font-size:10.5px;font-weight:500;text-decoration:none;display:block}.print-table thead .col-area,.print-table thead .col-pos{text-align:left;color:#111;background:#e8e8e8;font-weight:700}.print-table tbody tr.is-first th,.print-table tbody tr.is-first td{border-top:2px solid #111}.print-table td.is-off{background:repeating-linear-gradient(-45deg,#0000 0 6px,#eee 6px 12px)}.print-table tbody tr{min-height:14mm}.print-entries{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.print-entries li{flex-wrap:wrap;align-items:baseline;gap:0 6px;line-height:1.3;display:flex}.print-entries .pos{color:#444;font-weight:500}.print-entries .name{font-weight:700}.print-entries .days,.print-entries .remark{color:#b3261e;font-size:11px;font-weight:600}.print-empty{min-height:10mm}.print-foot{grid-template-rows:auto auto;grid-template-columns:1fr 44mm;gap:6px 14mm;margin-top:auto;padding-top:10px;font-size:11px;display:grid}.print-foot h2{text-underline-offset:2px;color:#5b3fa3;margin:0 0 4px;font-size:12px;font-weight:700;text-decoration:underline}.print-aiders h2{color:#b3261e}.print-foot ul{margin:0;padding:0;list-style:none}.print-absent-cols{grid-template-columns:1fr 1fr;align-items:start;gap:0 10mm;display:grid}.print-absent ul{grid-template-columns:max-content max-content max-content;align-content:start;gap:2px 9px;display:grid}.print-absent li{color:#5b3fa3;font-weight:600;display:contents}.print-absent li>span:first-child{color:#5b3fa3;font-weight:600}.print-absent .range{color:#5b3fa3;font-weight:500}.print-absent .kind{color:#777;font-weight:400}.print-aiders li{color:#b3261e;font-weight:600}.print-note{color:#b3261e;border-top:1px solid #999;grid-column:1/-1;justify-content:space-between;margin-top:6px;padding-top:6px;font-weight:700;display:flex}.print-note span{color:#444;font-weight:400}.print-none{color:#777}@page{size:A4 portrait;margin:0}@media print{html,body,#root{background:#fff;height:auto;overflow:visible}.print-root{background:#fff;height:auto;padding:0;overflow:visible}.print-toolbar,.toast,.tooltip{display:none!important}.print-page{width:210mm;height:297mm;box-shadow:none;page-break-after:always;break-after:page;margin:0}.print-page:last-child{page-break-after:auto;break-after:auto}.print-table th,.print-table td{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.print-draft{color:#b3261e;font-weight:700}.print-page.is-draft{position:relative}.print-page.is-draft:before{content:"ENTWURF";letter-spacing:.08em;color:#b3261e17;pointer-events:none;z-index:1;-webkit-print-color-adjust:exact;print-color-adjust:exact;place-items:center;font-size:130px;font-weight:800;display:grid;position:absolute;inset:0;transform:rotate(-32deg)}
