:root{
  --bg:#f4f6f9;--card:#fff;--ink:#111827;--muted:#667085;--line:#d9dee7;
  --brand:#143764;--brand2:#24558e;--soft:#eef4fb;--ok:#157347;--warn:#a15c00;--danger:#b42318;
  --radius:18px;--shadow:0 8px 28px rgba(17,24,39,.07)
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink)}
body{margin:0;min-height:100vh;background:var(--bg)}
button,input,select{font:inherit}
button{touch-action:manipulation}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand-row{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:linear-gradient(145deg,var(--brand),var(--brand2));color:#fff;font-weight:800;letter-spacing:-1px;font-size:24px;box-shadow:var(--shadow)}.brand-mark.small{width:42px;height:42px;border-radius:13px;font-size:15px}.sync-state{font-size:12px;color:var(--muted);margin-top:2px}.sync-state.online{color:var(--ok)}.sync-state.offline{color:var(--warn)}
.page-shell{width:min(760px,100%);margin:0 auto;padding:14px 12px calc(36px + env(safe-area-inset-bottom))}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.compact{padding:12px}.week-nav{display:grid;grid-template-columns:48px 1fr 48px;align-items:center}.week-title-wrap{text-align:center}.week-title-wrap h1{font-size:22px;margin:0}.link-btn{border:0;background:none;color:var(--brand2);padding:4px 8px;font-size:12px}.icon-btn{width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-size:24px;display:grid;place-items:center}.summary-grid{display:flex;gap:8px;overflow:auto;padding:12px 2px 2px}.summary-pill{flex:0 0 auto;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-weight:700;font-size:13px}.summary-pill span{color:var(--muted);font-weight:500;margin-right:4px}.bulk{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.bulk p{margin:4px 0 0}.bulk-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.days{display:grid;gap:12px;margin-top:12px}.day-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.day-head{padding:14px 14px 10px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.day-head h2{font-size:18px;margin:0}.day-date{font-size:13px;color:var(--muted);margin-top:3px}.copy-prev{border:0;background:var(--soft);color:var(--brand);padding:9px 11px;border-radius:12px;font-size:12px;font-weight:700}.status-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 12px 12px}.status-btn{border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 5px;font-size:13px;font-weight:650}.status-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.status-btn[data-status="Urlaub"].active{background:#7b61a8;border-color:#7b61a8}.status-btn[data-status="Krank"].active{background:#a34d4d;border-color:#a34d4d}.status-btn[data-status="Frei"].active{background:#5d6674;border-color:#5d6674}.day-body{border-top:1px solid var(--line);padding:14px}.day-body.absent{background:#fafafa}.absence-box{padding:10px 12px;border-radius:12px;background:#f2f4f7;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid .full{grid-column:1/-1}label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#344054}input,select{width:100%;min-height:46px;border:1px solid #cfd5df;border-radius:12px;background:#fff;padding:10px 12px;color:var(--ink);font-size:16px}input:focus,select:focus{outline:2px solid #9dbbe0;outline-offset:1px}.calc-box{min-height:46px;border:1px solid #d6dfeb;border-radius:12px;background:var(--soft);display:flex;align-items:center;padding:10px 12px;font-size:16px;font-weight:800;color:var(--brand)}.row-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.btn{border:1px solid transparent;border-radius:13px;min-height:44px;padding:10px 14px;font-weight:750}.btn.primary{background:var(--brand);color:#fff}.btn.secondary{background:var(--soft);border-color:#d8e4f2;color:var(--brand)}.btn.ghost{background:#fff;border-color:var(--line);color:#344054}.btn.wide{width:100%}.small-btn{min-height:38px;padding:7px 10px;font-size:12px}.muted{color:var(--muted)}.tiny{font-size:12px}.center{text-align:center}.signature-card,.action-card{margin-top:12px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.section-heading h2{font-size:17px;margin:0}.section-heading p{margin:4px 0 0}.signature-wrap{margin-top:12px;border:2px dashed #b9c2cf;border-radius:14px;background:#fff;overflow:hidden}.signature-wrap canvas{display:block;width:100%;height:150px;touch-action:none}.action-card{display:grid;gap:10px}.action-card p{margin:0}
.settings-dialog{width:min(680px,calc(100% - 20px));max-height:88vh;border:0;border-radius:22px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.22)}.settings-dialog::backdrop{background:rgba(17,24,39,.48)}.dialog-shell{padding:16px;overflow:auto;max-height:88vh}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0}.settings-section{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.settings-section h3{font-size:15px;margin:0 0 10px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.inline-add{display:grid;grid-template-columns:1fr auto;gap:8px}.chip-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.chip{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:6px 7px 6px 10px;background:#fff;font-size:12px}.chip button{border:0;background:#f2f4f7;border-radius:50%;width:24px;height:24px}.toast{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%) translateY(20px);background:#111827;color:white;border-radius:999px;padding:10px 14px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:50;max-width:calc(100% - 30px);text-align:center}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.login-body{display:grid;place-items:center;padding:24px}.login-shell{width:min(420px,100%)}.login-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:28px}.login-card .brand-mark{margin:0 auto 18px}.login-card h1{text-align:center;margin:0}.login-card>p{text-align:center}.login-card form{display:grid;gap:14px;margin-top:20px}.alert{padding:10px 12px;border-radius:12px;font-size:13px}.alert.error{background:#fff0ee;color:var(--danger);border:1px solid #ffd1cc}
@media(max-width:560px){.bulk{align-items:flex-start;flex-direction:column}.bulk-actions{width:100%}.bulk-actions .btn{flex:1}.grid-3{grid-template-columns:1fr 1fr}.grid-3 label:last-child{grid-column:1/-1}.inline-add{grid-template-columns:1fr}.status-tabs{gap:4px}.status-btn{font-size:12px}.form-grid{gap:9px}.day-body{padding:12px}}
@media(display-mode:standalone){.topbar{padding-top:calc(8px + env(safe-area-inset-top))}}

.brand-mark{overflow:hidden;padding:0;background:transparent}.brand-mark img{width:100%;height:100%;display:block;border-radius:inherit}

.pdf-ready{display:grid;gap:8px;padding:12px;border:1px solid #d8e4f2;border-radius:14px;background:var(--soft)}
.pdf-ready[hidden]{display:none}
.pdf-ready-title{font-size:13px;font-weight:800;text-align:center;color:var(--brand)}
.pdf-link{display:flex;align-items:center;justify-content:center;text-decoration:none}

/* V1.0.2: reliable saved-site picker for iOS/PWA (datalist remains as fallback). */
.address-input-row{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px;align-items:stretch}
.address-picker-btn{width:48px;min-height:46px;border:1px solid #cfd5df;border-radius:12px;background:var(--soft);color:var(--brand);display:grid;place-items:center;padding:0}
.address-picker-btn:active{transform:scale(.97)}
.address-picker-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round}
.address-picker-dialog{width:min(620px,calc(100% - 20px));max-height:82vh;border:0;border-radius:22px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.25)}
.address-picker-dialog::backdrop{background:rgba(17,24,39,.48)}
.address-picker-shell{padding:16px;max-height:82vh;overflow:auto}
.address-picker-list{display:grid;gap:9px;margin:16px 0 12px}
.address-choice{width:100%;min-height:56px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);padding:11px 12px;display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;text-align:left;font-size:15px;line-height:1.3}
.address-choice.selected{border-color:#8fb2da;background:var(--soft);color:var(--brand);font-weight:750}
.address-choice-icon{width:28px;height:28px;border-radius:9px;background:var(--soft);color:var(--brand);display:grid;place-items:center;font-weight:900}
.address-choice.selected .address-choice-icon{background:var(--brand);color:#fff}
.address-picker-empty{padding:16px;border:1px dashed var(--line);border-radius:14px;background:#fafafa;color:var(--muted);font-size:13px;line-height:1.45}

/* V1.1.0 calendar, notes, holidays, reminders and push */
.view-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.view-btn{min-height:44px;border:1px solid var(--line);border-radius:13px;background:#fff;color:#344054;font-weight:800}.view-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}
textarea{width:100%;border:1px solid #cfd5df;border-radius:12px;background:#fff;padding:10px 12px;color:var(--ink);font:inherit;font-size:16px;resize:vertical;min-height:86px}textarea:focus{outline:2px solid #9dbbe0;outline-offset:1px}.note-field span{font-weight:500}.note-only{margin-top:12px}.holiday-day{border-color:#c8ccd2}.holiday-body{background:#f4f4f5}.holiday-box{display:grid;gap:3px;padding:12px 14px;border-radius:12px;background:#e4e6e9;color:#353a42;margin-bottom:12px}.holiday-box strong{font-size:13px;text-transform:uppercase;letter-spacing:.03em}.holiday-box span{font-size:16px;font-weight:800}.holiday-box small{font-size:12px;color:#667085;font-weight:500}.compact-holiday{margin-bottom:0}.settings-single{margin-top:10px;max-width:280px}.toggle-row{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;font-size:14px;font-weight:700;margin-top:10px}.toggle-row input{width:20px;min-height:20px;height:20px;flex:0 0 20px;margin-top:1px}.toggle-row small{display:block;color:var(--muted);font-weight:500;margin-top:2px}.settings-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reminder-list{display:grid;gap:8px}.reminder-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:left;padding:11px 12px;color:var(--ink)}.reminder-item span:first-child{display:grid;gap:3px}.reminder-item small{color:var(--muted);font-size:12px}.reminder-item.disabled{opacity:.58}.reminder-state{font-size:12px;font-weight:800;color:var(--brand)}.push-status{padding:10px 12px;border-radius:12px;background:#f2f4f7;font-size:13px;font-weight:700}.push-status.ok{background:#eaf7ef;color:var(--ok)}.push-status.warn{background:#fff4e5;color:var(--warn)}.danger-text{color:var(--danger)!important}
.month-view{margin-top:12px}.calendar-help{margin-bottom:12px}.calendar-help p{margin:4px 0 0}.month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:0 4px 6px;color:var(--muted);font-size:11px;font-weight:800;text-align:center}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.month-empty{min-height:105px}.month-day{min-height:105px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);padding:8px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;overflow:hidden}.month-day.weekend{background:#fafafa}.month-day.holiday{background:#e8eaed;border-color:#cfd3d8}.month-day-num{font-size:16px;font-weight:900}.month-day-status{font-size:10px;font-weight:800;color:var(--brand);line-height:1.15}.month-day.holiday .month-day-status{color:#4f5661}.month-day-address{font-size:9px;line-height:1.2;color:#3e4652;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.month-note{margin-top:auto;font-size:9px;color:#7b61a8;font-weight:800}.day-dialog,.day-dialog::backdrop,.reminder-dialog{border:0}.day-dialog{width:min(620px,calc(100% - 20px));max-height:88vh;border-radius:22px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.25)}.day-dialog::backdrop{background:rgba(17,24,39,.48)}.day-dialog-shell{padding:16px;max-height:88vh;overflow:auto}.day-dialog-info{display:grid;gap:8px;margin:16px 0}.day-info-row{display:grid;grid-template-columns:95px 1fr;gap:10px;padding:10px 12px;background:#f7f8fa;border-radius:12px;font-size:13px}.day-info-row span{color:var(--muted)}.day-info-row strong{text-align:right}.reminder-fields{margin:12px 0}
@media(max-width:560px){.month-weekdays{display:none}.month-grid{grid-template-columns:1fr;gap:8px}.month-empty{display:none}.month-day{min-height:82px;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto auto;column-gap:10px;align-items:start}.month-day-num{grid-row:1/4;font-size:22px}.month-day-status{font-size:12px}.month-day-address{font-size:12px;-webkit-line-clamp:2}.month-note{font-size:11px;margin-top:0}.grid-2{grid-template-columns:1fr}.settings-actions .btn{flex:1 1 100%}.day-info-row{grid-template-columns:80px 1fr}}

/* V1.1.1: separate calendar screen + compact address controls */
.top-actions{display:flex;align-items:center;gap:8px}
.top-actions .icon-btn svg,.calendar-back svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.calendar-screen[hidden],#editorScreen[hidden]{display:none!important}
.calendar-screen{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
.calendar-screen-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:3px 1px 12px}
.calendar-screen-head>strong{font-size:17px}
.calendar-back{justify-self:start;border:0;background:transparent;color:var(--brand);font:inherit;font-weight:800;padding:8px 4px;display:flex;align-items:center;gap:4px}
.calendar-back span{font-size:14px}.calendar-head-spacer{display:block}
.calendar-view-switch{display:grid;grid-template-columns:1fr 1fr;background:#e9edf3;border-radius:12px;padding:3px;margin-bottom:12px}
.calendar-view-btn{border:0;background:transparent;border-radius:10px;min-height:38px;font-weight:800;color:#52606f}
.calendar-view-btn.active{background:#fff;color:var(--brand);box-shadow:0 1px 4px rgba(15,23,42,.12)}
.calendar-nav{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;gap:8px;align-items:center;margin-bottom:12px}
.calendar-nav-btn{background:#fff}.calendar-period-title-wrap{text-align:center;min-width:0}.calendar-period-title-wrap h1{font-size:18px;margin:0;line-height:1.2}.calendar-period-title-wrap .link-btn{margin-top:2px}
.calendar-footnote{color:var(--muted);font-size:11px;line-height:1.4;margin:12px 4px 0;text-align:center}
.calendar-week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:10px}
.calendar-strip-day{min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;padding:7px 2px;color:var(--ink);display:grid;gap:3px;place-items:center}
.calendar-strip-day span{font-size:9px;color:var(--muted);font-weight:800}.calendar-strip-day strong{font-size:16px}.calendar-strip-day.today{background:var(--brand);border-color:var(--brand);color:#fff}.calendar-strip-day.today span{color:#e7eef9}.calendar-strip-day.holiday:not(.today){background:#eceef1}
.calendar-week-agenda{display:grid;gap:8px}.calendar-agenda-item{width:100%;display:grid;grid-template-columns:88px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);padding:11px 10px}.calendar-agenda-item.holiday{background:#eceef1}.calendar-agenda-date{display:grid;gap:2px}.calendar-agenda-date strong{font-size:13px}.calendar-agenda-date small{font-size:10px;color:var(--muted)}.calendar-agenda-content{display:grid;gap:3px;min-width:0}.calendar-agenda-content>strong{font-size:12px;color:var(--brand)}.calendar-agenda-item.holiday .calendar-agenda-content>strong{color:#454b54}.calendar-agenda-content>span{font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.calendar-agenda-content>small{font-size:10px;color:#7b61a8}.calendar-agenda-chevron{font-size:24px;color:#9aa4b2;text-align:right}
.month-calendar{background:#fff;border:1px solid var(--line);border-radius:16px;padding:7px;overflow:hidden}.month-weekdays{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:2px 0 6px;color:var(--muted);font-size:9px;font-weight:850;text-align:center}.month-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.month-empty{display:block!important;min-height:76px}.month-day{min-width:0;min-height:76px;border:0;border-radius:10px;background:#fff;color:var(--ink);padding:5px 3px;display:flex!important;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;overflow:hidden;position:relative}.month-day.weekend{background:#f7f8fa}.month-day.holiday{background:#e7e9ed}.month-day.today{outline:2px solid var(--brand);outline-offset:-2px}.month-day-num{font-size:14px;font-weight:900;line-height:1}.month-day-status{max-width:100%;font-size:8px;font-weight:850;color:var(--brand);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-day.holiday .month-day-status{color:#4f5661}.month-day-address{width:100%;font-size:8px;line-height:1.15;color:#3e4652;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.month-note{position:absolute;right:5px;top:5px;font-size:8px;color:#7b61a8;line-height:1}.month-day:active,.calendar-agenda-item:active,.calendar-strip-day:active{transform:scale(.98)}
.address-input-row{display:grid;grid-template-columns:minmax(0,1fr) 46px 46px;gap:7px;align-items:stretch}
.address-icon-btn{width:46px;min-height:46px;border:1px solid #cfd5df;border-radius:12px;background:var(--soft);color:var(--brand);display:grid;place-items:center;padding:0}
.address-icon-btn:active{transform:scale(.96)}.address-icon-btn:disabled{opacity:.38}.address-icon-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.address-icon-btn.remember-address.saved{background:var(--brand);border-color:var(--brand);color:#fff}.address-icon-btn.remember-address.saved svg{fill:currentColor;stroke:currentColor}
@media(max-width:390px){.month-calendar{padding:5px}.month-grid,.month-weekdays{gap:2px}.month-empty,.month-day{min-height:69px}.month-day-address{font-size:7.5px;-webkit-line-clamp:3}.month-day-status{font-size:7.5px}.address-input-row{grid-template-columns:minmax(0,1fr) 44px 44px;gap:6px}.address-icon-btn{width:44px}}

/* V1.1.2: logical progressive reminder form */
.reminder-flow{display:grid;grid-template-columns:1fr;gap:10px}
.reminder-flow [hidden],.reminder-schedule-hint[hidden]{display:none!important}
.reminder-schedule-hint{padding:9px 11px;border-radius:11px;background:#eef4fb;color:#365a83;font-size:12px;font-weight:650;line-height:1.35}

/* V1.2.0 – mobile-first UI/UX refresh */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.week-meta{margin-top:2px;color:var(--muted);font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-card{box-shadow:none;background:#f9fbfd;border-color:#e1e7ef}
.days{gap:9px}
.compact-day{box-shadow:0 3px 14px rgba(17,24,39,.045);border-radius:16px;transition:border-color .16s,box-shadow .16s}
.compact-day.has-warning{border-color:#e8bb75}
.day-toggle{width:100%;min-height:72px;border:0;background:#fff;color:var(--ink);padding:10px 12px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left}
.day-toggle:active{background:#f8fafc}
.day-toggle-date{display:grid;place-items:center;gap:2px;border-right:1px solid #e7eaf0;padding-right:9px;align-self:stretch;align-content:center}
.day-toggle-date strong{font-size:15px;color:var(--brand);letter-spacing:.01em}.day-toggle-date span{font-size:11px;color:var(--muted)}
.day-toggle-main{display:grid;gap:3px;min-width:0}.day-toggle-main strong{font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-toggle-main small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.day-flags{display:flex;align-items:center;gap:6px}.chevron{font-size:18px;color:#8b95a5;transform:rotate(0deg);transition:transform .16s}.expanded .chevron{transform:rotate(180deg)}
.warning-dot{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff0d9;color:#975a00;font-size:12px;font-weight:900}.note-dot{color:#7b61a8;font-size:12px}
.day-expanded[hidden]{display:none!important}.day-expanded{border-top:1px solid #e8ebf0;background:#fff}.day-head-detail{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px 7px;color:var(--muted);font-size:11px}.warning-text{color:#9a5a00;font-weight:750;text-align:right}
.compact-day .status-tabs{padding:3px 12px 12px}.compact-day .day-body{border-top:1px solid #eef0f3}.compact-day .row-actions{justify-content:flex-end}.copy-menu{min-width:130px}
.status-btn{min-height:42px;border-radius:999px}.status-btn.active{box-shadow:0 2px 7px rgba(20,55,100,.18)}
.address-search{margin-top:14px}.address-search input{background:#f8fafc;padding-left:14px}
.address-group-title{padding:7px 2px 1px;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.address-picker-list{margin-top:8px}
.copy-options{display:grid;gap:8px;margin-top:14px}.copy-option{width:100%;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.copy-option>span:first-child{display:grid;gap:3px}.copy-option strong{font-size:14px}.copy-option small{font-size:11px;color:var(--muted);line-height:1.3}.copy-option>span:last-child{font-size:22px;color:#9aa4b2}.copy-option:active{background:var(--soft)}
.review-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.review-stat{padding:11px 12px;border-radius:13px;background:#f4f7fb;display:grid;gap:3px}.review-stat span{font-size:11px;color:var(--muted)}.review-stat strong{font-size:18px;color:var(--brand)}
.review-issues{display:grid;gap:7px;margin-top:12px}.review-issue,.review-ok{padding:10px 12px;border-radius:12px;font-size:12px;font-weight:700}.review-issue.blocking{background:#fff0ee;color:#9d251c}.review-issue.warning{background:#fff6e8;color:#8a5700}.review-ok{background:#eaf7ef;color:var(--ok)}.review-actions{margin-top:16px}.review-actions .btn{flex:1}.btn:disabled{opacity:.45;cursor:not-allowed}
.settings-section{background:#fff;border:1px solid #e4e8ee;border-radius:15px;padding:14px;margin-top:11px}.settings-section:first-of-type{margin-top:14px}.settings-dialog .settings-section{border-top:1px solid #e4e8ee}.settings-section h3{font-size:14px;color:#24364c}
.calendar-status-mark{width:18px;height:3px;border-radius:999px;background:transparent;margin-top:auto}.month-day.status-arbeit .calendar-status-mark{background:#3677ba}.month-day.status-urlaub .calendar-status-mark{background:#7b61a8}.month-day.status-krank .calendar-status-mark{background:#a34d4d}.month-day.status-frei .calendar-status-mark{background:#737b88}.month-day.holiday .calendar-status-mark{background:#a0a6ae}
.calendar-agenda-item{position:relative;overflow:hidden}.calendar-agenda-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#d7dce3}.calendar-agenda-item.holiday::before{background:#8c949f}
.pdf-ready{box-shadow:0 4px 14px rgba(20,55,100,.08)}

@media(max-width:560px){
  .page-shell{padding-left:10px;padding-right:10px}
  .week-nav{grid-template-columns:44px minmax(0,1fr) 44px}.week-title-wrap h1{font-size:20px}
  .summary-grid{padding-top:9px}.summary-pill{padding:7px 11px;font-size:12px}
  .quick-card{display:none}
  .day-toggle{min-height:68px;padding:9px 10px;grid-template-columns:44px minmax(0,1fr) auto;gap:8px}
  .day-toggle-main strong{font-size:13px}.day-toggle-main small{font-size:10.5px}
  .day-head-detail{align-items:flex-start;flex-direction:column;gap:3px}
  .status-tabs{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.status-btn{padding:9px 4px;font-size:11.5px}
  .form-grid{grid-template-columns:1fr 1fr}.note-field{grid-column:1/-1}
  .review-summary{grid-template-columns:1fr 1fr}
  .day-dialog{width:100%;max-width:none;margin:auto 0 0;border-radius:22px 22px 0 0;max-height:86vh}.day-dialog-shell{max-height:86vh;padding:16px 14px calc(18px + env(safe-area-inset-bottom))}
  .address-picker-dialog{width:100%;max-width:none;margin:auto 0 0;border-radius:22px 22px 0 0;max-height:84vh}.address-picker-shell{max-height:84vh;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  .settings-dialog{width:100%;max-width:none;margin:auto 0 0;border-radius:22px 22px 0 0;max-height:92vh}.dialog-shell{max-height:92vh;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
}
@media(max-width:370px){.day-toggle{grid-template-columns:40px minmax(0,1fr) auto}.day-flags{gap:4px}.warning-dot{width:18px;height:18px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1}.review-summary{grid-template-columns:1fr}}
.calendar-agenda-item.status-arbeit::before{background:#3677ba}.calendar-agenda-item.status-urlaub::before{background:#7b61a8}.calendar-agenda-item.status-krank::before{background:#a34d4d}.calendar-agenda-item.status-frei::before{background:#737b88}
.settings-title{position:sticky;top:-16px;z-index:4;background:#fff;padding:4px 0 10px;border-bottom:1px solid #eef0f3}
.settings-group{border:1px solid #e4e8ee;border-radius:15px;background:#fff;margin-top:10px;overflow:hidden}
.settings-group>summary{list-style:none;cursor:pointer;min-height:52px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:850;color:#24364c}
.settings-group>summary::-webkit-details-marker{display:none}.settings-chevron{color:#8b95a5;font-size:18px;transition:transform .16s}.settings-group[open] .settings-chevron{transform:rotate(180deg)}
.settings-group-body{border-top:1px solid #eef0f3;padding:14px}.settings-group-body .settings-single{margin-top:10px}.settings-stack{display:grid;gap:14px}.settings-subsection{border-top:1px solid #eef0f3;padding-top:14px;display:grid;gap:9px}.settings-subsection>strong{font-size:13px;color:#344054}.settings-intro{margin:0 0 10px}.app-info-row{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #eef0f3;font-size:12px}.app-info-row span{color:var(--muted)}.app-info-row strong{text-align:right}.settings-logout{margin-top:12px;text-decoration:none;display:flex;align-items:center;justify-content:center}
@media(max-width:560px){.quick-card{display:block;padding:10px}.quick-card>div:first-child{display:none}.quick-card .bulk-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.quick-card .btn{min-height:40px;padding:8px 9px;font-size:11px}}
