*{box-sizing:border-box}body{margin:0;background:#f5f7fa;color:#172033;font-family:system-ui,-apple-system,Segoe UI,sans-serif}a{text-decoration:none;color:#2368ad}.topbar{height:72px;background:#173f77;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 22px}.topbar strong{font-size:1.3rem}.topbar span{display:block;font-size:.8rem;opacity:.75}.layout{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 72px)}.side{background:#fff;border-right:1px solid #dfe4ea;padding:16px 10px;display:flex;flex-direction:column;gap:5px}.side a{padding:10px 12px;border-radius:8px;color:#172033;font-weight:600}.side a.active,.side a:hover{background:#edf4fb;color:#173f77}.content{padding:26px;overflow:hidden}.lead,.muted{color:#687386}.card,.stat{background:#fff;border:1px solid #dfe4ea;border-radius:13px;padding:18px;box-shadow:0 5px 18px rgba(20,35,60,.06)}.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.stat b{display:block;font-size:2rem;color:#173f77}.stat span{color:#687386}.btn{display:inline-flex;padding:9px 12px;border-radius:8px;border:1px solid #cad2dc;background:#fff;color:#172033;font-weight:650;cursor:pointer}.btn.primary{background:#2368ad;color:#fff;border-color:#2368ad}.btn.ghost{background:transparent;color:#fff;border-color:#ffffff66}.btn.danger{color:#b42318;border-color:#f1b5b0}.btn.small{padding:5px 8px;font-size:.82rem}.notice{padding:11px 13px;border-radius:9px;margin:10px 0}.notice.ok{background:#ecfdf3;color:#067647}.notice.err{background:#fff1f0;color:#b42318}.head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.table{overflow:auto;background:#fff;border:1px solid #dfe4ea;border-radius:11px}.table table{width:100%;border-collapse:collapse;min-width:760px}.table th,.table td{padding:10px 11px;text-align:left;border-bottom:1px solid #e5e9ee}.table th{background:#f8fafc;color:#536174;font-size:.84rem}.inline{display:inline}.search,input,select{font:inherit;width:100%;padding:10px;border:1px solid #cbd5df;border-radius:8px;background:#fff}.search{max-width:520px;margin:10px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:13px;margin:16px 0}.grid label,.dial label,.login-card label{font-weight:650;display:flex;flex-direction:column;gap:6px}.check{flex-direction:row!important;align-items:center}.check input{width:auto}.actions{grid-column:1/-1;display:flex;gap:8px}.dial{max-width:650px;display:grid;gap:13px}.biginput{font-size:1.25rem}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#eef3f9,#f8fafc)}.login-card{width:min(520px,100%)}.login-card form{display:grid;gap:14px}@media(max-width:950px){.stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.layout{grid-template-columns:1fr}.side{flex-direction:row;overflow:auto;border-right:0;border-bottom:1px solid #dfe4ea;padding:8px;position:sticky;top:0;z-index:5}.side a{white-space:nowrap}.content{padding:16px 10px}.grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.head{flex-direction:column}}
.call-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.call-filter.second{margin:10px 0 18px}
.call-list{display:grid;gap:14px}
.call-card{background:#fff;border:1px solid #dfe4ea;border-radius:13px;padding:16px;box-shadow:0 5px 18px rgba(20,35,60,.05)}
.call-card.done{opacity:.72;background:#f8fafc}
.call-core{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;gap:14px;padding-bottom:12px;border-bottom:1px solid #e5e9ee}
.call-core strong{display:block;overflow-wrap:anywhere}.call-core small{display:block;color:#687386;margin-top:3px}
.call-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#687386;margin-bottom:4px}
.call-meta{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}
.pill{font-size:.78rem;background:#edf4fb;color:#173f77;padding:4px 8px;border-radius:999px}.pill.subtle{background:#f1f3f5;color:#596273}
.call-work{display:grid;grid-template-columns:1fr 1.25fr 1.5fr auto auto;gap:10px;align-items:end}
.call-work label{font-size:.82rem;font-weight:650;display:flex;flex-direction:column;gap:5px}
.call-complete{padding:0 6px 9px 0;white-space:nowrap}
@media(max-width:1050px){.call-core{grid-template-columns:repeat(2,1fr)}.call-work{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.call-core,.call-work{grid-template-columns:1fr}.call-complete{padding:4px 0}}

.top-user{display:flex;align-items:center;gap:10px}.top-user>span{font-size:.9rem;opacity:.9}
.call-work.v14{grid-template-columns:1fr 1.15fr 1.4fr 160px auto auto}
.call-buttons{display:flex;gap:7px;align-items:end}
.btn.followup{background:#fff7e6;border-color:#f0b65d;color:#7a4a00}
.pill.due-over{background:#fff1f0;color:#b42318;font-weight:700}
.call-card.overdue{border-color:#f0a09a;box-shadow:0 0 0 1px #f0a09a}
.password-form{display:flex;gap:6px;align-items:center}.password-form input{width:180px}
@media(max-width:1200px){.call-work.v14{grid-template-columns:repeat(2,1fr)}.call-buttons{align-items:center}}
@media(max-width:650px){.top-user>span{display:none}.call-work.v14{grid-template-columns:1fr}.call-buttons{flex-direction:column;align-items:stretch}.password-form{display:grid}.password-form input{width:100%}}

.call-column-filters{margin:12px 0 18px}.filter-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filter-head strong{margin-right:auto}.call-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px}.call-filter-grid label{font-size:.8rem;font-weight:650;display:flex;flex-direction:column;gap:5px}
.employee-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:14px}.employee-card{display:grid;gap:14px}.employee-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.employee-head h2{margin-bottom:2px}.employee-sip-form,.employee-phone-form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.employee-sip-form label,.employee-phone-form label{display:flex;flex-direction:column;gap:5px;font-weight:650;font-size:.85rem}.employee-mini-actions{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #e5e9ee;padding-top:12px}button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1000px){.call-filter-grid{grid-template-columns:repeat(2,1fr)}.employee-grid{grid-template-columns:1fr}}
@media(max-width:650px){.call-filter-grid{grid-template-columns:1fr}.employee-sip-form,.employee-phone-form{grid-template-columns:1fr}}
.time-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.time-status-grid>div{background:#f8fafc;border:1px solid #e3e8ee;border-radius:10px;padding:12px}.time-status-grid span,.time-status-grid small{display:block;color:#687386}.time-status-grid strong{display:block;font-size:1.1rem;margin:4px 0}.time-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.time-month{display:flex;gap:10px;align-items:end;margin:12px 0 16px}.time-month label{max-width:220px}.time-list{display:grid;gap:12px}.time-entry{border:1px solid #dfe4ea;border-radius:12px;padding:14px;background:#fff}.time-entry.manual{border-color:#f0b65d}.time-entry-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.time-raw{display:flex;gap:14px;flex-wrap:wrap;color:#596273;font-size:.87rem;margin-bottom:10px}.time-edit small{color:#687386;font-weight:400}.btn.danger{color:#b42318;border-color:#f1b5b0}.btn.followup{background:#fff7e6;border-color:#f0b65d;color:#7a4a00}.top-user{display:flex;align-items:center;gap:10px}.top-user>span{font-size:.9rem;opacity:.9}@media(max-width:850px){.time-status-grid{grid-template-columns:1fr}.time-month{align-items:stretch;flex-direction:column}.time-month label{max-width:none}}

.contact-from-call{margin-top:7px;display:inline-flex}.call-core .contact-from-call{font-weight:650}


/* v1.8 – Mitarbeiter-Arbeitsoberfläche */
.staff-shell{background:#f4f7fb}
.staff-topbar{min-height:88px;height:auto;background:#ffffff;color:#172033;border-bottom:1px solid #dfe4ea;box-shadow:0 4px 16px rgba(20,35,60,.06)}
.staff-topbar .btn.ghost{color:#173f77;border-color:#b9c8d8;background:#fff}
.staff-brand{display:flex;align-items:center;gap:16px;min-width:0}
.staff-brand img{width:118px;height:58px;object-fit:contain;object-position:left center}
.staff-brand strong{display:block;font-size:1.17rem;line-height:1.25;color:#172033}
.staff-brand span{display:block;margin-top:3px;color:#687386;font-size:.8rem}
.staff-shell .side{background:#183f75;border-right:0}
.staff-shell .side a{color:#edf4fb}
.staff-shell .side a:hover,.staff-shell .side a.active{background:#ffffff;color:#173f77}
.staff-shell .content{max-width:1500px;margin:0 auto}

.login.daily-login{background:linear-gradient(145deg,#edf4fb,#f9fbfd)}
.daily-login .login-card{max-width:560px;text-align:left;padding:34px}
.login-logo{display:block;width:min(330px,78%);height:auto;max-height:150px;object-fit:contain;object-position:left center;margin:0 0 22px}
.daily-login .login-card h1{font-size:1.8rem;line-height:1.2;margin-bottom:5px}
.daily-login .login-card h2{font-size:1.12rem;color:#2368ad;margin-bottom:6px}
.daily-admin-link{text-align:center;margin:18px 0 0;font-size:.86rem}
.daily-admin-link a{color:#687386}

.staff-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#173f77,#2368ad);color:#fff;border-radius:18px;padding:25px 28px;margin-bottom:18px;overflow:hidden}
.staff-welcome-copy{max-width:760px}
.staff-welcome .eyebrow{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;opacity:.72;margin-bottom:7px}
.staff-welcome h1{font-size:2rem;margin:0 0 7px}
.staff-welcome p{margin:0;opacity:.88}
.welcome-photo{width:118px;height:118px;border-radius:50%;object-fit:cover;background:#fff;border:5px solid rgba(255,255,255,.92);flex:0 0 auto}
.welcome-avatar{width:110px;height:110px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#173f77;font-size:2rem;font-weight:800;flex:0 0 auto}

.work-stats{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:14px;margin:0 0 18px}
.work-stat{display:flex;flex-direction:column;background:#fff;border:1px solid #dfe4ea;border-radius:14px;padding:20px;box-shadow:0 5px 18px rgba(20,35,60,.05);color:#172033}
.work-stat strong{font-size:2.2rem;line-height:1;color:#173f77;margin-bottom:7px}
.work-stat.follow strong{color:#986200}
.work-stat span{color:#687386;font-weight:650}

.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px}
.dashboard-panel{margin:0}
.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:13px}
.panel-head h2{margin:0 0 3px}
.panel-head p{margin:0}
.empty-state{padding:18px;border-radius:10px;background:#f8fafc;color:#687386}
.dash-call-list{display:grid;gap:6px}
.dash-call-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #e5e9ee;border-radius:9px;color:#172033}
.dash-call-row:hover{background:#f8fbff;border-color:#bed4ea}
.dash-call-row strong,.dash-call-row span{display:block}
.dash-call-row span{font-size:.82rem;color:#687386;margin-top:2px}
.dash-due{white-space:nowrap!important;color:#986200!important;font-weight:700!important;margin:0!important}
.dashboard-phone-form{display:grid;gap:12px}
.dashboard-phone-form label{font-weight:650;display:grid;gap:6px}
.phone-target{font-size:.82rem;margin:10px 0 0}

.team-status-card{margin-top:16px}
.team-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.team-person{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 10px;border:1px solid #e1e6ec;border-radius:12px;background:#fafbfc}
.team-person.working{background:#effcf4;border-color:#97dfae}
.team-person.paused{background:#fff8e8;border-color:#efd28a}
.team-photo-wrap{position:relative;margin-bottom:9px}
.team-photo-wrap img,.team-initials{width:78px;height:78px;border-radius:50%;object-fit:cover;background:#fff}
.team-initials{display:grid;place-items:center;background:#edf4fb;color:#173f77;font-weight:800;font-size:1.25rem}
.presence-dot{position:absolute;right:2px;bottom:3px;width:17px;height:17px;border:3px solid #fff;border-radius:50%;background:#98a2b3}
.team-person.working .presence-dot{background:#16a34a}
.team-person.paused .presence-dot{background:#f59e0b}
.presence-label{font-size:.78rem;color:#687386;margin-top:3px}
.team-person.working .presence-label{color:#067647;font-weight:700}
.team-person.paused .presence-label{color:#986200;font-weight:700}

.employee-identity{display:flex;align-items:center;gap:12px}
.employee-photo,.employee-photo-fallback{width:58px;height:58px;border-radius:50%;object-fit:cover;background:#fff;flex:0 0 auto}
.employee-photo-fallback{display:grid;place-items:center;background:#edf4fb;color:#173f77;font-weight:800}

@media(max-width:900px){
  .dashboard-grid{grid-template-columns:1fr}
  .staff-brand img{width:92px;height:48px}
  .staff-brand strong{font-size:1rem}
}
@media(max-width:760px){
  .staff-topbar{padding:9px 12px}
  .staff-brand{gap:9px}
  .staff-brand img{width:74px;height:42px}
  .staff-brand strong{font-size:.9rem}
  .staff-brand span{display:none}
  .staff-shell .side{top:69px}
  .staff-welcome{padding:20px 18px}
  .staff-welcome h1{font-size:1.55rem}
  .welcome-photo,.welcome-avatar{width:78px;height:78px}
  .work-stats{grid-template-columns:1fr 1fr}
  .work-stat{padding:15px}
  .work-stat strong{font-size:1.7rem}
  .team-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .staff-topbar .top-user>span{display:none}
  .staff-brand strong{font-size:.82rem;max-width:180px}
  .work-stats{grid-template-columns:1fr}
  .team-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .daily-login .login-card{padding:24px 20px}
}


/* v2.0 – kompakte Live-Anrufliste */
.brand-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:26px;border-radius:7px;font-size:.76rem;font-weight:800;letter-spacing:.02em}
.brand-badge.axa{background:#e7f2ff;color:#0066b3;border:1px solid #9dcaed}
.brand-badge.dbv{background:#fff0df;color:#b85700;border:1px solid #f0bf85}
.brand-badge.other{background:#f1f3f5;color:#667085;border:1px solid #d0d5dd}

.call-table-head,.call-row{
  display:grid;
  grid-template-columns:82px 52px minmax(155px,1.1fr) 128px 150px minmax(280px,2fr) 132px 62px 66px;
  gap:7px;
  align-items:center;
}
.call-table-head{padding:7px 10px;margin-top:12px;background:#e9eef5;border:1px solid #d7dee8;border-radius:10px 10px 0 0;color:#536174;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em}
.call-list.compact{display:grid;gap:3px;overflow-x:auto;background:#e4e9ef;border:1px solid #d7dee8;border-top:0;border-radius:0 0 10px 10px;padding:3px}
.call-row{min-height:46px;background:#fff;padding:5px 7px;border-radius:6px;box-shadow:none}
.call-row.done{opacity:.65;background:#f8fafc}
.call-row.overdue{box-shadow:inset 3px 0 0 #d92d20}
.call-cell{min-width:0;font-size:.78rem}
.time-cell strong{display:block;font-size:.78rem;white-space:nowrap}
.time-cell small{display:block;margin-top:2px;color:#687386;font-size:.66rem;white-space:nowrap}
.target-cell{text-align:center}
.caller-cell{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}
.customer-link{color:#174c85;font-weight:750;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.customer-link:hover{color:#0066b3}
.caller-number{font-size:.68rem;color:#687386;white-space:nowrap}
.contact-plus{font-size:.68rem;white-space:nowrap;padding:3px 5px;border:1px solid #cbd5df;border-radius:5px;background:#fff}
.compact-control{height:34px;padding:5px 7px;border-radius:6px;font-size:.75rem}
.compact-note{display:block;width:100%;min-width:260px;height:36px;max-height:82px;resize:vertical;padding:7px 9px;border:1px solid #cbd5df;border-radius:6px;font:inherit;font-size:.77rem;line-height:1.25;background:#fff}
.compact-note:focus{min-height:58px}
.due-input{font-size:.7rem}
.done-cell{text-align:center}.compact-check{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.compact-check input{position:absolute;opacity:0;pointer-events:none}.compact-check span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cbd5df;border-radius:7px;color:transparent;background:#fff;font-weight:900}.compact-check input:checked+span{background:#e9f8ee;border-color:#61bd7b;color:#067647}
.row-actions{display:flex;gap:4px;justify-content:flex-end}.row-actions .btn{padding:5px 7px;font-size:.68rem}
.live-toast{position:fixed;right:18px;bottom:18px;z-index:1000;max-width:min(420px,calc(100vw - 36px));padding:12px 14px;border-radius:11px;background:#172033;color:#fff;box-shadow:0 10px 35px rgba(0,0,0,.22);font-size:.88rem}
.live-toast .btn{margin-left:8px}

.dash-call-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center}
.dash-call-main{min-width:0}
.dash-call-main .customer-link{display:block;max-width:100%}
.dash-call-main>span{display:block}
.dash-note{display:block;margin-top:5px;padding:5px 7px;border-left:3px solid #8fb6da;background:#f4f8fc;color:#364152;font-size:.77rem;line-height:1.3;white-space:normal}
.dash-call-row .brand-badge{margin-right:2px}

/* Spaltenfilter kompakter */
.call-column-filters{padding:12px}
.call-filter-grid{grid-template-columns:repeat(4,minmax(135px,1fr))}
.call-filter-grid input,.call-filter-grid select{padding:7px 8px;font-size:.78rem}

@media(max-width:1250px){
  .call-table-head,.call-row{grid-template-columns:76px 48px 145px 112px 130px minmax(220px,1.8fr) 120px 54px 64px}
  .compact-note{min-width:210px}
}
@media(max-width:900px){
  .call-table-head,.call-row{min-width:1040px}
  .call-table-head{position:sticky;left:0}
  .call-list.compact{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
}

/* v2.1 – Mitarbeitername, eigenes Passwort, Arbeitszeit-Tagessummen */
.employee-name-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;align-items:end;margin:12px 0;padding:10px;background:#f8fafc;border:1px solid #e5e9ee;border-radius:9px}
.employee-name-form label{font-size:.82rem;font-weight:650;display:grid;gap:5px}
.account-card{margin-top:16px}
.password-self-form{grid-template-columns:repeat(3,minmax(180px,1fr)) auto;align-items:end}
.time-day-summary{margin-bottom:16px}
.time-day-summary table td:nth-child(4){font-size:1.05rem;color:#173f77}
@media(max-width:900px){.password-self-form{grid-template-columns:1fr 1fr}.employee-name-form{grid-template-columns:1fr}}
@media(max-width:600px){.password-self-form{grid-template-columns:1fr}}


/* v2.2 – manuelle Anrufe + dezenter Passwortzugang */
.call-head-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.manual-call-card{margin:0 0 16px;border-color:#b9cfe5;background:#fbfdff}
.manual-call-card[hidden]{display:none!important}
.manual-call-grid{display:grid;grid-template-columns:1fr .7fr 1fr 1fr 1fr .9fr;gap:12px;align-items:end}
.manual-call-grid label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:650}
.manual-note-label{grid-column:1/5}
.manual-note-label textarea{min-height:82px;resize:vertical;font:inherit;padding:10px;border:1px solid #cbd5df;border-radius:8px;background:#fff}
.manual-created-by{grid-column:5/7;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:82px;padding:10px 12px;border:1px solid #dfe4ea;border-radius:9px;background:#f8fafc}
.manual-created-by span{font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:#687386}
.manual-created-by strong{font-size:1rem;margin:2px 0}
.manual-created-by small{color:#687386;font-size:.75rem}
.manual-call-grid .actions{grid-column:1/-1}
.manual-badge{display:inline-block!important;width:max-content;margin-top:3px!important;padding:2px 5px;border-radius:999px;background:#eef2f6;color:#536174!important;font-weight:700;font-size:.68rem!important}
.dashboard-account-link{text-align:right;margin:9px 3px 0}
.dashboard-account-link a{font-size:.78rem;color:#687386;text-decoration:underline;text-underline-offset:2px}
.dashboard-account-link a:hover{color:#2368ad}
.profile-card{max-width:760px}
.profile-card .password-self-form{margin-top:14px}

@media(max-width:1200px){
  .manual-call-grid{grid-template-columns:repeat(3,1fr)}
  .manual-note-label{grid-column:1/3}
  .manual-created-by{grid-column:3/4}
}
@media(max-width:760px){
  .call-head-actions{width:100%;align-items:stretch}
  .call-head-actions>.btn{width:100%}
  .call-head-actions .call-filter{justify-content:flex-start}
  .manual-call-grid{grid-template-columns:1fr 1fr}
  .manual-note-label,.manual-created-by,.manual-call-grid .actions{grid-column:1/-1}
}
@media(max-width:480px){
  .manual-call-grid{grid-template-columns:1fr}
  .manual-note-label,.manual-created-by,.manual-call-grid .actions{grid-column:1}
}


/* v2.3 – Autosave in der Anrufliste */
.autosave-state{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  padding:4px 7px;
  border-radius:7px;
  font-size:.69rem;
  line-height:1;
  color:#687386;
  background:#f3f5f7;
  white-space:nowrap;
}
.autosave-state.saving{background:#fff7e6;color:#8a5b00}
.autosave-state.saved{background:#ecfdf3;color:#067647}
.autosave-state.error{background:#fff1f0;color:#b42318;font-weight:700}
.call-row:has(.autosave-state.saving){border-color:#e6c477}
.call-row:has(.autosave-state.error){border-color:#efaaa4}


/* v2.4 – ausgehende Gespräche */
.brand-badge.dialed{
  background:#eef2f6;
  color:#344054;
  border:1px solid #d0d5dd;
}


/* v2.6.2 – stabile Placetel-Kontaktpagination */
.contact-pager{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:0 0 14px;
}
.contact-pager span{
  font-size:.82rem;
  color:#687386;
  font-weight:650;
}


/* v2.7 – Aufträge-Rückfragen */
.oq-import-card,.oq-list-card{margin-bottom:16px}
.oq-import-grid{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:14px;align-items:end}
.oq-import-grid label{display:grid;gap:6px;font-weight:650}
.oq-progress-wrap{margin-top:16px}
.oq-progress{height:10px;background:#eef2f6;border-radius:999px;overflow:hidden}
.oq-progress span{display:block;height:100%;width:0;background:#2368ad;transition:width .2s ease}
.oq-image-preview{margin-top:14px;padding:10px;background:#f8fafc;border:1px solid #e1e6ec;border-radius:10px;overflow:auto}
.oq-image-preview img{display:block;max-width:100%;max-height:440px;margin:auto}
.oq-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:18px 0 10px}
.oq-preview-head h3{margin:0 0 4px}
.oq-preview-table-wrap{overflow:auto;border:1px solid #dfe4ea;border-radius:10px}
.oq-preview-table{border-collapse:collapse;min-width:1800px;width:100%}
.oq-preview-table th,.oq-preview-table td{padding:6px;border-bottom:1px solid #e7ebef;border-right:1px solid #eef1f4;vertical-align:top}
.oq-preview-table th{position:sticky;top:0;background:#f6f8fb;z-index:1;font-size:.75rem;text-align:left;white-space:nowrap}
.oq-preview-table input{width:100%;min-width:115px;padding:7px 8px;border:1px solid #ccd5df;border-radius:6px;font:inherit}
.oq-preview-table td:nth-child(3) input,.oq-preview-table td:nth-child(12) input{min-width:150px}
.oq-check-state{display:inline-block;padding:4px 7px;border-radius:999px;background:#eef2f6;color:#475467;font-size:.7rem;font-weight:700;white-space:nowrap}
.oq-check-state.new{background:#ecfdf3;color:#067647}
.oq-check-state.existing{background:#eef4ff;color:#3538cd}
.oq-check-state.warn{background:#fff4e5;color:#a15c00}
.oq-import-actions{margin-top:12px}
.oq-search{display:grid;gap:5px;min-width:280px;font-size:.8rem;font-weight:650}
.oq-final-table-wrap{overflow:auto}
.oq-final-table{min-width:1150px}
.oq-final-table th{white-space:nowrap}
.oq-final-table td{vertical-align:middle}
.oq-assignee-cell{min-width:190px}
.oq-assignee-cell select{width:100%}
.oq-save-state{display:block;margin-top:3px;color:#687386;font-size:.68rem}
.oq-save-state.saving{color:#8a5b00}
.oq-save-state.saved{color:#067647}
.oq-save-state.error{color:#b42318;font-weight:700}

@media(max-width:760px){
  .oq-import-grid{grid-template-columns:1fr}
  .oq-import-grid .actions{justify-content:flex-start}
  .oq-preview-head,.oq-list-card .panel-head{flex-direction:column}
  .oq-search{min-width:0;width:100%}
}


/* v2.8 – editierbare Aufträge-Rückfragen */
.oq-list-tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap;justify-content:flex-end}
.oq-sort{display:flex;flex-direction:column;gap:5px;font-size:.78rem;color:#687386}
.oq-sort select{min-width:220px}
.oq-urgent-legend{font-size:.78rem;color:#687386;margin:-3px 0 10px}
.oq-legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#d92d20;margin-right:5px}
.oq-editable-table{min-width:1450px}
.oq-editable-table td{vertical-align:top}
.oq-edit-input{
  width:100%;
  min-width:105px;
  border:1px solid transparent;
  background:transparent;
  border-radius:6px;
  padding:6px 7px;
  font:inherit;
  color:inherit;
}
.oq-edit-input:hover{border-color:#d0d5dd;background:#fff}
.oq-edit-input:focus{outline:none;border-color:#2368ad;background:#fff;box-shadow:0 0 0 2px rgba(35,104,173,.12)}
.oq-name-cell{min-width:150px}
.oq-name-cell .oq-portal-link{display:inline-block;font-weight:700;margin:0 0 3px 6px;color:#173f77;text-decoration:underline;text-underline-offset:2px}
.oq-name-cell .oq-last-name{display:block}
.oq-insurance-input{min-width:145px}
.oq-orga-input{min-width:105px}
.oq-due-input{min-width:112px}
.oq-note-input{min-width:230px;min-height:62px;resize:vertical}
.oq-row-save{width:85px;white-space:nowrap}
.oq-final-row.oq-urgent td{background:#fff0ee}
.oq-final-row.oq-urgent td:first-child{box-shadow:inset 4px 0 0 #d92d20}
.oq-final-row.oq-overdue td{background:#fde8e6}
.oq-final-row.oq-overdue td:first-child{box-shadow:inset 4px 0 0 #b42318}
.oq-final-row.oq-urgent .oq-due-input,
.oq-final-row.oq-overdue .oq-due-input{color:#b42318;font-weight:800}
.oq-save-state{display:inline-block;font-size:.7rem;color:#687386}
.oq-save-state.saving{color:#986200}
.oq-save-state.saved{color:#067647}
.oq-save-state.error{color:#b42318;font-weight:700}

@media(max-width:900px){
  .oq-list-tools{justify-content:flex-start;width:100%}
}


/* v2.9 – Aufträge-Rückfragen auch im Mitarbeiterbereich */
.oq-list-card{margin-bottom:14px}
.oq-import-compact{
  margin-top:14px;
  padding:0;
  overflow:hidden;
  border-color:#dfe4ea;
  box-shadow:none;
}
.oq-import-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  cursor:pointer;
  padding:12px 15px;
  background:#f8fafc;
  color:#344054;
  list-style:none;
}
.oq-import-summary::-webkit-details-marker{display:none}
.oq-import-summary::after{
  content:'+';
  font-size:1.25rem;
  line-height:1;
  color:#687386;
}
.oq-import-compact[open] .oq-import-summary::after{content:'–'}
.oq-import-summary strong{font-size:.9rem}
.oq-import-summary span{margin-left:auto;font-size:.76rem;color:#687386;font-weight:400}
.oq-import-compact-body{padding:14px 15px 16px}
.oq-import-compact .oq-import-grid{margin-top:10px}
.oq-import-compact .oq-image-preview img{max-height:260px}
@media(max-width:760px){
  .oq-import-summary{align-items:flex-start}
  .oq-import-summary span{display:none}
}


/* v3.0 – Aufträge-Rückfragen: volle Breite + Erledigt */
.content.content-wide{
  max-width:none!important;
  width:100%;
  margin:0!important;
  padding-left:18px;
  padding-right:18px;
}
.content.content-wide .oq-list-card,
.content.content-wide .oq-import-compact{
  width:100%;
  max-width:none;
}
.content.content-wide .oq-final-table-wrap{
  width:100%;
}
.content.content-wide .oq-editable-table{
  width:100%;
  min-width:1450px;
  table-layout:auto;
}
.content.content-wide .oq-note-input{
  min-width:260px;
}
.content.content-wide .oq-editable-table th:nth-child(4),
.content.content-wide .oq-editable-table td:nth-child(4),
.content.content-wide .oq-editable-table th:nth-child(5),
.content.content-wide .oq-editable-table td:nth-child(5){
  min-width:150px;
}
.oq-page-title{
  display:flex;
  align-items:center;
  gap:8px;
}
.oq-rueckkanal-link{
  display:inline-grid;
  place-items:center;
  width:27px;
  height:27px;
  border:1px solid #cbd5df;
  border-radius:7px;
  color:#2368ad;
  font-size:.92rem;
  line-height:1;
  background:#fff;
  text-decoration:none;
}
.oq-rueckkanal-link:hover{
  background:#edf4fb;
  border-color:#9fc0df;
}
.oq-status-filter{
  display:flex;
  flex-direction:column;
  gap:5px;
  font-size:.78rem;
  color:#687386;
}
.oq-status-filter select{min-width:120px}
.oq-done-cell{white-space:nowrap;vertical-align:middle!important}
.oq-done-btn.is-done{
  background:#ecfdf3;
  border-color:#98d9b0;
  color:#067647;
}
.oq-final-row.oq-completed td{
  opacity:.72;
}
.oq-final-row.oq-completed .oq-done-cell,
.oq-final-row.oq-completed .oq-row-save{
  opacity:1;
}
@media(min-width:1700px){
  .content.content-wide .oq-note-input{min-width:340px}
  .content.content-wide .oq-editable-table th:nth-child(4),
  .content.content-wide .oq-editable-table td:nth-child(4),
  .content.content-wide .oq-editable-table th:nth-child(5),
  .content.content-wide .oq-editable-table td:nth-child(5){min-width:190px}
}
@media(max-width:760px){
  .content.content-wide{padding-left:12px;padding-right:12px}
}


/* v3.1 – Anrufliste nutzt breite Bildschirme besser aus */
.content.content-wide .call-table-head,
.content.content-wide .call-list.compact{
  width:100%;
  max-width:none;
}

/* Auf normalen Desktop-Breiten bleibt die bisherige kompakte Struktur erhalten,
   das Notizfeld bekommt aber bereits mehr Gewicht. */
.content.content-wide .call-table-head,
.content.content-wide .call-row{
  grid-template-columns:
    82px
    58px
    minmax(170px,1.15fr)
    minmax(125px,.9fr)
    minmax(145px,.95fr)
    minmax(340px,2.8fr)
    138px
    62px
    118px;
}

.content.content-wide .compact-note{
  min-width:320px;
  width:100%;
  max-width:none;
}

/* Große Monitore: zusätzliche Breite fließt hauptsächlich in die Notizspalte. */
@media(min-width:1500px){
  .content.content-wide .call-table-head,
  .content.content-wide .call-row{
    grid-template-columns:
      84px
      60px
      minmax(190px,1.2fr)
      minmax(140px,.9fr)
      minmax(155px,.95fr)
      minmax(440px,3.8fr)
      142px
      64px
      120px;
  }
  .content.content-wide .compact-note{
    min-width:420px;
    min-height:38px;
  }
}

@media(min-width:1900px){
  .content.content-wide .call-table-head,
  .content.content-wide .call-row{
    grid-template-columns:
      86px
      62px
      minmax(220px,1.25fr)
      minmax(155px,.9fr)
      minmax(170px,.95fr)
      minmax(560px,4.5fr)
      145px
      66px
      122px;
  }
  .content.content-wide .compact-note{
    min-width:540px;
    max-height:130px;
  }
}

/* Auf kleineren Geräten bleibt die horizontale Scrollbarkeit bestehen. */
@media(max-width:1250px){
  .content.content-wide .call-table-head,
  .content.content-wide .call-row{
    grid-template-columns:76px 48px 145px 112px 130px minmax(220px,1.8fr) 120px 54px 104px;
  }
  .content.content-wide .compact-note{min-width:210px}
}


/* v3.2 – Schnellwahl unter dem Wählfeld */
.quickdial-section{
  margin-top:16px;
}
.quickdial-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
}
.quickdial-head h2{
  margin:0;
  font-size:1.08rem;
}
.quickdial-head p{
  margin:0;
  font-size:.78rem;
}
.quickdial-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(135px,1fr));
  gap:10px;
}
.quickdial-tile{
  appearance:none;
  border:1px solid #cbd5df;
  border-radius:11px;
  background:#fff;
  color:#172033;
  padding:11px 12px;
  min-height:66px;
  cursor:pointer;
  text-align:left;
  box-shadow:0 3px 10px rgba(20,35,60,.05);
  transition:transform .12s ease,border-color .12s ease,background .12s ease,box-shadow .12s ease;
}
.quickdial-tile:hover{
  border-color:#8eb7dc;
  background:#f7fbff;
  box-shadow:0 5px 14px rgba(20,35,60,.08);
  transform:translateY(-1px);
}
.quickdial-tile:active{
  transform:translateY(0);
}
.quickdial-tile strong,
.quickdial-tile span{
  display:block;
}
.quickdial-tile strong{
  font-size:.9rem;
  color:#173f77;
  margin-bottom:4px;
}
.quickdial-tile span{
  font-size:.78rem;
  color:#687386;
  white-space:nowrap;
}
.quickdial-tile.quickdial-calling{
  border-color:#86c7a0;
  background:#ecfdf3;
}
.quickdial-tile.quickdial-error{
  border-color:#e7a5a0;
  background:#fff1f0;
}
.quickdial-tile:disabled{
  cursor:wait;
  opacity:.65;
}

@media(max-width:1200px){
  .quickdial-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}
}
@media(max-width:700px){
  .quickdial-head{display:block}
  .quickdial-head p{margin-top:4px}
  .quickdial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quickdial-tile span{white-space:normal}
}


/* v3.4 – Status- und Mitarbeiterfarben */
.call-status-unanswered{
  color:#c62828!important;
  font-weight:800;
}

.employee-select{
  transition:background-color .12s ease,border-color .12s ease,color .12s ease;
}
.employee-select.employee-bernutz{
  background:#e6f6e9!important;
  border-color:#add9b6!important;
  color:#214b2a!important;
}
.employee-select.employee-bille{
  background:#e8f3ff!important;
  border-color:#b6d5f2!important;
  color:#174a73!important;
}
.employee-select.employee-knabe{
  background:#fff8d8!important;
  border-color:#e7d982!important;
  color:#5a4a09!important;
}
.employee-select.employee-none{
  background:#fff7f7!important;
  border-color:#efc1c1!important;
  color:#c62828!important;
  font-weight:750;
}
.employee-select.employee-none option[value=""]{
  color:#c62828;
}


/* v3.4.1 – Mitarbeiterportal ausdrücklich mit gleicher Farbgebung */
.staff-shell .call-status-unanswered{
  color:#c62828!important;
  font-weight:800!important;
}
.staff-shell .employee-select.employee-bernutz{
  background:#e6f6e9!important;
  border-color:#add9b6!important;
  color:#214b2a!important;
}
.staff-shell .employee-select.employee-bille{
  background:#e8f3ff!important;
  border-color:#b6d5f2!important;
  color:#174a73!important;
}
.staff-shell .employee-select.employee-knabe{
  background:#fff8d8!important;
  border-color:#e7d982!important;
  color:#5a4a09!important;
}
.staff-shell .employee-select.employee-none{
  background:#fff7f7!important;
  border-color:#efc1c1!important;
  color:#c62828!important;
  font-weight:750!important;
}
.staff-shell .employee-select.employee-none option[value=""]{
  color:#c62828!important;
}


/* v3.5 – Arbeitszeitgrafik, Überstunden, Urlaub/Krankheit */
.admin-time-overview{margin-top:16px}
.admin-time-head{align-items:flex-end}
.time-legend-over{color:#067647}
.time-legend-under{color:#b42318}
.admin-time-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(230px,1fr));
  gap:10px;
  margin:14px 0 18px;
}
.admin-time-summary{
  display:grid;
  grid-template-columns:1.15fr repeat(3,.85fr);
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid #e1e6ec;
  border-radius:11px;
  background:#fbfcfe;
}
.admin-time-summary>div:not(.admin-time-summary-name){
  display:flex;
  flex-direction:column;
  gap:2px;
}
.admin-time-summary span{font-size:.73rem;color:#687386}
.admin-time-summary b{font-size:.88rem}
.admin-time-summary-name{display:flex;flex-direction:column}
.admin-time-summary-name strong{font-size:1rem;color:#173f77}
.admin-time-employees{display:grid;gap:14px}
.admin-time-employee{
  border:1px solid #e1e6ec;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.admin-time-employee-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:11px 13px;
  background:#f8fafc;
  border-bottom:1px solid #e5e9ee;
}
.admin-time-employee-head h3{margin:0;color:#173f77}
.admin-time-employee-head span{font-size:.78rem;color:#687386}
.time-day-chart{padding:6px 10px 10px}
.time-chart-row{
  display:grid;
  grid-template-columns:58px minmax(180px,1fr) 74px 118px;
  gap:9px;
  align-items:center;
  min-height:31px;
  border-bottom:1px solid #f0f2f5;
}
.time-chart-row:last-child{border-bottom:0}
.time-chart-date{display:flex;gap:5px;font-size:.75rem}
.time-chart-date strong{color:#344054}
.time-chart-date span{color:#687386}
.time-chart-bar{
  height:13px;
  position:relative;
  overflow:visible;
  border-radius:999px;
  background:#eef1f4;
}
.time-chart-fill{
  display:block;
  height:100%;
  border-radius:999px;
  min-width:0;
}
.time-chart-fill.over{background:#36a269}
.time-chart-fill.under{background:#dc5b53}
.time-chart-fill.exact{background:#5a90c3}
.time-chart-fill.absence{background:#9b8ac4}
.time-chart-fill.neutral{background:#c9d1da}
.time-target-marker{
  position:absolute;
  top:-3px;
  bottom:-3px;
  width:2px;
  background:#344054;
  border-radius:2px;
}
.time-chart-value{font-size:.76rem;font-variant-numeric:tabular-nums;color:#344054}
.time-chart-delta{font-size:.73rem;text-align:right}
.time-balance{font-variant-numeric:tabular-nums}
.time-balance.over{color:#067647!important}
.time-balance.under{color:#b42318!important}
.time-balance.exact{color:#536174!important}
.time-absence-badge{
  display:inline-flex;
  align-items:center;
  padding:3px 7px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:750;
  white-space:nowrap;
}
.time-absence-badge.vacation{background:#eef4ff;color:#305fa3}
.time-absence-badge.sick{background:#f3eefc;color:#704b9a}
.employee-time-balance{margin-top:14px}
.time-balance-big{
  font-size:1.5rem;
  font-weight:800;
  white-space:nowrap;
}
.time-balance-big.over{color:#067647}
.time-balance-big.under{color:#b42318}
.time-balance-big.exact{color:#536174}
.employee-time-mini-stats{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
  margin-top:12px;
}
.employee-time-mini-stats span{
  padding:7px 10px;
  border-radius:8px;
  background:#f6f8fa;
  color:#536174;
  font-size:.8rem;
}
.employee-time-mini-stats strong{color:#172033}
.absence-card{margin-top:14px}
.absence-form{
  display:grid;
  grid-template-columns:170px 180px 180px auto;
  gap:10px;
  align-items:end;
  margin:12px 0 16px;
}
.absence-form label{margin:0}
.absence-table{max-width:620px}

@media(max-width:1250px){
  .admin-time-summary-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
  .admin-time-head{display:block}
  .admin-time-head .time-month{margin-top:10px}
  .admin-time-summary{grid-template-columns:1fr 1fr}
  .time-chart-row{grid-template-columns:54px minmax(140px,1fr) 68px}
  .time-chart-delta{grid-column:2/4;text-align:left;padding-bottom:5px}
  .absence-form{grid-template-columns:1fr 1fr}
  .absence-form button{width:max-content}
}
@media(max-width:520px){
  .admin-time-summary{grid-template-columns:1fr}
  .time-chart-row{grid-template-columns:50px minmax(120px,1fr)}
  .time-chart-value{display:none}
  .time-chart-delta{grid-column:2}
  .absence-form{grid-template-columns:1fr}
}


/* v3.7 – Team-Urlaubsplanung */
.worktime-tabs{
  display:flex;
  gap:7px;
  margin:8px 0 16px;
  flex-wrap:wrap;
}
.worktime-tabs a{
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border:1px solid #cfd7e1;
  border-radius:8px;
  background:#fff;
  color:#344054;
  font-weight:700;
  font-size:.83rem;
}
.worktime-tabs a.active{
  background:#173f77;
  color:#fff;
  border-color:#173f77;
}
.vacation-yearbar{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-end;
  margin:10px 0 14px;
}
.vacation-yearbar form label{margin:0}
.vac-legend{
  display:flex;
  flex-wrap:wrap;
  gap:7px 12px;
  justify-content:flex-end;
  font-size:.75rem;
  color:#536174;
}
.vac-legend span{display:inline-flex;align-items:center;gap:5px}
.vac-legend-dot,.vac-legend-box{
  width:13px;height:13px;border-radius:4px;border:1px solid rgba(0,0,0,.09);display:inline-block
}
.vac-legend-dot.bille,.vac-person.bille{background:#e8f3ff;border-color:#b6d5f2;color:#174a73}
.vac-legend-dot.bernutz,.vac-person.bernutz{background:#e6f6e9;border-color:#add9b6;color:#214b2a}
.vac-legend-dot.knabe,.vac-person.knabe{background:#fff8d8;border-color:#e7d982;color:#5a4a09}
.vac-legend-box.school{background:#f1ebfb}
.vac-legend-box.holiday{background:#fff0ee}
.vac-legend-box.company{background:#fff3d6}
.vacation-my-balance,.vacation-request-card,.vacation-admin-pending,.vacation-entitlements,.team-vacation-calendar,.vacation-my-requests{margin-top:14px}
.vacation-remaining{
  font-size:1.35rem;
  color:#067647;
  white-space:nowrap;
}
.vacation-remaining.negative,.vac-negative{color:#b42318!important}
.vacation-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:9px;
  margin-top:12px;
}
.vacation-kpis span{
  padding:9px 11px;
  border-radius:9px;
  background:#f6f8fa;
  color:#536174;
  font-size:.8rem;
}
.vacation-kpis strong{display:block;color:#172033;font-size:1rem;margin-top:2px}
.vacation-request-form{
  display:grid;
  grid-template-columns:180px 180px minmax(220px,1fr) auto;
  gap:10px;
  align-items:end;
  margin-top:12px;
}
.vacation-request-form label{margin:0}
.vacation-pending-list{display:grid;gap:8px;margin-top:12px}
.vacation-pending-row{
  display:grid;
  grid-template-columns:minmax(170px,.8fr) minmax(190px,1fr) minmax(390px,1.5fr);
  align-items:center;
  gap:12px;
  padding:10px 11px;
  border:1px solid #e2e7ed;
  border-radius:10px;
  background:#fbfcfe;
}
.vacation-pending-row>div{display:flex;flex-direction:column;gap:2px}
.vacation-pending-row span{font-size:.78rem;color:#687386}
.vacation-decision-form{
  display:grid;
  grid-template-columns:minmax(150px,1fr) auto auto;
  gap:6px;
  align-items:center;
}
.vacation-number{width:78px;padding:6px 7px}
.vacation-calendar-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(320px,1fr));
  gap:12px;
  margin-top:12px;
}
.vac-month{
  border:1px solid #dfe4ea;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.vac-month h3{
  margin:0;
  padding:9px 10px;
  background:#f7f9fb;
  border-bottom:1px solid #e5e9ee;
  color:#173f77;
  font-size:.92rem;
}
.vac-weekdays,.vac-days{
  display:grid;
  grid-template-columns:repeat(7,1fr);
}
.vac-weekdays span{
  text-align:center;
  padding:5px 2px;
  font-size:.68rem;
  font-weight:750;
  color:#687386;
  background:#fbfcfd;
  border-bottom:1px solid #edf0f3;
}
.vac-day{
  min-height:70px;
  padding:4px;
  border-right:1px solid #f0f2f5;
  border-bottom:1px solid #f0f2f5;
  position:relative;
  overflow:hidden;
  background:#fff;
}
.vac-day.blank{background:#fafbfc}
.vac-day.weekend{background:#f7f8fa}
.vac-day.school{background:#f5f0fc}
.vac-day.holiday{background:#fff0ee}
.vac-day.company{background:#fff3d6}
.vac-day-num{font-size:.72rem;font-weight:750;color:#475467}
.vac-special{
  float:right;
  max-width:44px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.55rem;
  color:#8a5260;
}
.vac-people{
  clear:both;
  display:grid;
  gap:2px;
  margin-top:4px;
}
.vac-person{
  display:block;
  padding:2px 4px;
  border:1px solid #d4dae2;
  border-radius:5px;
  font-size:.58rem;
  font-weight:750;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.vac-person.other{background:#eef1f4;color:#344054}
.vac-status{
  display:inline-flex;
  padding:3px 7px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:750;
}
.vac-status.requested{background:#fff5d6;color:#7a5700}
.vac-status.approved{background:#e9f8ee;color:#067647}
.vac-status.rejected{background:#fff0ee;color:#b42318}
.vac-status.cancelled{background:#eef1f4;color:#536174}

@media(max-width:1400px){
  .vacation-calendar-grid{grid-template-columns:repeat(2,minmax(310px,1fr))}
  .vacation-pending-row{grid-template-columns:1fr 1fr}
  .vacation-decision-form{grid-column:1/3}
}
@media(max-width:900px){
  .vacation-yearbar{display:block}
  .vac-legend{justify-content:flex-start;margin-top:10px}
  .vacation-kpis{grid-template-columns:1fr 1fr}
  .vacation-request-form{grid-template-columns:1fr 1fr}
  .vacation-request-form .vacation-note{grid-column:1/3}
  .vacation-calendar-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .vacation-kpis{grid-template-columns:1fr}
  .vacation-request-form{grid-template-columns:1fr}
  .vacation-request-form .vacation-note{grid-column:auto}
  .vacation-pending-row{grid-template-columns:1fr}
  .vacation-decision-form{grid-column:auto;grid-template-columns:1fr 1fr}
  .vacation-decision-form input{grid-column:1/3}
}


/* v3.8 – Genehmigt/Beantragt in der Urlaubsplanung eindeutig unterscheiden */
.vac-legend-status{
  display:inline-flex;
  align-items:center;
  gap:4px;
  font-weight:750;
  color:#067647;
}
.vac-legend-status.requested{color:#8a6100}
.vacation-approved-overview,.vacation-requested-overview{margin-top:14px}
.vac-status-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(270px,1fr));
  gap:10px;
  margin-top:12px;
}
.vac-status-card{
  border:2px solid #d8dee6;
  border-radius:12px;
  padding:12px;
}
.vac-status-card.bille{background:#e8f3ff;border-color:#9fc7eb}
.vac-status-card.bernutz{background:#e6f6e9;border-color:#9fd1aa}
.vac-status-card.knabe{background:#fff8d8;border-color:#decf72}
.vac-status-card.requested{
  border-style:dashed;
  background-image:linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35));
}
.vac-status-title{
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:center;
  margin-bottom:8px;
}
.vac-status-title>strong{font-size:1.02rem}
.vac-status-title>span{
  padding:4px 7px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:999px;
  background:#fff;
  font-size:.71rem;
  font-weight:800;
  white-space:nowrap;
}
.vac-status-card.approved .vac-status-title>span{color:#067647}
.vac-status-card.requested .vac-status-title>span{color:#8a6100}
.vac-charge-note{
  margin:0 0 7px;
  font-size:.73rem;
  font-weight:700;
  color:#7a5700;
}
.vac-status-months{display:grid;gap:5px}
.vac-status-months>div{
  display:grid;
  grid-template-columns:82px 1fr;
  gap:7px;
  font-size:.74rem;
  line-height:1.35;
}
.vac-status-months strong{color:#344054}
.vac-status-months span{color:#536174}
.vac-person.approved{
  border-style:solid;
  box-shadow:inset 3px 0 0 rgba(6,118,71,.45);
}
.vac-person.requested{
  border-style:dashed!important;
  border-width:2px!important;
  background-image:repeating-linear-gradient(
    -45deg,
    rgba(255,255,255,.48) 0,
    rgba(255,255,255,.48) 3px,
    transparent 3px,
    transparent 6px
  );
}
.vac-person.approved b{color:#067647}
.vac-person.requested b{color:#8a6100}

@media(max-width:1000px){
  .vac-status-grid{grid-template-columns:1fr}
}


/* v3.9 – BLF Teamstatus */
.blf-team-card{margin:0 0 14px;padding:12px 14px}
.blf-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.blf-head h2{margin:0 0 2px;font-size:1rem}
.blf-head p{margin:0}
.blf-legend{display:flex;flex-wrap:wrap;gap:7px 12px;justify-content:flex-end;font-size:.72rem;color:#536174}
.blf-legend span{display:inline-flex;align-items:center;gap:5px}
.blf-team-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.blf-person{
  display:flex;align-items:center;gap:9px;
  min-width:165px;padding:8px 10px;
  border:1px solid #dfe4ea;border-radius:10px;background:#fff
}
.blf-person>div{display:flex;flex-direction:column;line-height:1.15}
.blf-person strong{font-size:.85rem}
.blf-state-label{font-size:.69rem;margin-top:3px;color:#667085;font-weight:700}
.blf-lamp{
  width:13px;height:13px;border-radius:50%;
  flex:0 0 13px;display:inline-block;
  border:1px solid rgba(0,0,0,.14);
  box-shadow:0 0 0 3px rgba(0,0,0,.035)
}
.blf-lamp.free{background:#22a447}
.blf-lamp.ringing{background:#f2b705;box-shadow:0 0 0 3px rgba(242,183,5,.17)}
.blf-lamp.busy{background:#d92d20}
.blf-lamp.offline{background:#98a2b3}
.blf-person.free{border-color:#b7dfc1;background:#f4fbf6}
.blf-person.ringing{border-color:#ecd479;background:#fffaf0}
.blf-person.busy{border-color:#efb5b0;background:#fff6f5}
.blf-person.offline{border-color:#d8dde5;background:#f7f8fa}
@media(max-width:760px){
  .blf-head{display:block}
  .blf-legend{justify-content:flex-start;margin-top:8px}
  .blf-team-grid{display:grid;grid-template-columns:1fr 1fr}
  .blf-person{min-width:0}
}
@media(max-width:480px){
  .blf-team-grid{grid-template-columns:1fr}
}

/* v3.9 – Urlaubssperren */
.vac-legend-box.lock{background:#ffd9d5;border-color:#e8847a}
.vac-day.vac-lock{
  background:#fff0ee!important;
  box-shadow:inset 0 4px 0 #d92d20;
}
.vac-lock-label{
  float:right;
  padding:1px 4px;
  border-radius:4px;
  background:#d92d20;
  color:#fff;
  font-size:.54rem;
  font-weight:800;
  line-height:1.35;
}
.vac-lock-names{
  clear:both;
  margin-top:3px;
  color:#b42318;
  font-size:.54rem;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}


/* v3.9.5 – BLF-Zustand Pause */
.blf-lamp.pause{
  background:#2e90fa;
  box-shadow:0 0 0 3px rgba(46,144,250,.17);
}
.blf-person.pause{
  border-color:#b2d7fb;
  background:#f2f8ff;
}
.blf-person.pause .blf-state-label{
  color:#175cd3;
}


/* v3.9.6 – Pause direkt im Mitarbeiter-Dashboard */
.dashboard-pause-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 14px;
  padding:14px 16px;
  border-width:1px;
}
.dashboard-pause-main{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
}
.dashboard-pause-main h2{
  margin:1px 0 3px;
  font-size:1.05rem;
}
.dashboard-pause-main p{
  margin:0;
  color:#667085;
  font-size:.8rem;
}
.dashboard-pause-lamp{
  width:18px;
  height:18px;
  flex:0 0 18px;
  border-radius:50%;
  border:1px solid rgba(0,0,0,.12);
  box-shadow:0 0 0 4px rgba(0,0,0,.035);
}
.dashboard-pause-card.is-working{
  border-color:#b7dfc1;
  background:#f4fbf6;
}
.dashboard-pause-card.is-working .dashboard-pause-lamp{
  background:#22a447;
  box-shadow:0 0 0 4px rgba(34,164,71,.12);
}
.dashboard-pause-card.is-pause{
  border-color:#b2d7fb;
  background:#f2f8ff;
}
.dashboard-pause-card.is-pause .dashboard-pause-lamp{
  background:#2e90fa;
  box-shadow:0 0 0 4px rgba(46,144,250,.16);
}
.dashboard-pause-card.is-offline{
  border-color:#d8dde5;
  background:#f7f8fa;
}
.dashboard-pause-card.is-offline .dashboard-pause-lamp{
  background:#98a2b3;
}
.dashboard-pause-action{flex:0 0 auto}
.dashboard-pause-btn{
  min-width:150px;
  min-height:42px;
  font-weight:800;
}
.dashboard-pause-start{
  background:#2e90fa;
  border-color:#2e90fa;
  color:#fff;
}
.dashboard-pause-start:hover{
  background:#1570ef;
  border-color:#1570ef;
}
@media(max-width:700px){
  .dashboard-pause-card{
    align-items:stretch;
    flex-direction:column;
  }
  .dashboard-pause-action,
  .dashboard-pause-action form,
  .dashboard-pause-btn{
    width:100%;
  }
}


/* v3.9.7 – laufende Pausenzeitanzeige */
.dashboard-pause-timer-wrap{
  display:flex;
  align-items:baseline;
  gap:9px;
  margin-top:8px;
}
.dashboard-pause-timer-label{
  font-size:.72rem;
  color:#667085;
  font-weight:700;
}
.dashboard-pause-timer{
  display:inline-block;
  min-width:92px;
  font-variant-numeric:tabular-nums;
  letter-spacing:.04em;
  font-size:1.28rem;
  line-height:1;
  color:#175cd3;
}


/* v3.9.8 – kompakter Arbeits-/Pausenstatus in den Mitarbeiter-Kacheln */
.dashboard-grid.dashboard-grid-single{
  grid-template-columns:minmax(0,1fr);
}
.team-status-card{
  margin-top:14px;
}
.team-person{
  position:relative;
}
.team-work-clock{
  width:100%;
  margin-top:9px;
  padding:7px 8px;
  border-radius:9px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:.73rem;
  font-weight:750;
}
.team-work-clock.work{
  background:#e8f8ed;
  color:#067647;
}
.team-work-clock.pause{
  background:#fff0b8;
  color:#7a5700;
}
.team-status-timer{
  font-size:.84rem;
  font-variant-numeric:tabular-nums;
  letter-spacing:.025em;
  white-space:nowrap;
}
.team-work-action{
  width:100%;
  margin-top:6px;
}
.team-status-toggle{
  width:100%;
  min-height:30px;
  padding:5px 8px;
  font-size:.76rem;
  font-weight:800;
  box-shadow:none;
}
.team-status-toggle.to-pause{
  background:#ffd84d;
  border-color:#e9bc23;
  color:#5f4700;
}
.team-status-toggle.to-pause:hover{
  background:#f4ca35;
  border-color:#d9aa13;
}
.team-status-toggle.to-work{
  background:#d9f6e2;
  border-color:#71cf8d;
  color:#056b3b;
}
.team-status-toggle.to-work:hover{
  background:#c8efd4;
  border-color:#57bd76;
}
.dashboard-phone-panel{
  margin-top:14px;
}
.dashboard-phone-panel .panel-head{
  margin-bottom:9px;
}
.dashboard-phone-panel .dashboard-phone-form{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto;
  gap:12px;
  align-items:end;
}
.dashboard-phone-panel .phone-target{
  margin:6px 0 0;
  font-size:.75rem;
}

/* Der frühere große Arbeitszeit-/Pause-Block wird nicht mehr angezeigt. */
.dashboard-pause-card{
  display:none !important;
}

@media(max-width:700px){
  .dashboard-phone-panel .dashboard-phone-form{
    grid-template-columns:1fr;
  }
}


/* v3.9.9 – kompaktere Arbeitszeit-Eingaben + editierbare Pausenzeiten */
.worktime-lead{
  margin:6px 0 12px;
  font-size:.86rem;
}
.compact-time-list{
  gap:8px;
}
.compact-time-entry{
  padding:10px 12px;
  border-radius:10px;
}
.compact-time-entry .time-entry-head{
  margin-bottom:5px;
}
.compact-time-raw{
  gap:8px 14px;
  margin-bottom:7px;
  font-size:.78rem;
}
.time-edit.time-edit-compact{
  display:grid;
  grid-template-columns:repeat(4,minmax(145px,1fr));
  gap:7px;
  margin:7px 0 0;
}
.time-edit-compact label,
.pause-edit-row label,
.absence-form label,
.time-month label{
  font-size:.75rem;
  font-weight:650;
  gap:3px;
}
.time-edit-compact input,
.pause-edit-row input,
.absence-form input,
.time-month input{
  min-height:34px;
  padding:6px 8px;
  border-radius:7px;
  font-size:.82rem;
}
.time-edit-compact small,
.pause-edit-row small{
  font-size:.67rem;
  line-height:1.15;
}
.compact-time-actions{
  margin-top:0;
}
.compact-time-actions .btn{
  padding:6px 9px;
}
.pause-editor{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid #e7ebef;
}
.pause-editor-head{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:6px;
}
.pause-editor-head strong{
  font-size:.82rem;
}
.pause-editor-head span,
.pause-empty{
  color:#687386;
  font-size:.72rem;
}
.pause-edit-row{
  display:grid;
  grid-template-columns:190px 190px minmax(220px,1fr) auto;
  gap:7px;
  align-items:end;
  padding:6px 0;
  border-top:1px dashed #edf0f3;
}
.pause-edit-row:first-of-type{
  border-top:0;
}
.pause-edit-row .btn{
  min-height:34px;
  padding:6px 9px;
}
.time-status{
  padding:13px 15px;
}
.time-status h2{
  margin:0 0 8px;
  font-size:1.05rem;
}
.time-status-grid{
  gap:8px;
}
.time-status-grid>div{
  padding:8px 10px;
}
.time-status-grid strong{
  font-size:.95rem;
  margin:2px 0;
}
.time-status-grid span,
.time-status-grid small{
  font-size:.72rem;
}
.time-buttons{
  gap:7px;
  margin-top:9px;
}
.time-buttons .btn{
  padding:7px 10px;
  font-size:.8rem;
}
.time-month{
  gap:7px;
  margin:8px 0 10px;
}
.time-month .btn{
  padding:7px 10px;
}
.absence-form{
  gap:7px;
  margin:8px 0 10px;
}
.absence-form .btn{
  padding:7px 10px;
  min-height:34px;
}

@media(max-width:1100px){
  .time-edit.time-edit-compact{
    grid-template-columns:repeat(2,minmax(180px,1fr));
  }
  .pause-edit-row{
    grid-template-columns:1fr 1fr;
  }
  .pause-edit-row .pause-reason{
    grid-column:1/2;
  }
  .pause-edit-row .btn{
    align-self:end;
  }
}
@media(max-width:650px){
  .time-edit.time-edit-compact,
  .pause-edit-row{
    grid-template-columns:1fr;
  }
  .pause-edit-row .pause-reason{
    grid-column:auto;
  }
}


/* v3.10.0 – kompakter Speicherstatus in der Anrufliste */
.autosave-state{
  min-width:28px;
  width:28px;
  height:28px;
  padding:0;
  border-radius:7px;
  font-size:.88rem;
  line-height:1;
  flex:0 0 28px;
  overflow:hidden;
}
.autosave-state.saving{
  font-size:1rem;
  font-weight:800;
}
.autosave-state.error{
  font-size:.9rem;
}
.row-actions{
  gap:3px;
  justify-content:flex-end;
  align-items:center;
}


/* v3.10.1 – Aktionsspalte nochmals schmaler */
.call-table-head > span:last-child{
  text-align:center;
}
.row-actions{
  gap:2px;
  justify-content:center;
}
.row-actions .autosave-state{
  min-width:26px;
  width:26px;
  height:26px;
  flex-basis:26px;
}
.row-actions .btn.followup{
  min-width:30px;
  padding:5px 4px;
  font-size:.64rem;
}


/* v3.10.3 – Aufträge-Rückfragen: Auftragstext bei Klärung/Stilllegung rot */
.oq-order-input.oq-order-alert{
  color:#b42318 !important;
  font-weight:800;
  background:#fff !important;
  border-color:#f0b5b0;
}


/* v3.10.4 – fällige Aufträge-Rückfragen im Mitarbeiter-Dashboard */
.work-stats{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.work-stat.oq-due-stat{
  border-color:#e5c07a;
  background:#fffaf0;
}
.work-stat.oq-due-stat strong{
  color:#9a6700;
}
.dashboard-oq-due-panel{
  margin-top:14px;
}
.dash-oq-list{
  display:grid;
  gap:6px;
}
.dash-oq-row{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:9px 10px;
  border:1px solid #e4e8ed;
  border-radius:8px;
  background:#fff;
}
.dash-oq-date{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  border-radius:7px;
  background:#fff1f0;
  color:#b42318;
  font-weight:800;
  font-size:.78rem;
}

/* v3.10.42: Im Mitarbeiter-Dashboard zeigt das farbige Feld bei offenen Anrufen
   das Anrufdatum statt des angerufenen Ziels/der Marke. */
.dash-call-date{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:32px;
  padding:0 6px;
  border-radius:7px;
  background:#e7f2ff;
  color:#173f77;
  border:1px solid #b9d5ef;
  font-weight:800;
  font-size:.78rem;
  white-space:nowrap;
}

.dash-oq-main{
  min-width:0;
}
.dash-oq-main>strong,
.dash-oq-main>span,
.dash-oq-main>small{
  display:block;
}
.dash-oq-main>span{
  margin-top:2px;
  font-size:.8rem;
}
.dash-oq-main>small:not(.dash-note){
  margin-top:2px;
  color:#687386;
  font-size:.72rem;
}
.dash-oq-order-alert{
  color:#b42318 !important;
  font-weight:800;
}
@media(max-width:760px){
  .work-stats{grid-template-columns:1fr;}
  .dash-oq-row{grid-template-columns:52px minmax(0,1fr);}
  .dash-oq-row>.btn{grid-column:2;justify-self:start;}
}


/* v3.10.5 – Auftrag-Warnung zuverlässig + Dashboard-Vorgänge zusammen */
.oq-editable-table td .oq-order-input.oq-order-alert{
  color:#b42318 !important;
  font-weight:800 !important;
  -webkit-text-fill-color:#b42318;
  caret-color:#b42318;
  border-color:#e9a5a0 !important;
  background:#fff8f7 !important;
}

.dashboard-my-work-panel{
  padding-bottom:12px;
}
.dashboard-my-work-head{
  margin-bottom:5px;
}
.dashboard-work-section{
  padding-top:8px;
}
.dashboard-work-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
.dashboard-work-section-head>div{
  min-width:0;
}
.dashboard-work-section-head h3{
  margin:0;
  font-size:1rem;
  color:#172033;
}
.dashboard-work-section-head span{
  display:block;
  margin-top:2px;
  color:#687386;
  font-size:.72rem;
}
.dashboard-work-divider{
  height:1px;
  margin:14px 0 6px;
  background:#e4e8ed;
}
.dashboard-work-orders{
  padding-bottom:2px;
}
@media(max-width:620px){
  .dashboard-work-section-head{
    align-items:flex-start;
  }
}


/* v3.10.7 – Aufträge-Rückfragen Filter + kompakter Speicherstatus */
.oq-row-save{
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  padding-left:3px !important;
  padding-right:3px !important;
  text-align:center;
}
.oq-editable-table th:last-child,
.oq-editable-table td:last-child{
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
}
.oq-save-state{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:25px;
  height:25px;
  min-width:25px;
  padding:0;
  border-radius:6px;
  font-size:.82rem;
  line-height:1;
  overflow:hidden;
  color:#687386;
  background:#f3f5f7;
}
.oq-save-state.saving{
  color:#986200;
  background:#fff7e6;
  font-size:.95rem;
  font-weight:800;
}
.oq-save-state.saved{
  color:#067647;
  background:#ecfdf3;
}
.oq-save-state.error{
  color:#b42318;
  background:#fff1f0;
  font-weight:800;
}
.oq-status-count{
  margin:6px 0 2px;
  font-size:.73rem;
}

/* Tagesgedanke nach Mitarbeiter-Login: sichtbar, aber nicht blockierend */
.daily-motivation{
  position:relative;
  margin:0 0 10px;
  padding:10px 42px 10px 13px;
  border:1px solid #d8e5f2;
  border-radius:10px;
  background:#f7fbff;
  box-shadow:none;
}
.daily-motivation[hidden]{
  display:none !important;
}
.daily-motivation-label{
  display:block;
  margin-bottom:2px;
  color:#5d7188;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.daily-motivation strong{
  display:block;
  color:#173f77;
  font-size:.88rem;
  line-height:1.32;
  font-weight:700;
}
.daily-motivation-close{
  position:absolute;
  top:7px;
  right:8px;
  width:28px;
  height:28px;
  padding:0;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#687386;
  font-size:1.2rem;
  line-height:1;
  cursor:pointer;
}
.daily-motivation-close:hover{
  background:#eaf2f9;
  color:#173f77;
}


/* v3.10.8 – Spruch des Tages als Post-it-Overlay */
body.daily-postit-open{
  overflow:hidden;
}
.daily-motivation-overlay{
  position:fixed;
  inset:0;
  z-index:5000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(20,30,45,.34);
  backdrop-filter:blur(1.5px);
  -webkit-backdrop-filter:blur(1.5px);
}
.daily-motivation-overlay[hidden]{
  display:none !important;
}
.daily-postit{
  --postit-tilt:0deg;
  position:relative;
  width:min(330px,calc(100vw - 36px));
  min-height:315px;
  padding:48px 30px 27px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  border:0;
  border-radius:3px 3px 9px 3px;
  box-shadow:
    0 18px 34px rgba(27,39,55,.24),
    8px 12px 16px rgba(27,39,55,.10);
  transform:rotate(var(--postit-tilt));
  transform-origin:center center;
}
.daily-postit::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:44px;
  height:44px;
  background:linear-gradient(135deg,rgba(255,255,255,0) 49%,rgba(0,0,0,.08) 50%,rgba(255,255,255,.34) 100%);
  border-radius:0 0 9px 0;
  pointer-events:none;
}
.daily-postit-yellow{background:#fff3a8}
.daily-postit-blue{background:#d9efff}
.daily-postit-green{background:#ddf4c8}
.daily-postit-pink{background:#ffdce8}

.daily-postit-pin{
  position:absolute;
  top:15px;
  left:50%;
  width:14px;
  height:14px;
  margin-left:-7px;
  border-radius:50%;
  background:rgba(172,70,70,.78);
  box-shadow:0 2px 4px rgba(0,0,0,.22);
}
.daily-postit-label{
  margin-bottom:14px;
  color:#5d5a47;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.daily-postit strong{
  max-width:270px;
  color:#34342d;
  font-size:1.18rem;
  line-height:1.42;
  font-weight:800;
}
.daily-postit-subline{
  margin-top:17px;
  color:#706c58;
  font-size:.72rem;
  font-weight:650;
}
.daily-postit-close{
  position:absolute;
  top:9px;
  right:9px;
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.42);
  color:#555246;
  font-size:1.25rem;
  line-height:1;
  cursor:pointer;
}
.daily-postit-close:hover,
.daily-postit-close:focus-visible{
  background:rgba(255,255,255,.72);
  outline:2px solid rgba(23,63,119,.24);
  outline-offset:1px;
}
.daily-postit-done{
  margin-top:22px;
  min-width:118px;
  padding:8px 14px;
  border:1px solid rgba(63,69,72,.18);
  border-radius:8px;
  background:rgba(255,255,255,.52);
  color:#34342d;
  font:inherit;
  font-size:.78rem;
  font-weight:850;
  cursor:pointer;
}
.daily-postit-done:hover,
.daily-postit-done:focus-visible{
  background:rgba(255,255,255,.78);
  outline:2px solid rgba(23,63,119,.20);
  outline-offset:1px;
}
@media(max-width:520px){
  .daily-motivation-overlay{
    padding:16px;
  }
  .daily-postit{
    width:min(310px,calc(100vw - 28px));
    min-height:295px;
    padding:45px 25px 24px;
  }
  .daily-postit strong{
    font-size:1.08rem;
  }
}


/* v3.10.9 – Aufträge-Rückfragen: klare Aktionsschaltfläche, keine Speicher-Spalte */
.oq-editable-table th:last-child,
.oq-editable-table td:last-child{
  width:126px !important;
  min-width:126px !important;
  max-width:126px !important;
}
.oq-done-cell{
  width:126px !important;
  min-width:126px !important;
  max-width:126px !important;
  padding-left:5px !important;
  padding-right:5px !important;
  text-align:center;
  white-space:nowrap;
  vertical-align:middle !important;
}
.oq-done-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:112px;
  min-height:31px;
  padding:5px 9px;
  border:1px solid #2f6fae;
  border-radius:7px;
  background:#edf5fc;
  color:#174f84;
  font:inherit;
  font-size:.74rem;
  font-weight:800;
  line-height:1.1;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(16,24,40,.08);
}
.oq-done-btn:hover,
.oq-done-btn:focus-visible{
  background:#dcecf9;
  border-color:#1f5f9b;
  outline:2px solid rgba(35,104,173,.18);
  outline-offset:1px;
}
.oq-done-btn:active{
  transform:translateY(1px);
}
.oq-done-btn.is-done{
  background:#f5f6f7;
  border-color:#98a2b3;
  color:#475467;
}
.oq-done-btn.is-done:hover,
.oq-done-btn.is-done:focus-visible{
  background:#e9ecef;
  border-color:#667085;
}
.oq-row-save,
.oq-save-state{
  display:none !important;
}
.oq-final-row.oq-completed .oq-done-cell{
  opacity:1;
}
@media(max-width:760px){
  .oq-editable-table th:last-child,
  .oq-editable-table td:last-child,
  .oq-done-cell{
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
  }
  .oq-done-btn{
    width:104px;
    font-size:.71rem;
  }
}


/* v3.10.10 – Aufträge-Rückfragen: Merkmal kompakt für amtliche Kennzeichen */
.content.content-wide .oq-editable-table th:nth-child(5),
.content.content-wide .oq-editable-table td:nth-child(5),
.oq-feature-cell{
  width:120px !important;
  min-width:120px !important;
  max-width:120px !important;
}
.oq-feature-input{
  width:100% !important;
  min-width:0 !important;
  max-width:110px !important;
  box-sizing:border-box;
}
@media(min-width:1700px){
  .content.content-wide .oq-editable-table th:nth-child(5),
  .content.content-wide .oq-editable-table td:nth-child(5),
  .oq-feature-cell{
    width:120px !important;
    min-width:120px !important;
    max-width:120px !important;
  }
}
@media(max-width:760px){
  .content.content-wide .oq-editable-table th:nth-child(5),
  .content.content-wide .oq-editable-table td:nth-child(5),
  .oq-feature-cell{
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
  }
  .oq-feature-input{
    max-width:102px !important;
  }
}


/* v3.10.11 – Aufträge-Rückfragen: Orga-Nummer ans Tabellenende und kompakt */
/* Aktion bleibt die vorletzte Spalte. */
.content.content-wide .oq-editable-table th:nth-child(9),
.content.content-wide .oq-editable-table td:nth-child(9),
.oq-done-cell{
  width:126px !important;
  min-width:126px !important;
  max-width:126px !important;
}

/* Orga ist jetzt letzte Spalte und bewusst sehr schmal. */
.content.content-wide .oq-editable-table th:nth-child(10),
.content.content-wide .oq-editable-table td:nth-child(10),
.oq-orga-head,
.oq-orga-cell{
  width:72px !important;
  min-width:72px !important;
  max-width:72px !important;
  padding-left:4px !important;
  padding-right:4px !important;
}

.oq-orga-head{
  font-size:.66rem !important;
  font-weight:700;
  line-height:1.1;
  text-align:center;
  white-space:nowrap;
}

.oq-orga-input{
  width:100% !important;
  min-width:0 !important;
  max-width:64px !important;
  box-sizing:border-box;
  padding:5px 4px !important;
  font-size:.68rem !important;
  line-height:1.15;
  text-align:center;
}

/* Überschreibt die frühere Regel, nach der die letzte Spalte die Aktion war. */
.oq-editable-table th:last-child,
.oq-editable-table td:last-child{
  width:72px !important;
  min-width:72px !important;
  max-width:72px !important;
}

@media(max-width:760px){
  .content.content-wide .oq-editable-table th:nth-child(9),
  .content.content-wide .oq-editable-table td:nth-child(9),
  .oq-done-cell{
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
  }

  .content.content-wide .oq-editable-table th:nth-child(10),
  .content.content-wide .oq-editable-table td:nth-child(10),
  .oq-orga-head,
  .oq-orga-cell,
  .oq-editable-table th:last-child,
  .oq-editable-table td:last-child{
    width:66px !important;
    min-width:66px !important;
    max-width:66px !important;
  }

  .oq-orga-input{
    max-width:58px !important;
    font-size:.65rem !important;
  }
}


/* v3.10.12 – zusätzliche VTP/Vertriebsportal-Links in der linken Navigation */
.side-separator{
  height:1px;
  min-height:1px;
  margin:8px 6px;
  background:#dfe4ea;
}

.side-external-links{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.side .side-external-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:8px 10px;
  border-radius:7px;
  color:#344054;
  font-size:.78rem;
  font-weight:650;
  line-height:1.2;
}

.side .side-external-link span{
  color:#667085;
  font-size:.72rem;
  flex:0 0 auto;
}

.side .side-external-link:hover{
  background:#f2f6fa;
  color:#173f77;
}

.side-vtp-search{
  padding:2px 5px 4px;
}

.side-vtp-title{
  margin:0 0 7px;
  color:#344054;
  font-size:.75rem;
  font-weight:800;
  line-height:1.2;
}

.side-vtp-form{
  display:grid;
  gap:4px;
}

.side-vtp-form label{
  color:#687386;
  font-size:.64rem;
  font-weight:700;
}

.side-vtp-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) 32px;
  gap:5px;
  align-items:center;
}

.side-vtp-controls input{
  width:100%;
  min-width:0;
  height:32px;
  padding:6px 7px;
  border:1px solid #cbd5df;
  border-radius:7px;
  background:#fff;
  font-size:.72rem;
}

.side-vtp-controls input:focus{
  outline:none;
  border-color:#2368ad;
  box-shadow:0 0 0 2px rgba(35,104,173,.10);
}

.side-vtp-submit{
  width:32px;
  height:32px;
  padding:0;
  border:1px solid #2368ad;
  border-radius:7px;
  background:#2368ad;
  color:#fff;
  font-size:1rem;
  font-weight:800;
  line-height:1;
  cursor:pointer;
}

.side-vtp-submit:hover,
.side-vtp-submit:focus-visible{
  background:#173f77;
  border-color:#173f77;
  outline:none;
}

/* Auf mobilen Geräten bleibt die bestehende horizontale Navigation nutzbar.
   Der neue Bereich wird kompakt in dieselbe Leiste integriert. */
@media(max-width:760px){
  .side-separator{
    width:1px;
    height:34px;
    min-width:1px;
    min-height:34px;
    margin:2px 5px;
    background:#dfe4ea;
  }

  .side-external-links{
    flex-direction:row;
    gap:2px;
  }

  .side .side-external-link{
    white-space:nowrap;
    padding:8px 9px;
    font-size:.72rem;
  }

  .side-vtp-search{
    min-width:205px;
    padding:0 4px;
  }

  .side-vtp-title{
    margin-bottom:3px;
    font-size:.65rem;
  }

  .side-vtp-form label{
    display:none;
  }

  .side-vtp-controls input{
    height:30px;
    font-size:.68rem;
  }

  .side-vtp-submit{
    width:30px;
    height:30px;
  }
}


/* v3.10.13 – VTP-Navigation: besser lesbare Beschriftungen */
.side-vtp-title{
  color:#ffffff !important;
}

.side-vtp-form label{
  color:#ffffff !important;
}

/* Falls der linke Navigationsbereich in dieser Installation dunkel dargestellt wird,
   bleibt auch der neue externe Link gut lesbar. */
.side .side-external-link{
  color:inherit;
}


/* v3.10.14 – Wählfeld / Schnellwahl optisch aufgeräumt und zentriert */
#mainDialForm.dial,
.quickdial-section{
  width:100%;
  max-width:650px;
  margin-left:auto;
  margin-right:auto;
}

#mainDialForm.dial{
  margin-top:14px;
}

.quickdial-section{
  margin-top:20px;
  padding:16px;
  border:1px solid #dfe4ea;
  border-radius:14px;
  background:#fff;
  box-shadow:0 5px 18px rgba(20,35,60,.05);
}

.quickdial-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
  text-align:left;
}

.quickdial-head h2{
  margin:0;
  color:#173f77;
  font-size:1.05rem;
}

.quickdial-head p{
  margin:0;
  max-width:370px;
  font-size:.75rem;
  line-height:1.35;
  text-align:right;
}

.quickdial-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
  width:100%;
  max-width:100%;
  margin:0 auto;
}

.quickdial-tile{
  position:relative;
  width:100%;
  min-width:0;
  min-height:78px;
  padding:13px 10px 11px;
  border:1px solid #c9d8e6;
  border-radius:12px;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
  color:#172033;
  text-align:center;
  box-shadow:0 2px 8px rgba(20,35,60,.05);
  overflow:hidden;
}

.quickdial-tile::before{
  content:"☎";
  display:flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  margin:0 auto 7px;
  border-radius:50%;
  background:#edf4fb;
  color:#2368ad;
  font-size:.82rem;
  font-weight:800;
}

.quickdial-tile strong{
  display:block;
  margin:0 0 3px;
  color:#173f77;
  font-size:.86rem;
  line-height:1.15;
}

.quickdial-tile span{
  display:block;
  color:#687386;
  font-size:.7rem;
  line-height:1.2;
  white-space:nowrap;
}

.quickdial-tile:hover{
  border-color:#7faed5;
  background:linear-gradient(180deg,#ffffff 0%,#edf6fd 100%);
  box-shadow:0 5px 13px rgba(35,104,173,.11);
  transform:translateY(-1px);
}

.quickdial-tile:hover::before{
  background:#2368ad;
  color:#fff;
}

.quickdial-tile.quickdial-calling{
  border-color:#86c7a0;
  background:#ecfdf3;
}
.quickdial-tile.quickdial-calling::before{
  background:#067647;
  color:#fff;
}

.quickdial-tile.quickdial-error{
  border-color:#e7a5a0;
  background:#fff1f0;
}
.quickdial-tile.quickdial-error::before{
  background:#b42318;
  color:#fff;
}

@media(max-width:700px){
  #mainDialForm.dial,
  .quickdial-section{
    max-width:100%;
  }

  .quickdial-section{
    padding:13px;
  }

  .quickdial-head{
    display:block;
    text-align:center;
  }

  .quickdial-head p{
    margin-top:4px;
    max-width:none;
    text-align:center;
  }

  .quickdial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .quickdial-tile{
    min-height:74px;
  }

  .quickdial-tile span{
    white-space:normal;
  }
}

@media(max-width:390px){
  .quickdial-grid{
    grid-template-columns:1fr !important;
  }
}


/* v3.10.15 – Aufträge-Rückfragen: VTP-Link auf VSNR + kompakte Auftragstexte */
.oq-insurance-cell{
  min-width:145px;
}

.oq-insurance-vtp-link{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin:0 0 3px 6px;
  max-width:100%;
  color:#173f77;
  font-size:.72rem;
  font-weight:800;
  line-height:1.15;
  text-decoration:underline;
  text-underline-offset:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.oq-insurance-vtp-link:hover{
  color:#2368ad;
}

.oq-insurance-vtp-link[hidden]{
  display:none !important;
}

/* Auftrag ist durch die Kurztexte bewusst deutlich schmaler. */
.content.content-wide .oq-editable-table th:nth-child(4),
.content.content-wide .oq-editable-table td:nth-child(4){
  width:205px !important;
  min-width:205px !important;
  max-width:205px !important;
}

.oq-order-input{
  width:100% !important;
  min-width:0 !important;
  max-width:195px !important;
  box-sizing:border-box;
  font-size:.78rem !important;
}

@media(min-width:1700px){
  .content.content-wide .oq-editable-table th:nth-child(4),
  .content.content-wide .oq-editable-table td:nth-child(4){
    width:205px !important;
    min-width:205px !important;
    max-width:205px !important;
  }
}

@media(max-width:760px){
  .content.content-wide .oq-editable-table th:nth-child(4),
  .content.content-wide .oq-editable-table td:nth-child(4){
    width:190px !important;
    min-width:190px !important;
    max-width:190px !important;
  }

  .oq-order-input{
    max-width:180px !important;
    font-size:.75rem !important;
  }
}


/* v3.10.16 – Schriftgrößen zurück auf Tabellenstandard */
.oq-insurance-vtp-link{
  font-size:inherit !important;
  line-height:inherit;
  margin:0 0 0 6px;
}

.oq-order-input{
  font-size:inherit !important;
}

@media(max-width:760px){
  .oq-order-input{
    font-size:inherit !important;
  }
}

.oq-insurance-empty{
  display:inline-block;
  margin-left:6px;
  color:#98a2b3;
}

/* Kurztext „Vorversicherung korrigieren“ ist wieder eine rote Warnung. */
.oq-editable-table td .oq-order-input.oq-order-alert{
  color:#b42318 !important;
  -webkit-text-fill-color:#b42318 !important;
  font-weight:800 !important;
}


/* v3.10.17 – Aufträge-Rückfragen: Zeilen mittig, Inhalte links, Erinnert/Erledigt */
.oq-editable-table tbody td{
  vertical-align:middle !important;
  text-align:left !important;
}

/* Eingaben bleiben linksbündig; keine zentrierte Tabellenoptik. */
.oq-editable-table .oq-edit-input,
.oq-editable-table input[type="text"],
.oq-editable-table textarea,
.oq-editable-table select{
  text-align:left;
}

/* Neue Statusspalten direkt vor Orga */
.content.content-wide .oq-editable-table th:nth-child(9),
.content.content-wide .oq-editable-table td:nth-child(9),
.oq-reminder-head,
.oq-reminder-cell{
  width:94px !important;
  min-width:94px !important;
  max-width:94px !important;
}

.content.content-wide .oq-editable-table th:nth-child(10),
.content.content-wide .oq-editable-table td:nth-child(10),
.oq-completed-head,
.oq-done-cell{
  width:76px !important;
  min-width:76px !important;
  max-width:76px !important;
}

.content.content-wide .oq-editable-table th:nth-child(11),
.content.content-wide .oq-editable-table td:nth-child(11),
.oq-orga-head,
.oq-orga-cell,
.oq-editable-table th:last-child,
.oq-editable-table td:last-child{
  width:72px !important;
  min-width:72px !important;
  max-width:72px !important;
}

.oq-reminder-cell,
.oq-done-cell{
  padding-left:12px !important;
  padding-right:6px !important;
}

.oq-state-checkbox{
  appearance:auto;
  -webkit-appearance:checkbox;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  padding:0 !important;
  margin:0;
  vertical-align:middle;
  cursor:pointer;
  accent-color:#2368ad;
}

.oq-state-checkbox:disabled{
  cursor:wait;
  opacity:.55;
}

.oq-reminder-date{
  display:block;
  margin-top:4px;
  color:#687386;
  font-size:.64rem;
  line-height:1.1;
  white-space:nowrap;
}

/* Alte Button-Regeln dürfen die neue Erledigt-Spalte nicht mehr aufweiten. */
.oq-done-btn{
  display:none !important;
}

@media(max-width:760px){
  .content.content-wide .oq-editable-table th:nth-child(9),
  .content.content-wide .oq-editable-table td:nth-child(9),
  .oq-reminder-head,
  .oq-reminder-cell{
    width:90px !important;
    min-width:90px !important;
    max-width:90px !important;
  }

  .content.content-wide .oq-editable-table th:nth-child(10),
  .content.content-wide .oq-editable-table td:nth-child(10),
  .oq-completed-head,
  .oq-done-cell{
    width:72px !important;
    min-width:72px !important;
    max-width:72px !important;
  }

  .content.content-wide .oq-editable-table th:nth-child(11),
  .content.content-wide .oq-editable-table td:nth-child(11),
  .oq-orga-head,
  .oq-orga-cell,
  .oq-editable-table th:last-child,
  .oq-editable-table td:last-child{
    width:66px !important;
    min-width:66px !important;
    max-width:66px !important;
  }
}


/* v3.10.18 – Status-Checkboxen mittig in ihren Spalten */
.oq-editable-table tbody td.oq-reminder-cell,
.oq-editable-table tbody td.oq-done-cell,
.oq-editable-table thead th.oq-reminder-head,
.oq-editable-table thead th.oq-completed-head{
  text-align:center !important;
}

.oq-reminder-cell,
.oq-done-cell{
  padding-left:6px !important;
  padding-right:6px !important;
}

.oq-reminder-cell .oq-state-checkbox,
.oq-done-cell .oq-state-checkbox{
  display:block;
  margin-left:auto !important;
  margin-right:auto !important;
}

.oq-reminder-date{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

/* Alle übrigen Zellen bleiben unverändert linksbündig. */
.oq-editable-table tbody td:not(.oq-reminder-cell):not(.oq-done-cell){
  text-align:left !important;
}


/* v3.10.19 – Anrufliste: sichtbaren Autosave-Status entfernen */
.call-row .autosave-state{
  display:none !important;
}

.call-row .row-actions{
  justify-content:center;
}


/* v3.10.20 – Anrufliste ohne Aktionsspalte; Datum aktiviert Wiedervorlage */
.content.content-wide .call-table-head,
.content.content-wide .call-row{
  grid-template-columns:
    82px
    58px
    minmax(170px,1.15fr)
    minmax(125px,.9fr)
    minmax(145px,.95fr)
    minmax(340px,2.8fr)
    138px
    62px !important;
}

.call-table-head,
.call-row{
  grid-template-columns:
    82px
    52px
    minmax(155px,1.1fr)
    128px
    150px
    minmax(280px,2fr)
    132px
    62px !important;
}

@media(min-width:1500px){
  .content.content-wide .call-table-head,
  .content.content-wide .call-row{
    grid-template-columns:
      84px
      60px
      minmax(190px,1.2fr)
      minmax(140px,.9fr)
      minmax(155px,.95fr)
      minmax(440px,3.8fr)
      142px
      64px !important;
  }
}

@media(min-width:1900px){
  .content.content-wide .call-table-head,
  .content.content-wide .call-row{
    grid-template-columns:
      86px
      62px
      minmax(220px,1.25fr)
      minmax(155px,.9fr)
      minmax(170px,.95fr)
      minmax(560px,4.5fr)
      145px
      66px !important;
  }
}

@media(max-width:1250px){
  .call-table-head,
  .call-row,
  .content.content-wide .call-table-head,
  .content.content-wide .call-row{
    grid-template-columns:
      76px
      48px
      145px
      112px
      130px
      minmax(220px,1.8fr)
      120px
      54px !important;
  }

  .call-table-head,
  .call-row{
    min-width:960px;
  }
}

/* Überbleibsel alter Aktionsspalten sicher ausblenden. */
.call-row .row-actions{
  display:none !important;
}


/* v3.10.21 – Aufträge-Rückfragen kompakter wie Anrufliste */
.oq-editable-table{
  font-size:.78rem;
}

.oq-editable-table th{
  padding:7px 8px !important;
  font-size:.7rem !important;
  line-height:1.15;
}

.oq-editable-table td{
  padding:5px 7px !important;
  font-size:.78rem !important;
  line-height:1.2;
}

/* Bearbeitbare Felder orientieren sich an der kompakten Anrufliste. */
.oq-editable-table .oq-edit-input,
.oq-editable-table select.oq-edit-input,
.oq-editable-table textarea.oq-edit-input{
  padding:5px 7px !important;
  font-size:.75rem !important;
  line-height:1.2;
}

.oq-editable-table textarea.oq-note-input{
  font-size:.77rem !important;
  min-height:42px !important;
  height:42px;
}

/* Der sichtbare Kundenname bleibt klar und deutlich als VTP-Link. */
.oq-name-cell .oq-portal-link{
  font-size:.78rem !important;
  font-weight:750;
  margin-bottom:2px;
}

/* Das Korrekturfeld darunter ist nur noch eine kleine Bearbeitungshilfe. */
.oq-name-cell .oq-last-name{
  width:110px !important;
  min-width:0 !important;
  max-width:110px !important;
  height:24px !important;
  padding:2px 5px !important;
  font-size:.66rem !important;
  line-height:1.1 !important;
  border-radius:5px;
  color:#687386;
}

.oq-name-cell .oq-last-name:focus{
  color:#172033;
}

/* Die erste Spalte kann dadurch ebenfalls kompakter werden. */
.oq-name-cell{
  min-width:128px !important;
  width:140px;
}

/* Statusdatum bleibt klein und unaufdringlich. */
.oq-reminder-date{
  font-size:.62rem !important;
}

@media(max-width:760px){
  .oq-name-cell .oq-last-name{
    width:100px !important;
    max-width:100px !important;
  }
}


/* v3.10.22 – Namensspalte: normales Feld + kleines VTP-Link-Symbol */
.oq-name-cell{
  min-width:150px !important;
  width:auto !important;
}

.oq-name-edit-wrap{
  display:flex;
  align-items:center;
  gap:5px;
  width:100%;
}

.oq-name-cell .oq-last-name{
  display:block;
  flex:1 1 auto;
  width:100% !important;
  min-width:105px !important;
  max-width:none !important;
  height:auto !important;
  padding:5px 7px !important;
  font-size:.75rem !important;
  line-height:1.2 !important;
  border-radius:6px !important;
  color:inherit !important;
}

.oq-name-vtp-link{
  display:inline-grid;
  place-items:center;
  flex:0 0 25px;
  width:25px;
  height:25px;
  border:1px solid #cbd5df;
  border-radius:6px;
  background:#fff;
  color:#2368ad;
  text-decoration:none;
  font-size:.78rem;
  font-weight:800;
  line-height:1;
}

.oq-name-vtp-link:hover{
  background:#edf4fb;
  border-color:#9fc0df;
  color:#174c85;
}

.oq-name-vtp-link.is-disabled{
  opacity:.35;
  pointer-events:none;
}

/* Der alte separate Namens-Hyperlink wird in dieser Version nicht mehr verwendet. */
.oq-name-cell > .oq-portal-link{
  display:none !important;
}

@media(max-width:760px){
  .oq-name-cell .oq-last-name{
    width:100% !important;
    max-width:none !important;
  }
}


/* v3.10.23 – Kontakte: A–Z-Kacheln, Sortierung, E-Mail-Link */
.contact-letter-nav{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:10px 0 12px;
  padding:9px;
  border:1px solid #dfe4ea;
  border-radius:10px;
  background:#f8fafc;
}

.contact-letter-tile{
  appearance:none;
  min-width:34px;
  height:32px;
  padding:0 9px;
  border:1px solid #cbd5df;
  border-radius:7px;
  background:#fff;
  color:#344054;
  font-size:.75rem;
  font-weight:800;
  cursor:pointer;
}

.contact-letter-tile:hover:not(:disabled){
  border-color:#8eb7dc;
  background:#edf4fb;
  color:#174c85;
}

.contact-letter-tile.active{
  border-color:#2368ad;
  background:#2368ad;
  color:#fff;
}

.contact-letter-tile:disabled{
  opacity:.28;
  cursor:default;
}

.contact-list-tools{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}

.contact-list-tools .search{
  margin:0;
  flex:1 1 420px;
  max-width:620px;
}

.contact-email-link{
  color:#174c85;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}

.contact-email-link:hover{
  color:#0066b3;
}

.contact-table tbody tr[hidden]{
  display:none !important;
}

@media(max-width:700px){
  .contact-letter-nav{
    gap:4px;
    padding:7px;
  }

  .contact-letter-tile{
    min-width:31px;
    height:30px;
    padding:0 7px;
    font-size:.7rem;
  }

  .contact-list-tools{
    display:block;
  }

  .contact-list-tools .search{
    max-width:none;
    width:100%;
    margin-bottom:6px;
  }
}


/* v3.10.26 – Kontakte vollständig laden statt manueller 100er-Paginierung */
.contact-load-status{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:8px 12px;
  margin:8px 0 10px;
  padding:9px 11px;
  border:1px solid #dfe4ea;
  border-radius:9px;
  background:#f8fafc;
  font-size:.76rem;
  color:#687386;
}
.contact-load-status strong{
  color:#344054;
  font-size:.78rem;
}
.contact-letter-tile:disabled{
  opacity:.34;
}
.contact-list-tools .search:disabled{
  background:#f3f5f7;
  color:#7b8491;
  cursor:wait;
}


/* v3.10.27 – Yealink Bildschirmhintergründe im Adminbereich */
.phone-wallpaper-card{
  margin-bottom:18px;
}
.phone-wallpaper-upload{
  display:flex;
  align-items:flex-end;
  gap:12px;
  flex-wrap:wrap;
  padding:12px;
  margin:8px 0 14px;
  border:1px solid #dfe4ea;
  border-radius:10px;
  background:#f8fafc;
}
.phone-wallpaper-upload label{
  display:flex;
  flex-direction:column;
  gap:5px;
  flex:1 1 420px;
  font-weight:700;
}
.phone-wallpaper-upload input[type="file"]{
  background:#fff;
}
.phone-wallpaper-upload small{
  color:#687386;
  font-weight:400;
  font-size:.73rem;
}
.phone-wallpaper-empty{
  padding:18px;
  border:1px dashed #cbd5df;
  border-radius:10px;
  color:#687386;
  text-align:center;
}
.phone-wallpaper-library{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr));
  gap:10px;
  margin:10px 0 18px;
}
.phone-wallpaper-option{
  position:relative;
  display:grid;
  grid-template-rows:110px auto;
  gap:0;
  overflow:hidden;
  border:2px solid #dfe4ea;
  border-radius:10px;
  background:#fff;
  cursor:pointer;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.phone-wallpaper-option:hover{
  border-color:#9fc0df;
}
.phone-wallpaper-option.selected{
  border-color:#2368ad;
  box-shadow:0 0 0 2px rgba(35,104,173,.10);
}
.phone-wallpaper-option input[type="radio"]{
  position:absolute;
  top:8px;
  right:8px;
  z-index:2;
  width:18px;
  height:18px;
  accent-color:#2368ad;
}
.phone-wallpaper-preview{
  display:block;
  background:#e9eef5;
  overflow:hidden;
}
.phone-wallpaper-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.phone-wallpaper-meta{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:8px 9px;
}
.phone-wallpaper-meta strong{
  font-size:.8rem;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.phone-wallpaper-meta small{
  color:#687386;
  font-size:.68rem;
}
.phone-wallpaper-targets{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid #e4e9ef;
}
.phone-wallpaper-targets h3{
  margin:0 0 9px;
  font-size:.95rem;
}
.phone-wallpaper-phone-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:9px;
}
.phone-wallpaper-phone{
  border:1px solid #dfe4ea;
  border-radius:10px;
  padding:10px;
  background:#fff;
}
.phone-wallpaper-phone-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
}
.phone-wallpaper-phone-head>div{
  min-width:0;
}
.phone-wallpaper-phone-head strong{
  display:block;
  font-size:.82rem;
}
.phone-wallpaper-phone-head small{
  display:block;
  margin-top:2px;
  color:#687386;
  font-size:.68rem;
}
.phone-wallpaper-current{
  max-width:130px;
  padding:3px 6px;
  border-radius:999px;
  background:#eaf4ff;
  color:#174c85;
  font-size:.65rem;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.phone-wallpaper-current.default{
  background:#f2f4f7;
  color:#667085;
}
.phone-wallpaper-actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.phone-wallpaper-actions form{
  margin:0;
}
.phone-wallpaper-actions .btn:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.phone-wallpaper-hint{
  margin-top:12px;
  color:#687386;
  font-size:.72rem;
  line-height:1.35;
}
@media(max-width:700px){
  .phone-wallpaper-upload{
    align-items:stretch;
  }
  .phone-wallpaper-upload .btn{
    width:100%;
  }
  .phone-wallpaper-library{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .phone-wallpaper-option{
    grid-template-rows:90px auto;
  }
  .phone-wallpaper-phone-head{
    display:block;
  }
  .phone-wallpaper-current{
    display:inline-block;
    margin-top:6px;
  }
}


/* v3.10.29 – Placetel-Allowlist-Hinweis für Yealink-Wallpaper */
.phone-wallpaper-api-note{
  display:flex;
  flex-direction:column;
  gap:5px;
  margin:12px 0 14px;
  padding:10px 12px;
  border:1px solid #e6c86c;
  border-radius:9px;
  background:#fff9e8;
  color:#5f4b12;
  font-size:.74rem;
  line-height:1.4;
}
.phone-wallpaper-api-note strong{
  font-size:.78rem;
}
.phone-wallpaper-api-note code{
  padding:1px 4px;
  border-radius:4px;
  background:rgba(255,255,255,.72);
  color:#40320b;
}
.phone-wallpaper-api-note a{
  color:#174c85;
  font-weight:700;
  text-decoration:none;
}
.phone-wallpaper-api-note a:hover{
  text-decoration:underline;
}


/* v3.10.30 – Navigationsleiste blau, Menübuttons kompakter */
.side{
  background:#183f75 !important;
  border-right:0 !important;
  padding:14px 8px !important;
  gap:4px !important;
}

.side>a{
  width:calc(100% - 10px);
  margin-left:5px;
  margin-right:5px;
  padding:8px 10px !important;
  border-radius:7px !important;
  color:#edf4fb !important;
  font-size:.88rem;
}

.side>a:hover,
.side>a.active{
  background:#ffffff !important;
  color:#173f77 !important;
}

.side .side-external-link{
  width:calc(100% - 10px);
  margin-left:5px;
  margin-right:5px;
  padding:7px 9px !important;
  color:#edf4fb !important;
}

.side .side-external-link span{
  color:#d9e7f5 !important;
}

.side .side-external-link:hover{
  background:#ffffff !important;
  color:#173f77 !important;
}

.side .side-external-link:hover span{
  color:#173f77 !important;
}

.side-separator{
  background:rgba(255,255,255,.28) !important;
}

.side-vtp-title,
.side-vtp-form label{
  color:#ffffff !important;
}

.side-bottom-links>a{
  width:calc(100% - 10px);
  margin-left:5px;
  margin-right:5px;
  padding:8px 10px !important;
}

@media(max-width:760px){
  .side{
    padding:7px !important;
  }

  .side>a,
  .side .side-external-link,
  .side-bottom-links>a{
    width:auto;
    margin-left:0;
    margin-right:0;
    padding:7px 9px !important;
  }

  .side-separator{
    background:rgba(255,255,255,.28) !important;
  }
}
\n\n/* v3.10.31 – Mitarbeiterseite: Filter absichern + Arbeitszeit-Aktionen unten links */\n.staff-shell .call-filter,\n.staff-shell .call-filter.second{\n  display:flex !important;\n  visibility:visible !important;\n}\n\n.staff-shell .call-column-filters{\n  display:block !important;\n  visibility:visible !important;\n}\n\n.staff-shell .oq-list-tools{\n  display:flex !important;\n  visibility:visible !important;\n}\n\n.staff-shell .contact-letter-nav,\n.staff-shell .contact-list-tools{\n  visibility:visible !important;\n}\n\n.staff-shell .staff-side-spacer{\n  flex:1 1 auto;\n  min-height:14px;\n}\n\n.staff-shell .staff-side-work-actions{\n  display:flex;\n  flex-direction:column;\n  gap:6px;\n  margin-top:auto;\n  padding:9px 5px 2px;\n  border-top:1px solid rgba(255,255,255,.28);\n}\n\n.staff-shell .staff-side-work-form{\n  margin:0;\n}\n\n.staff-shell .staff-side-action{\n  display:flex;\n  align-items:center;\n  justify-content:center;\n  width:100%;\n  min-height:34px;\n  padding:7px 9px;\n  border-radius:7px;\n  border:1px solid rgba(255,255,255,.55);\n  background:rgba(255,255,255,.10);\n  color:#fff !important;\n  font:inherit;\n  font-size:.78rem;\n  font-weight:750;\n  line-height:1.1;\n  cursor:pointer;\n  text-align:center;\n}\n\n.staff-shell button.staff-side-action{\n  appearance:none;\n}\n\n.staff-shell .staff-side-action:hover,\n.staff-shell .staff-side-action:focus-visible{\n  background:#fff !important;\n  color:#173f77 !important;\n}\n\n.staff-shell .staff-side-action.pause-action.is-paused{\n  background:#f5c84b;\n  border-color:#f5c84b;\n  color:#3f3308 !important;\n}\n\n.staff-shell .staff-side-action.logout-action{\n  background:rgba(255,255,255,.16);\n}\n\n@media(max-width:760px){\n  .staff-shell .staff-side-spacer{display:none;}\n  .staff-shell .staff-side-work-actions{\n    flex-direction:row;\n    flex:0 0 auto;\n    margin-top:0;\n    padding:0 0 0 6px;\n    border-top:0;\n    border-left:1px solid rgba(255,255,255,.28);\n  }\n  .staff-shell .staff-side-action{\n    width:auto;\n    min-height:31px;\n    white-space:nowrap;\n    padding:6px 8px;\n  }\n}\n

/* v3.10.32 – Mitarbeiterseite: gelber Pause-Button + Filter in einer Zeile */
.staff-shell .staff-side-work-actions{
  margin-top:auto !important;
  padding:10px 5px 3px !important;
  border-top:1px solid rgba(255,255,255,.28) !important;
}

.staff-shell .staff-side-work-form{
  width:100%;
  margin:0;
}

.staff-shell .staff-side-action.pause-action,
.staff-shell .staff-side-action.pause-action.is-paused{
  width:100%;
  min-height:36px;
  padding:8px 10px !important;
  border:1px solid #f5c84b !important;
  background:#f5c84b !important;
  color:#3f3308 !important;
  font-weight:800;
  box-shadow:none;
}

.staff-shell .staff-side-action.pause-action:hover,
.staff-shell .staff-side-action.pause-action:focus-visible{
  background:#ffd968 !important;
  border-color:#ffd968 !important;
  color:#302600 !important;
}

.staff-shell .call-column-filters{
  padding:10px 12px !important;
}

.staff-shell .call-filter-grid.staff-filter-row{
  display:grid !important;
  grid-template-columns:
    minmax(118px,.82fr)
    minmax(118px,.82fr)
    minmax(170px,1.25fr)
    minmax(155px,1.05fr)
    minmax(132px,.9fr)
    max-content !important;
  gap:8px !important;
  align-items:end !important;
  width:100%;
}

.staff-shell .call-filter-grid.staff-filter-row label{
  min-width:0;
  margin:0;
  font-size:.72rem;
  white-space:nowrap;
}

.staff-shell .call-filter-grid.staff-filter-row input,
.staff-shell .call-filter-grid.staff-filter-row select{
  width:100%;
  min-width:0;
  height:33px;
  padding:5px 7px !important;
  font-size:.75rem !important;
}

.staff-shell .staff-filter-reset{
  display:flex;
  align-items:flex-end;
  height:100%;
}

.staff-shell .staff-filter-reset .btn{
  min-height:33px;
  padding:6px 9px !important;
  white-space:nowrap;
  font-size:.71rem;
}

.staff-shell #filterCount{
  margin-top:5px;
  font-size:.69rem;
}

@media(max-width:1100px){
  .staff-shell .call-column-filters{
    overflow-x:auto;
  }
  .staff-shell .call-filter-grid.staff-filter-row{
    min-width:850px;
  }
}

@media(max-width:760px){
  .staff-shell .staff-side-work-actions{
    padding:0 0 0 6px !important;
    border-top:0 !important;
  }
  .staff-shell .staff-side-action.pause-action,
  .staff-shell .staff-side-action.pause-action.is-paused{
    width:auto;
    min-height:31px;
    padding:6px 10px !important;
    white-space:nowrap;
  }
}


/* v3.10.33 – Pause-Button kompakt unten in der Mitarbeiter-Navigationsleiste */
.staff-shell .staff-side-work-actions{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin-top:auto !important;
  padding:10px 8px 6px !important;
  border-top:1px solid rgba(255,255,255,.28) !important;
}

.staff-shell .staff-side-work-form{
  display:flex;
  justify-content:center;
  width:100%;
  margin:0;
}

.staff-shell .staff-side-action.pause-action,
.staff-shell .staff-side-action.pause-action.is-paused{
  width:auto !important;
  min-width:118px;
  max-width:150px;
  min-height:34px;
  padding:7px 16px !important;
  border-radius:9px !important;
  border:1px solid #f5c84b !important;
  background:#f5c84b !important;
  color:#3f3308 !important;
  font-size:.78rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  box-shadow:0 1px 2px rgba(0,0,0,.10);
}

.staff-shell .staff-side-action.pause-action:hover,
.staff-shell .staff-side-action.pause-action:focus-visible{
  background:#ffd968 !important;
  border-color:#ffd968 !important;
  color:#302600 !important;
}

@media(max-width:760px){
  .staff-shell .staff-side-work-actions{
    flex:0 0 auto !important;
    margin-top:0 !important;
    padding:0 0 0 6px !important;
    border-top:0 !important;
    border-left:1px solid rgba(255,255,255,.28) !important;
  }

  .staff-shell .staff-side-action.pause-action,
  .staff-shell .staff-side-action.pause-action.is-paused{
    min-width:96px;
    max-width:120px;
    min-height:31px;
    padding:6px 12px !important;
    border-radius:8px !important;
  }
}


/* v3.10.34 – Pause und Feierabend oben rechts */
.staff-shell .staff-top-actions{
  gap:8px;
}

.staff-shell .topbar-pause-form{
  display:inline-flex;
  margin:0;
}

.staff-shell .staff-pause-btn{
  min-width:96px;
  padding:8px 13px !important;
  border-radius:9px !important;
  border:1px solid #e3b93d !important;
  background:#f5c84b !important;
  color:#3f3308 !important;
  font-size:.80rem;
  font-weight:750;
  line-height:1;
  box-shadow:0 1px 2px rgba(20,35,60,.08);
}

.staff-shell .staff-pause-btn:hover,
.staff-shell .staff-pause-btn:focus-visible{
  background:#ffd968 !important;
  border-color:#e8bd3f !important;
  color:#302600 !important;
}

.staff-shell .staff-finish-btn{
  min-width:92px;
  padding:8px 13px !important;
  border-radius:9px !important;
  border:1px solid #efb2ad !important;
  background:#fde8e6 !important;
  color:#a53a31 !important;
  font-size:.80rem;
  font-weight:750;
  line-height:1;
  box-shadow:0 1px 2px rgba(20,35,60,.06);
}

.staff-shell .staff-finish-btn:hover,
.staff-shell .staff-finish-btn:focus-visible{
  background:#fbd7d3 !important;
  border-color:#e99a94 !important;
  color:#8f2f28 !important;
}

@media(max-width:760px){
  .staff-shell .staff-top-actions{
    gap:6px;
  }

  .staff-shell .staff-pause-btn,
  .staff-shell .staff-finish-btn{
    min-width:auto;
    padding:7px 9px !important;
    font-size:.75rem;
  }
}

@media(max-width:520px){
  .staff-shell .staff-top-actions>span{
    display:none;
  }
}


/* v3.10.35 – Pause/Feierabend optisch verfeinert */
.staff-shell .staff-top-actions{
  display:flex;
  align-items:center;
  gap:10px;
}

.staff-shell .topbar-pause-form{
  display:flex;
  align-items:center;
  margin:0;
}

.staff-shell .staff-pause-btn,
.staff-shell .staff-finish-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-width:104px;
  min-height:38px;
  padding:8px 16px !important;
  border-radius:11px !important;
  color:#111 !important;
  font-size:.81rem !important;
  font-weight:750 !important;
  line-height:1 !important;
  letter-spacing:.01em;
  box-shadow:0 2px 5px rgba(20,35,60,.10);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    background-color .12s ease,
    border-color .12s ease;
  text-decoration:none !important;
}

.staff-shell .staff-pause-btn{
  border:1px solid #e2bb45 !important;
  background:#f6cf5b !important;
}

.staff-shell .staff-finish-btn{
  border:1px solid #e7aaa4 !important;
  background:#f6d3d0 !important;
}

.staff-shell .staff-pause-btn:hover,
.staff-shell .staff-pause-btn:focus-visible{
  background:#ffdb71 !important;
  border-color:#dcb13a !important;
  color:#111 !important;
  box-shadow:0 3px 8px rgba(20,35,60,.14);
  transform:translateY(-1px);
}

.staff-shell .staff-finish-btn:hover,
.staff-shell .staff-finish-btn:focus-visible{
  background:#efc0bc !important;
  border-color:#dc918a !important;
  color:#111 !important;
  box-shadow:0 3px 8px rgba(20,35,60,.14);
  transform:translateY(-1px);
}

.staff-shell .staff-pause-btn:active,
.staff-shell .staff-finish-btn:active{
  transform:translateY(0);
  box-shadow:0 1px 3px rgba(20,35,60,.10);
}

@media(max-width:760px){
  .staff-shell .staff-top-actions{
    gap:6px;
  }

  .staff-shell .staff-pause-btn,
  .staff-shell .staff-finish-btn{
    min-width:90px;
    min-height:34px;
    padding:7px 11px !important;
    border-radius:9px !important;
    font-size:.76rem !important;
  }
}


/* v3.10.36 – Dashboard: offene Vorgänge kompakter als Kacheln */
.staff-shell .compact-work-stats{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:9px !important;
  margin-bottom:12px !important;
}

.staff-shell .compact-work-stats .work-stat{
  min-height:78px;
  padding:12px 14px !important;
  border-radius:11px !important;
  box-shadow:0 3px 10px rgba(20,35,60,.045) !important;
}

.staff-shell .compact-work-stats .work-stat strong{
  margin-bottom:4px !important;
  font-size:1.55rem !important;
}

.staff-shell .compact-work-stats .work-stat span{
  font-size:.76rem !important;
  line-height:1.25;
}

.staff-shell .compact-my-work-panel{
  padding:14px !important;
}

.staff-shell .compact-my-work-panel .dashboard-my-work-head{
  margin-bottom:2px !important;
}

.staff-shell .compact-my-work-panel .dashboard-my-work-head h2{
  font-size:1.08rem;
}

.staff-shell .compact-my-work-panel .dashboard-my-work-head p{
  font-size:.76rem;
}

.staff-shell .compact-process-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}

.staff-shell .compact-process-grid .dash-call-row{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  grid-template-areas:
    "brand main due"
    "brand main open" !important;
  align-items:start !important;
  min-width:0;
  min-height:88px;
  padding:9px !important;
  gap:6px 8px !important;
  border-radius:10px !important;
  background:#fff;
  box-shadow:0 2px 7px rgba(20,35,60,.035);
}

.staff-shell .compact-process-grid .dash-call-row>.dash-call-date{
  grid-area:brand;
  align-self:start;
  min-width:48px;
  min-height:30px;
  padding:0 5px;
  font-size:.70rem;
}

.staff-shell .compact-process-grid .dash-call-main{
  grid-area:main;
  min-width:0;
}

.staff-shell .compact-process-grid .dash-call-main .customer-link{
  font-size:.78rem;
}

.staff-shell .compact-process-grid .dash-call-main>span{
  margin-top:2px;
  font-size:.72rem;
}

.staff-shell .compact-process-grid .dash-note{
  display:-webkit-box;
  margin-top:4px;
  padding:4px 6px;
  overflow:hidden;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  font-size:.68rem;
  line-height:1.25;
}

.staff-shell .compact-process-grid .dash-due{
  grid-area:due;
  justify-self:end;
  font-size:.69rem !important;
}

.staff-shell .compact-process-grid .dash-call-row>.btn{
  grid-area:open;
  justify-self:end;
  align-self:end;
  padding:4px 7px !important;
  font-size:.68rem !important;
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-row{
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) !important;
  grid-template-areas:
    "date main"
    "date open" !important;
  align-items:start !important;
  min-width:0;
  min-height:88px;
  padding:9px !important;
  gap:6px 8px !important;
  border-radius:10px !important;
  box-shadow:0 2px 7px rgba(20,35,60,.035);
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-date{
  grid-area:date;
  min-height:30px;
  font-size:.70rem;
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-main{
  grid-area:main;
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-main>strong{
  font-size:.78rem;
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-main>span{
  font-size:.72rem;
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-main>small:not(.dash-note){
  font-size:.67rem;
}

.staff-shell .compact-process-grid.dash-oq-list .dash-oq-row>.btn{
  grid-area:open;
  justify-self:end;
  align-self:end;
  padding:4px 7px !important;
  font-size:.68rem !important;
}

.staff-shell .compact-my-work-panel .dashboard-work-divider{
  margin:11px 0 4px !important;
}

.staff-shell .compact-my-work-panel .dashboard-work-section-head{
  margin-bottom:7px !important;
}

.staff-shell .compact-my-work-panel .dashboard-work-section-head h3{
  font-size:.90rem !important;
}

@media(max-width:1100px){
  .staff-shell .compact-process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:760px){
  .staff-shell .compact-work-stats{
    grid-template-columns:repeat(3,minmax(150px,1fr)) !important;
    overflow-x:auto;
    padding-bottom:2px;
  }

  .staff-shell .compact-process-grid{
    grid-template-columns:1fr !important;
  }
}

/* v3.10.37 – Kontakte: Excel-Upload mit sicherer Importvorschau */
.contact-head-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.contact-import-card,
.contact-import-summary-card,
.contact-import-preview-card{
  margin-bottom:16px;
}
.contact-import-card h2,
.contact-import-summary-card h2,
.contact-import-preview-card h2{
  margin-top:0;
}
.contact-import-form{
  display:grid;
  grid-template-columns:minmax(280px,1fr) auto;
  align-items:end;
  gap:12px;
  margin-top:14px;
}
.contact-import-form label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-weight:700;
}
.contact-import-form input[type="file"]{
  min-height:42px;
  padding:8px 10px;
  border:1px solid #cbd5df;
  border-radius:8px;
  background:#fff;
  color:#263445;
}
.contact-import-rule{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:14px;
  padding:10px 12px;
  border:1px solid #b9cfe5;
  border-radius:9px;
  background:#f5f9fd;
  color:#344054;
  font-size:.84rem;
}
.contact-import-stats{
  display:grid;
  grid-template-columns:repeat(5,minmax(120px,1fr));
  gap:10px;
}
.contact-import-stats>div{
  min-width:0;
  padding:12px;
  border:1px solid #dfe4ea;
  border-radius:10px;
  background:#f8fafc;
}
.contact-import-stats b{
  display:block;
  margin-bottom:3px;
  color:#173f77;
  font-size:1.25rem;
}
.contact-import-stats span{
  color:#687386;
  font-size:.76rem;
  line-height:1.25;
}
.contact-import-table-wrap{
  overflow-x:auto;
}
.contact-import-table{
  min-width:1120px;
}
.contact-import-table td{
  vertical-align:top;
}
.contact-import-tag{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border:1px solid #9ec8aa;
  border-radius:999px;
  background:#edf9f0;
  color:#067647;
  font-weight:800;
  white-space:nowrap;
}
.contact-import-tag-empty{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border:1px solid #decf72;
  border-radius:999px;
  background:#fff8d8;
  color:#725a00;
  font-weight:750;
  white-space:nowrap;
}
@media(max-width:900px){
  .contact-import-stats{grid-template-columns:repeat(2,minmax(120px,1fr));}
}
@media(max-width:700px){
  .contact-head-actions{width:100%;justify-content:flex-start;}
  .contact-import-form{grid-template-columns:1fr;align-items:stretch;}
  .contact-import-form .btn{width:100%;}
  .contact-import-stats{grid-template-columns:1fr 1fr;}
}

/* v3.10.38 – Read-only Placetel-Abgleich für Excel-Kontakte */
.contact-import-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.contact-import-actions form{margin:0}
.contact-import-compare-card{margin-bottom:16px}
.contact-import-compare-card h2{margin-top:0}
.contact-import-compare-stats{margin:12px 0 16px}
.contact-import-compare-table{min-width:1280px}
.contact-sync-status{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border-radius:999px;font-size:.75rem;font-weight:800;white-space:nowrap;border:1px solid transparent}
.contact-sync-status.status-new{background:#edf9f0;border-color:#9ec8aa;color:#067647}
.contact-sync-status.status-update{background:#eef6ff;border-color:#a8c7e8;color:#175a96}
.contact-sync-status.status-unchanged{background:#f2f4f7;border-color:#d0d5dd;color:#475467}
.contact-sync-status.status-review{background:#fff8d8;border-color:#decf72;color:#725a00}
.contact-sync-status.status-conflict{background:#fff0ee;border-color:#e7a9a0;color:#b42318}
.contact-compare-sub{margin-top:4px;color:#667085;font-size:.78rem;line-height:1.35}
.contact-compare-id{margin-left:5px;color:#98a2b3;font-size:.74rem}
.contact-compare-sep{border:0;border-top:1px solid #e4e7ec;margin:8px 0}
.contact-compare-changes{margin:0;padding-left:18px}
.contact-compare-changes li{margin:0 0 4px}
.contact-import-next-step{margin-top:14px;padding:11px 12px;border:1px solid #b9cfe5;border-radius:9px;background:#f5f9fd;color:#344054;font-size:.84rem}
@media(max-width:700px){.contact-import-actions{width:100%;justify-content:flex-start}.contact-import-actions .btn{width:100%}.contact-import-actions form{width:100%}}

/* v3.10.39 – Kontaktimport Konfliktauflösung + selektive Synchronisierung */
.contact-sync-status.status-skip{background:#f8f9fb;border-color:#cfd5dd;color:#667085}
.contact-row-needs-decision td{background:#fffdf5}
.contact-resolution-form{margin:0}
.contact-resolution-label{display:block;margin-top:10px;font-weight:800;color:#344054}
.contact-resolution-select{display:block;width:100%;min-width:290px;margin-top:6px;padding:9px 10px;border:1px solid #b8c6d5;border-radius:8px;background:#fff;color:#172033;font:inherit}
.contact-resolution-select:focus{outline:2px solid rgba(23,90,150,.18);border-color:#6ea0cf}
.contact-resolution-help{margin-top:6px;font-size:.76rem;line-height:1.35;color:#667085}
.contact-resolution-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;padding:12px;border:1px solid #e2d29b;border-radius:10px;background:#fffaf0}
.contact-resolution-actions .muted{font-size:.82rem}
.contact-compare-reasons{margin-top:5px;font-size:.74rem;color:#667085;font-weight:650}
.contact-import-sync-box{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:16px;padding:14px 15px;border:1px solid #a8c7e8;border-radius:10px;background:#f5f9fd}
.contact-import-sync-box>div{min-width:0}
.contact-import-sync-box strong{color:#175a96}
.contact-import-sync-box p{margin:5px 0 0;max-width:880px;color:#475467;font-size:.84rem;line-height:1.45}
.contact-import-sync-box form{margin:0;flex:0 0 auto}
.contact-sync-report{margin-top:12px;padding:12px 14px;border:1px solid #b7d7c1;border-radius:10px;background:#f4fbf6;color:#344054;font-size:.84rem}
.contact-sync-report-detail{margin-top:7px;line-height:1.4}
.contact-sync-report-detail.error{color:#b42318}
@media(max-width:900px){
  .contact-import-sync-box{align-items:stretch;flex-direction:column}
  .contact-import-sync-box form,.contact-import-sync-box .btn{width:100%}
  .contact-resolution-select{min-width:0}
}


/* v3.10.44 – Wiedervorlagen im Mitarbeiter-Dashboard deutlicher kennzeichnen */
.staff-shell .compact-work-stats .work-stat.follow{
  position:relative;
  overflow:hidden;
  border-color:#e2b866 !important;
  background:linear-gradient(135deg,#fff8e8,#fffdf7) !important;
  box-shadow:0 4px 12px rgba(154,103,0,.10) !important;
}
.staff-shell .compact-work-stats .work-stat.follow::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#d89b20;
}
.staff-shell .compact-work-stats .work-stat.follow strong{color:#986200 !important;}
.staff-shell .compact-work-stats .work-stat.follow span{color:#6f4b00 !important;font-weight:800 !important;}

.staff-shell .compact-process-grid .dash-call-row.dash-call-followup{
  border:1px solid #e4c173 !important;
  background:linear-gradient(135deg,#fffaf0,#fff) !important;
  box-shadow:0 3px 10px rgba(154,103,0,.08) !important;
}
.staff-shell .dash-followup-badge{
  display:inline-flex !important;
  width:max-content;
  margin:3px 0 1px !important;
  padding:2px 6px;
  border:1px solid #e2b866;
  border-radius:999px;
  background:#fff0c7;
  color:#7a4a00 !important;
  font-size:.62rem !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  letter-spacing:.02em;
}
.staff-shell .compact-process-grid .dash-call-followup .dash-due{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:118px;
  padding:3px 6px;
  border-radius:7px;
  background:#fff0c7;
  color:#7a4a00;
  border:1px solid #e2b866;
  font-weight:800;
  text-align:center;
  line-height:1.15;
}
.staff-shell .compact-process-grid .dash-call-followup .dash-due.today{
  background:#ffe1ad;
  border-color:#e59a2f;
  color:#7a3f00;
}
.staff-shell .compact-process-grid .dash-call-followup .dash-due.overdue{
  background:#fff0ef;
  border-color:#e7a39e;
  color:#b42318;
}

/* v3.10.46 – Kfz-Beitragsanpassungen / Jahresimport */
.kfz-head{align-items:center;margin-bottom:14px}.kfz-head h1,.kfz-detail-head h1{margin-bottom:4px}.kfz-year-switch{min-width:190px}.kfz-year-switch label{font-size:.82rem;font-weight:800;display:grid;gap:5px}.kfz-stats{grid-template-columns:repeat(5,minmax(120px,1fr));margin-bottom:16px}.kfz-stat-high{border-color:#efb7b2;background:#fff8f7}.kfz-stat-high b{color:#b42318}.kfz-import-card,.kfz-filter-card{margin-bottom:16px}.kfz-import-card h2,.kfz-filter-card h2,.kfz-contact-card h2,.kfz-simulation-card h2,.kfz-contribution-card h2,.kfz-sf-card h2,.kfz-history-card h2{margin-top:0}.kfz-import-form{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:12px;align-items:end}.kfz-import-form label{font-size:.84rem;font-weight:750;display:grid;gap:5px}.kfz-last-import{margin:10px 0 0}.kfz-danger-zone{margin-top:12px;border-top:1px solid #e5e9ee;padding-top:10px}.kfz-danger-zone summary{cursor:pointer;color:#687386;font-size:.82rem}.kfz-danger-zone form{margin-top:10px}.kfz-filter-form{display:grid;grid-template-columns:minmax(320px,2fr) repeat(3,minmax(150px,1fr)) auto;gap:10px;align-items:end}.kfz-filter-form label{display:grid;gap:5px;font-size:.8rem;font-weight:750}.kfz-filter-actions{display:flex;gap:7px;align-items:center}.kfz-priority-note{margin:10px 0 0;font-size:.78rem}.kfz-result-head{display:flex;gap:8px;align-items:center;margin:15px 2px 9px;color:#687386}.kfz-result-head strong{color:#172033}.kfz-list{display:grid;gap:8px}.kfz-row{display:grid;grid-template-columns:150px minmax(220px,1.5fr) minmax(135px,.7fr) minmax(220px,1fr) minmax(190px,.9fr) minmax(125px,.6fr) auto;gap:13px;align-items:center;padding:13px 14px;box-shadow:0 2px 8px rgba(20,35,60,.04)}.kfz-row.kfz-priority-high{border-left:5px solid #d92d20}.kfz-row.kfz-priority-medium{border-left:5px solid #f59e0b}.kfz-row.kfz-priority-low{border-left:5px solid #5b8fc2}.kfz-row.kfz-priority-none{border-left:5px solid #98a2b3}.kfz-row-priority{display:flex;gap:5px;flex-wrap:wrap}.kfz-priority-badge,.kfz-damage-badge{display:inline-flex;align-items:center;width:max-content;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:850;white-space:nowrap}.kfz-priority-badge.high{background:#fff0ee;color:#b42318;border:1px solid #efb2ab}.kfz-priority-badge.medium{background:#fff7e6;color:#8a5700;border:1px solid #efc773}.kfz-priority-badge.low{background:#edf4fb;color:#175a96;border:1px solid #b9d0e6}.kfz-priority-badge.none{background:#f2f4f7;color:#667085;border:1px solid #d0d5dd}.kfz-damage-badge{background:#fff1f0;color:#b42318;border:1px solid #efb2ab}.kfz-row-customer strong,.kfz-row-customer span,.kfz-row-plate span,.kfz-row-money span,.kfz-row-change span,.kfz-row-state span,.kfz-row-state small{display:block}.kfz-row-customer strong{font-size:.98rem}.kfz-row-customer span,.kfz-row-plate span,.kfz-row-money span,.kfz-row-change span,.kfz-row-state span{font-size:.73rem;color:#687386;margin-bottom:2px}.kfz-row-customer span{margin-top:3px;overflow-wrap:anywhere}.kfz-row-plate a{font-weight:800}.kfz-row-change .up{color:#b42318}.kfz-row-change .down{color:#067647}.kfz-row-state small{font-size:.72rem;color:#687386;margin-top:2px}.kfz-pagination{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:14px}.kfz-pagination span{margin-right:auto;color:#687386;font-size:.82rem}.kfz-call-link{display:inline-flex;margin-top:5px;padding:2px 6px;border:1px solid #b9cfe5;border-radius:6px;background:#f5f9fd;color:#175a96;font-size:.68rem;font-weight:800;width:max-content}
.kfz-detail-head{align-items:flex-end;margin-bottom:14px}.kfz-back{display:inline-block;font-size:.82rem;font-weight:750;margin-bottom:7px}.kfz-detail-links{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.kfz-contract-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.kfz-contract-hero.kfz-priority-high{border-left:6px solid #d92d20}.kfz-contract-hero.kfz-priority-medium{border-left:6px solid #f59e0b}.kfz-contract-hero.kfz-priority-low{border-left:6px solid #5b8fc2}.kfz-contract-hero h2{font-size:1.7rem;margin:7px 0 3px}.kfz-contract-hero p{margin:0;color:#687386}.kfz-hero-change{text-align:right}.kfz-hero-change span,.kfz-hero-change b{display:block}.kfz-hero-change span{font-size:.75rem;color:#687386}.kfz-hero-change strong{font-size:1.6rem;color:#b42318}.kfz-hero-change b{font-size:.9rem;color:#b42318}.kfz-detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:14px;margin-bottom:14px}.kfz-contribution-table{display:grid;grid-template-columns:minmax(210px,1.4fr) 1fr 1fr;border:1px solid #e5e9ee;border-radius:10px;overflow:hidden}.kfz-contribution-table>*{padding:9px 10px;border-bottom:1px solid #edf0f3}.kfz-contribution-table>*:nth-child(3n+2),.kfz-contribution-table>*:nth-child(3n+3){border-left:1px solid #edf0f3;text-align:right}.kfz-contribution-table>strong:nth-child(-n+3){background:#f8fafc}.kfz-contribution-table .total{background:#f4f7fb;font-weight:850;color:#173f77}.kfz-calc-note{font-size:.78rem;line-height:1.45;margin:10px 0 0}.kfz-sf-grid{display:grid;grid-template-columns:1fr auto;gap:10px 15px;align-items:center}.kfz-sf-grid span{color:#687386}.kfz-sf-grid strong{text-align:right}.kfz-sf-grid strong.warn{color:#b42318;background:#fff0ee;padding:3px 6px;border-radius:6px}.kfz-simulation-card{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;background:linear-gradient(135deg,#f5f9fd,#fff)}.kfz-simulation-card>div:first-child{max-width:700px}.kfz-simulation-card p{margin-bottom:0}.kfz-sim-controls{display:grid;grid-template-columns:120px 150px 150px;gap:12px;align-items:end}.kfz-sim-controls label{display:grid;gap:5px;font-size:.8rem;font-weight:750}.kfz-sim-controls>div{background:#fff;border:1px solid #dfe4ea;border-radius:9px;padding:9px 10px;text-align:right}.kfz-sim-controls span,.kfz-sim-controls strong{display:block}.kfz-sim-controls span{font-size:.7rem;color:#687386}.kfz-sim-controls strong{font-size:1.06rem;color:#173f77}.kfz-contact-card{margin-bottom:14px}.kfz-contact-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:11px;align-items:start}.kfz-contact-form label{display:grid;gap:5px;font-size:.8rem;font-weight:750}.kfz-note-field{grid-column:1/-1}.kfz-contact-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.kfz-history-list{display:grid;gap:9px}.kfz-history-list article{border:1px solid #e5e9ee;border-radius:10px;padding:12px;background:#fafbfc}.kfz-history-list article>div:first-child{display:flex;justify-content:space-between;gap:10px}.kfz-history-list article>div:first-child span{color:#687386;font-size:.82rem}.kfz-history-tags{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.kfz-history-tags span{padding:3px 7px;border-radius:999px;background:#edf4fb;color:#175a96;font-size:.72rem;font-weight:750}.kfz-history-list p{margin:8px 0;white-space:normal}.kfz-history-list small{color:#687386}
@media(max-width:1350px){.kfz-row{grid-template-columns:130px minmax(220px,1.4fr) 130px minmax(185px,1fr) minmax(165px,.8fr) auto}.kfz-row-state{display:none}.kfz-filter-form{grid-template-columns:2fr repeat(2,1fr)}.kfz-filter-form label:nth-of-type(4){grid-column:auto}.kfz-filter-actions{grid-column:1/-1}.kfz-contact-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1000px){.kfz-stats{grid-template-columns:repeat(3,1fr)}.kfz-row{grid-template-columns:120px minmax(220px,1fr) 140px 170px auto}.kfz-row-money{display:none}.kfz-detail-grid{grid-template-columns:1fr}.kfz-simulation-card{align-items:stretch;flex-direction:column}.kfz-sim-controls{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.kfz-import-form,.kfz-filter-form,.kfz-contact-form{grid-template-columns:1fr}.kfz-stats{grid-template-columns:1fr 1fr}.kfz-row{grid-template-columns:1fr auto;gap:8px}.kfz-row-priority,.kfz-row-customer,.kfz-row-plate,.kfz-row-change{grid-column:1}.kfz-row-actions{grid-column:2;grid-row:1/5;align-self:center}.kfz-row-money,.kfz-row-state{display:block;grid-column:1}.kfz-detail-head{align-items:flex-start}.kfz-detail-links{justify-content:flex-start}.kfz-contract-hero{align-items:flex-start;flex-direction:column}.kfz-hero-change{text-align:left}.kfz-sim-controls{grid-template-columns:1fr}.kfz-note-field,.kfz-contact-actions{grid-column:1}.kfz-contribution-table{grid-template-columns:minmax(130px,1.3fr) 1fr 1fr;font-size:.82rem}.kfz-pagination{flex-wrap:wrap}.kfz-pagination span{width:100%}}

/* v3.10.48 – Kfz kompakter, Offen-Dauer-Priorisierung, Kündigungsprio */
.kfz-head{margin-bottom:9px}.kfz-head .lead{margin:2px 0 0;font-size:.86rem}.kfz-stats{grid-template-columns:repeat(6,minmax(95px,1fr));gap:8px;margin-bottom:10px}.kfz-stats .stat{padding:9px 10px}.kfz-stats .stat b{font-size:1.2rem}.kfz-stat-cancel{border-color:#e2a0a0;background:#fff5f4}.kfz-stat-cancel b{color:#b42318}.kfz-import-card,.kfz-filter-card{margin-bottom:10px;padding:11px 13px}.kfz-import-card .panel-head h2{font-size:1rem;margin-bottom:2px}.kfz-import-card .panel-head p{font-size:.75rem;margin:0}.kfz-import-form{grid-template-columns:minmax(260px,1fr) auto;gap:8px}.kfz-filter-form{gap:7px}.kfz-priority-note{margin-top:6px}.kfz-result-head{margin:9px 2px 6px}.kfz-list{gap:5px}.kfz-row{grid-template-columns:125px minmax(205px,1.45fr) 120px minmax(190px,.9fr) minmax(120px,.6fr) auto;gap:9px;padding:8px 10px;min-height:0}.kfz-row-money{display:none}.kfz-row-customer strong{font-size:.91rem}.kfz-row-customer span,.kfz-row-plate span,.kfz-row-change span,.kfz-row-state span{font-size:.68rem}.kfz-row-change strong,.kfz-row-state strong,.kfz-row-plate a{font-size:.82rem}.kfz-priority-badge,.kfz-damage-badge{padding:3px 6px;font-size:.67rem}.kfz-row.kfz-priority-cancel,.kfz-contract-hero.kfz-priority-cancel{border-left:6px solid #b42318;background:#fffafa}.kfz-row.kfz-priority-new,.kfz-contract-hero.kfz-priority-new{border-left:5px solid #7f8c9f}.kfz-priority-badge.cancel{background:#b42318;color:#fff;border:1px solid #9e2017}.kfz-priority-badge.new{background:#eef1f5;color:#44546a;border:1px solid #c9d0da}.kfz-wants-cancel{color:#b42318!important;font-weight:800}.kfz-detail-head{margin-bottom:8px}.kfz-detail-head h1{font-size:1.45rem}.kfz-detail-head .lead{margin:2px 0 0;font-size:.82rem}.kfz-detail-links .btn{padding:6px 9px;font-size:.77rem}.kfz-contract-hero{margin-bottom:9px;padding:10px 12px}.kfz-contract-hero h2{font-size:1.28rem;margin:4px 0 2px}.kfz-contract-hero p{font-size:.78rem}.kfz-hero-change strong{font-size:1.22rem}.kfz-detail-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,.65fr);gap:8px;margin-bottom:8px}.kfz-contribution-card,.kfz-sf-card,.kfz-simulation-card,.kfz-contact-card,.kfz-history-card{padding:11px 13px}.kfz-contribution-card h2,.kfz-sf-card h2,.kfz-simulation-card h2,.kfz-contact-card h2,.kfz-history-card h2{font-size:1rem;margin-bottom:7px}.kfz-contribution-table{font-size:.79rem}.kfz-contribution-table>*{padding:5px 7px}.kfz-calc-note{font-size:.7rem;margin-top:6px}.kfz-sf-grid{gap:5px 10px;font-size:.78rem}.kfz-simulation-card{gap:12px;margin-bottom:8px}.kfz-simulation-card>div:first-child{max-width:540px}.kfz-simulation-card p{font-size:.74rem;line-height:1.35}.kfz-sim-controls{grid-template-columns:95px 125px 125px 145px;gap:7px}.kfz-sim-controls>div{padding:6px 8px}.kfz-sim-controls strong{font-size:.92rem}.kfz-sim-controls strong.up{color:#b42318}.kfz-sim-controls strong.down{color:#067647}.kfz-contact-card{margin-bottom:8px}.kfz-contact-form{grid-template-columns:repeat(5,minmax(130px,1fr));gap:7px}.kfz-contact-form label{font-size:.74rem;gap:3px}.kfz-contact-form input,.kfz-contact-form select,.kfz-contact-form textarea{padding:7px 8px;min-height:34px}.kfz-cancel-check{align-self:end}.kfz-checkline{display:flex;align-items:center;gap:6px;min-height:34px;padding:6px 8px;border:1px solid #d9dfe7;border-radius:8px;background:#fff;color:#b42318;font-weight:800}.kfz-checkline input{width:auto;min-height:0;margin:0}.kfz-note-field{grid-column:1/-2}.kfz-contact-actions{grid-column:-2/-1;align-self:end}.kfz-contact-actions .btn{width:100%}.kfz-history-list{gap:6px}.kfz-history-list article{padding:8px 10px}.kfz-history-tags{margin:5px 0}.kfz-history-tags span{font-size:.68rem;padding:2px 6px}.kfz-history-tags span.cancel{background:#fff0ee;color:#b42318}
@media(max-width:1350px){.kfz-stats{grid-template-columns:repeat(3,1fr)}.kfz-row{grid-template-columns:115px minmax(200px,1.4fr) 110px minmax(170px,.8fr) auto}.kfz-row-state{display:none}.kfz-sim-controls{grid-template-columns:90px repeat(3,1fr)}.kfz-contact-form{grid-template-columns:repeat(4,1fr)}.kfz-note-field{grid-column:1/-1}.kfz-contact-actions{grid-column:1/-1;justify-content:flex-end}.kfz-contact-actions .btn{width:auto}}
@media(max-width:1000px){.kfz-row{grid-template-columns:105px minmax(190px,1fr) 120px auto}.kfz-row-change{display:none}.kfz-detail-grid{grid-template-columns:1fr}.kfz-simulation-card{align-items:stretch;flex-direction:column}.kfz-contact-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.kfz-stats{grid-template-columns:repeat(2,1fr)}.kfz-row{grid-template-columns:1fr auto}.kfz-row-priority,.kfz-row-customer,.kfz-row-plate,.kfz-row-state,.kfz-row-change{grid-column:1}.kfz-row-state,.kfz-row-change{display:block}.kfz-row-actions{grid-column:2;grid-row:1/6}.kfz-sim-controls,.kfz-contact-form{grid-template-columns:1fr}.kfz-note-field,.kfz-contact-actions{grid-column:1}.kfz-contact-actions .btn{width:100%}}

/* v3.10.49 – Jahreskontingent Rabatt-Prozentpunkte und Kfz-Counter */
.kfz-budget-card{margin-bottom:10px;padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:center}.kfz-budget-counters{display:grid;grid-template-columns:repeat(4,minmax(115px,1fr));gap:7px}.kfz-budget-counters>div{border:1px solid #e1e6ed;border-radius:9px;background:#fafbfd;padding:7px 9px}.kfz-budget-counters span,.kfz-budget-counters strong{display:block}.kfz-budget-counters span{font-size:.66rem;color:#687386;margin-bottom:2px}.kfz-budget-counters strong{font-size:.98rem;color:#173f77}.kfz-budget-form{display:flex;gap:7px;align-items:end}.kfz-budget-form label{display:grid;gap:3px;font-size:.7rem;font-weight:800;min-width:190px}.kfz-budget-form input{min-height:34px;padding:6px 8px}.kfz-budget-note{grid-column:1/-1;margin:0;font-size:.7rem}.kfz-budget-progress{grid-column:1/-1;height:5px;border-radius:999px;background:#e8edf3;overflow:hidden}.kfz-budget-progress span{display:block;height:100%;background:#5682ad;border-radius:999px}.kfz-budget-inline{margin-top:5px!important;font-size:.7rem!important}.kfz-budget-inline.over{color:#b42318!important;font-weight:800}
@media(max-width:1100px){.kfz-budget-card{grid-template-columns:1fr}.kfz-budget-form{justify-content:flex-start}.kfz-budget-counters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.kfz-budget-counters{grid-template-columns:1fr 1fr}.kfz-budget-form{display:grid;grid-template-columns:1fr}.kfz-budget-form label{min-width:0}}

/* v3.10.51 – Kfz Kontingent verplant/vergeben + VTP-Abschlussdialog */
.kfz-budget-counters>div small{display:block;margin-top:2px;color:#687386;font-size:.63rem;line-height:1.25}
.kfz-contribution-table .payment-row{background:#fff8d8;color:#5f4b00;font-weight:850}
.kfz-vtp-modal[hidden]{display:none!important}
.kfz-vtp-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(23,32,51,.38)}
.kfz-vtp-modal-box{width:min(520px,calc(100vw - 32px));border:1px solid #e3c65b;border-radius:14px;background:#fff4b8;box-shadow:0 18px 55px rgba(23,32,51,.28);padding:22px 24px;color:#3f350d}
.kfz-vtp-modal-box h3{margin:0 0 8px;font-size:1.22rem;color:#3f350d}
.kfz-vtp-modal-box p{margin:0;line-height:1.48;color:#5b4d16}
.kfz-vtp-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
body.kfz-modal-open{overflow:hidden}
@media(max-width:620px){.kfz-vtp-modal{padding:14px}.kfz-vtp-modal-box{padding:18px}.kfz-vtp-modal-actions{display:grid;grid-template-columns:1fr}.kfz-vtp-modal-actions .btn{width:100%}}

/* v3.10.52 – Kfz-Kennzeichen-Suche in der Mitarbeitersicht */
.side-vtp-form-secondary{
  margin-top:8px;
}


/* v3.10.55 – Kfz-Erhöhungsliste: kompakte Kontaktübersicht ohne sichtbaren Neu-Status */
.kfz-stats{grid-template-columns:repeat(5,minmax(95px,1fr));}
.kfz-row{
  grid-template-columns:82px minmax(220px,1.35fr) minmax(110px,.55fr) minmax(250px,1.15fr) minmax(105px,.55fr);
  gap:12px;
  padding:8px 11px;
}
.kfz-row.kfz-priority-new{border-left-color:transparent;background:#fff;}
.kfz-row-date{min-height:18px;display:flex;align-items:center;gap:5px;color:#7a8494;white-space:nowrap;}
.kfz-row-date small{font-size:.69rem;color:#7a8494;}
.kfz-damage-dot{font-size:.78rem;color:#b42318;}
.kfz-row-customer strong{font-size:.91rem;}
.kfz-row-plate a{font-size:.86rem;font-weight:850;}
.kfz-row-change strong,.kfz-row-change small{display:block;}
.kfz-row-change strong{font-size:.84rem;}
.kfz-row-change small{margin-top:2px;color:#687386;font-size:.69rem;}
.kfz-row-state{font-size:.82rem;}
.kfz-row-state strong{font-size:.82rem;}
.kfz-row-actions,.kfz-row-priority,.kfz-row-money{display:none!important;}
@media(max-width:1100px){
  .kfz-row{grid-template-columns:74px minmax(190px,1fr) 105px minmax(215px,1fr) 95px;gap:9px;}
}
@media(max-width:760px){
  .kfz-row{grid-template-columns:64px minmax(0,1fr);gap:6px 10px;}
  .kfz-row-date{grid-column:1;grid-row:1;}
  .kfz-row-customer{grid-column:2;grid-row:1;}
  .kfz-row-plate{grid-column:2;grid-row:2;}
  .kfz-row-change{grid-column:2;grid-row:3;display:block;}
  .kfz-row-state{grid-column:2;grid-row:4;display:block;}
}


/* v3.10.57 – gesetzlicher Pausenhinweis ab 5:59 Std. Netto-Arbeitszeit */
.staff-shell .staff-pause-reminder{
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:340px;
  padding:7px 10px;
  border:1px solid #e5bd45;
  border-radius:9px;
  background:#fff4bd;
  color:#5d4700;
  box-shadow:0 1px 3px rgba(20,35,60,.08);
  font-size:.76rem;
  line-height:1.2;
  font-weight:650;
}
.staff-shell .staff-pause-reminder[hidden]{display:none!important}
.staff-shell .staff-pause-reminder strong{
  color:#4a3700;
  font-size:.76rem;
  white-space:nowrap;
}
.staff-shell .staff-pause-reminder span{
  display:inline;
  color:#5d4700;
  opacity:1;
  font-size:.76rem;
}
@media(max-width:980px){
  .staff-shell .staff-pause-reminder{
    max-width:230px;
    font-size:.72rem;
    padding:6px 8px;
  }
  .staff-shell .staff-pause-reminder span,
  .staff-shell .staff-pause-reminder strong{font-size:.72rem}
}
@media(max-width:760px){
  .staff-shell .staff-pause-reminder{
    max-width:180px;
    padding:6px 7px;
  }
  .staff-shell .staff-pause-reminder strong{display:none}
}
@media(max-width:560px){
  .staff-shell .staff-pause-reminder{
    max-width:135px;
    font-size:.68rem;
    line-height:1.12;
  }
  .staff-shell .staff-pause-reminder span{font-size:.68rem}
}

/* v3.10.58 – Seitenleiste und Kfz-Bearbeitung */
.side-bottom-links>a{color:#fff !important;}
.side-bottom-links>a:hover{background:#fff !important;color:#173f77 !important;}
.staff-shell .side-bottom-links>a{color:#fff !important;}

.kfz-row[data-href]{cursor:pointer;}
.kfz-row[data-href]:hover{border-color:#b8cce2;box-shadow:0 4px 13px rgba(20,35,60,.09);}
.kfz-row[data-href]:focus-visible{outline:3px solid rgba(35,104,173,.22);outline-offset:2px;}
.kfz-row-customer a{color:inherit;text-decoration:none;}
.kfz-row-customer strong a:hover,.kfz-row-customer small a:hover{text-decoration:underline;}
.kfz-row-customer small{display:block;margin-top:2px;font-size:.67rem;color:#7a8494;}
.kfz-row-customer small a{color:#7a8494;}

.kfz-accident-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:34px;height:20px;margin-left:5px;border-radius:6px;background:#fff0ee;border:1px solid #e9a19a;color:#b42318;}
.kfz-accident-icon svg{width:29px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.kfz-accident-icon svg circle{fill:#fff;}
.kfz-accident-icon .burst{stroke-width:2.2;}
.kfz-sf-current{display:flex;align-items:center;gap:4px;}
.kfz-sf-current .kfz-accident-icon{margin-left:4px;}

/* v3.10.59 – SF-Rückstufung direkt aus den SF-Klassen erkennen */
.kfz-sf-current.kfz-sf-worse{color:#b42318;background:#fff0ee;border:1px solid #efb2ab;border-radius:7px;padding:4px 6px;font-weight:900;}
.kfz-sf-current.kfz-sf-worse .kfz-accident-icon{background:#b42318;color:#fff;border-color:#b42318;}
.kfz-sf-current.kfz-sf-worse .kfz-accident-icon svg circle{fill:#fff;}

/* v3.10.63 – Kfz Detail-Workflow kompakter / Autosave */
.kfz-back-big{display:inline-flex!important;align-items:center;justify-content:center;min-height:40px;padding:9px 14px!important;margin:0 0 9px;font-size:.9rem!important;font-weight:900!important;border:1px solid #9fb2c8;background:#f4f8fc;color:#173f77;border-radius:9px;text-decoration:none}
.kfz-back-big:hover{background:#eaf2f9}
.kfz-row-date .kfz-accident-icon{display:none!important}
.kfz-row.kfz-priority-pending,.kfz-contract-hero.kfz-priority-pending{border-left:6px solid #d69e00;background:#fffdf4}
.kfz-priority-badge.pending{background:#fff4c7;color:#755400;border:1px solid #e8ca67}

.kfz-sf-table{display:grid;gap:7px}
.kfz-sf-line{display:grid;grid-template-columns:36px 40px 58px 20px 40px 58px 42px;gap:6px;align-items:center;min-height:32px;padding:4px 0;border-bottom:1px solid #eef1f4}
.kfz-sf-line:last-child{border-bottom:0}
.kfz-sf-kind{font-weight:900;color:#173f77}
.kfz-sf-line small{font-size:.69rem;color:#7a8494;text-align:center}
.kfz-sf-line strong{text-align:center;font-size:.88rem;white-space:nowrap}
.kfz-sf-arrow{text-align:center;color:#98a2b3}
.kfz-sf-line strong.kfz-sf-worse{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:3px 6px;border-radius:7px;background:#fff0ee;border:1px solid #efb2ab;color:#b42318;font-weight:950}
.kfz-sf-icon-slot{width:42px;display:flex;justify-content:flex-start}
.kfz-sf-icon-slot .kfz-accident-icon{margin:0;width:36px;height:22px;background:#b42318;color:#fff;border-color:#b42318}
.kfz-sf-icon-slot .kfz-accident-icon svg{width:30px;height:16px}

.kfz-contact-form-v2{display:grid;gap:9px}
.kfz-contact-form-v2 label{font-size:.74rem;font-weight:750}
.kfz-contact-form-v2 input,.kfz-contact-form-v2 select,.kfz-contact-form-v2 textarea{min-height:36px;padding:7px 8px}
.kfz-contact-toprow{display:grid;grid-template-columns:210px minmax(165px,220px) minmax(300px,1fr);gap:8px;align-items:end}
.kfz-contact-toprow>label{display:grid;gap:4px}
.kfz-contact-time input{width:100%;box-sizing:border-box}
.kfz-priority-box{display:grid;grid-template-columns:auto 1fr 1fr;gap:6px;align-items:center}
.kfz-priority-box>span{font-size:.74rem;font-weight:800;color:#4a5568}
.kfz-priority-box .kfz-checkline{min-height:36px}
.kfz-checkline-strong{background:#fff!important;border-color:#d9dfe7!important;color:#b42318!important}

.kfz-measures-block{border:1px solid #e0e6ed;border-radius:10px;background:#f9fbfd;padding:9px}
.kfz-measures-title{display:flex;align-items:baseline;gap:10px;margin-bottom:7px}
.kfz-measures-title strong{font-size:.82rem;color:#172033}
.kfz-measures-title small{font-size:.68rem;color:#7a8494}
.kfz-measures-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}
.kfz-measure-card{min-width:0;border:1px solid #dfe5ec;background:#fff;border-radius:9px;padding:7px;display:grid;grid-template-columns:1fr auto;gap:4px 6px;align-items:center}
.kfz-measure-check{display:flex!important;align-items:center;gap:6px;font-size:.76rem!important;font-weight:850!important;white-space:nowrap}
.kfz-measure-check input{width:auto!important;min-height:0!important;margin:0}
.kfz-measure-link{font-size:.66rem;font-weight:850;color:#175a96;text-decoration:none;white-space:nowrap}
.kfz-measure-link:hover{text-decoration:underline}
.kfz-discount-small{width:68px!important;min-height:30px!important;padding:4px 5px!important;font-size:.75rem}
.kfz-measure-price{grid-column:1/-1;font-size:.65rem;color:#687386;white-space:nowrap}
.kfz-premium-input{grid-column:1/-1;display:grid!important;grid-template-columns:auto 1fr;gap:5px!important;align-items:center;font-size:.66rem!important;color:#687386}
.kfz-premium-input input{min-height:30px!important;padding:4px 6px!important;font-size:.75rem}
.kfz-premium-source-card{grid-template-columns:1fr;background:#f5f9fd}
.kfz-premium-source-card label{display:grid;gap:3px;font-size:.7rem}
.kfz-premium-source-card select{min-height:30px!important;padding:4px 6px!important;font-size:.74rem}
.kfz-premium-source-card small{font-size:.65rem;color:#44546a;line-height:1.3}

.kfz-contact-bottomrow{display:grid;grid-template-columns:minmax(190px,1.1fr) minmax(120px,.55fr) minmax(150px,.65fr);gap:8px;align-items:end}
.kfz-contact-bottomrow label{display:grid;gap:4px}
.kfz-note-field-v2{display:grid!important;gap:4px}
.kfz-note-field-v2 textarea{width:100%;box-sizing:border-box;min-height:74px;resize:vertical}
.kfz-autosave-hint{margin:0;font-size:.67rem;color:#7a8494;text-align:right}

.kfz-vtp-modal-box{background:#fff4b8!important}
.kfz-vtp-modal-actions .btn{min-width:88px}

@media(max-width:1400px){
 .kfz-measures-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .kfz-contact-toprow{grid-template-columns:200px 190px 1fr}
}
@media(max-width:900px){
 .kfz-contact-toprow,.kfz-contact-bottomrow{grid-template-columns:1fr}
 .kfz-priority-box{grid-template-columns:1fr 1fr}.kfz-priority-box>span{grid-column:1/-1}
 .kfz-measures-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kfz-sf-line{grid-template-columns:34px 36px 54px 16px 36px 54px 40px;gap:4px}
}
@media(max-width:620px){
 .kfz-measures-grid{grid-template-columns:1fr}
 .kfz-priority-box{grid-template-columns:1fr}
 .kfz-sf-line{grid-template-columns:30px 32px 48px 14px 32px 48px 38px;font-size:.75rem}
 .kfz-sf-icon-slot .kfz-accident-icon{transform:scale(.92);transform-origin:left center}
}
.kfz-row-state strong.kfz-status-in-schwebe{display:inline-block;padding:4px 7px;border-radius:7px;background:#fff4c7;color:#755400;border:1px solid #e8ca67}
.kfz-row-state strong.kfz-status-akzeptiert-verarbeitet{display:inline-block;padding:4px 7px;border-radius:7px;background:#eaf8ef;color:#067647;border:1px solid #a6ddb8}
.kfz-row-state strong.kfz-status-abgelehnt{color:#667085}
.kfz-row-state strong.kfz-status-kuendigung{color:#b42318}

/* v3.10.64 – Admin-Struktur, Arbeitszeitkorrektur und Kfz-Detailoptimierung */
.employee-subtools{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;align-items:flex-start}
.employee-subtool{padding:0;border:0;box-shadow:none;background:transparent;margin:0}
.employee-subtool>summary,.employee-user-create>summary{list-style:none;cursor:pointer;width:max-content}
.employee-subtool>summary::-webkit-details-marker,.employee-user-create>summary::-webkit-details-marker{display:none}
.employee-subtool[open]{width:100%;padding:14px;border:1px solid #e1e6ec;border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(20,35,60,.05)}
.employee-subtool[open]>summary{margin-bottom:12px}
.employee-subtool-body{display:grid;gap:12px}
.employee-user-create{margin-bottom:12px}
.employee-user-create[open]>summary{margin-bottom:10px}
.employee-user-create-form{margin-top:8px}
.employee-users-table{margin-top:4px}

.admin-time-correction{scroll-margin-top:18px;margin-top:16px}
.admin-time-correction-filter{display:grid;grid-template-columns:minmax(220px,1fr) 190px auto;gap:10px;align-items:end;margin-bottom:14px}
.admin-time-correction-filter label,.admin-time-correction-form label,.admin-pause-correction-form label{display:grid;gap:4px;font-size:.78rem;font-weight:750}
.admin-time-correction-name{margin:4px 0 10px;color:#173f77}
.admin-time-correction-list{display:grid;gap:10px}
.admin-time-correction-entry{border:1px solid #e1e6ec;border-radius:10px;padding:11px;background:#fbfcfd}
.admin-time-correction-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px;font-size:.8rem}.admin-time-correction-meta span{color:#687386}
.admin-time-correction-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:8px;align-items:end}
.admin-pause-correction{border-top:1px solid #e4e8ed;margin-top:10px;padding-top:9px;display:grid;gap:7px}
.admin-pause-correction-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr)) auto;gap:8px;align-items:end}

/* SF-Entwicklung: Piktogramm bleibt sicher innerhalb der Karte. */
.kfz-sf-card{min-width:0;overflow:hidden}
.kfz-sf-table{min-width:0;width:100%}
.kfz-sf-line{width:100%;min-width:0;box-sizing:border-box;grid-template-columns:28px 28px minmax(36px,1fr) 12px 28px minmax(38px,1fr) 32px;gap:3px}
.kfz-sf-line strong{min-width:0}
.kfz-sf-icon-slot{width:32px;min-width:32px;justify-content:center;overflow:hidden}
.kfz-sf-icon-slot .kfz-accident-icon{width:30px;height:20px;margin:0;padding:2px;box-sizing:border-box}
.kfz-sf-icon-slot .kfz-accident-icon svg{width:26px;height:14px;display:block}

/* Gesprächsdokumentation: Maßnahmen größer und zweispaltig. */
.kfz-contact-form-v2{gap:11px}
.kfz-contact-toprow{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(300px,1.4fr)}
.kfz-contact-toprow input,.kfz-contact-toprow select{height:38px;min-height:38px;box-sizing:border-box}
.kfz-measures-block{padding:12px}
.kfz-measures-title{margin-bottom:10px;align-items:flex-start}
.kfz-measures-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kfz-measure-card{padding:11px 12px;min-height:96px;display:flex;flex-direction:column;gap:9px;align-items:stretch}
.kfz-measure-main{display:flex;align-items:center;justify-content:space-between;gap:12px}
.kfz-measure-check{font-size:.82rem!important}
.kfz-measure-link{font-size:.72rem}
.kfz-premium-input{display:grid!important;grid-template-columns:90px minmax(120px,1fr)!important;gap:8px!important;margin-top:auto}
.kfz-premium-input input{min-height:34px!important}
.kfz-measure-card-discount{min-height:150px;background:#f7fbff;border-color:#c9d9e8}
.kfz-discount-inline{display:grid!important;grid-template-columns:auto 90px;gap:8px!important;align-items:center;width:max-content;font-size:.72rem!important;color:#44546a}
.kfz-discount-inline select{min-height:32px!important;padding:4px 6px!important}
.kfz-discount-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.kfz-discount-results>div{border:1px solid #dde6ef;border-radius:8px;background:#fff;padding:7px 8px}
.kfz-discount-results span,.kfz-discount-results strong{display:block}.kfz-discount-results span{font-size:.66rem;color:#687386}.kfz-discount-results strong{font-size:.88rem;color:#173f77}.kfz-discount-results strong.up{color:#b42318}.kfz-discount-results strong.down{color:#067647}
.kfz-budget-inline{margin:0;font-size:.67rem;line-height:1.35;color:#596579}.kfz-budget-inline.over{color:#b42318}
.kfz-none-premium{margin-top:auto;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px;border-radius:8px;background:#f6f7f9}.kfz-none-premium span{font-size:.7rem;color:#687386}.kfz-none-premium strong{font-size:.8rem;color:#173f77}

.kfz-contact-bottomrow{display:grid;grid-template-columns:minmax(175px,1.15fr) minmax(165px,1fr) minmax(190px,1.1fr) minmax(145px,.8fr) minmax(160px,.9fr);gap:9px;align-items:stretch}
.kfz-result-field{box-sizing:border-box;min-height:94px;padding:9px 10px;border:1px solid #dfe5ec;border-radius:9px;background:#f8fafc;display:flex!important;flex-direction:column;gap:5px;justify-content:flex-start;font-size:.74rem;font-weight:750}
.kfz-result-field>select,.kfz-result-field>input{width:100%;height:38px;min-height:38px;box-sizing:border-box;margin-top:auto}
.kfz-final-premium-card{background:#fff9e8;border-color:#ead28a;justify-content:flex-start}
.kfz-final-premium-card>span{font-size:.74rem;font-weight:800;color:#4a5568}
.kfz-final-premium-card>strong{display:block;margin-top:auto;font-size:1.12rem;line-height:1.15;color:#173f77;white-space:normal}
.kfz-final-premium-card>small{display:block;color:#687386;font-size:.67rem;line-height:1.2}
.kfz-budget-case-state{margin:0;font-size:.67rem;line-height:1.25;color:#687386}
.kfz-budget-case-state.active{font-weight:800;color:#173f77}
.kfz-note-field-v2{display:grid;gap:4px}
.kfz-row-state strong.kfz-status-in-schwebe{white-space:normal;line-height:1.2}

@media(max-width:1100px){
 .admin-time-correction-form{grid-template-columns:repeat(2,1fr)}
 .admin-pause-correction-form{grid-template-columns:repeat(2,1fr)}
 .kfz-contact-toprow{grid-template-columns:1fr 1fr}.kfz-priority-box{grid-column:1/-1}
 .kfz-contact-bottomrow{grid-template-columns:repeat(2,minmax(0,1fr))}.kfz-final-premium-card{grid-column:auto}
}
@media(max-width:760px){
 .employee-subtools{display:grid;grid-template-columns:1fr}.employee-subtool>summary{width:100%;box-sizing:border-box;text-align:center}
 .admin-time-correction-filter,.admin-time-correction-form,.admin-pause-correction-form{grid-template-columns:1fr}
 .admin-time-correction-meta{display:grid}
 .kfz-measures-grid{grid-template-columns:1fr}
 .kfz-discount-results{grid-template-columns:1fr}
 .kfz-contact-bottomrow{grid-template-columns:1fr}
 .kfz-contact-toprow{grid-template-columns:1fr}
}


/* v3.10.67 – Kfz Workflow / Arbeitszeitkorrektur */
.kfz-row.kfz-priority-wants_cancel,.kfz-contract-hero.kfz-priority-wants_cancel{border-left:6px solid #ef8f8f;background:#fff4f4}
.kfz-priority-badge.wants_cancel{background:#ffe3e3;color:#a52323;border:1px solid #f2aaaa}
.kfz-row-state strong.kfz-status-will-kuendigen{display:inline-block;padding:4px 7px;border-radius:7px;background:#ffe3e3;color:#a52323;border:1px solid #f2aaaa}
.kfz-contact-bottomrow{grid-template-columns:minmax(230px,1.25fr) minmax(190px,1fr) minmax(145px,.75fr) minmax(160px,.85fr);align-items:stretch}
.kfz-contact-bottomrow>.kfz-result-field{min-height:82px}
.kfz-final-premium-card{grid-column:1/3;min-height:74px;margin-top:-1px}
.kfz-status-control{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:6px;align-items:stretch}
.kfz-status-control select{min-width:0}
.kfz-status-save{border:1px solid #b7c6d8;border-radius:8px;background:#f4f8fc;color:#173f77;font-size:1rem;cursor:pointer;min-height:36px;padding:0}
.kfz-status-save:hover{background:#e7f0f8;border-color:#86a7c8}
.kfz-related-vehicles{margin-top:8px;padding:9px 10px;border:1px solid #dbe4ee;border-radius:9px;background:#f8fbfe}
.kfz-related-vehicles>strong{display:block;margin-bottom:6px;color:#173f77;font-size:.82rem}
.kfz-related-vehicles>div{display:flex;gap:6px;flex-wrap:wrap}
.kfz-related-link{display:inline-flex;padding:5px 9px;border-radius:8px;border:1px solid #b8cde1;background:#fff;color:#175a96;font-size:.77rem;font-weight:850;text-decoration:none}
.kfz-related-link:hover{background:#edf5fc}
.kfz-related-vehicles small{display:block;margin-top:5px;color:#687386;font-size:.69rem}
@media(max-width:1000px){.kfz-contact-bottomrow{grid-template-columns:repeat(2,minmax(0,1fr))}.kfz-final-premium-card{grid-column:1/-1}}
@media(max-width:760px){.kfz-contact-bottomrow{grid-template-columns:1fr}.kfz-final-premium-card{grid-column:1}}

/* v3.10.68 – weitere Fahrzeuge als eigenständige Kachel unter der Historie */
.kfz-related-card{margin-top:14px}
.kfz-related-card .kfz-related-vehicles{margin-top:0;padding:0;border:0;background:transparent}
.kfz-related-card .kfz-related-vehicles>div{display:flex;gap:8px;flex-wrap:wrap}
.kfz-related-card .kfz-related-link{padding:8px 12px;font-size:.82rem}

/* v3.10.71 */
.kfz-customer-mail{font-weight:800;text-decoration:none;color:#175a96}.kfz-customer-mail:hover{text-decoration:underline}

/* v3.10.73 – Kundenservice-Aktionen im Ergebnisfeld */
.kfz-result-actions{grid-column:1/-1;display:flex;align-items:center;gap:10px;min-height:62px;padding:9px 10px;border:1px solid #dfe5ec;border-radius:9px;background:#f8fafc;box-sizing:border-box}
.kfz-result-actions>span{font-size:.75rem;font-weight:800;color:#34445a;min-width:95px}
.kfz-result-action-buttons{display:flex;gap:7px;align-items:center}
.kfz-result-action-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:38px;box-sizing:border-box;border:1px solid #b7c6d8;border-radius:8px;background:#fff;color:#173f77;text-decoration:none;font-size:1.2rem;font-weight:900;cursor:pointer;line-height:1;padding:0}
.kfz-result-action-btn:hover{background:#eaf2f9;border-color:#86a7c8}
.kfz-result-action-btn.disabled{opacity:.38;cursor:not-allowed;background:#f3f4f6}
.kfz-result-actions small{color:#6c7888;font-size:.7rem}
@media(max-width:760px){.kfz-result-actions{flex-wrap:wrap}.kfz-result-actions>span{width:100%}}


/* v3.10.75 – Kfz-Bearbeiter wie Anrufliste + iOS App-Icon Refresh */
.kfz-row{grid-template-columns:82px minmax(220px,1.35fr) minmax(110px,.55fr) minmax(250px,1.15fr) minmax(105px,.55fr) minmax(118px,.6fr);}
.kfz-row-assignee{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px;}
.kfz-row-assignee>small{font-size:.65rem;color:#7a8494;}
.kfz-assignee-chip{display:inline-flex;align-items:center;max-width:100%;padding:4px 7px;border-radius:7px;border:1px solid #d2d8e1;font-size:.72rem;font-weight:800;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kfz-assignee-chip.employee-bernutz{background:#e6f6e9;border-color:#add9b6;color:#214b2a;}
.kfz-assignee-chip.employee-bille{background:#e8f3ff;border-color:#b6d5f2;color:#174a73;}
.kfz-assignee-chip.employee-knabe{background:#fff8d8;border-color:#e7d982;color:#5a4a09;}
.kfz-assignee-chip.employee-none{background:#f4f5f7;border-color:#d7dce3;color:#7a8494;}
@media(max-width:1100px){.kfz-row{grid-template-columns:74px minmax(185px,1fr) 100px minmax(190px,1fr) 95px minmax(105px,.55fr);gap:8px;}}
@media(max-width:760px){.kfz-row{grid-template-columns:64px minmax(0,1fr);}.kfz-row-assignee{grid-column:2;grid-row:5;}.kfz-row-state{grid-row:4;}}
