:root{--bze-brand:#B20002;--bze-brand-hover:#8E0002;--bze-brand-ink:#343434;--bze-brand-contrast:#FFFFFF;--bze-header-bg:#343434;--bze-header-fg:#FFFFFF;--bze-nav-bg:#343434;--bze-nav-fg:#FFFFFF;--bze-login-bg:#343434;--bze-login-fg:#FFFFFF}
/* Web-ED workplace — scoped to plugin pages; no remote fonts or third-party assets. */
body.bze-plugin-page,body.bze-login-body{--bze-bg:#f3f6f8;--bze-surface:#fff;--bze-text:#142e3e;--bze-text-muted:#657886;--bze-border:#e0e7ed;--bze-primary:var(--bze-brand);--bze-primary-hover:var(--bze-brand-hover);--bze-success:#087c64;--bze-danger:#b2393f;--bze-radius-sm:10px;--bze-radius-md:18px;--bze-shadow-sm:0 2px 4px #102b3903;--bze-shadow-md:0 12px 32px #102b3914;margin:0;background:var(--bze-bg);color:var(--bze-text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.bze-plugin-page *,body.bze-login-body *{box-sizing:border-box}
body.bze-plugin-page [hidden],body.bze-login-body [hidden]{display:none!important}
.bze-plugin-page a,.bze-login-body a{text-underline-offset:3px}
.bze-wrap h1{font-size:clamp(28px,3vw,38px);font-weight:750;letter-spacing:-1.2px;line-height:1.15}
.bze-wrap h2{font-size:19px;font-weight:700;letter-spacing:-.35px}
.bze-wrap h3{font-size:16px;font-weight:700}
.bze-wrap p{line-height:1.65}
.bze-wrap .bze-kicker{color:var(--bze-brand-ink)!important;font-size:10px;letter-spacing:.16em;font-weight:800;margin-bottom:8px}
.bze-page-header{align-items:center;margin-bottom:30px;gap:20px}
.bze-page-header>div>p:last-child{margin-top:10px;font-size:14px}
.bze-card,.bze-panel{border-color:#e1e8ed;padding:26px;border-radius:18px;box-shadow:0 3px 6px #112b3903;margin-bottom:24px}
.bze-wrap .bze-button,.bze-login-card input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:10px;padding:11px 18px;box-shadow:none;background:var(--bze-brand);border:1px solid var(--bze-brand);color:var(--bze-brand-contrast);font-family:inherit;font-size:13px;font-weight:600;line-height:1.45;text-decoration:none;cursor:pointer;white-space:normal;transition:background .15s,transform .15s}
.bze-wrap .bze-button:hover,.bze-login-card input[type=submit]:hover{background:var(--bze-brand-hover);border-color:var(--bze-brand-hover);transform:translateY(-1px)}
.bze-wrap .bze-button-secondary{background:#fff;border:1px solid #d8e3e8;color:#254452}
.bze-wrap .bze-button-secondary:hover{background:#f1f7f6;border-color:#a8ccc8;color:var(--bze-brand-hover)}
.bze-wrap .bze-button:disabled{opacity:.5;cursor:wait;transform:none}
.bze-wrap .bze-button-small{min-height:38px;padding:8px 13px;font-size:12px}
.bze-wrap :is(input,select,textarea){max-width:100%;min-height:44px;border:1px solid #d4e0e5;border-radius:9px;padding:10px 12px;background:#fff;color:#163747;font-family:inherit;font-size:14px;line-height:1.4;box-shadow:none}
.bze-wrap :is(input,select,textarea):focus{border-color:var(--bze-brand);outline:3px solid var(--bze-brand);outline-offset:1px}
.bze-wrap :is(input[type=checkbox],input[type=radio]){width:18px;min-height:18px;padding:0;accent-color:var(--bze-brand)}
.bze-wrap .bze-field{display:flex;flex-direction:column;gap:7px;margin:0}
.bze-field label,.bze-month-picker label{color:#365463;font-size:12px;font-weight:650}
.bze-wrap textarea{resize:vertical}
.bze-wrap :focus-visible,.bze-app-header :focus-visible,.bze-desktop-nav :focus-visible{outline:3px solid var(--bze-brand);outline-offset:3px}
.bze-muted,.bze-wrap p.bze-muted{color:#657886;font-size:13px}
.bze-form-stack{display:grid;gap:18px}
.bze-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bze-field-wide{grid-column:1/-1}
.bze-divider{height:1px;border:0;background:#e0e7ed;margin:30px 0}
.bze-checkbox-label{display:flex;align-items:center;gap:10px}
.bze-inline-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.bze-text-button{border:0;background:transparent;color:#526d7d;padding:10px 3px;min-height:44px;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.bze-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bze-skip-link{position:fixed;left:16px;top:-100px;background:white;color:#123b49;padding:10px 20px;z-index:3000}.bze-skip-link:focus{top:10px}
.bze-app-header{height:76px;background:var(--bze-header-bg);border-bottom:1px solid color-mix(in srgb,var(--bze-header-fg) 50%,var(--bze-header-bg));box-shadow:0 2px 6px color-mix(in srgb,var(--bze-header-fg) 12%,transparent);z-index:1200}
.bze-app-header-inner{height:76px;max-width:none;padding:0 32px;grid-template-columns:240px 1fr auto}
.bze-app-brand{gap:12px;white-space:normal;overflow:visible;font-size:14px;color:var(--bze-header-fg);max-width:260px}
.bze-brand-symbol{display:grid;place-items:center;position:relative;width:39px;height:39px;flex-shrink:0;background:#122d3d;color:#65d8cb;font-size:25px;letter-spacing:-4px;border-radius:11px;padding-right:5px;line-height:1;font-weight:800}
.bze-brand-symbol>span{position:absolute;bottom:6px;right:8px;font-size:21px;color:#fff;line-height:.3;letter-spacing:0}
.bze-brand-name{display:block;max-width:180px;line-height:1.2;overflow-wrap:anywhere}.bze-brand-name small{display:block;margin-top:5px;font-size:8px;font-weight:800;letter-spacing:.17em;color:var(--bze-header-fg)}
.bze-app-page-title{justify-self:start;font-weight:500;color:var(--bze-header-fg);font-size:12px;letter-spacing:.02em;padding-left:25px}
.bze-user-trigger{color:var(--bze-header-fg);border:1px solid color-mix(in srgb,var(--bze-header-fg) 60%,var(--bze-header-bg));padding:5px 8px 5px 5px;border-radius:30px;gap:10px}
.bze-user-avatar{width:32px;height:32px;font-size:11px;background:var(--bze-header-fg);color:var(--bze-header-bg)}
.bze-user-lastname{font-size:12px;padding-right:4px}.bze-user-chevron{color:var(--bze-header-fg);font-size:14px}
.bze-user-dropdown{margin-top:8px;border-radius:16px;border-color:#e0e7ed;padding:7px;background:#fff;box-shadow:0 20px 70px #102b3926}
.bze-user-summary{padding:14px}.bze-user-dropdown [role=menuitem]{border-radius:8px;font-size:13px}
.bze-app-footer{font-size:10px;letter-spacing:.04em;color:#8a9aa6;margin-top:40px;gap:10px}
.bze-app-footer a{color:#687f8c}.bze-desktop-nav{display:none}
.bze-connection-banner{padding:12px 24px;background:#fff0d1;color:#684714;border-bottom:1px solid #e9d4a5;font-size:13px;position:sticky;top:76px;z-index:1100;text-align:center}
.bze-business-wrap{max-width:1420px}.bze-month-picker{display:flex;align-items:center;gap:12px;padding:6px 8px 6px 16px;border:1px solid #dfe7ed;border-radius:12px;background:#fff}.bze-month-picker input{border:0!important;min-height:32px!important;padding:4px 7px!important;width:142px;font-size:13px}
.bze-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:13px}
.bze-metric{border:1px solid #e0e7ed;border-radius:16px;background:#fff;padding:21px 24px;min-width:0;position:relative;overflow:hidden}
.bze-metric>span{display:block;color:#728591;font-size:12px;font-weight:600}.bze-metric>strong{display:block;margin:13px 0 8px;font-size:36px;font-weight:750;letter-spacing:-1.3px;line-height:1.1;overflow-wrap:anywhere}.bze-metric strong small{font-size:14px;font-weight:500;letter-spacing:0;margin-left:6px}.bze-metric p{color:#8b9ba5;margin:0;font-size:10px;line-height:1.5}
.bze-metric-accent{background:var(--bze-brand-ink);border-color:var(--bze-brand-ink);color:#fff}.bze-metric-accent>span{color:#bdd3dc}.bze-metric-accent>strong{color:#fff}.bze-metric-accent>p{color:#9fbac7}.bze-metric-accent:after{content:"";position:absolute;right:-25px;top:-25px;border:1px solid #ffffff0c;width:135px;height:135px;border-radius:50%;box-shadow:0 0 0 20px #ffffff03,0 0 0 40px #ffffff02}
.bze-wrap .bze-data-caption{color:#8396a2;font-size:10px;margin:0 0 26px}
.bze-business-tabs{display:flex;gap:28px;border-bottom:1px solid #dfe7ed;margin:0 0 24px;overflow:auto}.bze-business-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:10px 2px 15px;color:#7b8f9d;white-space:nowrap;font-family:inherit;font-size:13px;font-weight:650;cursor:pointer}.bze-business-tabs button.is-active{color:var(--bze-brand);border-bottom-color:var(--bze-brand)}
.bze-business-panel{scroll-margin-top:100px}.bze-business-panel>.bze-card{padding:26px 0 8px}.bze-business-panel>.bze-card>.bze-section-heading{padding:0 26px 7px}.bze-business-panel>.bze-card>p{padding:0 26px 10px}.bze-business-panel>.bze-editor-card{padding:26px}.bze-business-panel>.bze-editor-card>.bze-section-heading{padding:0}
.bze-section-heading h2{margin:0 0 5px}.bze-section-heading p{font-size:12px}.bze-section-heading input[type=search]{max-width:230px;font-size:12px;min-height:39px;background:#f8fafb;border-color:#e4ebef}.bze-table-wrap{border:0;border-radius:0;overflow-x:auto}
.bze-wrap .bze-table{border-collapse:collapse;width:100%;font-size:12px;margin:0;border:0;box-shadow:none}.bze-wrap .bze-table th{background:#f7f9fa;color:#8396a3;font-size:10px;text-transform:uppercase;letter-spacing:.07em;padding:13px 22px;border:0;border-top:1px solid #edf1f4;border-bottom:1px solid #edf1f4;white-space:nowrap}.bze-wrap .bze-table td{padding:17px 22px;border:0;border-bottom:1px solid #edf1f4;background:#fff;vertical-align:middle;color:#355260}.bze-wrap .bze-table tbody tr:last-child td{border-bottom:0}.bze-wrap .bze-table tbody tr:hover td{background:#fbfdfd}
.bze-person{display:flex;align-items:center;gap:12px;min-width:175px}.bze-person-avatar{display:grid;place-items:center;width:35px;height:35px;flex-shrink:0;border-radius:10px;background:#eaf1f5;color:#3d697c;font-size:10px;font-weight:750}.bze-person>span:last-child{display:block}.bze-person strong{display:block;font-size:12px;color:#1c3b4b}.bze-person small{display:block;font-size:9px;color:#8b9faa;margin-top:3px}.bze-balance{display:inline-block;white-space:nowrap;padding:4px 8px;border-radius:6px;background:#e8f5ef;color:#208b66;font-size:11px;font-weight:650}.bze-balance.is-negative{background:#fff1e5;color:#a97231}
.bze-business-two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}.bze-business-two-col>.bze-card{min-width:0}.bze-warning-list{margin:14px 0 0;padding-left:18px;color:#80612d;font-size:12px}.bze-warning-list li{margin:8px 0}.bze-holiday-row{display:flex;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid #edf1f4;font-size:12px}.bze-holiday-row:last-child{border:0}.bze-holiday-row time{color:#8194a0;font-size:11px}.bze-holiday-row strong{font-weight:600}.bze-empty-state{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:20px 0;color:#7e949f;text-align:left;font-size:12px}.bze-empty-state p{margin:0;color:#7e949f}.bze-empty-mark{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;background:#edf6f3;border-radius:50%;color:#348d73;font-weight:600}.bze-table-wrap>.bze-empty-state{padding:20px 26px}
.bze-business-message:empty{display:none}.bze-business-message{border-radius:10px;padding:13px 18px;margin:0 0 20px;font-size:13px;background:#e4f3ee;color:#1d715c;border:1px solid #bbdfd2}.bze-business-message.is-error{background:#fff1ef;color:#943b33;border-color:#f1d1ca}
.bze-status-badge{display:inline-block;padding:4px 9px;border-radius:6px;font-size:9px;font-weight:750;line-height:1.5;white-space:nowrap;background:#edf2f6;color:#5d7588}.bze-status-approved{background:#e6f4ec;color:#2b845b}.bze-status-pending{background:#fff0d8;color:#a1702a}.bze-status-rejected{background:#ffeae6;color:#ae4b43}
.bze-absence-layout{grid-template-columns:minmax(250px,.85fr) minmax(350px,1.5fr)}.bze-absence-item{padding:20px 0;border-bottom:1px solid #e9eef1}.bze-absence-item:last-child{border:0}.bze-absence-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.bze-absence-heading>strong{font-size:13px}.bze-absence-item p{font-size:12px;margin:8px 0}.bze-absence-item .bze-inline-actions{margin-top:12px}
.bze-schedule-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.bze-schedule-grid label{font-size:11px;color:#78909b;text-align:center}.bze-schedule-grid input{width:100%;padding:10px 4px;text-align:center;font-size:12px;margin-top:4px}.bze-form-stack h3{margin:0}.bze-form-stack p{margin:0}.bze-form-stack details{font-size:11px;color:#65818e}.bze-form-stack details p{margin-top:8px}
.bze-business-panel>.bze-handoff-intro{padding:28px;display:flex;justify-content:space-between;gap:25px;align-items:center;background:#eaf3f2;border-color:#cce1dc}.bze-handoff-intro>div{max-width:740px}.bze-handoff-intro h2{font-size:25px;letter-spacing:-.7px;margin:0}.bze-handoff-intro p:not(.bze-kicker){font-size:12px;color:#52796f;margin:12px 0 0}.bze-handoff-intro .bze-button{flex-shrink:0}.bze-handoff-steps{display:flex;gap:25px;margin:10px 0 28px;color:#64818d;font-size:12px}.bze-handoff-steps span{display:flex;align-items:center;gap:9px}.bze-handoff-steps b{display:grid;place-items:center;width:24px;height:24px;background:#e2ecef;border-radius:50%;font-size:10px;color:#426979}.bze-handoff-item{padding:22px 26px;border-top:1px solid #e8eef1}.bze-handoff-item p{font-size:12px;margin:8px 0}.bze-handoff-item .bze-inline-actions{margin-top:13px}
.bze-clock-card{border-radius:22px;padding:32px!important;background:linear-gradient(125deg,#fff 60%,#f0faf7);border-color:#dcebe5}.bze-clock-card.is-running{background:linear-gradient(125deg,#fff 60%,#eaf7f1);box-shadow:none}.bze-clock-duration{letter-spacing:-2px}.bze-clock-running-text{font-size:24px}.bze-main-clock-button{border-radius:13px!important;background:var(--bze-brand)!important;min-height:62px!important}.bze-timeline-dot{box-shadow:none}.bze-dashboard-grid{gap:22px}.bze-dashboard-card{border-radius:18px}.bze-dashboard-card h2{font-size:16px}.bze-dashboard-card-value{color:#143d4b}
.bze-login-body{background:var(--bze-login-bg);background-image:radial-gradient(ellipse at 10% 10%,var(--bze-login-bg) 0,transparent 60%),radial-gradient(ellipse at 95% 90%,var(--bze-login-bg) 0,transparent 65%)}.bze-login-shell{padding:40px 20px}.bze-login-card{color:var(--bze-text);border:0;border-radius:24px;padding:40px;max-width:430px;box-shadow:0 25px 80px #05141e66}.bze-login-company{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--bze-brand-ink);margin-bottom:25px}.bze-login-brand h1{font-size:32px;letter-spacing:-1px;font-weight:750}.bze-login-brand p{font-size:12px;color:#80929d;line-height:1.7}.bze-login-card input[type=text],.bze-login-card input[type=password]{min-height:48px;background:#f9fbfc;border-color:#dfe8ed;border-radius:10px}.bze-login-card input[type=submit]{min-height:49px;font-size:14px}.bze-login-card form label{font-size:11px;font-weight:650}.bze-login-card .login-remember label{font-size:11px}.bze-login-help a{font-size:12px}.bze-login-maker{text-align:center;color:#a1b0b9;font-size:9px;letter-spacing:.17em;margin:30px 0 0}
@media(min-width:1050px){.bze-desktop-nav{display:flex;position:fixed;top:76px;bottom:0;left:0;width:232px;background:var(--bze-nav-bg);border-right:1px solid #e2e9ed;padding:35px 17px;flex-direction:column;gap:7px;z-index:900}.admin-bar .bze-desktop-nav{top:108px}.bze-nav-caption{color:#9badb8;font-size:9px;font-weight:700;letter-spacing:.13em;padding:0 15px 14px}.bze-desktop-nav>a{display:flex;align-items:center;gap:14px;color:#718693;font-size:12px;font-weight:600;text-decoration:none;padding:12px 15px;border-radius:10px;min-height:44px}.bze-desktop-nav>a:hover{background:#f4f8f9;color:#234e5c}.bze-desktop-nav>a[aria-current=page]{background:var(--bze-brand);color:var(--bze-brand-contrast)}.bze-nav-dot{width:10px;height:10px;border-radius:3px;border:1.7px solid currentColor;transform:rotate(-8deg);opacity:.7}.bze-desktop-nav>a[aria-current=page] .bze-nav-dot{background:var(--bze-brand-contrast);border-color:var(--bze-brand-contrast)}.bze-nav-bottom{margin-top:auto;padding:18px 14px 0;font-size:9px;color:#8399a5;line-height:1.6}.bze-live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#34b79b;margin-right:4px}.bze-nav-bottom small{display:block;font-size:9px;margin-top:13px;color:#a2b2ba}.bze-nav-bottom strong{font-weight:700;color:#5b7e8d}.bze-plugin-page>.bze-wrap{width:calc(100% - 300px);margin:36px 34px 28px 266px;max-width:none;padding:0}.bze-plugin-page>.bze-stunden-wrap{width:calc(100% - 330px);max-width:1100px;margin-left:280px}.bze-plugin-page>.bze-app-footer{margin-left:232px;max-width:none}.bze-plugin-page>.bze-connection-banner{margin-left:232px}}
@media(min-width:1600px){.bze-plugin-page>.bze-wrap{max-width:1360px;margin-left:max(266px,calc((100vw - 1128px)/2))}.bze-plugin-page>.bze-stunden-wrap{max-width:1100px;margin-left:max(280px,calc((100vw - 868px)/2))}}
@media(max-width:1049px){.bze-wrap{padding:0 24px;max-width:100%;margin:26px auto}.bze-app-header-inner{padding:0 24px;grid-template-columns:230px 1fr auto}.bze-metric{padding:20px 18px}.bze-metric>strong{font-size:30px}.bze-business-two-col{gap:18px}.bze-business-panel>.bze-card>.bze-section-heading{padding:0 20px 7px}.bze-card{padding:21px}.bze-app-page-title{padding-left:0}.bze-person{min-width:150px}}
@media(max-width:767px){body.bze-plugin-page{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.bze-wrap{padding:0 16px;margin:25px auto}.bze-app-header,.bze-app-header-inner{height:66px}.bze-app-header-inner{padding:0 18px;grid-template-columns:1fr auto}.bze-app-page-title,.bze-user-lastname,.bze-user-chevron{display:none}.bze-app-brand{max-width:245px;font-size:13px}.bze-brand-symbol{width:34px;height:34px;font-size:22px;border-radius:10px}.bze-brand-name small{font-size:7px}.bze-user-trigger{padding:3px;border:0}.bze-user-avatar{width:35px;height:35px}.bze-connection-banner{top:66px;font-size:11px;padding:10px 16px}.bze-page-header{margin-bottom:23px;align-items:flex-start;gap:15px}.bze-page-header h1{font-size:28px;letter-spacing:-1px}.bze-page-header>div>p:last-child{font-size:12px;margin-top:8px}.bze-business-wrap>.bze-page-header{flex-wrap:wrap}.bze-month-picker{padding:2px 6px 2px 12px;gap:7px}.bze-month-picker label{font-size:10px}.bze-month-picker input{width:132px;font-size:12px}.bze-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bze-metric{padding:18px;border-radius:14px}.bze-metric>span{font-size:10px}.bze-metric>strong{font-size:29px;margin:11px 0 6px}.bze-metric strong small{font-size:11px}.bze-metric>p{font-size:9px}.bze-wrap .bze-data-caption{font-size:9px;margin:0 0 20px}.bze-business-tabs{gap:22px;margin-bottom:18px}.bze-business-tabs button{font-size:12px;padding-bottom:12px}.bze-card,.bze-panel{border-radius:15px;padding:20px;margin-bottom:17px}.bze-wrap h2{font-size:17px}.bze-business-two-col,.bze-absence-layout{grid-template-columns:1fr;gap:0}.bze-section-heading{align-items:flex-start;gap:14px}.bze-business-panel>.bze-card>.bze-section-heading{padding:0 18px 12px;flex-wrap:wrap}.bze-section-heading input[type=search]{max-width:none;width:100%;font-size:14px}.bze-team-table thead{display:none}.bze-wrap .bze-team-table,.bze-team-table tbody{display:block}.bze-wrap .bze-team-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 18px;padding:17px 0;border-top:1px solid #e8edf0;gap:10px}.bze-wrap .bze-team-table td{display:block;padding:0!important;border:0!important;font-size:12px;background:transparent!important;white-space:normal}.bze-wrap .bze-team-table td:first-child{grid-column:1/-1;margin-bottom:4px}.bze-team-table td:not(:first-child)[data-label]:before{content:attr(data-label);display:block;color:#8396a3;font-size:9px;margin-bottom:3px}.bze-person{gap:11px}.bze-person-avatar{width:37px;height:37px}.bze-person strong{font-size:13px}.bze-person small{font-size:10px}.bze-team-table td:last-child:not([data-label]){grid-column:1/-1;margin-top:3px}.bze-team-table td:last-child:not([data-label]) button{width:100%}.bze-form-grid{gap:14px}.bze-wrap :is(input,select,textarea){font-size:16px}.bze-schedule-grid{gap:5px}.bze-schedule-grid input{font-size:13px;padding:8px 2px;min-height:40px}.bze-business-panel>.bze-editor-card{padding:20px}.bze-handoff-steps{gap:12px;align-items:flex-start}.bze-handoff-steps span{font-size:10px;flex-direction:column;align-items:flex-start;flex:1}.bze-handoff-intro{flex-direction:column;align-items:flex-start!important;padding:23px!important}.bze-handoff-intro h2{font-size:23px}.bze-handoff-intro .bze-button{width:100%}.bze-handoff-item{padding:20px}.bze-absence-heading{flex-wrap:wrap}.bze-handoff-item .bze-inline-actions{display:grid;grid-template-columns:1fr}.bze-clock-card{padding:24px!important}.bze-clock-duration{font-size:60px}.bze-clock-running-text{font-size:21px}.bze-main-clock-button{font-size:18px!important}.bze-mobile-nav{z-index:1100;border-top:1px solid #e3ebee;box-shadow:0 -4px 20px #143a4907;background:#fffffffa;backdrop-filter:blur(12px);padding:7px 8px calc(8px + env(safe-area-inset-bottom));min-height:73px}.bze-mobile-nav-item{font-size:9px;gap:4px;min-height:49px}.bze-mobile-nav-item.is-active{background:transparent;color:var(--bze-brand)}.bze-mobile-nav-item.is-active .bze-mobile-nav-icon{background:#e1f1ec;box-shadow:0 0 0 5px #e1f1ec;border-radius:5px}.bze-mobile-nav-icon{width:20px;height:20px;margin-bottom:2px}.bze-mobile-nav-label{font-size:9px;font-weight:650}.bze-app-footer{font-size:9px;flex-wrap:wrap;margin:25px auto 0}.bze-user-dropdown{z-index:1500;margin:0;border-radius:0;padding:10px;inset:0;max-height:100dvh}.bze-user-summary{padding:20px}.bze-user-dropdown [role=menuitem]{font-size:15px;line-height:52px}.bze-login-card{padding:30px 25px;border-radius:20px}.bze-login-card input[type=text],.bze-login-card input[type=password]{font-size:16px}.bze-login-shell{min-height:100dvh}.bze-logout-dialog{z-index:1600}}
@media(prefers-reduced-motion:reduce){.bze-wrap *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.bze-desktop-nav,.bze-mobile-nav,.bze-app-header,.bze-connection-banner,.bze-skip-link{display:none!important}body.bze-plugin-page{padding:0;background:#fff}.bze-plugin-page>.bze-wrap{width:100%;max-width:none;margin:0;padding:0}.bze-card{box-shadow:none;break-inside:avoid}}

.bze-warning-details{font-size:11px;color:#8b733b;margin-top:14px}.bze-warning-details summary{cursor:pointer}
body.bze-login-body{color:var(--bze-login-fg);background:var(--bze-login-bg);background-image:radial-gradient(ellipse at 10% 10%,var(--bze-login-bg) 0,transparent 60%),radial-gradient(ellipse at 95% 90%,var(--bze-login-bg) 0,transparent 65%)}
@media(max-width:767px){.bze-wrap .bze-team-table{min-width:0;width:100%}.bze-team-table tbody{min-width:0;width:100%}.bze-wrap .bze-team-table td{min-width:0}.bze-wrap .bze-team-table td:first-child{width:auto}.bze-wrap .bze-team-table tr{max-width:100%;width:auto}.bze-wrap .bze-team-table .bze-button{max-width:100%}}
@media(max-width:767px){
 [data-business-employees].bze-table-wrap::before{display:none;content:none}
 .bze-wrap .bze-week-overview tr{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;border-radius:12px}
 .bze-wrap .bze-week-overview td{padding:10px 8px;border-bottom:0;font-size:12px;gap:3px}
 .bze-wrap .bze-week-overview td:before{font-size:8px;letter-spacing:.05em}
 .bze-wrap .bze-week-overview .bze-week-date{grid-column:1/4;grid-row:1;display:flex;flex-direction:row;align-items:center;gap:7px;padding:11px 10px;background:#f8fafb!important}
 .bze-wrap .bze-week-overview .bze-week-date:before{display:none}
 .bze-wrap .bze-week-overview .bze-week-day-mobile{display:inline;margin:0;font-size:10px}
 .bze-wrap .bze-week-overview .bze-week-day-desktop{display:none}
 .bze-wrap .bze-week-overview tr>td:last-child{grid-column:4;grid-row:1;padding:10px 5px;background:#f8fafb!important;justify-content:center}
 .bze-wrap .bze-week-overview tr>td:last-child:before{display:none}
 .bze-wrap .bze-week-overview tr>td:last-child>*{font-size:8px;padding:2px 4px;line-height:1.4}
 .bze-wrap .bze-week-overview .bze-week-absence-cell{grid-column:1/3}
 .bze-wrap .bze-week-overview .bze-week-date{grid-column:1/-1}
 .bze-wrap .bze-week-overview tr>td.bze-week-correction{grid-column:1/-1;grid-row:3;align-items:flex-start;padding:10px}
 .bze-wrap .bze-week-overview tr>td.bze-week-correction>*{font-size:12px;line-height:1.5}
 .bze-wrap .bze-week-overview tr>td.bze-week-correction .bze-button{min-height:44px;min-width:44px}
}
.bze-business-message:not(:empty){position:sticky;top:90px;z-index:1100;box-shadow:0 5px 18px #1234420d}
@media(max-width:767px){.bze-business-message:not(:empty){top:77px}}
.bze-wrap .bze-button-pause{background:#fff1c7;border-color:#ead89b;color:#66521b!important}
.bze-wrap .bze-button-pause:hover{background:#f8e6ac;border-color:#dbc77f;color:#66521b!important}
/* 0.7.1: Zustände für fehlende Zuordnung, Serverhinweise und ungepflegte Ansprüche. */
.bze-wrap .bze-site-warning{color:#a96916!important}
.bze-wrap .bze-site-choose{color:#996018;padding:0;min-height:32px;text-align:left;font-size:12px}
.bze-wrap .bze-work-warning.is-neutral{background:#edf2f5;color:#536d7c;border:1px solid #d8e3e9}
.bze-wrap .bze-work-warning.is-critical{background:#fff0ed;color:#ac302f;border:1px solid #e9b6af;font-weight:700}
.bze-crew-row .bze-work-warning{display:inline-block;margin-top:8px;max-width:100%}
.bze-wrap .bze-leave-unconfigured{color:#7b8f9b;font-size:12px;font-weight:400}
.bze-wrap .bze-metric>strong.bze-leave-unconfigured{font-size:20px;line-height:1.35;letter-spacing:0}
.bze-wrap button.bze-leave-unconfigured{padding:0;min-height:32px;text-align:left}
.bze-compliance-detail{margin:24px 0 12px;padding-top:20px;border-top:1px solid #e0e7ed}
.bze-compliance-critical{color:#ac302f;font-weight:600}

/* 0.7.2: Markenflächen und kontrastreicher, zweifarbiger Tastaturfokus. */
.bze-app-header .bze-app-brand,.bze-app-header .bze-brand-name small,.bze-app-header .bze-app-page-title{color:var(--bze-header-fg)}
.bze-desktop-nav>a,.bze-desktop-nav .bze-nav-caption,.bze-desktop-nav .bze-nav-bottom,
.bze-desktop-nav .bze-nav-bottom small,.bze-desktop-nav .bze-nav-bottom strong{color:var(--bze-nav-fg)}
.bze-user-trigger:hover{background:color-mix(in srgb,var(--bze-header-fg) 12%,var(--bze-header-bg))}
.bze-desktop-nav>a:hover,.bze-desktop-nav>a:active,.bze-desktop-nav>a[aria-current=page]:hover{background:var(--bze-brand-hover);color:var(--bze-brand-contrast)}
.bze-wrap a:not(.bze-button),.bze-login-help a{color:var(--bze-brand)}
.bze-wrap a:not(.bze-button):hover,.bze-login-help a:hover{color:var(--bze-brand-hover)}
.bze-wrap .bze-button:not(.bze-button-secondary):not(.bze-button-pause):not(.bze-button-danger):hover,
.bze-wrap .bze-button:not(.bze-button-secondary):not(.bze-button-pause):not(.bze-button-danger):active{background:var(--bze-brand-hover)!important;border-color:var(--bze-brand-hover)}
.bze-mobile-nav-item.is-active{background:var(--bze-brand);color:var(--bze-brand-contrast)}
.bze-mobile-nav-item.is-active .bze-mobile-nav-icon{background:transparent;box-shadow:none}
.bze-mobile-nav-item.is-active:hover{background:var(--bze-brand-hover)}
.bze-wrap :focus-visible,.bze-app-header :focus-visible,.bze-desktop-nav :focus-visible,
.bze-mobile-nav :focus-visible,.bze-login-card :focus-visible,
.bze-wrap :is(input,select,textarea):focus{outline:3px solid var(--bze-brand);outline-offset:3px;box-shadow:0 0 0 3px var(--bze-brand-contrast),0 0 0 9px var(--bze-brand-contrast)}
.bze-app-header :is(.bze-app-brand,.bze-user-trigger):focus-visible{box-shadow:0 0 0 3px var(--bze-header-bg),0 0 0 9px var(--bze-header-fg)}
/* Warnfarben bleiben unverändert; Symbol zusätzlich zum vorhandenen Klartext. */
:is(.bze-notice,.bze-error,.bze-login-error,.bze-logout-dialog-message:not(:empty),.bze-notice-warning,.bze-notice-error,.bze-form-message.is-error,.bze-business-message.is-error,
.bze-site-warning,.bze-work-warning.is-critical,.bze-pause-chip.is-auto,.bze-compliance-critical,
.bze-warning-list li,.bze-warning-details summary,.bze-connection-banner,.bze-status-rejected)::before{content:"⚠ ";font-weight:700}
/* Nachtrag: Pausenzeile allein, kleine Bildschirme in Lesereihenfolge. */
[data-bze-manual-form] .bze-manual-pause-field{grid-column:1/-1;max-width:100%}
@media(min-width:768px){[data-bze-manual-form] .bze-manual-pause-field{width:calc((100% - 18px)/2)}}
@media(max-width:767px){[data-bze-manual-form] .bze-form-grid{grid-template-columns:minmax(0,1fr)}}

/* Inhaltswerte und Statusmarkierungen sind keine Marken-Bedienflächen. */
.bze-today-total,.bze-week-status.is-eingereicht,.bze-mapping-preview li::before{color:var(--bze-brand-ink)}
.bze-week-status.is-eingereicht{background:var(--bze-bg)}
.bze-timeline-item:not(.is-stop) .bze-timeline-dot{background:var(--bze-brand-ink);box-shadow:none}
.bze-svg-bar,.bze-svg-bar:hover{fill:var(--bze-brand-ink)}

/* Nur die offene Anfragekachel besitzt Bediensemantik. */
.bze-pending-metric{font:inherit;text-align:left;cursor:pointer;width:100%;color:inherit}
.bze-pending-metric:hover{border-color:var(--bze-brand)}
[data-pending-absence]:focus{outline:2px solid var(--bze-brand);outline-offset:3px}
@media(max-width:767px){.bze-self-actions{margin:0 18px;display:grid;gap:12px}.bze-self-actions>.bze-button{width:100%;box-sizing:border-box}.bze-self-actions>p{margin:0}.bze-self-actions>[data-self-compliance]:empty{display:none}}

@media(min-width:768px){.bze-self-actions>a.bze-button{display:flex;width:max-content}}

/* Personalstamm: Urlaub bleibt an der Oberkante des Arbeitszeitmodells. */
.bze-business-two-col > #bze-entitlement-editor { align-self:start; align-content:start; }

/* Lesender Abwesenheitskalender: Zeichen, Beschriftung und Form ergänzen die Farbe. */
.bze-absence-calendar{--bze-calendar-weekend:var(--bze-bg);--bze-calendar-holiday:#f5e6cb;--bze-calendar-urlaub:var(--bze-success);--bze-calendar-krank:var(--bze-brand);--bze-calendar-frei:var(--bze-brand-ink);--bze-calendar-abwesend:var(--bze-border);--bze-calendar-contrast:var(--bze-brand-contrast);--bze-calendar-line:#9ba7ae;min-width:0}
.bze-calendar-heading,.bze-calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.bze-calendar-heading{margin-bottom:20px}.bze-calendar-heading h2{margin:0}.bze-calendar-controls{align-items:flex-end}.bze-calendar-controls .bze-field{margin:0;min-width:0}.bze-calendar-controls label{font-size:13px}.bze-wrap .bze-calendar-controls input[type=month]{box-sizing:border-box;width:180px}
.bze-absence-calendar .bze-button,.bze-wrap .bze-absence-calendar input[type=month]{min-height:48px}
.bze-calendar-month-title{font-size:18px;font-weight:700;color:var(--bze-text)}
.bze-calendar-legend{list-style:none;padding:0;margin:0 0 20px;display:flex;gap:10px 18px;flex-wrap:wrap;color:var(--bze-text);font-size:13px}
.bze-calendar-legend li{display:flex;align-items:center;gap:6px;line-height:1.5}
.bze-calendar-mark{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:22px;min-height:26px;padding:1px;border:2px solid transparent;border-radius:4px;font-size:12px;font-weight:800;line-height:1.2;color:var(--bze-calendar-contrast)}
.bze-calendar-U{background:var(--bze-calendar-urlaub)}.bze-calendar-K{background:var(--bze-calendar-krank)}.bze-calendar-F{background:var(--bze-calendar-frei)}.bze-calendar-A{background:var(--bze-calendar-abwesend);color:var(--bze-text)}
.bze-calendar-mark.is-pending{background:var(--bze-surface);color:var(--bze-text);border:2px dashed var(--bze-brand-ink)}
.bze-absence-calendar .bze-calendar-grid{width:100%;table-layout:fixed;border-collapse:collapse;margin:0;font-size:12px;color:var(--bze-text)}
.bze-calendar-grid caption{text-align:left;font-weight:700;margin:0 0 12px}.bze-calendar-person-col{width:144px}
.bze-absence-calendar .bze-calendar-grid th,.bze-absence-calendar .bze-calendar-grid td{box-sizing:border-box;padding:6px 1px;text-align:center;border:1px solid var(--bze-calendar-line);vertical-align:middle;white-space:normal;overflow-wrap:anywhere;background:var(--bze-surface);color:var(--bze-text)}
.bze-absence-calendar .bze-calendar-grid th:first-child{padding:8px;text-align:left;font-size:13px}.bze-calendar-grid thead small{display:block;font-size:10px;line-height:1.5}.bze-calendar-grid thead span{white-space:nowrap}
.bze-absence-calendar .bze-calendar-grid .is-weekend{background:var(--bze-calendar-weekend)}.bze-absence-calendar .bze-calendar-grid .is-holiday{background:var(--bze-calendar-holiday)}.bze-absence-calendar .bze-calendar-grid .is-outside{color:var(--bze-text)}
.bze-calendar-day-notes{margin-top:18px;font-size:13px;line-height:1.6;color:var(--bze-text);overflow-wrap:anywhere}.bze-calendar-day-notes p{margin:6px 0}.bze-calendar-day-notes ul{padding-left:20px;margin:6px 0}
.bze-calendar-list{display:none}.bze-calendar-person{padding:16px 0;border-top:1px solid var(--bze-border)}.bze-calendar-person h3{margin:0 0 10px;font-size:16px;overflow-wrap:anywhere}.bze-calendar-person ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.bze-calendar-person li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.7;overflow-wrap:anywhere}.bze-calendar-person li .bze-calendar-mark{flex-shrink:0}.bze-calendar-person li time{white-space:normal}
.bze-calendar-empty{padding:20px 0;color:var(--bze-text)}
@media(max-width:1023px){.bze-absence-calendar .bze-calendar-grid{display:none}.bze-calendar-list{display:block}}
@media(max-width:575px){.bze-calendar-controls{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.bze-calendar-controls .bze-field{grid-column:1/-1;grid-row:1}.bze-wrap .bze-calendar-controls input[type=month]{box-sizing:border-box;width:100%}.bze-calendar-controls .bze-button{width:100%;padding:10px 8px}.bze-calendar-legend{gap:10px 14px}.bze-calendar-heading{gap:16px}}

/* Kalenderaktionen befüllen ausschließlich das bestehende Antragsformular. */
.bze-absence-calendar .bze-calendar-grid td.is-actionable{padding:0}
.bze-absence-calendar .bze-calendar-day-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:38px;margin:0;padding:0;border:0;border-radius:3px;background:transparent;color:var(--bze-text);font:inherit;cursor:pointer}
.bze-absence-calendar .bze-calendar-day-button:hover{box-shadow:inset 0 0 0 2px var(--bze-brand)}
.bze-absence-calendar .bze-calendar-day-button:focus-visible{outline:2px solid var(--bze-brand);outline-offset:-2px;box-shadow:none}
.bze-absence-calendar .bze-calendar-person-button{min-height:48px;max-width:100%;margin-top:12px;white-space:normal;overflow-wrap:anywhere;text-align:left}

/* Ansichtswahl und Monatsblöcke teilen dieselben Kalenderdaten und Farben. */
.bze-calendar-navigation{display:grid;gap:12px;min-width:0;max-width:100%}
.bze-calendar-views{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bze-calendar-views .bze-button{min-width:0;padding:10px 12px;white-space:normal}
.bze-calendar-views [aria-pressed=true]{text-decoration:underline;text-underline-offset:4px}
.bze-wrap .bze-calendar-controls input:is([type=number],[type=date]){box-sizing:border-box;min-height:48px;width:180px;max-width:100%;min-width:0}
.bze-calendar-block + .bze-calendar-block{margin-top:32px;padding-top:20px;border-top:1px solid var(--bze-border)}
.bze-calendar-block h3.bze-calendar-month-title{margin:18px 0}
.bze-absence-calendar .bze-calendar-grid .is-outside-range{background:var(--bze-border);color:var(--bze-text)}
@media(max-width:575px){.bze-calendar-navigation{width:100%}.bze-calendar-range .bze-field{grid-column:1/-1;grid-row:auto}.bze-calendar-range .bze-button{grid-column:1/-1}.bze-wrap .bze-calendar-controls input:is([type=number],[type=date]){width:100%}}

/* Jahresplaner: gemeinsame Zellen, bestehende Monatsansicht bleibt unverändert. */
.bze-calendar-planner-controls{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px;margin-bottom:20px;min-width:0}
.bze-calendar-layouts{grid-template-columns:repeat(2,minmax(0,1fr))}
.bze-calendar-planner-controls .bze-field{flex:0 1 260px;margin:0;min-width:0;max-width:100%}
.bze-calendar-planner-controls label{font-size:13px}
.bze-wrap .bze-calendar-planner-controls select{box-sizing:border-box;width:260px;max-width:100%;min-width:0;min-height:48px}
.bze-calendar-planners{min-width:0}.bze-calendar-planner-list{display:none}
.bze-absence-calendar .bze-calendar-planner-grid + .bze-calendar-planner-grid{margin-top:28px}
.bze-absence-calendar .bze-calendar-planner-grid thead th{padding:8px 1px;font-size:11px}
.bze-absence-calendar .bze-calendar-planner-grid td{padding:0}
.bze-calendar-planner-grid .bze-calendar-mark{min-width:0;width:100%;max-width:26px;min-height:24px;padding:0;font-size:11px}
.bze-absence-calendar .bze-calendar-planner-grid .bze-calendar-day-button,.bze-calendar-planner-cell{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:38px;padding:2px 0}
.bze-calendar-planner-grid small{font-size:10px;line-height:1.1}
.bze-absence-calendar .bze-calendar-planner-grid .is-no-day{background:var(--bze-border)}
.bze-absence-calendar .bze-calendar-planner-month th{background:var(--bze-bg);font-size:14px}
[data-calendar-holidays] h3{margin:0 0 6px;font-size:16px}
@media(min-width:1024px) and (max-width:1199px){.bze-calendar-planner-grid .bze-calendar-person-col{width:104px}}
@media(max-width:1023px){.bze-calendar-planners{display:none}.bze-calendar-planner-list{display:block}}
@media(max-width:575px){.bze-calendar-planner-controls{display:grid;grid-template-columns:minmax(0,1fr)}.bze-wrap .bze-calendar-planner-controls select{width:100%}}

/* Zeitkonto: eigenständige Formulare und lesbarer Monatsverlauf. */
.bze-zeitkonto{min-width:0;margin-top:24px;color:var(--bze-text);overflow-wrap:anywhere}
.bze-konto-summary{padding:18px;border:1px solid var(--bze-border);border-radius:12px;background:var(--bze-bg);margin-bottom:24px}
.bze-konto-summary h3{margin-top:0}.bze-konto-summary [data-konto-stand]{font-size:26px}.bze-konto-hint{display:block;font-size:13px;line-height:1.6;color:var(--bze-text)}
.bze-wrap .bze-team-table{table-layout:fixed}.bze-wrap .bze-team-table th,.bze-wrap .bze-team-table td{white-space:normal;overflow-wrap:anywhere;padding-left:12px;padding-right:12px}.bze-team-table th:first-child{width:23%}.bze-team-table .bze-person>span{min-width:0}.bze-team-table .bze-button{white-space:normal}
.bze-konto-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:14px}.bze-konto-table th,.bze-konto-table td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--bze-border);overflow-wrap:anywhere;color:var(--bze-text)}.bze-konto-table th{background:var(--bze-bg)}
.bze-konto-bookings{list-style:none;padding:0;margin:0 0 24px}.bze-konto-bookings>li{padding:16px 0;border-bottom:1px solid var(--bze-border)}.bze-konto-bookings p{margin:6px 0}
.bze-wrap .bze-zeitkonto :is(button,input,select,textarea),.bze-zeitkonto summary{box-sizing:border-box;min-height:48px;max-width:100%}.bze-zeitkonto summary{display:list-item;padding:12px 0;cursor:pointer}.bze-zeitkonto label{display:grid;gap:8px;min-width:0}.bze-zeitkonto [hidden]{display:none!important}.bze-zeitkonto :is(input,select,textarea){width:100%;min-width:0}.bze-zeitkonto :focus-visible{outline:3px solid var(--bze-brand);outline-offset:3px}
.bze-zeitkonto .bze-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bze-zeitkonto .bze-form-stack{margin:16px 0}.bze-zeitkonto [data-konto-message]:empty{display:none}
@media(max-width:767px){.bze-zeitkonto .bze-form-grid{grid-template-columns:minmax(0,1fr)}.bze-zeitkonto .bze-button{width:100%;white-space:normal}.bze-konto-table thead{display:none}.bze-konto-table,.bze-konto-table tbody{display:block}.bze-konto-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 0;border-bottom:1px solid var(--bze-border)}.bze-konto-table th,.bze-konto-table td{display:block;min-width:0;border:0;padding:6px}.bze-konto-table th{grid-column:1/-1}.bze-konto-table td:before{content:attr(data-label);display:block;font-size:12px;font-weight:600}.bze-konto-summary [data-konto-stand]{font-size:24px}}

/* Neue Kontobeschriftungen bleiben auch auf der getönten Fläche kontrastreich. */
.bze-zeitkonto .bze-konto-summary .bze-muted,.bze-wrap .bze-team-table th,.bze-team-table td[data-label="Zeitkonto"]::before{color:var(--bze-text)}

/* 0.9.3: App-Dialog und dauerhaft lesbare Meldungen; 390 px ohne feste Inhaltsbreite. */
.bze-absence-dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid var(--bze-border);border-radius:var(--bze-radius-md);background:var(--bze-surface);color:var(--bze-text);box-shadow:var(--bze-shadow-md);overflow-wrap:anywhere}
.bze-absence-dialog::backdrop{background:color-mix(in srgb,var(--bze-text) 55%,transparent)}
.bze-absence-dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.bze-absence-dialog-actions .bze-button{min-height:48px;flex:1 1 180px}
.bze-notification{padding:16px 0;border-bottom:1px solid var(--bze-border);overflow-wrap:anywhere}
.bze-notification dl{display:flex;flex-wrap:wrap;gap:12px 32px;margin:8px 0}
.bze-notification dt{color:var(--bze-text-muted);font-size:13px}.bze-notification dd{margin:0}
[data-notifications-count]{font-size:12px}

/* 0.9.4: Arbeitsstunden bleiben von Abwesenheitszeichen und Tageshinweisen unterscheidbar. */
.bze-calendar-work-toggle{display:flex;align-items:center;gap:10px;min-height:48px;margin:0 0 16px;cursor:pointer;color:var(--bze-text)}
.bze-calendar-work-toggle input{flex-shrink:0}
.has-work-hours .bze-calendar-person-col{width:120px}.bze-calendar-sum-col{width:60px}
.bze-absence-calendar .has-work-hours .bze-calendar-day-button,.bze-calendar-work-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:44px;max-width:100%}
.bze-calendar-hours{display:block;max-width:100%;font-size:10px;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.3;overflow-wrap:anywhere;color:var(--bze-text)}
.has-work-hours small{font-size:9px;line-height:1.1}
.bze-absence-calendar .bze-calendar-grid .bze-calendar-sum{font-size:11px;font-weight:750;background:var(--bze-bg);color:var(--bze-text);border-left:2px solid var(--bze-calendar-line)}
.bze-calendar-work-total{font-weight:650;color:var(--bze-text);overflow-wrap:anywhere}
@media(min-width:1024px) and (max-width:1199px){.has-work-hours .bze-calendar-person-col{width:86px}.bze-calendar-sum-col{width:48px}.bze-calendar-hours{font-size:9px}}

/* 0.9.5: Halber Urlaub bleibt ein Urlaubszeichen, auch zusammen mit Arbeitsstunden. */
.bze-absence-half-label{display:flex;align-items:center;gap:10px;min-height:48px;color:var(--bze-text);cursor:pointer}
.bze-absence-half-label input{flex-shrink:0}
.bze-calendar-half{white-space:nowrap;letter-spacing:-.04em}

/* Kalenderkarte: gleicher Innenabstand wie das Anfrageformular. */
.bze-business-panel>.bze-absence-calendar{--bze-calendar-card-padding:26px;padding:var(--bze-calendar-card-padding)}
@media(max-width:1049px){.bze-business-panel>.bze-absence-calendar{--bze-calendar-card-padding:21px}}
@media(max-width:767px){.bze-business-panel>.bze-absence-calendar{--bze-calendar-card-padding:20px}}

/* 1.1.0: Bildschirm-Skala; der Bestand oberhalb bleibt für den Druck erhalten. */
@media screen {
	body.bze-plugin-page,body.bze-login-body { font-size: var(--bze-font-size-body, 16px); }
	.bze-wrap h1 { font-size: var(--bze-font-size-h1, 32px); font-weight: var(--bze-font-weight-heading, 700); }
	.bze-wrap h2 { font-size: var(--bze-font-size-h2, 24px); font-weight: var(--bze-font-weight-heading, 700); }
	.bze-wrap h3 { font-size: var(--bze-font-size-h3, 20px); font-weight: var(--bze-font-weight-heading, 700); }
	.bze-wrap .bze-kicker { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-page-header>div>p:last-child { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-button,.bze-login-card input[type=submit] { font-size: var(--bze-font-size-button, 16px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-wrap .bze-button-small { font-size: var(--bze-font-size-button, 16px); }
	.bze-wrap :is(input,select,textarea) { font-size: var(--bze-font-size-body, 16px); }
	.bze-field label,.bze-month-picker label { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-muted,.bze-wrap p.bze-muted { font-size: var(--bze-font-size-small, 14px); }
	.bze-text-button { font-size: var(--bze-font-size-button, 16px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-app-brand { font-size: var(--bze-font-size-body, 16px); }
	.bze-brand-name small { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-app-page-title { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-user-avatar { font-size: var(--bze-font-size-small, 14px); }
	.bze-user-lastname { font-size: var(--bze-font-size-body, 16px); }
	.bze-user-chevron { font-size: var(--bze-font-size-small, 14px); }
	.bze-user-dropdown [role=menuitem] { font-size: var(--bze-font-size-button, 16px); }
	.bze-app-footer { font-size: var(--bze-font-size-small, 14px); }
	.bze-connection-banner { font-size: var(--bze-font-size-small, 14px); }
	.bze-month-picker input { font-size: var(--bze-font-size-body, 16px); }
	.bze-metric>span { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-metric>strong { font-size: var(--bze-font-size-metric, 32px); font-weight: var(--bze-font-weight-heading, 700); }
	.bze-metric strong small { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-metric p { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-data-caption { font-size: var(--bze-font-size-small, 14px); }
	.bze-business-tabs button { font-size: var(--bze-font-size-button, 16px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-section-heading p { font-size: var(--bze-font-size-small, 14px); }
	.bze-section-heading input[type=search] { font-size: var(--bze-font-size-body, 16px); }
	.bze-wrap .bze-table { font-size: var(--bze-font-size-button, 16px); }
	.bze-wrap .bze-table th { font-size: var(--bze-font-size-button, 16px); }
	.bze-person-avatar { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-person strong { font-size: var(--bze-font-size-body, 16px); }
	.bze-person small { font-size: var(--bze-font-size-small, 14px); }
	.bze-balance { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-warning-list { font-size: var(--bze-font-size-small, 14px); }
	.bze-holiday-row { font-size: var(--bze-font-size-body, 16px); }
	.bze-holiday-row time { font-size: var(--bze-font-size-body, 16px); }
	.bze-holiday-row strong { font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-empty-state { font-size: var(--bze-font-size-small, 14px); }
	.bze-empty-mark { font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-business-message { font-size: var(--bze-font-size-small, 14px); }
	.bze-status-badge { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-absence-heading>strong { font-size: var(--bze-font-size-body, 16px); }
	.bze-absence-item p { font-size: var(--bze-font-size-body, 16px); }
	.bze-schedule-grid label { font-size: var(--bze-font-size-small, 14px); }
	.bze-schedule-grid input { font-size: var(--bze-font-size-body, 16px); }
	.bze-form-stack details { font-size: var(--bze-font-size-small, 14px); }
	.bze-handoff-intro h2 { font-size: var(--bze-font-size-h2, 24px); }
	.bze-handoff-intro p:not(.bze-kicker) { font-size: var(--bze-font-size-small, 14px); }
	.bze-handoff-steps { font-size: var(--bze-font-size-small, 14px); }
	.bze-handoff-steps b { font-size: var(--bze-font-size-small, 14px); }
	.bze-handoff-item p { font-size: var(--bze-font-size-body, 16px); }
	.bze-clock-running-text { font-size: var(--bze-font-size-h2, 24px); }
	.bze-dashboard-card h2 { font-size: var(--bze-font-size-h2, 24px); }
	.bze-login-company { font-size: var(--bze-font-size-small, 14px); }
	.bze-login-brand h1 { font-size: var(--bze-font-size-h1, 32px); font-weight: var(--bze-font-weight-heading, 700); }
	.bze-login-brand p { font-size: var(--bze-font-size-small, 14px); }
	.bze-login-card input[type=submit] { font-size: var(--bze-font-size-button, 16px); }
	.bze-login-card form label { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-login-card .login-remember label { font-size: var(--bze-font-size-small, 14px); }
	.bze-login-help a { font-size: var(--bze-font-size-small, 14px); }
	.bze-login-maker { font-size: var(--bze-font-size-small, 14px); }
	.bze-nav-caption { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-desktop-nav>a { font-size: var(--bze-font-size-nav, 16px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-nav-bottom { font-size: var(--bze-font-size-small, 14px); }
	.bze-nav-bottom small { font-size: var(--bze-font-size-small, 14px); }
	.bze-nav-bottom strong { font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-page-header h1 { font-size: var(--bze-font-size-h1, 32px); }
	.bze-month-picker label { font-size: var(--bze-font-size-small, 14px); }
	.bze-metric>p { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-team-table td { font-size: var(--bze-font-size-body, 16px); }
	.bze-team-table td:not(:first-child)[data-label]:before { font-size: var(--bze-font-size-small, 14px); }
	.bze-handoff-steps span { font-size: var(--bze-font-size-small, 14px); }
	.bze-clock-duration { font-size: var(--bze-font-size-timer, 56px); }
	.bze-main-clock-button { font-size: var(--bze-font-size-clock-action, 20px) !important; }
	.bze-mobile-nav-item { font-size: var(--bze-font-size-mobile-nav, 14px); }
	.bze-mobile-nav-label { font-size: var(--bze-font-size-mobile-nav, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-login-card input[type=text],.bze-login-card input[type=password] { font-size: var(--bze-font-size-body, 16px); }
	.bze-warning-details { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-week-overview td { font-size: var(--bze-font-size-body, 16px); }
	.bze-wrap .bze-week-overview td:before { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-week-overview .bze-week-day-mobile { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-week-overview tr>td:last-child>* { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-week-overview tr>td.bze-week-correction>* { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-site-choose { font-size: var(--bze-font-size-small, 14px); }
	.bze-wrap .bze-work-warning.is-critical { font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-wrap .bze-leave-unconfigured { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-normal, 400); }
	.bze-wrap .bze-metric>strong.bze-leave-unconfigured { font-size: var(--bze-font-size-small, 14px); }
	.bze-compliance-critical { font-weight: var(--bze-font-weight-emphasis, 600); }
	:is(.bze-notice,.bze-error,.bze-login-error,.bze-logout-dialog-message:not(:empty),.bze-notice-warning,.bze-notice-error,.bze-form-message.is-error,.bze-business-message.is-error, .bze-site-warning,.bze-work-warning.is-critical,.bze-pause-chip.is-auto,.bze-compliance-critical, .bze-warning-list li,.bze-warning-details summary,.bze-connection-banner,.bze-status-rejected)::before { font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-calendar-controls label { font-size: var(--bze-font-size-small, 14px); }
	.bze-calendar-month-title { font-size: var(--bze-font-size-h3, 20px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-calendar-legend { font-size: var(--bze-font-size-small, 14px); }
	.bze-calendar-mark { font-size: var(--bze-font-size-calendar, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-absence-calendar .bze-calendar-grid { font-size: var(--bze-font-size-calendar, 14px); }
	.bze-calendar-grid caption { font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-absence-calendar .bze-calendar-grid th:first-child { font-size: var(--bze-font-size-calendar, 14px); }
	.bze-calendar-grid thead small { font-size: var(--bze-font-size-calendar, 14px); }
	.bze-calendar-day-notes { font-size: var(--bze-font-size-small, 14px); }
	.bze-calendar-person h3 { font-size: var(--bze-font-size-h3, 20px); }
	.bze-calendar-person li { font-size: var(--bze-font-size-small, 14px); }
	.bze-calendar-planner-controls label { font-size: var(--bze-font-size-small, 14px); }
	.bze-absence-calendar .bze-calendar-planner-grid thead th { font-size: var(--bze-font-size-calendar, 14px); }
	.bze-calendar-planner-grid .bze-calendar-mark { font-size: var(--bze-font-size-calendar, 14px); }
	.bze-calendar-planner-grid small { font-size: var(--bze-font-size-calendar, 14px); }
	.bze-absence-calendar .bze-calendar-planner-month th { font-size: var(--bze-font-size-calendar, 14px); }
	[data-calendar-holidays] h3 { font-size: var(--bze-font-size-h3, 20px); }
	.bze-konto-summary [data-konto-stand] { font-size: var(--bze-font-size-metric, 32px); }
	.bze-konto-hint { font-size: var(--bze-font-size-small, 14px); }
	.bze-konto-table { font-size: var(--bze-font-size-small, 14px); }
	.bze-konto-table td:before { font-size: var(--bze-font-size-small, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-notification dt { font-size: var(--bze-font-size-small, 14px); }
	[data-notifications-count] { font-size: var(--bze-font-size-small, 14px); }
	.bze-calendar-hours { font-size: var(--bze-font-size-calendar, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.has-work-hours small { font-size: var(--bze-font-size-small, 14px); }
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-sum { font-size: var(--bze-font-size-calendar, 14px); font-weight: var(--bze-font-weight-emphasis, 600); }
	.bze-calendar-work-total { font-weight: var(--bze-font-weight-emphasis, 600); }
}

/* 1.1.0: Lesbarkeit und Bedienflächen; keine Wirkung auf Druckmedien. */
@media screen {
	body.bze-plugin-page, body.bze-login-body { --bze-text-muted:#4f6472; font-family:var(--bze-font-family); font-size:var(--bze-font-size-body); font-weight:var(--bze-font-weight-normal); line-height:1.5; }
	.bze-wrap { font-weight:var(--bze-font-weight-normal); }
	.bze-wrap :is(h1,h2,h3,h4) { font-weight:var(--bze-font-weight-heading); letter-spacing:normal; line-height:1.25; }
	.bze-wrap h1 { font-size:var(--bze-font-size-h1); }
	.bze-wrap h2 { font-size:var(--bze-font-size-h2); }
	.bze-wrap h3 { font-size:var(--bze-font-size-h3); }
	.bze-wrap p { line-height:1.5; }
	.bze-wrap .bze-metric>strong, .bze-wrap .bze-dashboard-value { font-size:var(--bze-font-size-metric); font-weight:var(--bze-font-weight-heading); letter-spacing:normal; line-height:1.2; }
	.bze-wrap .bze-metric>strong.bze-leave-unconfigured { font-size:var(--bze-font-size-small); font-weight:var(--bze-font-weight-normal); }
	.bze-clock-duration { font-size:var(--bze-font-size-timer); font-weight:var(--bze-font-weight-heading); letter-spacing:normal; line-height:1.15; }
	.bze-wrap .bze-button, .bze-wrap .bze-text-button, .bze-wrap .bze-business-tabs button { min-height:48px; min-width:48px; font-family:var(--bze-font-family); font-size:var(--bze-font-size-button); font-weight:var(--bze-font-weight-emphasis); line-height:1.4; }
	.bze-wrap .bze-main-clock-button, .bze-wrap .bze-dashboard-stamp-button { min-height:64px!important; font-size:var(--bze-font-size-clock-action)!important; font-weight:var(--bze-font-weight-heading); }
	.bze-wrap :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]) { min-height:48px; height:auto; font-size:var(--bze-font-size-body); font-weight:var(--bze-font-weight-normal); }
	.bze-wrap .bze-month-picker input { min-height:48px!important; width:175px; }
	.bze-month-picker { flex-wrap:wrap; max-width:100%; }
	.bze-wrap label:has(input:is([type=checkbox],[type=radio])) { min-height:48px; }
	.bze-wrap input:is([type=checkbox],[type=radio]) { width:24px; height:24px; min-height:24px; }
	.bze-wrap .bze-table { font-size:var(--bze-font-size-body); }
	.bze-wrap .bze-table th, .bze-team-table td:not(:first-child)[data-label]::before, .bze-wrap .bze-week-overview td::before { color:var(--bze-table-head-text); font-size:var(--bze-font-size-small); text-transform:none; letter-spacing:normal; white-space:normal; }
	.bze-wrap .bze-table td { padding:12px 14px; line-height:1.5; }
	.bze-wrap .bze-table .bze-number { white-space:nowrap; overflow-wrap:normal; text-align:right; }
	.bze-wrap .bze-person strong { font-size:var(--bze-font-size-body); }
	.bze-wrap .bze-person { min-width:0; }
	.bze-wrap .bze-schedule-grid { grid-template-columns:repeat(auto-fit,minmax(96px,1fr)); }
	.bze-wrap .bze-person>span { min-width:0; overflow-wrap:anywhere; }
	.bze-wrap .bze-balance, .bze-wrap .bze-balance.is-negative, .bze-wrap .bze-status-badge, .bze-wrap .bze-week-status, .bze-wrap .bze-source-archive { color:var(--bze-status-text); font-size:var(--bze-font-size-small); }
	.bze-wrap .bze-status-badge, .bze-wrap .bze-week-status { white-space:normal; }
	.bze-wrap .bze-muted, .bze-wrap p.bze-muted, .bze-app-footer, .bze-app-footer a,
	.bze-metric:not(.bze-metric-accent)>span, .bze-metric:not(.bze-metric-accent) p,
	.bze-wrap .bze-data-caption, .bze-business-tabs button:not(.is-active), .bze-person small,
	.bze-holiday-row time, .bze-empty-state, .bze-empty-state p, .bze-empty-mark,
	.bze-schedule-grid label, .bze-form-stack details, .bze-handoff-intro p:not(.bze-kicker),
	.bze-handoff-steps, .bze-login-brand p, .bze-login-maker, .bze-warning-details,
	.bze-wrap .bze-leave-unconfigured { color:var(--bze-text-muted); }
	.bze-wrap .bze-site-warning { color:var(--bze-status-text)!important; }
	.bze-wrap .bze-week-time.is-missing, .bze-wrap .bze-interruption-mark { color:var(--bze-status-text); }
	.bze-wrap .bze-business-tabs { flex-wrap:wrap; gap:8px 24px; overflow:visible; }
	.bze-business-tabs button { white-space:normal; }
	.bze-app-brand { min-height:48px; }
	.bze-app-header-inner { grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto; gap:16px; }
	.bze-brand-name { max-width:230px; }
	.bze-brand-name small, .bze-login-company, .bze-login-maker, .bze-nav-caption, .bze-app-footer { letter-spacing:normal; }
	.bze-user-trigger { min-width:48px; min-height:48px; font-family:var(--bze-font-family); }
	.bze-user-dropdown [role=menuitem] { min-height:48px; line-height:1.5; padding-block:12px; }
	.bze-app-footer { line-height:1.5; flex-wrap:wrap; }
	.bze-app-footer a { display:inline-flex; align-items:center; min-height:48px; }
	.bze-desktop-nav>a { min-height:48px; line-height:1.4; }
	.bze-desktop-nav { overflow-y:auto; }
	.bze-login-card form label { line-height:1.5; }
	.bze-login-card input[type=submit] { min-height:48px; font-size:var(--bze-font-size-button); }
	.bze-login-help a { display:inline-flex; align-items:center; min-height:48px; font-size:var(--bze-font-size-small); }
	.bze-login-card .login-remember label { min-height:48px; }
	.bze-login-card input[type=checkbox] { width:24px; height:24px; flex-shrink:0; }

	/* Eine Breitenregel: 31 × 48 + 144 Person + 96 Summe + 32 Rahmenreserve = 1760 px.
	 * Der Container misst den nutzbaren Karteninhalt, nicht das Browserfenster.
	 * Ohne Containerabfragen bleibt die vorhandene Liste als lesbarer Fallback. */
	.bze-absence-calendar { container-name:bze-absence; container-type:inline-size; min-width:0; }
	.bze-absence-calendar .bze-calendar-grid, .bze-absence-calendar .bze-calendar-planners { display:none; }
	.bze-absence-calendar .bze-calendar-list, .bze-absence-calendar .bze-calendar-planner-list { display:block; }
	.bze-absence-calendar .bze-calendar-person-col, .bze-absence-calendar .has-work-hours .bze-calendar-person-col { width:144px; }
	.bze-absence-calendar .bze-calendar-sum-col { width:96px; }
	.bze-absence-calendar .bze-calendar-grid :is(th,td) { height:48px; font-size:var(--bze-font-size-calendar); line-height:1.4; }
	.bze-absence-calendar .bze-calendar-grid th:first-child { font-size:var(--bze-font-size-calendar); }
	.bze-absence-calendar .bze-calendar-day-button, .bze-absence-calendar .bze-calendar-work-cell, .bze-absence-calendar .bze-calendar-planner-cell { min-height:48px; font-size:var(--bze-font-size-calendar); }
	.bze-absence-calendar .bze-calendar-day-button { min-width:48px; }
	.bze-absence-calendar .bze-calendar-mark, .bze-absence-calendar .bze-calendar-grid small, .bze-absence-calendar .bze-calendar-hours, .bze-absence-calendar .bze-calendar-grid .bze-calendar-sum { font-size:var(--bze-font-size-calendar); line-height:1.4; }
	.bze-absence-calendar .bze-calendar-mark { max-width:none; width:auto; min-width:28px; padding:2px; letter-spacing:normal; }
	.bze-absence-calendar .bze-calendar-hours, .bze-absence-calendar .bze-calendar-grid .bze-calendar-sum { white-space:nowrap; overflow-wrap:normal; font-variant-numeric:tabular-nums; text-align:right; }
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-sum { padding-inline:6px; }
	.bze-absence-calendar .bze-calendar-person li, .bze-absence-calendar .bze-calendar-work-total { font-size:var(--bze-font-size-body); }
	.bze-absence-calendar .bze-calendar-person h3, .bze-absence-calendar .bze-calendar-month-title { font-size:var(--bze-font-size-h3); }
	.bze-absence-calendar .bze-calendar-heading { flex-wrap:wrap; }
	@container bze-absence (min-width:1760px) {
		.bze-absence-calendar .bze-calendar-grid { display:table; }
		.bze-absence-calendar .bze-calendar-planners { display:block; }
		.bze-absence-calendar .bze-calendar-list, .bze-absence-calendar .bze-calendar-planner-list { display:none; }
	}
}
@media screen and (min-width:1600px) {
	.bze-plugin-page>.bze-business-wrap:has(.bze-absence-calendar) { max-width:none; margin-left:266px; }
}
@media screen and (max-width:767px) {
	body.bze-plugin-page { --bze-mobile-nav-height:calc(24px + 2.5 * var(--bze-font-size-mobile-nav) + 29px + env(safe-area-inset-bottom)); padding-bottom:calc(var(--bze-mobile-nav-height) + 24px); }
	.bze-mobile-nav { min-height:var(--bze-mobile-nav-height); padding:8px 8px calc(8px + env(safe-area-inset-bottom)); }
	.bze-mobile-nav-item { min-height:calc(var(--bze-mobile-nav-height) - 17px - env(safe-area-inset-bottom)); font-size:var(--bze-font-size-mobile-nav); line-height:1.25; gap:4px; padding:4px; }
	.bze-mobile-nav-icon { width:24px; height:24px; flex-shrink:0; margin:0; }
	.bze-mobile-nav-label { font-size:var(--bze-font-size-mobile-nav); line-height:1.25; min-height:2.5em; white-space:normal; overflow:visible; text-overflow:clip; }
	.bze-app-header, .bze-app-header-inner { height:auto; min-height:76px; }
	.bze-app-header-inner { grid-template-columns:minmax(0,1fr) auto; padding:8px 16px; gap:8px; }
	.bze-app-brand { max-width:100%; }
	.bze-brand-name { min-width:0; max-width:none; }
	.bze-connection-banner { top:76px; }
	.bze-wrap .bze-team-table td, .bze-wrap .bze-week-overview td { font-size:var(--bze-font-size-body); }
	.bze-wrap .bze-week-overview tr { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.bze-wrap .bze-week-overview .bze-week-date { grid-column:1/-1; flex-wrap:wrap; }
	.bze-wrap .bze-week-overview tr>td.bze-week-correction { grid-column:1/-1; grid-row:auto; }
	.bze-wrap .bze-week-overview tr>td:last-child>* { font-size:var(--bze-font-size-small); }
	.bze-wrap .bze-week-overview tr>td.bze-week-correction>.bze-button { min-height:48px; min-width:48px; font-size:var(--bze-font-size-button); padding:10px 12px; }
	.bze-wrap .bze-week-overview .bze-week-time, .bze-wrap .bze-week-overview .bze-number { width:auto; white-space:nowrap; text-align:right!important; }
	.bze-wrap .bze-week-overview .bze-week-time::before, .bze-wrap .bze-week-overview .bze-number::before { white-space:normal; }
	.bze-wrap .bze-schedule-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
	.bze-calendar-views .bze-button { padding-inline:8px; }
	.bze-wrap .bze-month-picker { width:100%; }
	.bze-wrap .bze-month-picker input { width:auto; flex:1 1 175px; }
}

/* 1.1.1: Fünf Navigationspunkte behalten 14 px und vollständig sichtbare Wörter. */
@media screen and (max-width:767px) {
	.bze-mobile-nav:has(>:nth-child(5)):not(:has(>:nth-child(6))) { padding-inline:0; }
	.bze-mobile-nav:has(>:nth-child(5)):not(:has(>:nth-child(6))) .bze-mobile-nav-item { padding-inline:0; }
	.bze-mobile-nav:has(>:nth-child(5)):not(:has(>:nth-child(6))) .bze-mobile-nav-label { width:100%; overflow-wrap:anywhere; hyphens:auto; }
}

/* 1.1.1: Nur das Kalenderraster darf horizontal wischen; Legende/Formular bleiben groß. */
@media screen {
	.bze-wrap button.bze-text-button.bze-leave-unconfigured { min-height:48px; }
	.bze-absence-calendar { container-type:normal; container-name:none; }
	.bze-absence-calendar .bze-calendar-list,
	.bze-absence-calendar .bze-calendar-planner-list { display:none; }
	.bze-absence-calendar .bze-calendar-planners { display:block; }
	.bze-absence-calendar .bze-calendar-scroll {
		--bze-calendar-grid-ink:#142e3e;
		--bze-calendar-sticky-bg:#fff;
		--bze-calendar-person-width:144px;
		--bze-calendar-sum-width:64px;
		--bze-calendar-grid-min:1168px;
		--bze-calendar-grid-hours-min:1233px;
		box-sizing:border-box; width:100%; max-width:100%; min-width:0;
		overflow-x:auto; overscroll-behavior-x:contain; isolation:isolate;
	}
	.bze-absence-calendar .bze-calendar-scroll:focus-visible { outline:2px solid var(--bze-brand); outline-offset:2px; }
	.bze-absence-calendar .bze-calendar-grid {
		display:table; width:100%; min-width:var(--bze-calendar-grid-min);
		font-size:12px; font-weight:600; color:var(--bze-calendar-grid-ink);
	}
	.bze-absence-calendar .bze-calendar-grid.has-work-hours { min-width:var(--bze-calendar-grid-hours-min); }
	.bze-absence-calendar .bze-calendar-grid * { font-weight:600; }
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-person-col { width:var(--bze-calendar-person-width); }
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-sum-col { width:var(--bze-calendar-sum-width); }
	.bze-absence-calendar .bze-calendar-grid :is(th,td) { height:auto; font-size:12px; color:var(--bze-calendar-grid-ink); }
	.bze-absence-calendar .bze-calendar-grid th:first-child { font-size:13px; }
	.bze-absence-calendar .bze-calendar-planner-grid thead th:not(:first-child) { font-size:11px; }
	.bze-absence-calendar .bze-calendar-grid th[scope=row],
	.bze-absence-calendar .bze-calendar-grid thead th:first-child {
		position:sticky; left:0; z-index:2; background:var(--bze-calendar-sticky-bg);
		overflow-wrap:anywhere;
	}
	.bze-absence-calendar .bze-calendar-grid thead th:first-child { z-index:3; }
	.bze-absence-calendar .bze-calendar-grid :is(.bze-calendar-day-button,.bze-calendar-work-cell,.bze-calendar-planner-cell) {
		box-sizing:border-box; min-width:0; min-height:38px; padding:2px 0;
		font-size:12px; font-weight:600; color:var(--bze-calendar-grid-ink);
	}
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-mark {
		width:auto; min-width:22px; min-height:26px; max-width:100%; padding:1px;
		font-size:12px; line-height:1.2; color:var(--bze-calendar-contrast);
	}
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-mark:is(.bze-calendar-A,.is-pending) { color:var(--bze-calendar-grid-ink); }
	.bze-absence-calendar .bze-calendar-planner-grid .bze-calendar-mark { min-height:24px; font-size:11px; }
	.bze-absence-calendar .bze-calendar-grid small,
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-hours,
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-sum { font-size:11px; font-weight:600; line-height:1.3; color:var(--bze-calendar-grid-ink); }
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-sum { padding-inline:4px; }
	.bze-absence-calendar .bze-calendar-grid .bze-calendar-hours { white-space:nowrap; overflow-wrap:normal; }
}

/* 1.1.2: Kompakte Handy-Oberfläche. Kalenderzeichen und Farben bleiben unverändert. */
@media screen and (max-width:767px) {
	body.bze-plugin-page {
		--bze-mobile-nav-height:calc(64px + env(safe-area-inset-bottom));
		padding-bottom:calc(var(--bze-mobile-nav-height) + 16px);
	}
	.bze-mobile-nav { min-height:var(--bze-mobile-nav-height); padding:6px 0 calc(6px + env(safe-area-inset-bottom)); }
	.bze-mobile-nav-item { min-height:50px; padding:3px 0; gap:3px; line-height:1.25; }
	.bze-mobile-nav-icon { width:22px; height:22px; margin:0; }
	.bze-mobile-nav .bze-mobile-nav-label,
	.bze-mobile-nav:has(>:nth-child(5)):not(:has(>:nth-child(6))) .bze-mobile-nav-label {
		width:100%; min-height:0; font-size:var(--bze-font-size-mobile-nav); line-height:1.25;
		white-space:nowrap; overflow-wrap:normal; word-break:normal; hyphens:none;
		overflow:visible; text-overflow:clip;
	}
	.bze-app-header { height:auto; min-height:56px; }
	.bze-app-header-inner { height:auto; min-height:55px; padding:5px 12px; gap:8px; }
	.bze-app-brand { min-height:44px; }
	.bze-user-trigger { min-height:44px; min-width:44px; }
	.bze-connection-banner { top:56px; padding:8px 16px; }
	.bze-business-message:not(:empty) { top:56px; }

	/* Auch native Datum-/Zeitbestandteile behalten 16 px (iPhone-Feldzoom). */
	body.bze-plugin-page :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]),
	body.bze-login-body :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]) { font-size:16px; }
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-fields-wrapper,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-text,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-hour-field,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-minute-field,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-day-field,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-month-field,
	.bze-wrap :is(input[type=date],input[type=time],input[type=datetime-local],input[type=month])::-webkit-datetime-edit-year-field { font-size:16px; }
	.bze-wrap :is(.bze-field,.bze-month-picker) label, .bze-wrap .bze-export-card label, .bze-wrap .bze-version-selectors label { font-size:var(--bze-font-size-small); }

	.bze-wrap { margin-block:16px; }
	.bze-wrap .bze-page-header { margin-bottom:16px; gap:12px; }
	.bze-wrap .bze-card, .bze-wrap .bze-panel { padding:16px; margin-bottom:16px; }
	.bze-wrap .bze-clock-card, .bze-wrap .bze-handoff-intro { padding:16px!important; }
	.bze-business-panel>.bze-card>.bze-section-heading { padding:0 0 8px; }
	.bze-business-panel>.bze-card>p { padding:0 0 8px; }
	.bze-wrap .bze-section-heading { gap:12px; }
	.bze-wrap .bze-metric { padding:16px; }
	.bze-wrap .bze-metric-grid, .bze-wrap .bze-dashboard-grid, .bze-wrap .bze-form-grid, .bze-wrap .bze-form-stack { gap:12px; }
	.bze-wrap .bze-business-tabs { gap:8px 16px; margin-bottom:16px; }
	.bze-wrap .bze-business-tabs button { padding-block:8px; }
	.bze-wrap .bze-divider { margin-block:16px; }
	.bze-wrap .bze-data-caption { margin-bottom:16px; }
	.bze-wrap .bze-handoff-item { padding:16px 0; }
	.bze-wrap .bze-absence-item { padding-block:16px; }
	.bze-wrap .bze-team-table tr { margin-inline:0; padding-block:12px; gap:8px; }
	.bze-wrap .bze-week-overview td,
	.bze-wrap .bze-week-overview .bze-week-date,
	.bze-wrap .bze-week-overview tr>td.bze-week-correction,
	.bze-wrap .bze-konto-table td { padding:8px; }

	/* Hauptaktionen 48 px, sekundäre Aktionen 44 px; Karten bleiben höhenflexibel. */
	.bze-wrap .bze-button { padding:8px 12px; }
	.bze-wrap .bze-button-secondary, .bze-wrap .bze-button-small,
	.bze-wrap .bze-text-button, .bze-wrap .bze-business-tabs button,
	.bze-wrap .bze-week-overview tr>td.bze-week-correction>.bze-button,
	.bze-wrap button.bze-text-button.bze-leave-unconfigured { min-height:44px; }
	.bze-wrap .bze-week-overview tr>td.bze-week-correction>.bze-button { padding:8px 12px; }
	.bze-wrap .bze-main-clock-button, .bze-wrap .bze-dashboard-stamp-button { min-height:56px!important; }
	.bze-wrap :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]) { min-height:44px; padding-block:8px; }
	.bze-wrap .bze-month-picker input { min-height:44px!important; }
	.bze-wrap label:has(input:is([type=checkbox],[type=radio])), .bze-wrap .bze-force-confirm, .bze-login-card .login-remember label { min-height:44px; }
	.bze-wrap .bze-absence-half-label { min-height:44px; }
	.bze-user-dropdown [role=menuitem] { min-height:44px; padding-block:8px; }
	.bze-user-summary { padding:16px; }
	.bze-app-footer { margin-top:16px; }
	.bze-app-footer a { min-height:44px; }
	.bze-business-panel>.bze-absence-calendar { --bze-calendar-card-padding:16px; }
	.bze-absence-calendar .bze-calendar-scroll {
		--bze-calendar-person-width:96px;
		--bze-calendar-grid-min:1120px;
		--bze-calendar-grid-hours-min:1185px;
	}
}

/* 1.2.0: Tagesaktionen außerhalb des horizontalen Kalender-Wischbereichs. */
@media screen {
	.bze-absence-calendar .bze-calendar-actions { min-width:0; max-width:100%; margin:16px 0; padding:16px; border:1px solid var(--bze-border); border-radius:12px; overflow-wrap:anywhere; }
	.bze-calendar-actions:focus { outline:2px solid var(--bze-brand); outline-offset:2px; }
	.bze-calendar-actions>p { margin:0 0 12px; }
	.bze-calendar-actions .bze-calendar-action-buttons { display:flex; flex-wrap:wrap; gap:8px; min-width:0; }
	.bze-wrap .bze-calendar-actions .bze-button { min-height:48px; max-width:100%; white-space:normal; }
	.bze-calendar-actions [data-calendar-action-status] { margin:12px 0 0; }
}
@media screen and (max-width:767px) {
	.bze-wrap .bze-calendar-actions .bze-button { min-height:44px; }
}

/* 1.2.1: Meldungen mit gleichem seitlichen Innenabstand wie die Teamüberschrift. */
@media screen and (min-width:768px) {
	[data-business-panel="notifications"]>.bze-card>:is(h2,[data-business-notifications]) { padding-left:26px; padding-right:26px; }
}
@media screen and (min-width:768px) and (max-width:1049px) {
	[data-business-panel="notifications"]>.bze-card>:is(h2,p,[data-business-notifications]) { padding-left:20px; padding-right:20px; }
}
