.kps-app{--kps-accent:#1f5eff;max-width:1180px;margin:28px auto;border:1px solid #e6e9ef;border-radius:20px;background:#f6f8fb;box-shadow:0 28px 75px rgba(17,24,39,.12);overflow:hidden;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033}.kps-app *{box-sizing:border-box}.kps-app-header{min-height:112px;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(125deg,#101828,#24334f);color:#fff}.kps-brand-copy h2{margin:5px 0 0;color:#fff;font-size:30px;line-height:1.15}.kps-eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:#9fb8e9}.kps-company-logo{max-width:220px;max-height:68px;object-fit:contain;background:#fff;border-radius:10px;padding:8px}.kps-login-panel{max-width:470px;margin:64px auto;padding:36px;background:#fff;border:1px solid #e4e8ef;border-radius:18px;box-shadow:0 18px 45px rgba(15,23,42,.08);text-align:center}.kps-login-icon{width:58px;height:58px;margin:0 auto 17px;border-radius:16px;display:grid;place-items:center;background:var(--kps-accent);color:#fff;font-weight:900}.kps-login-panel h3{margin:0;font-size:25px}.kps-login-panel p{color:#667085;margin:8px 0 25px}.kps-login-form{text-align:left;display:grid;gap:16px}.kps-userbar{display:flex;justify-content:space-between;align-items:center;padding:15px 30px;background:#fff;border-bottom:1px solid #e6e9ef}.kps-userbar>div:first-child{display:grid;grid-template-columns:auto auto;column-gap:9px;align-items:baseline}.kps-userbar span,.kps-userbar small{color:#667085;font-size:12px}.kps-userbar small{grid-column:2}.kps-userbar-actions{display:flex;align-items:center;gap:18px}.kps-live-clock{font-weight:750}.kps-logout-button{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:9px 13px;cursor:pointer}.kps-workspace{padding:28px}.kps-calendar-card{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;padding:20px 22px;background:#edf4ff;border:1px solid #cfe0ff;border-radius:15px}.kps-calendar-card h3{margin:3px 0;font-size:18px}.kps-calendar-card p{margin:0;color:#60708a;font-size:13px}.kps-calendar-card select{min-width:390px;max-width:55%;padding:12px;border:1px solid #b8c9e7;border-radius:10px;background:#fff}.kps-form{padding:28px 30px;background:#fff;border:1px solid #e4e8ef;border-radius:18px}.kps-form-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.kps-form-title h3{font-size:24px;margin:3px 0}.kps-secure-badge{background:#ecfdf3;color:#087443;border:1px solid #a8e8c5;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.kps-grid{display:grid;gap:16px;margin-bottom:18px}.kps-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.kps-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.kps-grid-2{grid-template-columns:1fr 2fr}.kps-field{display:flex;flex-direction:column;gap:7px}.kps-field>span{font-size:13px;font-weight:750;color:#344054}.kps-field input,.kps-field select,.kps-field textarea{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:11px 12px;background:#fff;color:#172033;font-size:15px;min-height:45px}.kps-field input:focus,.kps-field select:focus,.kps-field textarea:focus{outline:0;border-color:var(--kps-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--kps-accent) 15%,transparent)}.kps-section-title{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.11em;color:#667085;margin:25px 0 13px;padding-top:19px;border-top:1px solid #edf0f4}.kps-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px}.kps-primary-button{border:0;border-radius:10px;padding:13px 22px;background:var(--kps-accent);color:#fff;font-weight:850;font-size:15px;cursor:pointer}.kps-primary-button:hover{filter:brightness(.9)}.kps-primary-button:disabled{opacity:.65;cursor:wait}.kps-form-message{font-weight:750;min-height:20px}.kps-form-message.is-success{color:#18754a}.kps-form-message.is-error{color:#b42318}@media(max-width:850px){.kps-grid-4,.kps-grid-3,.kps-grid-2{grid-template-columns:1fr 1fr}.kps-calendar-card{align-items:flex-start;flex-direction:column}.kps-calendar-card select{max-width:none;min-width:0;width:100%}.kps-live-clock{display:none}}@media(max-width:560px){.kps-app{margin:10px;border-radius:15px}.kps-app-header,.kps-userbar,.kps-workspace,.kps-form{padding:20px}.kps-company-logo{max-width:135px}.kps-brand-copy h2{font-size:22px}.kps-grid-4,.kps-grid-3,.kps-grid-2{grid-template-columns:1fr}.kps-form-title,.kps-form-footer{align-items:stretch;flex-direction:column}.kps-secure-badge{align-self:flex-start}.kps-primary-button{width:100%}.kps-login-panel{margin:28px 16px;padding:25px}}

/* Vollbild-Kiosk: Das Plugin ist die komplette Frontend-Anwendung. */
html:has(body.kps-kiosk-body){margin:0!important;padding:0!important;background:#f6f8fb}
body.kps-kiosk-body{margin:0!important;padding:0!important;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden;background:#f6f8fb;color:#172033}
body.kps-kiosk-body #wpadminbar{display:none!important}
#kps-kiosk-root{min-height:100vh;min-height:100dvh;width:100%}
body.kps-kiosk-body .kps-app{width:100%;max-width:none;min-height:100vh;min-height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column}
body.kps-kiosk-body .kps-app-header{flex:0 0 auto;padding-left:max(32px,env(safe-area-inset-left));padding-right:max(32px,env(safe-area-inset-right));padding-top:max(24px,env(safe-area-inset-top))}
body.kps-kiosk-body .kps-userbar{flex:0 0 auto;padding-left:max(30px,env(safe-area-inset-left));padding-right:max(30px,env(safe-area-inset-right))}
body.kps-kiosk-body .kps-workspace{flex:1;width:100%;max-width:1440px;margin:0 auto;padding-left:max(28px,env(safe-area-inset-left));padding-right:max(28px,env(safe-area-inset-right));padding-bottom:max(28px,env(safe-area-inset-bottom))}
body.kps-kiosk-body .kps-login-panel{width:min(470px,calc(100% - 32px));margin:auto}
@media(max-width:560px){body.kps-kiosk-body .kps-app{margin:0;border-radius:0}body.kps-kiosk-body .kps-app-header,body.kps-kiosk-body .kps-userbar,body.kps-kiosk-body .kps-workspace,body.kps-kiosk-body .kps-form{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}body.kps-kiosk-body .kps-app-header{padding-top:max(18px,env(safe-area-inset-top))}body.kps-kiosk-body .kps-workspace{padding-bottom:max(18px,env(safe-area-inset-bottom))}}

/* Version 4: vollständig konfigurierbares Frontend */
.kps-app{background:var(--kps-bg);color:var(--kps-text);border-color:var(--kps-border);border-radius:var(--kps-radius)}
.kps-app-header{background:linear-gradient(125deg,var(--kps-header),color-mix(in srgb,var(--kps-header) 78%,var(--kps-accent)))}
.kps-login-panel,.kps-userbar,.kps-form{background:var(--kps-surface);border-color:var(--kps-border)}
.kps-login-panel p,.kps-userbar span,.kps-userbar small,.kps-calendar-card p,.kps-section-title{color:var(--kps-muted)}
.kps-field>span{color:var(--kps-text)}
.kps-field input,.kps-field select,.kps-field textarea,.kps-logout-button{background:var(--kps-surface);color:var(--kps-text);border-color:var(--kps-border)}
.kps-primary-button{color:var(--kps-button-text);border-radius:calc(var(--kps-radius) * .55)}
.kps-form-message.is-success{color:var(--kps-success)}.kps-form-message.is-error{color:var(--kps-danger)}
.kps-grid-auto{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.kps-field-wide{grid-column:span 2}
body.kps-kiosk-body,html:has(body.kps-kiosk-body){background:var(--kps-bg,#f6f8fb)}
body.kps-kiosk-body .kps-workspace{max-width:var(--kps-content-width,1440px)}
.kps-compact .kps-app-header{min-height:88px;padding-top:16px;padding-bottom:16px}.kps-compact .kps-workspace{padding-top:18px}.kps-compact .kps-form{padding:20px}.kps-compact .kps-grid{gap:11px;margin-bottom:12px}.kps-compact .kps-section-title{margin-top:17px;padding-top:13px}.kps-compact .kps-field input,.kps-compact .kps-field select,.kps-compact .kps-field textarea{min-height:40px;padding:8px 10px}
@media(max-width:650px){.kps-field-wide{grid-column:auto}.kps-grid-auto{grid-template-columns:1fr}}

/* Version 5: App-Navigation, Notizen und Abteilungskalender */
.kps-tabs{display:flex;gap:8px;padding:12px max(28px,calc((100% - var(--kps-content-width))/2 + 28px));background:var(--kps-surface);border-bottom:1px solid var(--kps-border);overflow-x:auto;scrollbar-width:thin}
.kps-tab{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:145px;padding:12px 20px;border:1px solid transparent;border-radius:calc(var(--kps-radius) * .55);background:transparent;color:var(--kps-muted);font:inherit;font-weight:800;cursor:pointer;white-space:nowrap;transition:.18s ease}
.kps-tab:hover{background:color-mix(in srgb,var(--kps-accent) 7%,var(--kps-surface));color:var(--kps-text)}
.kps-tab.is-active{background:var(--kps-accent);color:var(--kps-button-text);box-shadow:0 8px 22px color-mix(in srgb,var(--kps-accent) 22%,transparent)}
.kps-tab-icon{font-size:19px;line-height:1}
.kps-tab-panel[hidden]{display:none!important}.kps-tab-panel.is-active{animation:kps-panel-in .2s ease}
@keyframes kps-panel-in{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
.kps-two-column{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:22px;align-items:start}
.kps-note-form,.kps-note-history,.kps-calendar-view{min-height:100%}
.kps-note-list{display:grid;gap:12px;max-height:62vh;overflow:auto;padding-right:5px}
.kps-note-item{padding:16px 18px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) * .65);background:color-mix(in srgb,var(--kps-bg) 42%,var(--kps-surface));box-shadow:0 4px 14px rgba(16,24,40,.035)}
.kps-note-item time{display:block;margin-bottom:7px;color:var(--kps-muted);font-size:12px;font-weight:800}
.kps-note-item p{margin:0;color:var(--kps-text);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.kps-empty-state{padding:36px 22px;border:1px dashed var(--kps-border);border-radius:var(--kps-radius);color:var(--kps-muted);text-align:center;background:color-mix(in srgb,var(--kps-bg) 60%,var(--kps-surface))}
.kps-secondary-button{border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) * .55);padding:10px 15px;background:var(--kps-surface);color:var(--kps-text);font-weight:800;cursor:pointer}
.kps-secondary-button:hover{border-color:var(--kps-accent);color:var(--kps-accent)}
.kps-calendar-frame-wrap{position:relative;width:100%;height:calc(100vh - 315px);min-height:560px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) * .7);overflow:hidden;background:#fff}
.kps-calendar-frame-wrap iframe{display:block;width:100%;height:100%;border:0;background:#fff}
body.kps-kiosk-body .kps-tabs{flex:0 0 auto}
@media(max-width:900px){.kps-two-column{grid-template-columns:1fr}.kps-note-list{max-height:none}.kps-calendar-frame-wrap{height:calc(100vh - 330px);min-height:500px}}
@media(max-width:560px){.kps-tabs{padding:9px max(12px,env(safe-area-inset-left));gap:6px}.kps-tab{min-width:120px;padding:10px 13px}.kps-calendar-frame-wrap{height:calc(100vh - 285px);min-height:440px}.kps-calendar-view{padding:14px!important}.kps-calendar-view .kps-form-title{gap:12px}.kps-secondary-button{width:100%}}

/* Version 6: konfigurierbare Felder und Tagesstatus */
.kps-today-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.kps-today-kpis article{padding:20px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.7);background:color-mix(in srgb,var(--kps-bg) 48%,var(--kps-surface))}.kps-today-kpis span{display:block;color:var(--kps-muted);font-size:13px;font-weight:750}.kps-today-kpis strong{display:block;margin-top:8px;font-size:30px;color:var(--kps-text)}.kps-today-chart{padding:22px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.7);margin-bottom:24px}.kps-chart-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.kps-chart-title span{color:var(--kps-muted);font-size:13px}.kps-bar-chart{display:grid;grid-template-columns:repeat(13,minmax(22px,1fr));gap:8px;align-items:end;height:220px;padding-top:15px}.kps-front-bar{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px;height:100%}.kps-front-bar i{display:block;width:100%;min-height:4px;border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,var(--kps-accent),color-mix(in srgb,var(--kps-accent) 65%,var(--kps-header)));transition:.2s}.kps-front-bar b{font-size:11px;color:var(--kps-muted)}.kps-front-bar em{font-style:normal;font-size:11px;font-weight:800;color:var(--kps-text)}.kps-today-list h4{font-size:17px;margin:0 0 12px}.kps-today-list article{display:grid;grid-template-columns:70px 1fr;gap:14px;padding:14px 4px;border-top:1px solid var(--kps-border)}.kps-today-list time{font-size:17px;font-weight:850;color:var(--kps-accent)}.kps-today-list div{display:grid;gap:3px}.kps-today-list span{color:var(--kps-muted);font-size:13px}@media(max-width:850px){.kps-today-kpis{grid-template-columns:repeat(2,1fr)}.kps-bar-chart{overflow-x:auto;grid-template-columns:repeat(13,42px)}}@media(max-width:480px){.kps-today-kpis{grid-template-columns:1fr 1fr}.kps-today-kpis article{padding:15px}.kps-today-kpis strong{font-size:24px}}

.kps-auto-time-field input[readonly]{background:color-mix(in srgb,var(--kps-surface) 88%,var(--kps-bg));cursor:not-allowed;font-weight:700}.kps-auto-time-field small{display:block;margin-top:6px;color:var(--kps-muted);font-size:12px;line-height:1.35}

/* Version 7: vollständige Tagesdokumentation */
.kps-daylog-layout{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(460px,1.22fr);gap:22px;align-items:start}.kps-daylog-control,.kps-daylog-history{min-height:100%}.kps-running-activity{display:grid;gap:10px;padding:22px;border:1px solid color-mix(in srgb,var(--kps-accent) 38%,var(--kps-border));border-radius:calc(var(--kps-radius)*.75);background:color-mix(in srgb,var(--kps-accent) 7%,var(--kps-surface))}.kps-running-activity>span{color:var(--kps-accent);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.kps-running-activity>strong{font-size:25px}.kps-running-activity>small{color:var(--kps-muted)}.kps-running-time{font-size:42px;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:.03em;color:var(--kps-header)}.kps-danger-button{width:100%;border:0;border-radius:calc(var(--kps-radius)*.55);padding:13px 20px;background:var(--kps-danger);color:#fff;font-weight:850;font-size:15px;cursor:pointer}.kps-danger-button:disabled{opacity:.6}.kps-day-hint{margin:18px 0 0;padding:14px 16px;border-left:4px solid var(--kps-accent);background:color-mix(in srgb,var(--kps-bg) 62%,var(--kps-surface));color:var(--kps-muted);line-height:1.5}.kps-timeline{display:grid}.kps-timeline article{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:16px 4px;border-top:1px solid var(--kps-border)}.kps-timeline time{font-weight:900;color:var(--kps-accent);font-variant-numeric:tabular-nums}.kps-timeline div{display:grid;gap:4px}.kps-timeline span,.kps-timeline small{color:var(--kps-muted)}.kps-timeline article.kps-timeline-past{opacity:.58;filter:grayscale(.72);background:color-mix(in srgb,var(--kps-muted) 6%,transparent)}.kps-timeline article.kps-timeline-past time,.kps-timeline article.kps-timeline-past strong,.kps-timeline article.kps-timeline-past span,.kps-timeline article.kps-timeline-past small,.kps-timeline article.kps-timeline-past b{color:var(--kps-muted)}@media(max-width:950px){.kps-daylog-layout{grid-template-columns:1fr}}@media(max-width:560px){.kps-running-time{font-size:34px}.kps-timeline article{grid-template-columns:86px 1fr;gap:10px}}

/* Version 8: Umsatz-Schnellerfassung und Monatsübersicht */
.kps-sale-type-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:4px 0 22px}.kps-sale-type-switch label{cursor:pointer}.kps-sale-type-switch input{position:absolute;opacity:0;pointer-events:none}.kps-sale-type-switch span{display:flex;align-items:center;justify-content:center;min-height:58px;padding:14px;border:2px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.65);font-weight:900;background:var(--kps-surface);transition:.18s}.kps-sale-type-switch input:checked+span{border-color:var(--kps-accent);background:color-mix(in srgb,var(--kps-accent) 10%,var(--kps-surface));color:var(--kps-accent);box-shadow:0 7px 18px color-mix(in srgb,var(--kps-accent) 14%,transparent)}
.kps-revenue-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.kps-revenue-kpis article{padding:20px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.7);background:color-mix(in srgb,var(--kps-bg) 45%,var(--kps-surface))}.kps-revenue-kpis span{display:block;color:var(--kps-muted);font-size:13px;font-weight:800}.kps-revenue-kpis strong{display:block;margin-top:8px;font-size:28px;color:var(--kps-text)}
.kps-revenue-chart{padding:22px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.7);margin-bottom:24px;overflow:hidden}.kps-month-chart{display:grid;grid-template-columns:repeat(12,minmax(42px,1fr));gap:10px;align-items:end;height:285px;overflow-x:auto;padding:20px 2px 0}.kps-month-col{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.kps-month-col i{display:block;width:76%;min-height:4px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--kps-accent),color-mix(in srgb,var(--kps-accent) 62%,var(--kps-header)))}.kps-month-col em{font-style:normal;font-size:11px;font-weight:850;color:var(--kps-text);white-space:nowrap}.kps-month-col b{font-size:12px;color:var(--kps-muted)}
.kps-sales-list h4{margin:0 0 12px}.kps-sales-list article{display:grid;grid-template-columns:minmax(180px,210px) minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 4px;border-top:1px solid var(--kps-border)}.kps-sales-list time{color:var(--kps-muted);font-size:13px;font-weight:750;white-space:nowrap;font-variant-numeric:tabular-nums}.kps-sales-list div{display:grid;gap:3px}.kps-sales-list div span{color:var(--kps-muted);font-size:13px}.kps-sales-list>b,.kps-sales-list article>b{font-size:17px;color:var(--kps-accent);white-space:nowrap}
@media(max-width:850px){.kps-revenue-kpis{grid-template-columns:1fr 1fr}.kps-month-chart{grid-template-columns:repeat(12,54px)}}@media(max-width:560px){.kps-sale-type-switch{grid-template-columns:1fr}.kps-revenue-kpis{grid-template-columns:1fr 1fr}.kps-revenue-kpis strong{font-size:22px}.kps-sales-list article{grid-template-columns:1fr auto}.kps-sales-list time{grid-column:1/-1}.kps-month-chart{height:240px}}

.kps-appointment-stack{display:grid;gap:14px}.kps-appointment-card{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(210px,280px);gap:18px;align-items:center;padding:18px;border:1px solid var(--kps-border);border-left:6px solid var(--kps-accent);border-radius:calc(var(--kps-radius) - 4px);background:var(--kps-surface);box-shadow:0 8px 24px rgba(16,24,40,.05)}.kps-appointment-card.status-erschienen,.kps-appointment-card.status-abgeschlossen{border-left-color:var(--kps-success)}.kps-appointment-card.status-nicht_erschienen{border-left-color:var(--kps-danger)}.kps-appointment-card.status-abgesagt{border-left-color:#98a2b3;opacity:.8}.kps-appointment-time{display:flex;flex-direction:column}.kps-appointment-time strong{font-size:28px;line-height:1}.kps-appointment-time span,.kps-appointment-main p,.kps-appointment-main small{color:var(--kps-muted)}.kps-appointment-main h4{margin:0 0 6px;font-size:18px}.kps-appointment-main p{margin:0 0 4px}.kps-booking-status-form{display:grid;gap:8px}.kps-booking-status-form select{width:100%;min-height:44px}.kps-booking-status-form .kps-form-message{min-height:18px;font-size:12px}.kps-today-appointments{min-height:520px}@media(max-width:900px){.kps-appointment-card{grid-template-columns:86px 1fr}.kps-booking-status-form{grid-column:1/-1;grid-template-columns:1fr auto;align-items:center}.kps-booking-status-form .kps-form-message{grid-column:1/-1}}@media(max-width:560px){.kps-appointment-card{grid-template-columns:1fr}.kps-appointment-time{flex-direction:row;align-items:baseline;gap:10px}.kps-booking-status-form{grid-template-columns:1fr}.kps-booking-status-form .kps-secondary-button{width:100%}}
.kps-revenue-kpis article small{display:block;margin-top:7px;color:var(--kps-muted);font-size:12px;font-weight:800}.kps-revenue-kpis .kps-kpi-cash{border-color:#22a447;background:linear-gradient(145deg,rgba(34,164,71,.12),rgba(34,164,71,.04))}.kps-revenue-kpis .kps-kpi-cash span,.kps-revenue-kpis .kps-kpi-cash strong{color:#16863a}.kps-chart-title span{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.kps-chart-title span i{width:10px;height:10px;border-radius:3px;display:inline-block}.kps-legend-contract{background:var(--kps-accent)}.kps-legend-cash{background:#22a447;margin-left:8px}.kps-month-bars{height:210px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:5px}.kps-month-col .kps-month-bars i{width:34%;min-height:4px;border-radius:7px 7px 3px 3px}.kps-month-col .kps-bar-contract{background:linear-gradient(180deg,var(--kps-accent),color-mix(in srgb,var(--kps-accent) 62%,var(--kps-header)))}.kps-month-col .kps-bar-cash{background:linear-gradient(180deg,#35bd5c,#16863a)}
.kps-timeline article.kps-timeline-sale{grid-template-columns:1fr;border:1px solid color-mix(in srgb,#c62828 35%,var(--kps-border));background:color-mix(in srgb,#c62828 8%,var(--kps-surface));border-radius:calc(var(--kps-radius)*.55);padding:16px 18px;margin:6px 0;color:#b71c1c}.kps-timeline article.kps-timeline-sale strong{color:#b71c1c;font-size:17px}.kps-timeline article.kps-timeline-sale span{color:#b71c1c;font-weight:800}.kps-timeline article.kps-timeline-sale .kps-sale-amount{font-size:22px}.kps-activities-layout .kps-daylog-history{min-height:auto}

/* 1.2 Professional cockpit and restrained timeline */
.kps-cockpit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.kps-cockpit-grid article{padding:20px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.7);background:color-mix(in srgb,var(--kps-bg) 40%,var(--kps-surface))}.kps-cockpit-grid span,.kps-cockpit-focus span{display:block;color:var(--kps-muted);font-size:13px;font-weight:800}.kps-cockpit-grid strong{display:block;margin:8px 0 5px;font-size:28px}.kps-cockpit-grid small,.kps-cockpit-focus small{color:var(--kps-muted)}.kps-cockpit-focus{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kps-cockpit-focus>div{padding:20px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius)*.7);background:var(--kps-surface)}.kps-cockpit-focus strong{display:block;margin:8px 0 5px;font-size:18px}.kps-sync-badge{padding:7px 11px;border-radius:999px;background:color-mix(in srgb,var(--kps-success) 10%,var(--kps-surface));color:var(--kps-success);font-size:12px;font-weight:850}
.kps-timeline article.kps-timeline-sale{grid-template-columns:1fr;border:1px solid var(--kps-border);border-left:4px solid #c62828;background:var(--kps-surface);border-radius:calc(var(--kps-radius)*.55);padding:14px 16px;margin:4px 0;color:var(--kps-text);box-shadow:none}.kps-timeline article.kps-timeline-sale strong{color:var(--kps-text);font-size:16px}.kps-timeline article.kps-timeline-sale span{color:var(--kps-muted);font-weight:700}.kps-timeline article.kps-timeline-sale .kps-sale-amount{color:#a61b1b;font-size:18px;font-weight:850}.kps-timeline-activity time{white-space:nowrap}
@media(max-width:980px){.kps-cockpit-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.kps-cockpit-grid,.kps-cockpit-focus{grid-template-columns:1fr}}

/* 1.2.1: kompakte Uhrzeiten und kollisionsfreie Tageschronik */
.kps-live-clock,.kps-appointment-time strong,.kps-timeline time{white-space:nowrap;word-break:normal;overflow-wrap:normal}
.kps-live-clock{flex:0 0 auto;line-height:1.2}
.kps-timeline article{grid-template-columns:156px minmax(0,1fr);gap:22px;align-items:center;min-width:0}
.kps-timeline article>div{min-width:0;display:flex;align-items:center;gap:12px;white-space:nowrap;overflow:hidden}
.kps-timeline article>div strong,.kps-timeline article>div span,.kps-timeline article>div small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kps-timeline article>div strong{flex:0 0 auto}
.kps-timeline article>div span{flex:0 1 auto}
.kps-timeline article>div small{flex:1 1 auto}
.kps-timeline article.kps-timeline-sale{display:flex;align-items:center;gap:12px;min-width:0;padding:12px 16px}
.kps-timeline article.kps-timeline-sale>div{flex:1 1 auto}
.kps-timeline article.kps-timeline-sale .kps-sale-amount{margin-left:auto;flex:0 0 auto}
@media(max-width:700px){.kps-timeline article{grid-template-columns:132px minmax(0,1fr);gap:14px}.kps-timeline article>div{gap:8px}.kps-timeline article>div small{display:none}}

/* 1.2.3 – Heute konsequent einzeilig und Tätigkeitsformular stabil */
.kps-appointment-card{grid-template-columns:118px minmax(0,1fr) minmax(250px,320px);gap:24px;align-items:center;padding:15px 18px}
.kps-appointment-time{display:block;min-width:118px;padding-right:20px;border-right:1px solid var(--kps-border)}
.kps-appointment-time strong{display:block;font-size:16px;line-height:1.35;white-space:nowrap;color:var(--kps-accent)}
.kps-appointment-main{display:flex;align-items:center;gap:18px;min-width:0;white-space:nowrap;overflow:hidden;font-size:16px;line-height:1.35}
.kps-appointment-main strong,.kps-appointment-main span{font-size:16px;line-height:1.35;white-space:nowrap}
.kps-appointment-main strong{flex:0 0 auto;color:var(--kps-text)}
.kps-appointment-main span{flex:0 0 auto;color:var(--kps-muted)}
.kps-appointment-main .kps-appointment-notes{flex:1 1 auto;min-width:80px;overflow:hidden;text-overflow:ellipsis}
.kps-booking-status-form{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:10px;align-items:center}
.kps-booking-status-form select,.kps-booking-status-form button{font-size:14px;min-height:42px;white-space:nowrap}
.kps-booking-status-form .kps-form-message{grid-column:1/-1;min-height:0;margin:0;font-size:12px}
@media(max-width:1050px){.kps-appointment-card{grid-template-columns:105px minmax(0,1fr);gap:18px}.kps-booking-status-form{grid-column:1/-1;margin-left:123px}.kps-appointment-main{overflow-x:auto;padding-bottom:2px}}
@media(max-width:680px){.kps-appointment-card{display:flex;align-items:center;gap:14px;overflow-x:auto}.kps-appointment-time{min-width:94px;padding-right:14px}.kps-appointment-main{overflow:visible;min-width:max-content}.kps-booking-status-form{display:flex;min-width:max-content;margin-left:0}.kps-booking-status-form .kps-form-message{display:none}}


/* 1.2.4 – klarer START/STOP-Workflow mit Sekundentimer */
.kps-start-button,.kps-stop-button{width:100%;border:0;border-radius:calc(var(--kps-radius)*.55);padding:15px 22px;color:#fff;font-size:18px;font-weight:950;letter-spacing:.06em;cursor:pointer;transition:transform .15s ease,filter .15s ease}
.kps-start-button{background:#16863a}.kps-stop-button{background:#c62828}.kps-start-button:hover,.kps-stop-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.kps-start-button:disabled,.kps-stop-button:disabled{opacity:.6;cursor:wait;transform:none}
.kps-running-time{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:44px;line-height:1.05}
.kps-running-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.kps-running-meta b{font-size:16px}.kps-running-meta small{color:var(--kps-muted)}.kps-running-note{flex-basis:100%;padding-top:4px}
@media(max-width:560px){.kps-running-time{font-size:36px}}


/* 1.2.7 – professionelle, modulkonforme Tages-Popups */
.kps-live-clock{font-variant-numeric:tabular-nums;font-size:15px;font-weight:800;white-space:nowrap;letter-spacing:.01em}
.kps-popup-overlay{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(16,24,40,.46);backdrop-filter:blur(5px);animation:kpsPopupFade .18s ease}
.kps-popup{position:relative;width:min(520px,100%);overflow:hidden;border:1px solid var(--kps-border,#e4e8ef);border-radius:var(--kps-radius,16px);background:var(--kps-surface,#fff);color:var(--kps-text,#172033);font:inherit;box-shadow:0 30px 90px rgba(16,24,40,.3);animation:kpsPopupIn .22s ease}
.kps-popup-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:25px 25px 20px;border-bottom:1px solid var(--kps-border,#e4e8ef)}
.kps-popup-kicker{display:block;margin-bottom:6px;color:var(--kps-accent,#1f5eff);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.kps-popup h3{margin:0;font:inherit;font-size:24px;font-weight:850;line-height:1.2;color:var(--kps-text,#172033)}
.kps-popup-close{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;margin:-5px -5px 0 0;border:1px solid var(--kps-border,#e4e8ef);border-radius:10px;background:var(--kps-surface,#fff);color:var(--kps-text,#344054);font:inherit;font-size:25px;line-height:1;cursor:pointer;transition:background .15s ease,transform .15s ease}
.kps-popup-close:hover{background:#f2f4f7;transform:translateY(-1px)}
.kps-popup-close:focus-visible{outline:3px solid color-mix(in srgb,var(--kps-accent,#1f5eff) 25%,transparent);outline-offset:2px}
.kps-popup-body{padding:22px 25px;color:var(--kps-text,#172033);font-size:15px;line-height:1.5}
.kps-popup-summary{display:grid;gap:0;border:1px solid var(--kps-border,#e4e8ef);border-radius:12px;overflow:hidden;background:#fff}
.kps-popup-summary-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 17px}
.kps-popup-summary-row+ .kps-popup-summary-row{border-top:1px solid var(--kps-border,#e4e8ef)}
.kps-popup-summary-row span{color:var(--kps-muted,#667085);font-weight:650}
.kps-popup-summary-row strong{color:var(--kps-text,#172033);font-size:16px;font-weight:850;text-align:right}
.kps-popup-footer{padding:16px 25px;border-top:1px solid var(--kps-border,#e4e8ef);background:#f8fafc;color:var(--kps-muted,#667085);font-size:14px;font-weight:700}
.kps-popup-closing .kps-popup{border-top:4px solid #c62828}.kps-popup-closing .kps-popup-kicker{color:#c62828}
.kps-popup-closing-copy{display:flex;align-items:center;gap:16px;padding:3px 0}.kps-popup-closing-copy strong{font-size:28px;color:#c62828}.kps-popup-closing-copy span{color:var(--kps-muted,#667085);font-weight:700}
@keyframes kpsPopupFade{from{opacity:0}to{opacity:1}}@keyframes kpsPopupIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:850px){.kps-live-clock{font-size:13px}.kps-userbar{align-items:flex-start}.kps-userbar-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:560px){.kps-popup-overlay{padding:14px}.kps-popup-header,.kps-popup-body,.kps-popup-footer{padding-left:18px;padding-right:18px}.kps-popup h3{font-size:21px}.kps-popup-summary-row{align-items:flex-start;gap:14px}}

/* 1.2.6: klare zweizeilige Tätigkeiten und farbcodierte Chronik */
.kps-day-hint{display:grid;gap:3px}
.kps-day-hint strong{display:block;color:var(--kps-text)}
.kps-day-hint span{display:block}
.kps-activity-list article{grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:start}
.kps-activity-list article>time{padding-top:2px;white-space:nowrap}
.kps-activity-list article>.kps-activity-copy{display:grid;gap:7px;min-width:0;overflow:visible;white-space:normal}
.kps-activity-primary{display:flex;align-items:center;gap:14px;min-width:0;white-space:nowrap}
.kps-activity-primary strong{flex:0 0 auto}
.kps-activity-primary span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.kps-activity-primary b{flex:0 0 auto;color:var(--kps-muted);font-size:inherit}
.kps-activity-copy>small{display:block!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.45;color:var(--kps-muted)}
.kps-timeline article.kps-timeline-activity{border-left:4px solid var(--kps-timeline-activity);padding-left:16px}
.kps-timeline article.kps-timeline-measure{border-left-color:var(--kps-timeline-measure)}
.kps-timeline article.kps-timeline-cash{border-left-color:var(--kps-timeline-cash)}
.kps-timeline article.kps-timeline-contract{border-left-color:var(--kps-timeline-contract)}
@media(max-width:760px){
 .kps-activity-list article{grid-template-columns:1fr;gap:7px}
 .kps-activity-list article>time{padding-top:0}
 .kps-activity-primary{flex-wrap:wrap;gap:6px 10px;white-space:normal}
}

/* 1.2.8: kollisionsfreie Tageschronik und Post-it-Notizen */
.kps-timeline article{
  grid-template-columns:205px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.kps-timeline article>time{
  min-width:0;
  white-space:nowrap;
  line-height:1.45;
}
.kps-timeline article>.kps-timeline-copy{
  display:grid;
  gap:7px;
  min-width:0;
  overflow:visible;
  white-space:normal;
}
.kps-timeline-primary{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:5px 12px;
  min-width:0;
  line-height:1.45;
}
.kps-timeline-primary strong,.kps-timeline-primary span,.kps-timeline-primary b{
  display:block;
  min-width:0;
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
}
.kps-timeline-primary strong{flex:0 0 auto}
.kps-timeline-primary span{flex:0 1 auto}
.kps-timeline-primary b{flex:0 0 auto;color:var(--kps-muted);font-size:inherit}
.kps-timeline-copy>small{
  display:block!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.45;
}
.kps-timeline article.kps-timeline-sale{
  display:block;
  min-width:0;
}
.kps-timeline article.kps-timeline-sale>.kps-timeline-copy{width:100%}
.kps-timeline article.kps-timeline-sale .kps-sale-amount{margin-left:0}

.kps-note-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;padding:8px 8px 18px 4px}
.kps-note-item{
  position:relative;
  overflow:visible;
  min-height:150px;
  padding:44px 22px 22px;
  border:1px solid #e0c75b;
  border-radius:4px 4px 14px 4px;
  background:linear-gradient(145deg,#fff9b7 0%,#fff3a0 72%,#f6df69 100%);
  box-shadow:0 8px 18px rgba(97,78,0,.13),inset 0 1px rgba(255,255,255,.7);
  transform:rotate(-.25deg);
}
.kps-note-item:nth-child(even){transform:rotate(.25deg)}
.kps-note-item:after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:28px;
  height:28px;
  background:linear-gradient(135deg,rgba(255,255,255,.15) 0 49%,#d4b83e 50% 100%);
  border-radius:0 0 12px 0;
}
.kps-note-ribbon{
  position:absolute;
  top:12px;
  left:-7px;
  padding:5px 16px 5px 14px;
  background:#d7a600;
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
  box-shadow:0 3px 8px rgba(70,50,0,.16);
}
.kps-note-ribbon:before{
  content:"";
  position:absolute;
  left:0;
  bottom:-7px;
  border-top:7px solid #8d6c00;
  border-left:7px solid transparent;
}
.kps-note-delete{
  position:absolute;
  z-index:3;
  top:9px;
  right:10px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.55);
  color:#654f00;
  font:800 22px/1 inherit;
  cursor:pointer;
  transition:background .16s ease,transform .16s ease;
}
.kps-note-delete:hover{background:#fff;transform:scale(1.06)}
.kps-note-item time{color:#78651d;font-size:12px}
.kps-note-item p{color:#322b0c;font-size:15px;line-height:1.55}
.kps-note-item.is-deleting{opacity:.45;pointer-events:none;transform:scale(.98)}

@media(max-width:760px){
  .kps-timeline article{grid-template-columns:1fr;gap:7px}
  .kps-timeline article>time{padding-top:0}
  .kps-timeline-primary{gap:4px 10px}
}

/* Pro appointment calendar 1.3 */
.kps-popup,.kps-popup *{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Verdana,sans-serif}
.kps-calendar-module{min-height:560px}
.kps-calendar-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:0 0 20px;padding:13px 16px;border:1px solid var(--kps-border);border-radius:12px;background:#f8fafc}.kps-calendar-toolbar span{color:var(--kps-muted);font-size:13px}
.kps-google-sync{display:inline-flex;align-items:center;gap:8px}.kps-google-sync>span{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#fff;border:1px solid var(--kps-border);font-weight:900}
.kps-schedule{display:grid;gap:20px}.kps-schedule-day>header{display:flex;justify-content:space-between;align-items:center;padding:0 4px 9px;border-bottom:1px solid var(--kps-border)}.kps-schedule-day>header strong{font-size:15px}.kps-schedule-day>header span{color:var(--kps-muted);font-size:13px}
.kps-schedule-list{display:grid}.kps-schedule-item{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:22px;align-items:center;padding:16px 10px;border-bottom:1px solid var(--kps-border);border-left:4px solid var(--kps-accent);background:#fff}.kps-schedule-item time{font-weight:850;color:var(--kps-accent);white-space:nowrap}.kps-schedule-main{min-width:0;display:grid;gap:3px}.kps-schedule-main strong{font-size:15px}.kps-schedule-main span,.kps-schedule-main small{color:var(--kps-muted)}.kps-schedule-main p{margin:4px 0 0;color:#475467;line-height:1.45}.kps-schedule-actions{display:flex;align-items:center;gap:10px}.kps-status-pill{padding:6px 9px;border-radius:999px;background:#eef4ff;color:#344054;font-size:12px;font-weight:800;white-space:nowrap}.kps-schedule-item.is-past{filter:grayscale(1);opacity:.58;background:#f5f5f5}.kps-schedule-item.status-abgesagt{border-left-color:#98a2b3}.kps-schedule-item.status-nicht_erschienen{border-left-color:#d92d20}.kps-schedule-item.status-abgeschlossen{border-left-color:#667085}
.kps-booking-modal[hidden]{display:none}.kps-booking-modal{position:fixed;inset:0;z-index:1000000;display:grid;place-items:center;padding:24px;background:rgba(16,24,40,.48);backdrop-filter:blur(5px)}.kps-booking-modal-card{position:relative;width:min(780px,100%);max-height:92vh;overflow:auto;border-radius:18px;background:#fff;box-shadow:0 35px 100px rgba(16,24,40,.35)}.kps-booking-modal-card>.kps-popup-close{position:absolute;right:18px;top:18px;z-index:2}.kps-modal-open{overflow:hidden}
@media(max-width:800px){.kps-calendar-toolbar{align-items:flex-start;flex-direction:column}.kps-schedule-item{grid-template-columns:90px minmax(0,1fr)}.kps-schedule-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}}

/* Product footer and v2 appointment context */
.kps-product-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 22px;border-top:1px solid var(--kps-border,#e4e8ef);background:rgba(255,255,255,.72);color:var(--kps-muted,#667085);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Verdana,sans-serif;font-size:11px;letter-spacing:.01em}
.kps-product-footer small{font-size:11px}.kps-product-version{margin-left:auto;text-align:right;font-variant-numeric:tabular-nums}
.kps-popup-summary.is-current-appointment{border-color:color-mix(in srgb,var(--kps-success,#178449) 45%,var(--kps-border,#e4e8ef));box-shadow:inset 4px 0 0 var(--kps-success,#178449)}
.kps-popup-summary-row strong{max-width:65%;overflow-wrap:anywhere}
@media(max-width:560px){.kps-product-footer{align-items:flex-start;flex-direction:column;gap:4px}.kps-product-version{margin-left:0;text-align:left}.kps-popup-summary-row strong{max-width:58%}}

/* 2.0.1 – Termin-Navigation im Begrüßungsfenster */
.kps-welcome-appointments{display:grid;gap:16px}
.kps-welcome-appointments-topbar{display:flex}
.kps-welcome-count-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--kps-border,#e4e8ef);border-radius:12px;background:#f8fafc;color:var(--kps-text,#172033);font:inherit;text-align:left;cursor:pointer}
.kps-welcome-count-button span{color:var(--kps-muted,#667085);font-size:14px;font-weight:700}.kps-welcome-count-button strong{font-size:16px;font-weight:850}.kps-welcome-count-button:not(:disabled):hover{background:#f2f5f9}.kps-welcome-count-button:disabled{cursor:default}
.kps-welcome-stage{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:10px}
.kps-welcome-arrow{display:grid;place-items:center;width:38px;height:48px;border:1px solid var(--kps-border,#e4e8ef);border-radius:11px;background:#fff;color:var(--kps-text,#172033);font:inherit;font-size:31px;line-height:1;cursor:pointer}.kps-welcome-arrow:hover:not(:disabled){background:#f5f7fa}.kps-welcome-arrow:disabled{opacity:.25;cursor:default}
.kps-welcome-appointment-card{min-width:0;padding:18px;border:1px solid var(--kps-border,#e4e8ef);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(16,24,40,.06)}
.kps-welcome-appointment-card.is-current{border-color:color-mix(in srgb,var(--kps-success,#178449) 45%,var(--kps-border,#e4e8ef));box-shadow:inset 4px 0 0 var(--kps-success,#178449),0 8px 24px rgba(16,24,40,.06)}.kps-welcome-appointment-card.is-muted{opacity:.62;background:#f8fafc}
.kps-welcome-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.kps-welcome-card-kicker{display:block;margin-bottom:4px;color:var(--kps-accent,#1f5eff);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.kps-welcome-appointment-card.is-current .kps-welcome-card-kicker{color:var(--kps-success,#178449)}
.kps-welcome-card-heading h4{margin:0;color:var(--kps-text,#172033);font-size:19px;line-height:1.25}.kps-welcome-card-heading time{white-space:nowrap;color:var(--kps-text,#172033);font-size:16px;font-weight:850}
.kps-welcome-card-meta{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:13px;color:var(--kps-muted,#667085);font-size:13px;font-weight:700}.kps-welcome-card-meta span+span:before{content:'·';margin-right:14px}.kps-welcome-appointment-card p{margin:13px 0 0;color:var(--kps-text,#344054);font-size:14px;line-height:1.45}
.kps-welcome-card-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px;padding-top:12px;border-top:1px solid var(--kps-border,#e4e8ef);color:var(--kps-muted,#667085);font-size:12px;font-weight:800}.kps-welcome-card-footer strong{color:var(--kps-text,#344054)}
.kps-welcome-overview{border:1px solid var(--kps-border,#e4e8ef);border-radius:12px;overflow:hidden}.kps-welcome-overview[hidden]{display:none}.kps-welcome-overview-list{display:grid}.kps-welcome-overview-row{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;background:#fff;color:var(--kps-text,#172033);font:inherit;text-align:left;cursor:pointer}.kps-welcome-overview-row+.kps-welcome-overview-row{border-top:1px solid var(--kps-border,#e4e8ef)}.kps-welcome-overview-row:hover{background:#f8fafc}.kps-welcome-overview-row time{color:var(--kps-accent,#1f5eff);font-weight:850}.kps-welcome-overview-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.kps-welcome-overview-row small{color:var(--kps-muted,#667085);font-weight:700}.kps-welcome-empty{padding:18px;border:1px solid var(--kps-border,#e4e8ef);border-radius:12px;background:#f8fafc;color:var(--kps-muted,#667085);font-weight:700}
@media(max-width:560px){.kps-welcome-stage{grid-template-columns:32px minmax(0,1fr) 32px;gap:7px}.kps-welcome-arrow{width:32px;height:44px}.kps-welcome-card-heading{gap:10px}.kps-welcome-card-heading h4{font-size:17px}.kps-welcome-card-heading time{font-size:14px}.kps-welcome-overview-row{grid-template-columns:72px minmax(0,1fr) auto;gap:8px;padding:11px 10px}}


/* 2.1.0 – Kalenderansichten Heute / Woche / Monat */
.kps-calendar-view-switch{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--kps-border);border-radius:11px;background:#fff}
.kps-calendar-view-switch button{border:0;border-radius:8px;padding:9px 15px;background:transparent;color:var(--kps-muted);font:inherit;font-size:13px;font-weight:850;cursor:pointer}
.kps-calendar-view-switch button.is-active{background:var(--kps-accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--kps-accent) 25%,transparent)}
.kps-calendar-view[hidden]{display:none!important}.kps-calendar-view-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 4px 10px;border-bottom:1px solid var(--kps-border)}.kps-calendar-view-heading span{color:var(--kps-muted);font-size:13px}
.kps-schedule-item.is-current{position:relative;border-color:color-mix(in srgb,var(--kps-success,#178449) 50%,var(--kps-border));border-left-color:var(--kps-success,#178449);background:color-mix(in srgb,var(--kps-success,#178449) 10%,#fff);box-shadow:0 8px 24px rgba(23,132,73,.12)}
.kps-schedule-item.is-current time{color:var(--kps-success,#178449)}.kps-status-pill.is-current{background:color-mix(in srgb,var(--kps-success,#178449) 14%,#fff);color:var(--kps-success,#178449);border:1px solid color-mix(in srgb,var(--kps-success,#178449) 30%,transparent)}
.kps-week-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}.kps-week-day{min-height:320px;border:1px solid var(--kps-border);border-radius:13px;background:#f8fafc;overflow:hidden}.kps-week-day.is-today{border-color:color-mix(in srgb,var(--kps-accent) 45%,var(--kps-border));box-shadow:inset 0 3px 0 var(--kps-accent)}.kps-week-day>header{display:flex;justify-content:space-between;padding:12px;border-bottom:1px solid var(--kps-border);background:#fff}.kps-week-day>header span{color:var(--kps-muted);font-size:12px}.kps-week-day-list{display:grid;gap:8px;padding:9px}.kps-week-day-list>small{padding:10px 4px;color:var(--kps-muted)}
.kps-week-appointment{display:grid;gap:3px;width:100%;padding:10px;border:1px solid var(--kps-border);border-left:4px solid var(--kps-accent);border-radius:9px;background:#fff;color:var(--kps-text);font:inherit;text-align:left;cursor:pointer}.kps-week-appointment time{font-size:12px;font-weight:900;color:var(--kps-accent)}.kps-week-appointment strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.kps-week-appointment span{color:var(--kps-muted);font-size:11px}.kps-week-appointment.is-current{border-left-color:var(--kps-success,#178449);background:color-mix(in srgb,var(--kps-success,#178449) 12%,#fff)}.kps-week-appointment.is-current time{color:var(--kps-success,#178449)}.kps-week-appointment.is-past{opacity:.48;filter:grayscale(1)}
.kps-month-title{margin:0 0 14px;font-size:19px;font-weight:900}.kps-month-weekdays,.kps-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.kps-month-weekdays{margin-bottom:7px}.kps-month-weekdays span{text-align:center;color:var(--kps-muted);font-size:11px;font-weight:900;text-transform:uppercase}.kps-month-cell{min-height:118px;padding:8px;border:1px solid var(--kps-border);border-radius:10px;background:#fff;overflow:hidden}.kps-month-cell.is-empty{border-color:transparent;background:transparent}.kps-month-cell.is-today{border-color:var(--kps-accent);box-shadow:inset 0 3px 0 var(--kps-accent)}.kps-month-cell>header{margin-bottom:6px;font-size:12px;font-weight:900}.kps-month-cell>div{display:grid;gap:4px}.kps-month-appointment{display:grid;grid-template-columns:38px minmax(0,1fr);gap:5px;width:100%;padding:5px 6px;border:0;border-left:3px solid var(--kps-accent);border-radius:6px;background:#f2f6ff;color:var(--kps-text);font:inherit;text-align:left;cursor:pointer}.kps-month-appointment time{font-size:10px;font-weight:900}.kps-month-appointment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:750}.kps-month-appointment.is-current{border-left-color:var(--kps-success,#178449);background:color-mix(in srgb,var(--kps-success,#178449) 15%,#fff);color:#0d5d35}.kps-month-appointment.is-past{opacity:.45;filter:grayscale(1)}
@media(max-width:800px){.kps-calendar-view-switch{width:100%}.kps-calendar-view-switch button{flex:1}.kps-month-cell{min-height:92px;padding:5px}.kps-month-appointment{grid-template-columns:1fr}.kps-month-appointment time{display:none}}

/* 2.2.0: laufende Termine, Terminlöschung und Umsatzziel */
.kps-appointment-card.is-current{border-color:color-mix(in srgb,var(--kps-success,#178449) 48%,var(--kps-border));background:color-mix(in srgb,var(--kps-success,#178449) 9%,#fff);box-shadow:inset 4px 0 0 var(--kps-success,#178449),0 8px 24px rgba(23,132,73,.1)}
.kps-inline-current{display:inline-flex!important;width:max-content;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--kps-success,#178449) 14%,#fff);color:var(--kps-success,#178449)!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.04em}
.kps-booking-edit-footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center}.kps-danger-button{border:1px solid #dc2626;border-radius:10px;background:#fff;color:#b91c1c;padding:11px 15px;font:inherit;font-weight:850;cursor:pointer}.kps-danger-button:hover{background:#fff1f2}.kps-danger-button:disabled{opacity:.5;cursor:not-allowed}
.kps-revenue-header{align-items:flex-start}.kps-revenue-target-form{min-width:min(390px,100%)}.kps-revenue-target-form label>span{display:block;margin-bottom:6px;color:var(--kps-muted);font-size:12px;font-weight:850}.kps-revenue-target-form label>div{display:flex;gap:8px}.kps-revenue-target-form input{min-width:0;width:190px;border:1px solid var(--kps-border);border-radius:10px;padding:10px 12px;font:inherit;font-weight:800}.kps-revenue-target-form small{display:block;margin-top:5px;color:var(--kps-muted);font-size:11px}.kps-target-success{display:inline-flex;margin-top:8px;padding:7px 10px;border-radius:999px;background:#eaf8ef;color:#13733b;font-size:12px;font-weight:900}.kps-month-chart{position:relative}.kps-revenue-target-line{position:absolute;left:2px;right:2px;z-index:5;border-top:1px solid #dc2626;pointer-events:none}.kps-revenue-target-line span{position:absolute;right:2px;bottom:4px;padding:2px 5px;border-radius:5px;background:rgba(255,255,255,.92);color:#b91c1c;font-size:10px;font-weight:900}.kps-legend-target{width:16px!important;height:1px!important;border-radius:0!important;background:#dc2626!important;margin-left:8px}
@media(max-width:760px){.kps-revenue-header{display:grid}.kps-revenue-target-form{width:100%}.kps-booking-edit-footer{grid-template-columns:1fr}.kps-booking-edit-footer .kps-danger-button,.kps-booking-edit-footer .kps-primary-button{width:100%}}

/* 2.3.2 – Mobile viewport containment and professional touch layout */
html,body{max-width:100%}
body.kps-kiosk-body{width:100%;max-width:100%;overscroll-behavior-x:none;touch-action:pan-y}
#kps-kiosk-root,.kps-app,.kps-app-header,.kps-userbar,.kps-tabs,.kps-workspace,.kps-tab-panel,.kps-form,.kps-calendar-module{min-width:0;max-width:100%}
.kps-app img,.kps-app svg,.kps-app canvas{max-width:100%}
.kps-app input,.kps-app select,.kps-app textarea,.kps-app button{max-width:100%}
.kps-app p,.kps-app strong,.kps-app span,.kps-app small,.kps-app td,.kps-app th{overflow-wrap:anywhere}
.kps-two-column,.kps-grid,.kps-kpi-grid,.kps-chart-grid,.kps-calendar-card,.kps-calendar-toolbar,.kps-form-title,.kps-form-footer{min-width:0}
.kps-chart-card,.kps-chart-wrap,.kps-month-chart{min-width:0;max-width:100%;overflow:hidden}
.kps-chart-card canvas,.kps-month-chart canvas{width:100%!important;max-width:100%!important}

@media(max-width:760px){
  body.kps-kiosk-body{overflow-x:hidden!important}
  .kps-app{overflow-x:clip!important}
  .kps-app-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
  .kps-company-logo{max-width:110px;width:auto}
  .kps-userbar{gap:10px;flex-wrap:wrap}
  .kps-userbar>div:first-child{min-width:0}
  .kps-userbar-actions{min-width:0;margin-left:auto;gap:8px}
  .kps-tabs{width:100%;max-width:100%;padding:9px 12px;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .kps-tab{min-width:max-content;padding:10px 14px;scroll-snap-align:start}
  .kps-workspace{width:100%;max-width:100%;padding:16px!important;overflow-x:clip}
  .kps-form{width:100%;max-width:100%;padding:17px!important}
  .kps-two-column{grid-template-columns:minmax(0,1fr)!important}
  .kps-calendar-card,.kps-calendar-toolbar{width:100%}
  .kps-schedule-item{grid-template-columns:72px minmax(0,1fr);gap:10px;padding:14px 8px}
  .kps-schedule-actions{grid-column:1/-1;width:100%}
  .kps-schedule-actions button{flex:1;min-height:42px}
  .kps-week-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;overflow:visible;padding:0}
  .kps-week-day{min-width:0;min-height:auto;width:100%}
  .kps-month-weekdays,.kps-month-grid{width:100%;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
  .kps-month-cell{min-width:0;min-height:72px;padding:4px;border-radius:7px}
  .kps-month-cell>header{font-size:10px}
  .kps-month-appointment{min-width:0;padding:4px 3px;border-left-width:2px}
  .kps-month-appointment span{font-size:9px}
  .kps-calendar-view-heading{gap:10px;align-items:flex-start}
  .kps-calendar-view-heading span{text-align:right}
  .kps-welcome-stage{width:100%;max-width:100%}
  .kps-welcome-appointment-card{width:100%;max-width:100%}
  .kps-welcome-overview-row{min-width:0}
  .kps-booking-modal{padding:10px;overflow-x:hidden}
  .kps-booking-modal-card{width:100%;max-width:100%;border-radius:14px}
  .kps-note-list{grid-template-columns:minmax(0,1fr);padding-left:0;padding-right:0}
  .kps-note-item,.kps-note-item:nth-child(even){width:100%;max-width:100%;transform:none}
  .kps-product-footer{width:100%;max-width:100%}
}

@media(max-width:420px){
  .kps-app-header{grid-template-columns:minmax(0,1fr)}
  .kps-company-logo{max-width:125px}
  .kps-brand-copy h2{font-size:20px}
  .kps-workspace{padding:12px!important}
  .kps-form{padding:14px!important;border-radius:13px}
  .kps-calendar-view-switch button{padding:9px 8px;font-size:12px}
  .kps-schedule-item{grid-template-columns:1fr}
  .kps-schedule-actions{grid-column:1}
  .kps-schedule-item time{white-space:normal}
  .kps-month-weekdays span{font-size:9px}
  .kps-month-cell{min-height:64px}
}

/* 2.4.0 – Mobile safe margins and password reset */
.kps-forgot-link{display:inline-flex;align-self:center;justify-content:center;border:0;background:transparent;color:var(--kps-accent);font:inherit;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:7px 10px}
.kps-password-panel{margin-top:12px;padding-top:18px;border-top:1px solid var(--kps-border)}
.kps-password-panel h4{margin:0;font-size:18px}.kps-password-panel p{margin:0;color:var(--kps-muted);font-size:13px;line-height:1.55}
@media(max-width:760px){
  body.kps-kiosk-body{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));box-sizing:border-box}
  #kps-kiosk-root{width:100%;margin:0 auto}
  .kps-app{width:100%;margin:10px auto;max-width:calc(100vw - 20px);border-radius:16px}
  .kps-workspace{padding-left:14px!important;padding-right:14px!important}
  .kps-login-panel{width:calc(100% - 24px);margin-left:auto;margin-right:auto;padding-left:18px!important;padding-right:18px!important}
  .kps-app-header,.kps-userbar,.kps-product-footer{padding-left:16px!important;padding-right:16px!important}
  .kps-booking-modal{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
}


/* 2.4.1 – Branded login and hardened mobile safe layout */
.kps-login-panel [hidden]{display:none!important}
.kps-login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin:0 0 28px}
.kps-login-logo{display:block;max-width:min(260px,80%);max-height:105px;width:auto;height:auto;object-fit:contain;margin:0 auto 15px}
.kps-login-brand .kps-login-icon{margin:0 auto 15px}
.kps-login-brand h2{margin:0;color:var(--kps-text);font-size:clamp(22px,4vw,30px);line-height:1.18;overflow-wrap:anywhere}
.kps-login-brand span{margin-top:7px;color:var(--kps-muted);font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.kps-login-heading{margin-top:0!important}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .kps-app{max-width:100%;width:auto;margin:10px max(12px,env(safe-area-inset-right)) 10px max(12px,env(safe-area-inset-left))}
  .kps-app-header{min-height:auto;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;padding-top:20px!important;padding-bottom:20px!important}
  .kps-brand-copy{width:100%;text-align:center;min-width:0}
  .kps-brand-copy h2{font-size:24px;overflow-wrap:anywhere}
  .kps-company-logo{order:-1;max-width:min(220px,78vw);max-height:64px;margin:0 auto}
  .kps-login-panel{width:auto;max-width:none;margin:18px max(2px,env(safe-area-inset-right)) 18px max(2px,env(safe-area-inset-left));padding:26px 18px!important}
  .kps-login-logo{max-width:min(230px,78vw);max-height:90px}
  .kps-login-form,.kps-password-panel,.kps-field,.kps-field input,.kps-primary-button{min-width:0;max-width:100%}
  .kps-userbar{flex-direction:column;align-items:center!important;text-align:center;gap:12px}
  .kps-userbar>div:first-child{justify-content:center}
  .kps-userbar-actions{width:100%;justify-content:center!important}
  .kps-workspace,.kps-tab-panel,.kps-form,.kps-surface,.kps-panel{min-width:0;max-width:100%}
}
@media(max-width:380px){
  .kps-app{margin-left:max(8px,env(safe-area-inset-left));margin-right:max(8px,env(safe-area-inset-right))}
  .kps-login-panel{padding-left:14px!important;padding-right:14px!important}
  .kps-login-brand h2{font-size:21px}
}


/* Hilfecenter 2.5.1 */
.kps-help-launch{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:8px;background:#1f5eff;color:#fff;border:0;border-radius:999px;padding:14px 18px;font:inherit;font-weight:800;cursor:pointer;z-index:9999;box-shadow:0 12px 32px rgba(31,94,255,.28);transition:transform .2s ease,box-shadow .2s ease}
.kps-help-launch:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(31,94,255,.34)}
.kps-help-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:clamp(10px,3vw,32px);background:rgba(12,20,38,.68);backdrop-filter:blur(7px);z-index:10000}
.kps-help-modal.open{display:flex}
.kps-help-dialog{width:min(1120px,100%);max-height:min(94vh,980px);display:flex;flex-direction:column;overflow:hidden;background:#f6f8fc;border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.32)}
.kps-help-header{position:relative;display:flex;justify-content:space-between;gap:24px;padding:26px 76px 22px 30px;background:linear-gradient(135deg,#173e95,#1f5eff);color:#fff}
.kps-help-header h2{margin:4px 0 8px;font-size:clamp(1.55rem,3vw,2.25rem);color:#fff}.kps-help-header p{max-width:820px;margin:0;line-height:1.65;color:rgba(255,255,255,.9)}
.kps-help-kicker{font-size:.75rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.kps-help-close{position:absolute;right:20px;top:20px;width:42px;height:42px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:27px;line-height:1;cursor:pointer}
.kps-help-toolbar{display:flex;gap:12px;padding:16px 22px;background:#fff;border-bottom:1px solid #dde4f0}
.kps-help-search{flex:1;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #cfd8e8;border-radius:12px;background:#f9fbff}.kps-help-search:focus-within{border-color:#1f5eff;box-shadow:0 0 0 3px rgba(31,94,255,.12)}
.kps-help-search input{width:100%;min-width:0;padding:12px 0;border:0!important;outline:0;background:transparent;font:inherit;box-shadow:none!important}
.kps-help-top{border:1px solid #cfd8e8;border-radius:12px;background:#fff;padding:0 15px;font-weight:750;cursor:pointer}
.kps-help-layout{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:0;overflow:hidden}
.kps-help-nav{display:flex;flex-direction:column;gap:6px;overflow:auto;padding:22px 16px;background:#fff;border-right:1px solid #dde4f0}.kps-help-nav strong{padding:0 10px 8px;color:#667085;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.kps-help-nav a{display:block;padding:10px 12px;border-radius:10px;color:#26364f;text-decoration:none;font-weight:700;transition:background .15s ease,color .15s ease}.kps-help-nav a:hover,.kps-help-nav a:focus{background:#eef4ff;color:#174ec7}
.kps-help-content{scroll-behavior:smooth;overflow:auto;padding:24px clamp(16px,3vw,34px) 40px;min-width:0}
.kps-help-intro,.kps-help-section,.kps-help-finish{scroll-margin-top:20px;background:#fff;border:1px solid #dde4f0;border-radius:18px;padding:clamp(18px,3vw,28px);margin:0 0 18px;box-shadow:0 8px 24px rgba(32,53,88,.055)}
.kps-help-intro h3,.kps-help-section h3,.kps-help-finish h3{margin:0 0 10px;color:#17243a}.kps-help-section h4{margin:22px 0 8px;color:#26364f}.kps-help-section p,.kps-help-intro p,.kps-help-finish p{line-height:1.72;color:#475467}
.kps-help-section ol,.kps-help-section ul{padding-left:22px;color:#475467;line-height:1.7}.kps-help-section li+li{margin-top:6px}
.kps-help-section-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}.kps-help-section-head>div>span{display:block;color:#718096;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.kps-help-section-head h3{margin:2px 0 0}
.kps-help-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:14px;background:#edf3ff;color:#1f5eff;font-size:1.35rem;font-weight:900}
.kps-help-tip{margin:18px 0;padding:15px 17px;border-left:4px solid #1f5eff;border-radius:10px;background:#eef4ff;color:#30415e;line-height:1.6}
.kps-help-module{display:inline-flex;align-items:center;justify-content:center;margin:12px 8px 0 0;padding:11px 16px;border:0;border-radius:10px;background:#1f5eff;color:#fff;font:inherit;font-weight:800;cursor:pointer}.kps-help-module.is-secondary{background:#eaf1ff;color:#174ec7}
.kps-help-section details{border-top:1px solid #e5eaf2}.kps-help-section details:last-of-type{border-bottom:1px solid #e5eaf2}.kps-help-section summary{cursor:pointer;padding:15px 2px;font-weight:800;color:#26364f}.kps-help-section details p{margin:0 0 16px}
.kps-help-finish{text-align:center;background:linear-gradient(145deg,#fff,#eef4ff)}.kps-help-empty{text-align:center;padding:38px 16px;color:#667085}
body.kps-help-open{overflow:hidden}
@media(max-width:760px){.kps-help-modal{padding:0}.kps-help-dialog{width:100%;height:100%;max-height:none;border-radius:0}.kps-help-header{padding:22px 64px 18px 18px}.kps-help-toolbar{padding:10px}.kps-help-top{display:none}.kps-help-layout{display:block;overflow:auto}.kps-help-nav{position:sticky;top:0;z-index:2;flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid #dde4f0;padding:10px}.kps-help-nav strong{display:none}.kps-help-nav a{white-space:nowrap;background:#f2f5fa}.kps-help-content{overflow:visible;padding:14px 12px 30px}.kps-help-launch{right:12px;bottom:12px;padding:13px}.kps-help-launch span{display:none}.kps-help-section,.kps-help-intro,.kps-help-finish{border-radius:14px}.kps-help-module{width:100%;margin-right:0}}


/* 2.6.0 – Angepinnte Notizzettel im Cockpit (nur Desktop) */
.kps-cockpit-sticky-notes{display:none}
@media(min-width:1024px){
  .kps-cockpit-sticky-notes{display:block;margin-top:28px;padding-top:24px;border-top:1px dashed rgba(84,96,116,.35)}
  .kps-sticky-notes-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
  .kps-sticky-notes-head h4{margin:2px 0 0;font-size:22px;color:var(--kps-text)}
  .kps-sticky-open-notes{border:1px solid var(--kps-border);border-radius:10px;background:#fff;color:var(--kps-text);padding:10px 14px;font:inherit;font-weight:800;cursor:pointer}
  .kps-sticky-open-notes:hover{border-color:var(--kps-accent);color:var(--kps-accent)}
  .kps-sticky-notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start;padding:12px 5px 18px}
  .kps-sticky-note{--kps-note-rotate:-.5deg;position:relative;min-width:0;background:linear-gradient(145deg,#fff4a9 0%,#ffe978 100%);border:1px solid rgba(133,110,23,.18);border-radius:8px;box-shadow:0 10px 22px rgba(65,55,20,.14),inset 0 1px rgba(255,255,255,.8);transform:rotate(var(--kps-note-rotate));transform-origin:50% 8%;transition:transform .2s ease,box-shadow .2s ease;overflow:visible}
  .kps-sticky-note-1{--kps-note-rotate:.45deg;background:linear-gradient(145deg,#fff0a0,#ffe36d)}
  .kps-sticky-note-2{--kps-note-rotate:-.25deg;background:linear-gradient(145deg,#fff7b8,#ffe984)}
  .kps-sticky-note-3{--kps-note-rotate:.55deg;background:linear-gradient(145deg,#fff1a4,#ffe173)}
  .kps-sticky-note-4{--kps-note-rotate:-.35deg;background:linear-gradient(145deg,#fff6ae,#ffe77d)}
  .kps-sticky-note:hover,.kps-sticky-note:focus-within,.kps-sticky-note[open]{z-index:3;transform:translateY(-3px) rotate(0);box-shadow:0 16px 30px rgba(65,55,20,.22),inset 0 1px rgba(255,255,255,.85)}
  .kps-sticky-note-summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 26px;align-items:center;gap:10px;min-height:82px;padding:24px 16px 14px 20px;color:#403b25;cursor:pointer;list-style:none}
  .kps-sticky-note-summary::-webkit-details-marker{display:none}
  .kps-paperclip{position:absolute;z-index:3;left:24px;top:-17px;width:14px;height:43px;border:3px solid #9aa2ad;border-radius:9px;transform:rotate(8deg);box-shadow:inset 1px 0 rgba(255,255,255,.8),1px 2px 3px rgba(0,0,0,.15);pointer-events:none}
  .kps-paperclip:after{content:"";position:absolute;left:3px;top:7px;width:5px;height:27px;border:2px solid #c4cad1;border-radius:6px}
  .kps-sticky-note-title{font-size:15px;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .kps-sticky-note-summary time{font-size:11px;font-weight:800;color:#756b3e;white-space:nowrap}
  .kps-sticky-note-chevron{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:rgba(255,255,255,.55);font-size:20px;font-weight:900;line-height:1;transition:transform .2s ease}
  .kps-sticky-note[open] .kps-sticky-note-chevron{transform:rotate(180deg)}
  .kps-sticky-note-content{padding:0 18px 18px;border-top:1px dashed rgba(95,80,24,.25)}
  .kps-sticky-note-content p{margin:16px 0 18px;font-size:14px;line-height:1.6;white-space:normal;overflow-wrap:anywhere;color:#403b25}
  .kps-sticky-note-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .kps-sticky-note-open,.kps-sticky-note-close{border:0;border-radius:9px;padding:9px 12px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
  .kps-sticky-note-open{background:#fff;color:#5d5227}
  .kps-sticky-note-close{background:#b42318;color:#fff}
  .kps-sticky-note-open:hover{color:var(--kps-accent)}
  .kps-sticky-note-close:hover{background:#8f1c14}
  .kps-sticky-note.is-deleting{opacity:.45;transform:scale(.94) rotate(var(--kps-note-rotate));pointer-events:none}
  .kps-sticky-empty{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;min-height:120px;border:1px dashed var(--kps-border);border-radius:14px;background:rgba(255,255,255,.48);color:var(--kps-muted);text-align:center}
  .kps-sticky-empty span{font-size:26px}.kps-sticky-empty strong{color:var(--kps-text)}.kps-sticky-empty small{font-size:12px}
}

/* KPS 2.8.0 – professionelle Wiedervorlagen, vollständig gekapselt */
.kps-app .kps-reminder-board{margin-top:24px;padding:22px;border:1px solid #dfe7ef;border-radius:20px;background:linear-gradient(145deg,#fff,#f8fbfd);box-shadow:0 14px 35px rgba(20,45,70,.08)}
.kps-app .kps-reminder-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.kps-app .kps-reminder-head h4{margin:3px 0 0;font-size:21px;color:#17324d}
.kps-app .kps-reminder-add{white-space:nowrap}
.kps-app .kps-reminder-form{margin:0 0 18px;padding:18px;border:1px solid #d7e2eb;border-radius:16px;background:#fff}
.kps-app .kps-reminder-list{display:grid;gap:10px}
.kps-app .kps-reminder-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:12px;padding:14px 12px;border:1px solid #dce5ed;border-left:5px solid #7891a7;border-radius:14px;background:#fff;transition:.2s ease}
.kps-app .kps-reminder-card.priority-high{border-left-color:#e2a01d}.kps-app .kps-reminder-card.priority-urgent{border-left-color:#d33b3b}
.kps-app .kps-reminder-card.is-today{background:#fffaf0}.kps-app .kps-reminder-card.is-overdue{background:#fff4f4;border-color:#efcaca;border-left-color:#c82020}
.kps-app .kps-reminder-card.is-processing{opacity:.55;pointer-events:none}.kps-app .kps-reminder-card.is-done{opacity:0;transform:translateX(18px)}
.kps-app .kps-reminder-check,.kps-app .kps-reminder-delete{border:0;background:transparent;cursor:pointer}
.kps-app .kps-reminder-check{width:36px;height:36px;border:2px solid #91a6b8;border-radius:50%;color:transparent;font-size:18px;font-weight:800}.kps-app .kps-reminder-check:hover{background:#23865f;border-color:#23865f;color:#fff}
.kps-app .kps-reminder-delete{font-size:24px;color:#8b98a5}.kps-app .kps-reminder-delete:hover{color:#c62828}
.kps-app .kps-reminder-copy{min-width:0}.kps-app .kps-reminder-copy>div{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.kps-app .kps-reminder-copy strong{font-size:16px;color:#18344f}.kps-app .kps-reminder-copy span{color:#63798c;font-size:13px}.kps-app .kps-reminder-copy p{margin:5px 0;color:#40576a}.kps-app .kps-reminder-copy time{display:block;margin-top:5px;color:#667d90;font-size:12px}.kps-app .kps-reminder-copy time b{color:#bc2626}
.kps-app .kps-reminder-empty{display:flex;flex-direction:column;align-items:center;padding:24px;border:1px dashed #cbd8e2;border-radius:14px;color:#698093;text-align:center}
@media(max-width:700px){.kps-app .kps-reminder-head{align-items:flex-start;flex-direction:column}.kps-app .kps-reminder-add{width:100%}.kps-app .kps-reminder-card{grid-template-columns:38px minmax(0,1fr) 28px}.kps-app .kps-reminder-board{padding:16px}}

/* KPS 3.0.0 – nur innerhalb der Plugin-App */
.kps-app .kps-userbar{position:relative}
.kps-app .kps-notification-bell{position:relative;border:1px solid var(--kps-border);background:var(--kps-surface);border-radius:14px;padding:10px 13px;font-size:20px;cursor:pointer}
.kps-app .kps-notification-bell span{position:absolute;right:-6px;top:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--kps-danger);color:#fff;font-size:11px;display:grid;place-items:center;font-weight:800}
.kps-app .kps-notification-panel{position:absolute;z-index:90;right:16px;top:calc(100% + 10px);width:min(390px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:var(--kps-surface);border:1px solid var(--kps-border);border-radius:18px;box-shadow:0 24px 70px rgba(15,23,42,.22);padding:16px}
.kps-app .kps-notification-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.kps-app .kps-notification-head h3{margin:2px 0}.kps-app .kps-notification-head button{border:0;background:transparent;font-size:26px;cursor:pointer}
.kps-app .kps-notification-list{display:grid;gap:9px}.kps-app .kps-notification-item{width:100%;text-align:left;border:1px solid var(--kps-border);background:var(--kps-bg);border-radius:13px;padding:12px;display:grid;gap:4px;cursor:pointer}.kps-app .kps-notification-item:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,.08)}.kps-app .kps-notification-item.is-reminder{border-left:5px solid #f59e0b}.kps-app .kps-notification-item.is-offer{border-left:5px solid #7c3aed}.kps-app .kps-notification-item.is-appointment{border-left:5px solid #16a34a}.kps-app .kps-notification-empty{padding:22px;text-align:center;display:grid;gap:5px;color:var(--kps-muted)}
.kps-app .kps-cockpit-grid .kps-kpi-offers{grid-column:span 1}.kps-app .kps-kpi-offers button{margin-top:9px;border:0;background:transparent;color:var(--kps-accent);font-weight:800;padding:0;cursor:pointer}
.kps-app .kps-offer-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.kps-app .kps-offer-kpis article{border:1px solid var(--kps-border);background:var(--kps-bg);border-radius:16px;padding:16px;display:grid;gap:5px}.kps-app .kps-offer-kpis strong{font-size:clamp(22px,3vw,32px)}
.kps-app .kps-offer-create{border:1px solid rgba(34,197,94,.28);border-radius:16px;margin:16px 0;background:linear-gradient(135deg,rgba(240,253,244,.98),rgba(220,252,231,.72))}.kps-app .kps-offer-create summary{padding:16px;font-weight:800;cursor:pointer;color:#166534}.kps-app .kps-offer-create[open] summary{border-bottom:1px solid rgba(34,197,94,.18)}.kps-app .kps-offer-create form{padding:16px}
.kps-app .kps-offer-board{display:grid;grid-template-columns:repeat(6,minmax(230px,1fr));gap:12px;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin}.kps-app .kps-offer-column{background:var(--kps-bg);border:1px solid var(--kps-border);border-radius:16px;min-height:280px}.kps-app .kps-offer-column>header{padding:13px 14px;border-bottom:1px solid var(--kps-border);display:flex;justify-content:space-between;align-items:center}.kps-app .kps-offer-column>header span{background:var(--kps-surface);border-radius:999px;padding:3px 8px;font-weight:800}.kps-app .kps-offer-column>div{padding:10px;display:grid;gap:10px}
.kps-app .kps-offer-card{background:var(--kps-surface);border:1px solid var(--kps-border);border-radius:14px;padding:12px;display:grid;gap:7px;box-shadow:0 7px 18px rgba(15,23,42,.06)}.kps-app .kps-offer-card.is-due{border-color:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,.12)}.kps-app .kps-offer-card-head{display:flex;justify-content:space-between;gap:10px}.kps-app .kps-offer-card-head button{border:0;background:transparent;font-size:20px;cursor:pointer}.kps-app .kps-offer-card>b{font-size:22px}.kps-app .kps-offer-card p{margin:0;color:var(--kps-muted)}.kps-app .kps-offer-card time{font-size:12px;color:var(--kps-muted)}.kps-app .kps-offer-card time em{color:#b45309;font-style:normal;font-weight:800}.kps-app .kps-offer-status-form{display:grid;grid-template-columns:1fr auto;gap:6px}.kps-app .kps-offer-status-form select,.kps-app .kps-offer-status-form button{min-height:36px;border:1px solid var(--kps-border);border-radius:9px;background:var(--kps-bg);padding:6px}.kps-app .kps-offer-status-form button{font-weight:800;cursor:pointer}.kps-app .kps-offer-empty{padding:20px;text-align:center;color:var(--kps-muted)}
@media(max-width:900px){.kps-app .kps-offer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kps-app .kps-notification-panel{position:fixed;top:72px;right:12px;left:12px;width:auto}.kps-app .kps-offer-board{grid-template-columns:1fr;overflow:visible}.kps-app .kps-offer-column{min-height:0}}

/* 3.1.0 – Angebotsverwaltung PRO Pipeline */
.kps-app .kps-pipeline-rules{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 18px;padding:12px 14px;border:1px solid var(--kps-border);border-radius:14px;background:var(--kps-bg)}
.kps-app .kps-pipeline-rules strong{margin-right:4px}.kps-app .kps-pipeline-rules span{padding:5px 9px;border-radius:999px;background:var(--kps-surface);font-size:12px;font-weight:700}
.kps-app .kps-offer-board{grid-template-columns:repeat(7,minmax(250px,1fr))}
.kps-app .kps-offer-column.status-order{border-color:#86b7fe}.kps-app .kps-offer-column.status-measurement{border-color:#c4a7e7}.kps-app .kps-offer-column.status-installation{border-color:#f0b36a}.kps-app .kps-offer-column.status-completed{border-color:#79c69a}.kps-app .kps-offer-column.status-lost{opacity:.78}
.kps-app .kps-manufacturer-badge{display:inline-flex!important;width:max-content;padding:4px 8px;border-radius:999px;background:var(--kps-bg);border:1px solid var(--kps-border);font-size:12px;font-weight:800}
.kps-app .kps-offer-details{margin-top:3px;border-top:1px solid var(--kps-border);padding-top:8px}.kps-app .kps-offer-details summary{cursor:pointer;font-weight:800;font-size:12px;color:var(--kps-accent)}
.kps-app .kps-offer-status-form{display:grid;grid-template-columns:1fr;gap:8px;margin-top:9px}.kps-app .kps-offer-status-form label{display:grid;gap:4px}.kps-app .kps-offer-status-form label>span{font-size:11px;font-weight:800;color:var(--kps-muted)}
.kps-app .kps-offer-status-form .kps-check{display:flex;align-items:center;gap:7px}.kps-app .kps-offer-status-form .kps-check input{width:auto}.kps-app .kps-offer-status-form input,.kps-app .kps-offer-status-form select{width:100%;min-height:36px;border:1px solid var(--kps-border);border-radius:9px;background:var(--kps-bg);padding:6px}
.kps-app .kps-offer-status-form button{width:100%;min-height:38px;border:0;border-radius:9px;background:var(--kps-accent);color:#fff;font-weight:800;cursor:pointer}
@media(max-width:900px){.kps-app .kps-offer-board{grid-template-columns:1fr}.kps-app .kps-pipeline-rules{align-items:flex-start;flex-direction:column}}

/* 3.2.0 – umschaltbare Desktop-Navigation: links oder oben */
.kps-app-shell{display:block;min-width:0;flex:1}
.kps-nav-left .kps-app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:stretch}
.kps-nav-left .kps-tabs{position:sticky;top:0;align-self:start;display:flex;flex-direction:column;gap:7px;height:100vh;max-height:100vh;padding:22px 14px;background:var(--kps-surface);border-right:1px solid var(--kps-border);border-bottom:0;overflow-x:hidden;overflow-y:auto}
.kps-nav-left .kps-tab{justify-content:flex-start;width:100%;min-width:0;padding:12px 14px;text-align:left}
.kps-nav-left .kps-tab-icon{display:inline-grid;place-items:center;width:25px;flex:0 0 25px}
.kps-nav-left .kps-workspace{width:100%;max-width:var(--kps-content-width);margin:0 auto}
body.kps-kiosk-body .kps-nav-left .kps-app-shell{flex:1;min-height:0}
body.kps-kiosk-body .kps-nav-left .kps-tabs{top:0;height:100%;max-height:none}
body.kps-kiosk-body .kps-nav-left .kps-workspace{max-width:var(--kps-content-width)}
@media(max-width:980px){
 .kps-nav-left .kps-app-shell{display:block}
 .kps-nav-left .kps-tabs{position:static;display:flex;flex-direction:row;width:100%;height:auto;max-height:none;padding:9px 12px;gap:6px;border-right:0;border-bottom:1px solid var(--kps-border);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity}
 .kps-nav-left .kps-tab{justify-content:center;width:auto;min-width:max-content;padding:10px 14px;scroll-snap-align:start}
}

/* 3.2.2 – Moderner zweizeiliger App-Header */
.kps-app-header{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:20px 32px}
.kps-header-brand{display:flex;align-items:center;gap:24px;min-width:0}
.kps-header-brand .kps-company-logo{order:0;flex:0 0 auto;max-width:190px;max-height:62px;margin:0}
.kps-header-brand .kps-brand-copy{min-width:0;text-align:left}
.kps-header-brand .kps-brand-copy h2{margin-top:4px;font-size:clamp(22px,2.3vw,30px)}
.kps-header-account{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex:0 0 auto;text-align:right}
.kps-header-account>div{display:grid;gap:2px}
.kps-header-account span,.kps-header-account small{color:rgba(255,255,255,.68);font-size:11px;font-weight:700}
.kps-header-account strong{color:#fff;font-size:15px}
.kps-header-logout{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(8px)}
.kps-header-logout:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.5)}
.kps-userbar{position:relative;min-height:58px;padding:10px 30px;justify-content:space-between;gap:20px;background:color-mix(in srgb,var(--kps-surface) 96%,var(--kps-bg));box-shadow:0 4px 14px rgba(16,24,40,.035)}
.kps-header-meta{display:flex!important;grid-template-columns:none!important;align-items:center!important;gap:14px!important;min-width:0}
.kps-header-date{color:var(--kps-text)!important;font-size:13px!important;font-weight:850;white-space:nowrap}
.kps-header-meta .kps-live-clock{padding-left:14px;border-left:1px solid var(--kps-border);color:var(--kps-muted);font-size:13px}
.kps-userbar-actions{margin-left:auto;gap:10px}
.kps-notification-bell{width:40px;height:40px;display:grid;place-items:center;position:relative;border:1px solid var(--kps-border);border-radius:12px;background:var(--kps-surface);cursor:pointer;font-size:17px;box-shadow:0 4px 12px rgba(16,24,40,.05)}
.kps-notification-bell:hover{border-color:var(--kps-accent);transform:translateY(-1px)}
.kps-notification-bell>span{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border:none;border-radius:999px;background:var(--kps-danger);color:#fff!important;font-size:9px!important;font-weight:900}
@media(max-width:760px){
  .kps-app-header{
    display:grid;
    grid-template-columns:1fr;
    align-items:center;
    justify-items:center;
    gap:10px;
    min-height:0;
    padding:16px 18px!important;
    text-align:center;
  }
  .kps-header-brand{
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
    gap:8px;
    width:100%;
    min-width:0;
  }
  .kps-header-logo-wrap{display:flex;justify-content:center;width:100%}
  .kps-header-brand .kps-company-logo{display:block;max-width:130px;max-height:58px;margin:0 auto}
  .kps-header-brand .kps-brand-copy{width:100%;text-align:center}
  .kps-header-brand .kps-brand-copy h2{font-size:18px;margin-top:3px}
  .kps-header-brand .kps-eyebrow{font-size:9px}
  .kps-header-account{
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
    gap:0;
    width:100%;
    margin:0;
    text-align:center;
  }
  .kps-header-user{display:none!important}
  .kps-header-logout{
    width:min(220px,100%);
    min-height:40px;
    padding:9px 16px;
    font-size:13px;
  }
  .kps-userbar{min-height:54px;flex-direction:row;align-items:center!important;text-align:left;padding-top:8px!important;padding-bottom:8px!important}
  .kps-header-meta{justify-content:flex-start!important}
  .kps-header-date{font-size:12px!important;white-space:normal}
  .kps-userbar-actions{width:auto;justify-content:flex-end!important}
}
@media(max-width:480px){
  .kps-app-header{gap:8px;padding:14px 12px!important}
  .kps-header-brand .kps-company-logo{max-width:112px;max-height:52px}
  .kps-header-brand .kps-brand-copy h2{font-size:16px}
  .kps-header-brand .kps-eyebrow{display:none}
  .kps-header-logout{width:100%;padding:8px 12px}
  .kps-header-meta .kps-live-clock{display:none}
}

/* KPS 3.3.0 – Kundenbudget und Budgetabweichung */
.kps-app .kps-offer-money{display:grid;grid-template-columns:1fr 1fr;gap:7px}.kps-app .kps-offer-money>span{display:grid;gap:2px;padding:8px;border:1px solid var(--kps-border);border-radius:10px;background:var(--kps-bg);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--kps-muted)}.kps-app .kps-offer-money b{font-size:13px;color:var(--kps-text);text-transform:none;letter-spacing:0}.kps-app .kps-budget-status,.kps-app .kps-budget-preview{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--kps-border);border-radius:11px;background:var(--kps-bg)}.kps-app .kps-budget-status strong,.kps-app .kps-budget-preview span{font-size:12px;font-weight:850}.kps-app .kps-budget-status span,.kps-app .kps-budget-preview strong{font-size:11px;font-weight:650}.kps-app .kps-budget-status.is-good,.kps-app .kps-budget-preview.is-good{background:#ecfdf3;border-color:#a7e8c0;color:#087443}.kps-app .kps-budget-status.is-warning,.kps-app .kps-budget-preview.is-warning{background:#fffbeb;border-color:#f6d777;color:#8a5300}.kps-app .kps-budget-status.is-critical,.kps-app .kps-budget-preview.is-critical{background:#fff1f2;border-color:#f4b5bc;color:#a11225}.kps-app .kps-budget-status.is-neutral,.kps-app .kps-budget-preview.is-neutral{color:var(--kps-muted)}.kps-app .kps-offer-status-form input{min-height:36px;border:1px solid var(--kps-border);border-radius:9px;background:var(--kps-bg);padding:6px;width:100%}.kps-app .kps-offer-status-form .kps-budget-preview{grid-column:1/-1}


/* KPS 3.3.1 – Benachrichtigungen links und Datum nur einmal */
.kps-userbar{justify-content:flex-start}
.kps-header-meta{width:100%;justify-content:flex-start!important}
.kps-notification-label{font-size:12px;font-weight:850;color:var(--kps-text);white-space:nowrap}
.kps-header-date{margin-left:10px;padding-left:18px;border-left:1px solid var(--kps-border)}
.kps-header-meta .kps-live-clock{padding-left:14px;border-left:1px solid var(--kps-border)}
.kps-app .kps-notification-panel{left:24px;right:auto}
@media(max-width:760px){
 .kps-notification-label{font-size:11px}
 .kps-header-date{margin-left:2px;padding-left:10px}
 .kps-app .kps-notification-panel{left:12px;right:12px}
}
@media(max-width:480px){
 .kps-notification-label{display:none}
 .kps-header-date{font-size:11px!important}
}

/* KPS 3.4.0 – Profil und Kontosicherheit */
.kps-profile-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 24px}
.kps-profile-overview>div{padding:16px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) - 4px);background:color-mix(in srgb,var(--kps-surface) 94%,var(--kps-bg))}
.kps-profile-overview span,.kps-profile-overview small{display:block;color:var(--kps-muted);font-size:.82rem}
.kps-profile-overview strong{display:block;margin:5px 0;font-size:1rem;overflow-wrap:anywhere}
.kps-password-required{max-width:780px;margin:28px auto}
.kps-password-required>p{max-width:680px;line-height:1.65;color:var(--kps-muted)}
.kps-profile-password-form h4{margin:4px 0 14px}
@media(max-width:760px){.kps-profile-overview{grid-template-columns:1fr}.kps-password-required{margin:16px 0}}

/* KPS 3.4.1 – Hilfe-Center aktualisiert */
.kps-help-launch{min-width:46px;min-height:46px;justify-content:center}
.kps-help-question{display:grid;place-items:center;color:#fff;font-size:1.35rem;font-weight:950;line-height:1}
.kps-help-topic{padding:0;overflow:hidden}
.kps-help-topic>summary{display:flex;align-items:center;gap:14px;padding:18px 22px;list-style:none;cursor:pointer;background:#fff}
.kps-help-topic>summary::-webkit-details-marker{display:none}
.kps-help-topic>summary>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.kps-help-topic>summary small{color:#718096;font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.kps-help-topic>summary strong{color:#17243a;font-size:1.08rem}
.kps-help-topic>summary::after{content:'+';margin-left:auto;color:#1f5eff;font-size:1.5rem;font-weight:500}
.kps-help-topic[open]>summary::after{content:'–'}
.kps-help-topic[open]>summary{border-bottom:1px solid #e5eaf2;background:#fbfcff}
.kps-help-topic-body{padding:4px 24px 24px}
.kps-help-topic-body>p:first-child,.kps-help-topic-body>ol:first-child,.kps-help-topic-body>ul:first-child{margin-top:18px}
.kps-help-faq>details{padding:0;border-top:1px solid #e5eaf2}
.kps-help-faq>details:last-child{border-bottom:1px solid #e5eaf2}
.kps-help-faq>details summary{padding:15px 2px}
@media(max-width:760px){.kps-help-launch{width:48px;height:48px;padding:0}.kps-help-topic>summary{padding:16px}.kps-help-topic-body{padding:2px 17px 20px}}

/* KPS 3.6.0 – Pipeline-Ansichten und verlorene Aufträge */
.kps-offer-view-switch{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 12px;padding:6px;border:1px solid var(--kps-border);border-radius:14px;background:var(--kps-surface)}
.kps-offer-view-switch button{border:0;border-radius:10px;padding:10px 14px;background:transparent;color:var(--kps-muted);font-weight:800;cursor:pointer}
.kps-offer-view-switch button:hover,.kps-offer-view-switch button.is-active{background:var(--kps-accent);color:#fff}
.kps-offer-view-switch button span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.2);font-size:.75rem}
.kps-offer-column[hidden]{display:none!important}
.kps-offer-board[data-view="lost"]{grid-template-columns:minmax(300px,520px);justify-content:start}
.kps-offer-board[data-view="lost"] .status-lost{border-color:color-mix(in srgb,var(--kps-danger) 35%,var(--kps-border))}
@media(max-width:760px){.kps-offer-view-switch{position:sticky;top:0;z-index:3;flex-wrap:nowrap;overflow-x:auto}.kps-offer-view-switch button{white-space:nowrap;flex:0 0 auto}.kps-offer-board[data-view="lost"]{grid-template-columns:minmax(280px,1fr)}}


/* KPS 3.6.1 – Verlorene Aufträge */
.kps-app .kps-offer-kpi-lost{padding:0!important;overflow:hidden}
.kps-app .kps-offer-kpi-lost button{width:100%;height:100%;padding:16px;border:0;background:transparent;text-align:left;display:grid;gap:5px;cursor:pointer;color:inherit}
.kps-app .kps-offer-kpi-lost button:hover{background:rgba(185,28,28,.06)}
.kps-app .kps-offer-kpi-lost strong{color:#b91c1c}
.kps-app .kps-loss-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid rgba(185,28,28,.25);border-radius:12px;background:rgba(254,242,242,.72)}
.kps-app .kps-loss-fields[hidden]{display:none!important}
.kps-app .kps-loss-summary{display:grid;gap:3px;margin:8px 0;padding:10px 12px;border-left:4px solid #b91c1c;border-radius:8px;background:#fef2f2;color:#7f1d1d}
.kps-app .kps-loss-summary span,.kps-app .kps-loss-summary small{font-size:.82rem}
@media(max-width:640px){.kps-app .kps-loss-fields{grid-template-columns:1fr}}

/* KPS 3.6.6 – Mobiler Header, Hamburger-Menü und Hilfe-Lasche */
@media (max-width:760px){
  .kps-app .kps-help-launch,
  .kps-help-launch{
    position:fixed!important;
    top:50%!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    width:32px!important;
    min-width:32px!important;
    height:64px!important;
    min-height:64px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:10px 0 0 10px!important;
    display:grid!important;
    place-items:center!important;
    transform:translateY(-50%)!important;
    background:#1f5eff!important;
    color:#fff!important;
    box-shadow:-4px 7px 18px rgba(15,35,80,.28)!important;
    z-index:9999!important;
    overflow:hidden!important;
  }
  .kps-app .kps-help-launch:hover,
  .kps-help-launch:hover{
    transform:translateY(-50%)!important;
  }
  .kps-app .kps-help-launch:active,
  .kps-help-launch:active{
    transform:translateY(-50%) scale(.96)!important;
  }
  .kps-app .kps-help-launch > span,
  .kps-help-launch > span{
    display:none!important;
  }
  .kps-app .kps-help-launch .kps-help-question,
  .kps-help-launch .kps-help-question{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    height:100%!important;
    color:#fff!important;
    font-size:0!important;
    line-height:1!important;
  }
  .kps-app .kps-help-launch .kps-help-question::before,
  .kps-help-launch .kps-help-question::before{
    content:'?'!important;
    display:block!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:23px!important;
    font-weight:900!important;
    line-height:1!important;
  }
}


/* KPS 3.6.6 – Zeitgemäßes mobiles Hamburger-Menü */
.kps-mobile-menu{display:none}
@media(max-width:980px){
  .kps-mobile-menu{display:block;position:relative;z-index:42;padding:10px 12px;background:var(--kps-surface);border-bottom:1px solid var(--kps-border)}
  .kps-menu-toggle{width:100%;min-height:58px;display:flex;align-items:center;gap:14px;padding:10px 14px;border:1px solid var(--kps-border);border-radius:14px;background:var(--kps-surface);color:var(--kps-text);box-shadow:0 5px 16px rgba(16,24,40,.06);cursor:pointer;text-align:left}
  .kps-menu-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--kps-accent) 28%,transparent);outline-offset:2px}
  .kps-menu-icon{width:34px;height:34px;display:grid;align-content:center;gap:5px;flex:0 0 34px;padding:8px;border-radius:10px;background:var(--kps-accent)}
  .kps-menu-icon i{display:block;width:100%;height:2px;border-radius:999px;background:#fff;transition:transform .22s ease,opacity .18s ease}
  .kps-menu-toggle.is-open .kps-menu-icon i:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .kps-menu-toggle.is-open .kps-menu-icon i:nth-child(2){opacity:0}
  .kps-menu-toggle.is-open .kps-menu-icon i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .kps-menu-toggle-copy{display:grid;gap:1px;min-width:0}
  .kps-menu-toggle-copy small{font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--kps-muted)}
  .kps-menu-toggle-copy strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .kps-menu-toggle::after{content:'›';margin-left:auto;font-size:26px;line-height:1;color:var(--kps-muted);transform:rotate(90deg);transition:transform .22s ease}
  .kps-menu-toggle.is-open::after{transform:rotate(-90deg)}
  .kps-app .kps-tabs,.kps-nav-left .kps-tabs{position:absolute!important;z-index:41;top:auto;left:12px;right:12px;width:auto;height:auto;max-height:min(68vh,560px);display:none!important;grid-template-columns:1fr 1fr;gap:8px;padding:10px!important;border:1px solid var(--kps-border)!important;border-radius:0 0 16px 16px;background:var(--kps-surface);box-shadow:0 18px 42px rgba(16,24,40,.18);overflow-y:auto!important;overflow-x:hidden!important}
  .kps-app .kps-tabs.is-open,.kps-nav-left .kps-tabs.is-open{display:grid!important}
  .kps-app .kps-tab,.kps-nav-left .kps-tab{justify-content:flex-start;width:100%;min-width:0;min-height:50px;padding:11px 13px;text-align:left;scroll-snap-align:none}
  .kps-tab .kps-tab-icon{width:28px;flex:0 0 28px}
  .kps-tab.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--kps-accent) 38%,transparent)}
  body.kps-menu-open{overflow:hidden}
}
@media(max-width:520px){
  .kps-mobile-menu{padding:8px 10px}
  .kps-menu-toggle{min-height:54px;border-radius:12px;padding:9px 12px}
  .kps-app .kps-tabs,.kps-nav-left .kps-tabs{left:10px;right:10px;grid-template-columns:1fr;max-height:64vh}
  .kps-app .kps-tab,.kps-nav-left .kps-tab{min-height:48px}
}


/* KPS 3.6.7 – Professioneller mobiler App-Header */
.kps-header-menu-toggle{display:none}
@media(max-width:980px){
  .kps-app-header{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"brand menu" "account account"!important;
    align-items:start!important;
    gap:12px!important;
    padding:14px 14px 12px!important;
    background:var(--kps-header)!important;
  }
  .kps-header-brand{
    grid-area:brand!important;
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    gap:8px!important;
    padding-right:4px!important;
  }
  .kps-header-logo-wrap{
    width:100%!important;
    display:block!important;
  }
  .kps-header-brand .kps-company-logo{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:88px!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
  }
  .kps-header-brand .kps-brand-copy{
    width:100%!important;
    text-align:left!important;
  }
  .kps-header-brand .kps-brand-copy h2{font-size:17px!important;line-height:1.25!important}
  .kps-header-menu-toggle{
    grid-area:menu!important;
    display:grid!important;
    place-items:center!important;
    width:48px!important;
    height:48px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.1)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(0,0,0,.16)!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent;
  }
  .kps-header-menu-toggle:hover{background:rgba(255,255,255,.17)!important}
  .kps-header-menu-toggle:focus-visible{outline:3px solid rgba(255,255,255,.45)!important;outline-offset:2px!important}
  .kps-header-menu-toggle .kps-menu-icon{
    width:24px!important;
    height:20px!important;
    display:grid!important;
    align-content:space-between!important;
    gap:0!important;
    padding:0!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .kps-header-menu-toggle .kps-menu-icon i{
    display:block!important;
    width:24px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#fff!important;
    transform-origin:center!important;
    transition:transform .22s ease,opacity .16s ease!important;
  }
  .kps-header-menu-toggle.is-open .kps-menu-icon i:nth-child(1){transform:translateY(9px) rotate(45deg)!important}
  .kps-header-menu-toggle.is-open .kps-menu-icon i:nth-child(2){opacity:0!important}
  .kps-header-menu-toggle.is-open .kps-menu-icon i:nth-child(3){transform:translateY(-9px) rotate(-45deg)!important}
  .kps-header-account{
    grid-area:account!important;
    width:100%!important;
    display:block!important;
    padding:0!important;
  }
  .kps-header-logout{
    width:100%!important;
    min-height:44px!important;
    margin:0!important;
    border-radius:12px!important;
  }
  .kps-mobile-menu{display:none!important}
  .kps-app .kps-tabs,.kps-nav-left .kps-tabs{
    position:static!important;
    z-index:auto!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    max-height:none!important;
    display:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    padding:12px!important;
    border:0!important;
    border-bottom:1px solid var(--kps-border)!important;
    border-radius:0!important;
    background:var(--kps-surface)!important;
    box-shadow:0 12px 28px rgba(16,24,40,.12)!important;
    overflow:visible!important;
  }
  .kps-app .kps-tabs.is-open,.kps-nav-left .kps-tabs.is-open{display:grid!important}
  .kps-app .kps-tab,.kps-nav-left .kps-tab{
    min-height:52px!important;
    padding:12px!important;
    border-radius:12px!important;
  }
  body.kps-menu-open{overflow:auto!important}
}
@media(max-width:560px){
  .kps-app-header{grid-template-columns:minmax(0,1fr) 46px!important;padding:12px!important}
  .kps-header-menu-toggle{width:46px!important;height:46px!important;border-radius:13px!important}
  .kps-header-brand .kps-company-logo{max-height:76px!important}
  .kps-app .kps-tabs,.kps-nav-left .kps-tabs{grid-template-columns:1fr!important;padding:10px!important}
}


/* KPS 3.6.8 – Zentriertes Mobil-Branding */
.kps-mobile-brand-title{display:none}
@media(max-width:980px){
  .kps-app-header{
    display:block!important;
    position:relative!important;
    padding:14px!important;
  }
  .kps-header-brand{
    width:100%!important;
    display:grid!important;
    justify-items:center!important;
    gap:9px!important;
    padding:0 58px!important;
    text-align:center!important;
  }
  .kps-header-logo-wrap{
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
  }
  .kps-header-brand .kps-company-logo{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    max-height:88px!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0 auto!important;
  }
  .kps-header-brand .kps-brand-copy{
    width:100%!important;
    text-align:center!important;
  }
  .kps-header-brand .kps-eyebrow,
  .kps-header-brand .kps-company-name{display:none!important}
  .kps-header-brand .kps-mobile-brand-title{
    display:block!important;
    margin:0!important;
    color:#fff!important;
    font-size:18px!important;
    line-height:1.3!important;
    font-weight:800!important;
    letter-spacing:-.01em!important;
  }
  .kps-header-menu-toggle{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    z-index:3!important;
  }
  .kps-header-account{
    width:100%!important;
    margin-top:12px!important;
  }
}
@media(max-width:560px){
  .kps-app-header{padding:12px!important}
  .kps-header-brand{padding:0 52px!important}
  .kps-header-brand .kps-company-logo{max-height:76px!important}
  .kps-header-brand .kps-mobile-brand-title{font-size:16px!important}
  .kps-header-menu-toggle{top:12px!important;right:12px!important}
}


/* KPS 3.6.9 – Moderner mobiler App-Footer */
.kps-footer-brand,.kps-footer-meta{display:flex;align-items:center;gap:10px}
.kps-footer-brand strong{color:var(--kps-text,#172033);font-size:12px}
.kps-footer-brand span{color:var(--kps-muted,#667085);font-size:11px}
@media(max-width:980px){
  .kps-app{
    min-height:calc(100dvh - 20px)!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .kps-product-footer{
    width:100%!important;
    min-height:112px!important;
    margin-top:auto!important;
    padding:20px 18px calc(20px + env(safe-area-inset-bottom,0px))!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    border-top:1px solid rgba(255,255,255,.16)!important;
    background:var(--kps-header)!important;
    color:#fff!important;
    text-align:center!important;
    box-shadow:0 -10px 28px rgba(16,24,40,.14)!important;
  }
  .kps-footer-brand,.kps-footer-meta{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
  }
  .kps-footer-brand strong{
    color:#fff!important;
    font-size:14px!important;
    line-height:1.3!important;
    font-weight:850!important;
    letter-spacing:-.01em!important;
  }
  .kps-footer-brand span{
    color:rgba(255,255,255,.76)!important;
    font-size:12px!important;
    line-height:1.35!important;
  }
  .kps-footer-meta{gap:2px!important}
  .kps-product-footer small,.kps-product-version{
    margin:0!important;
    color:rgba(255,255,255,.72)!important;
    font-size:11px!important;
    line-height:1.4!important;
    text-align:center!important;
    letter-spacing:.02em!important;
  }
  .kps-product-version{font-weight:800!important;color:#fff!important}
}
@media(max-width:560px){
  .kps-app{min-height:calc(100dvh - 20px)!important}
  .kps-product-footer{min-height:118px!important;padding-left:14px!important;padding-right:14px!important}
}

/* KPS 3.6.10 – Mobile Datumsanzeige auf Glockenhöhe */
@media(max-width:760px){
  .kps-header-meta{
    gap:8px!important;
    align-items:center!important;
  }
  .kps-app .kps-notification-bell,
  .kps-notification-bell{
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    padding:0!important;
    font-size:19px!important;
    border-radius:13px!important;
  }
  .kps-header-date{
    display:flex!important;
    align-items:center!important;
    min-height:44px!important;
    margin-left:0!important;
    padding:0 14px!important;
    border:1px solid var(--kps-border)!important;
    border-radius:13px!important;
    background:var(--kps-surface)!important;
    color:var(--kps-text)!important;
    font-size:15px!important;
    line-height:1.15!important;
    font-weight:850!important;
    white-space:nowrap!important;
    box-shadow:0 4px 12px rgba(16,24,40,.05)!important;
  }
}
@media(max-width:480px){
  .kps-header-date{
    flex:1 1 auto!important;
    min-width:0!important;
    justify-content:center!important;
    padding:0 10px!important;
    font-size:14px!important;
    letter-spacing:-.01em!important;
  }
}


/* KPS 3.6.11 – stabiles PRO-Mobile-Interface ohne Überläufe */
@media (max-width:980px){
  html,body{max-width:100%;overflow-x:hidden}
  .kps-app,
  .kps-app *{box-sizing:border-box}
  .kps-app{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    overflow-x:clip!important;
  }
  .kps-app-header,
  .kps-userbar,
  .kps-app-shell,
  .kps-main,
  .kps-content,
  .kps-panel,
  .kps-form,
  .kps-card,
  .kps-product-footer{
    min-width:0!important;
    max-width:100%!important;
  }
  .kps-app-header{
    padding-left:max(14px,env(safe-area-inset-left,0px))!important;
    padding-right:max(14px,env(safe-area-inset-right,0px))!important;
  }
  .kps-header-brand{
    padding-left:56px!important;
    padding-right:56px!important;
    min-width:0!important;
  }
  .kps-header-logo-wrap,
  .kps-header-brand .kps-company-logo{
    max-width:100%!important;
    min-width:0!important;
  }
  .kps-userbar{
    width:100%!important;
    padding:10px max(14px,env(safe-area-inset-right,0px)) 10px max(14px,env(safe-area-inset-left,0px))!important;
    overflow:visible!important;
  }
  .kps-header-meta{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
  }
  .kps-notification-bell{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    margin:0!important;
  }
  .kps-notification-label{display:none!important}
  .kps-header-date{
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    margin:0!important;
    padding:0 12px!important;
    border-left:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .kps-header-meta .kps-live-clock{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:7px 10px 0!important;
    border-left:0!important;
    text-align:center!important;
  }
  .kps-app-shell{
    width:100%!important;
    padding-left:max(14px,env(safe-area-inset-left,0px))!important;
    padding-right:max(14px,env(safe-area-inset-right,0px))!important;
    overflow:visible!important;
  }
  .kps-app-shell > *,
  .kps-main > *,
  .kps-content > *,
  .kps-grid > *,
  .kps-form-grid > *,
  .kps-dashboard-grid > *{
    min-width:0!important;
    max-width:100%!important;
  }
  .kps-app input,
  .kps-app select,
  .kps-app textarea,
  .kps-app button{
    max-width:100%;
  }
  .kps-app img,
  .kps-app svg,
  .kps-app canvas,
  .kps-app iframe{
    max-width:100%!important;
  }
  .kps-table-wrap,
  .kps-table-card,
  .kps-responsive-table{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .kps-app .kps-tabs,
  .kps-nav-left .kps-tabs{
    width:calc(100% - 28px)!important;
    max-width:calc(100% - 28px)!important;
    margin:0 14px!important;
    padding:10px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .kps-app .kps-tab,
  .kps-nav-left .kps-tab{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .kps-tab-label,
  .kps-tab span,
  .kps-tab strong{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .kps-app .kps-help-launch,
  .kps-help-launch{
    position:fixed!important;
    top:auto!important;
    right:max(16px,env(safe-area-inset-right,0px))!important;
    bottom:max(18px,calc(env(safe-area-inset-bottom,0px) + 18px))!important;
    left:auto!important;
    width:54px!important;
    min-width:54px!important;
    height:54px!important;
    min-height:54px!important;
    border-radius:50%!important;
    transform:none!important;
    background:var(--kps-accent,#1f5eff)!important;
    box-shadow:0 12px 28px rgba(15,35,80,.30)!important;
    z-index:9999!important;
  }
  .kps-app .kps-help-launch:hover,
  .kps-help-launch:hover,
  .kps-app .kps-help-launch:active,
  .kps-help-launch:active{
    transform:none!important;
  }
  .kps-app .kps-help-launch:active,
  .kps-help-launch:active{scale:.96}
  .kps-product-footer{
    padding-left:max(18px,env(safe-area-inset-left,0px))!important;
    padding-right:max(18px,env(safe-area-inset-right,0px))!important;
  }
}
@media (max-width:560px){
  .kps-app-header{
    padding-left:max(12px,env(safe-area-inset-left,0px))!important;
    padding-right:max(12px,env(safe-area-inset-right,0px))!important;
  }
  .kps-header-brand{padding-left:50px!important;padding-right:50px!important}
  .kps-userbar,
  .kps-app-shell{
    padding-left:max(12px,env(safe-area-inset-left,0px))!important;
    padding-right:max(12px,env(safe-area-inset-right,0px))!important;
  }
  .kps-app .kps-tabs,
  .kps-nav-left .kps-tabs{
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    margin-left:12px!important;
    margin-right:12px!important;
  }
  .kps-header-date{font-size:15px!important;padding:0 9px!important}
}


/* KPS 3.6.12 – kompakte, zentrierte Glocken-/Datumsgruppe */
.kps-date-mobile{display:none}
@media (max-width:980px){
  .kps-header-meta{
    width:max-content!important;
    max-width:100%!important;
    margin-inline:auto!important;
    display:grid!important;
    grid-template-columns:44px max-content!important;
    justify-content:center!important;
    gap:10px!important;
  }
  .kps-header-date{
    width:auto!important;
    max-width:calc(100vw - 92px)!important;
    min-width:0!important;
    padding-inline:12px!important;
  }
  .kps-date-desktop{display:none!important}
  .kps-date-mobile{display:inline!important}
}
@media (max-width:380px){
  .kps-header-meta{gap:8px!important}
  .kps-header-date{padding-inline:10px!important;font-size:14px!important}
}


/* KPS 3.6.13 – gut lesbares mobiles Datum ohne Extra-Karte */
@media (max-width:980px){
  .kps-header-meta{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:44px minmax(0,auto)!important;
    justify-content:center!important;
    align-items:center!important;
    column-gap:12px!important;
  }
  .kps-header-date{
    width:auto!important;
    max-width:min(100%,420px)!important;
    min-height:44px!important;
    height:auto!important;
    margin:0!important;
    padding:4px 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:var(--kps-text)!important;
    font-size:17px!important;
    line-height:1.25!important;
    font-weight:800!important;
    letter-spacing:-.015em!important;
    text-align:left!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
  }
  .kps-date-mobile{
    display:block!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
}
@media (max-width:480px){
  .kps-header-meta{
    grid-template-columns:44px minmax(0,1fr)!important;
    column-gap:10px!important;
  }
  .kps-header-date{
    max-width:100%!important;
    font-size:16px!important;
    line-height:1.3!important;
  }
}
@media (max-width:360px){
  .kps-header-date{font-size:15px!important}
}


/* KPS 3.6.14 – stabile mobile Datumszeile */
@media (max-width:980px){
  .kps-header-meta{
    width:max-content!important;
    max-width:100%!important;
    margin-inline:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
  }
  .kps-notification-bell{
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
  }
  .kps-header-date{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100vw - 94px)!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    white-space:normal!important;
    text-align:left!important;
  }
  .kps-date-desktop{display:none!important}
  .kps-date-mobile{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    min-width:0!important;
    line-height:1.12!important;
  }
  .kps-date-mobile strong{
    display:block!important;
    color:var(--kps-text)!important;
    font-size:16px!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
  }
  .kps-date-mobile span{
    display:block!important;
    margin-top:3px!important;
    color:var(--kps-muted)!important;
    font-size:14px!important;
    font-weight:750!important;
    white-space:nowrap!important;
  }
}
@media (max-width:380px){
  .kps-header-meta{gap:9px!important}
  .kps-date-mobile strong{font-size:15px!important}
  .kps-date-mobile span{font-size:13px!important}
}


/* KPS 3.6.15 – stabile einzeilige mobile Datumsanzeige */
@media (max-width:980px){
  .kps-header-meta{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-inline:0!important;
    padding-inline:var(--kps-mobile-gutter,16px)!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    overflow:hidden!important;
  }
  .kps-header-meta .kps-notification-label,
  .kps-header-meta .kps-live-clock{
    display:none!important;
  }
  .kps-header-meta .kps-notification-bell{
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    margin:0!important;
  }
  .kps-header-meta .kps-header-date{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 54px)!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-align:left!important;
  }
  .kps-header-meta .kps-date-desktop{display:none!important}
  .kps-header-meta .kps-date-mobile{
    display:block!important;
    min-width:0!important;
    margin:0!important;
    color:var(--kps-text)!important;
    font-size:17px!important;
    font-weight:800!important;
    line-height:1.2!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}
@media (max-width:370px){
  .kps-header-meta{gap:8px!important;padding-inline:12px!important}
  .kps-header-meta .kps-notification-bell{
    flex-basis:42px!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }
  .kps-header-meta .kps-header-date{max-width:calc(100% - 50px)!important}
  .kps-header-meta .kps-date-mobile{font-size:15px!important}
}


/* KPS 3.6.16 – mobiler Glocken-Badge vollständig sichtbar */
@media (max-width:980px){
  .kps-header-meta{
    overflow:visible!important;
  }
  .kps-header-meta .kps-notification-bell{
    position:relative!important;
    overflow:visible!important;
    isolation:isolate!important;
  }
  .kps-header-meta .kps-notification-bell span{
    right:-4px!important;
    top:-5px!important;
    z-index:3!important;
    min-width:20px!important;
    width:auto!important;
    height:20px!important;
    padding:0 5px!important;
    line-height:20px!important;
    overflow:visible!important;
    white-space:nowrap!important;
    box-shadow:0 0 0 2px #fff,0 3px 8px rgba(15,23,42,.22)!important;
  }
}


/* KPS 3.6.18 – Umsatzchart mobil auf aktuellen Monat zentriert */
.kps-month-chart-scroll{
  width:100%;
  max-width:100%;
  min-width:0;
}
.kps-chart-swipe-hint{display:none}
@media (max-width:760px){
  .kps-revenue-chart{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:16px 14px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .kps-revenue-chart .kps-chart-title{
    display:grid!important;
    gap:8px!important;
    margin-bottom:10px!important;
  }
  .kps-revenue-chart .kps-chart-title>span{
    gap:6px!important;
    font-size:11px!important;
    line-height:1.35!important;
  }
  .kps-month-chart-scroll{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin!important;
    padding:0 0 8px!important;
    scroll-snap-type:x proximity!important;
  }
  .kps-month-chart{
    width:720px!important;
    min-width:720px!important;
    max-width:none!important;
    height:270px!important;
    grid-template-columns:repeat(12,50px)!important;
    gap:10px!important;
    padding:18px 4px 0!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .kps-month-col{
    min-width:0!important;
    scroll-snap-align:start!important;
  }
  .kps-month-bars{
    height:198px!important;
  }
  .kps-month-col em{
    max-width:50px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:10px!important;
  }
  .kps-month-col b{font-size:12px!important}
  .kps-chart-swipe-hint{
    display:block!important;
    margin-top:6px!important;
    color:var(--kps-muted)!important;
    font-size:11px!important;
    font-weight:750!important;
    text-align:center!important;
  }
}
@media (max-width:380px){
  .kps-revenue-chart{padding-inline:12px!important}
  .kps-month-chart{width:684px!important;min-width:684px!important;grid-template-columns:repeat(12,47px)!important;gap:10px!important}
  .kps-month-col em{max-width:47px!important;font-size:9px!important}
}


/* KPS 3.6.18 – aktueller Monat mobil zentriert und dezent markiert */
@media (max-width:760px){
  .kps-month-col.is-current-month b{
    color:var(--kps-accent)!important;
    font-weight:900!important;
  }
  .kps-month-col.is-current-month{
    scroll-snap-align:center!important;
  }
}

/* KPS 3.6.20 – Mobile Hilfe PRO: stabil, ohne Wackeln, modernes Themenmenü */
@media (max-width:760px){
  .kps-help-launch,
  .kps-app .kps-help-launch{
    transition:none!important;
    animation:none!important;
    transform:none!important;
    scale:1!important;
    touch-action:manipulation;
  }
  .kps-help-launch:hover,
  .kps-help-launch:focus,
  .kps-help-launch:active,
  .kps-app .kps-help-launch:hover,
  .kps-app .kps-help-launch:focus,
  .kps-app .kps-help-launch:active{
    transition:none!important;
    animation:none!important;
    transform:none!important;
    scale:1!important;
  }
  .kps-help-modal{
    padding:0!important;
    align-items:stretch!important;
    background:rgba(9,18,34,.72)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    overflow:hidden!important;
  }
  .kps-help-dialog{
    width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    background:#f4f7fb!important;
    animation:none!important;
    transform:none!important;
  }
  .kps-help-header{
    flex:0 0 auto!important;
    min-height:96px!important;
    padding:calc(18px + env(safe-area-inset-top,0px)) 68px 16px 18px!important;
    background:linear-gradient(135deg,#173e95,#1f5eff)!important;
  }
  .kps-help-header h2{
    margin:2px 0 4px!important;
    font-size:1.35rem!important;
    line-height:1.2!important;
  }
  .kps-help-header p{display:none!important}
  .kps-help-kicker{font-size:.68rem!important;letter-spacing:.09em!important}
  .kps-help-close{
    top:calc(16px + env(safe-area-inset-top,0px))!important;
    right:16px!important;
    width:44px!important;
    height:44px!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.16)!important;
    transition:none!important;
    transform:none!important;
    touch-action:manipulation;
  }
  .kps-help-toolbar{
    flex:0 0 auto!important;
    padding:12px!important;
    background:#fff!important;
    border-bottom:1px solid #dbe3ef!important;
  }
  .kps-help-search{
    min-height:46px!important;
    border-radius:12px!important;
    background:#f5f7fb!important;
  }
  .kps-help-layout{
    display:flex!important;
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:hidden!important;
    flex-direction:column!important;
  }
  .kps-help-nav{
    position:static!important;
    flex:0 0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    max-height:none!important;
    padding:12px!important;
    overflow:visible!important;
    border:0!important;
    border-bottom:1px solid #dbe3ef!important;
    background:#fff!important;
    scrollbar-width:none!important;
  }
  .kps-help-nav::-webkit-scrollbar{display:none!important}
  .kps-help-nav strong{display:none!important}
  .kps-help-nav a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    min-height:44px!important;
    padding:10px 8px!important;
    border:1px solid #d9e2ef!important;
    border-radius:12px!important;
    background:#f7f9fc!important;
    color:#26364f!important;
    font-size:.86rem!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    transition:none!important;
    transform:none!important;
    touch-action:manipulation;
  }
  .kps-help-nav a:focus,
  .kps-help-nav a:active{
    background:#eaf1ff!important;
    border-color:#9fbcff!important;
    color:#174ec7!important;
    transform:none!important;
  }
  .kps-help-content{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-behavior:auto!important;
    overscroll-behavior:contain!important;
    padding:14px 12px calc(92px + env(safe-area-inset-bottom,0px))!important;
  }
  .kps-help-intro,
  .kps-help-section,
  .kps-help-finish{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 12px!important;
    border-radius:14px!important;
    box-shadow:0 4px 14px rgba(30,50,80,.06)!important;
    animation:none!important;
    transform:none!important;
  }
  .kps-help-topic>summary{
    min-height:64px!important;
    padding:14px!important;
    gap:12px!important;
    touch-action:manipulation;
  }
  .kps-help-topic>summary::after{font-size:1.35rem!important}
  .kps-help-icon{
    flex-basis:42px!important;
    width:42px!important;
    height:42px!important;
    border-radius:12px!important;
  }
  .kps-help-topic>summary strong{font-size:1rem!important;line-height:1.25!important}
  .kps-help-topic>summary small{font-size:.68rem!important}
  .kps-help-topic-body{padding:2px 15px 18px!important}
  .kps-help-module{
    min-height:46px!important;
    border-radius:12px!important;
    transition:none!important;
    transform:none!important;
    touch-action:manipulation;
  }
}
@media (max-width:390px){
  .kps-help-nav{grid-template-columns:1fr!important}
  .kps-help-header h2{font-size:1.22rem!important}
}
@media (prefers-reduced-motion:reduce){
  .kps-help-modal *,
  .kps-help-launch{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* KPS 3.6.20 – Mobile Hilfe als kompaktes Hamburger-Menü */
@media (max-width:760px){
  .kps-help-dialog{
    height:min(92dvh,820px)!important;
    max-height:calc(100dvh - 20px)!important;
    width:calc(100% - 20px)!important;
    margin:auto!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:20px!important;
    box-shadow:0 22px 60px rgba(8,20,44,.34)!important;
    background:#f4f7fb!important;
  }
  .kps-help-modal{padding:10px!important;align-items:center!important}
  .kps-help-header{
    min-height:auto!important;
    padding:calc(16px + env(safe-area-inset-top,0px)) 62px 14px 16px!important;
    border-radius:19px 19px 0 0!important;
  }
  .kps-help-toolbar{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    padding:10px 12px!important;
    position:relative!important;
    z-index:4!important;
  }
  .kps-help-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-width:102px!important;
    min-height:46px!important;
    padding:0 13px!important;
    border:1px solid #d6dfec!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#17335f!important;
    font:800 .88rem/1 sans-serif!important;
    box-shadow:0 2px 8px rgba(25,50,90,.06)!important;
    transition:none!important;
    transform:none!important;
    touch-action:manipulation!important;
  }
  .kps-help-menu-icon{display:inline-flex!important;flex-direction:column!important;gap:4px!important;width:18px!important}
  .kps-help-menu-icon i{display:block!important;width:18px!important;height:2px!important;border-radius:2px!important;background:currentColor!important;transition:none!important}
  .kps-help-menu-toggle.is-open .kps-help-menu-icon i:nth-child(1){transform:translateY(6px) rotate(45deg)!important}
  .kps-help-menu-toggle.is-open .kps-help-menu-icon i:nth-child(2){opacity:0!important}
  .kps-help-menu-toggle.is-open .kps-help-menu-icon i:nth-child(3){transform:translateY(-6px) rotate(-45deg)!important}
  .kps-help-top{display:none!important}
  .kps-help-layout{position:relative!important;display:block!important;overflow:hidden!important}
  .kps-help-nav{
    position:absolute!important;
    top:0!important;
    left:12px!important;
    right:12px!important;
    z-index:6!important;
    display:none!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    width:auto!important;
    max-height:min(58dvh,460px)!important;
    padding:10px!important;
    overflow-y:auto!important;
    border:1px solid #d8e1ed!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 16px 34px rgba(16,39,78,.22)!important;
  }
  .kps-help-nav.is-open{display:grid!important}
  .kps-help-nav strong{display:block!important;padding:6px 8px 8px!important;color:#6b7890!important;font-size:.72rem!important;letter-spacing:.08em!important;text-transform:uppercase!important}
  .kps-help-nav a{
    justify-content:flex-start!important;
    min-height:44px!important;
    padding:10px 12px!important;
    border:0!important;
    border-radius:10px!important;
    background:#fff!important;
    text-align:left!important;
    font-size:.93rem!important;
  }
  .kps-help-nav a:active,.kps-help-nav a:focus{background:#edf3ff!important}
  .kps-help-content{
    height:100%!important;
    max-height:none!important;
    padding:14px 12px calc(26px + env(safe-area-inset-bottom,0px))!important;
  }
}
@media (max-width:390px){
  .kps-help-dialog{width:calc(100% - 12px)!important;max-height:calc(100dvh - 12px)!important}
  .kps-help-modal{padding:6px!important}
  .kps-help-toolbar{grid-template-columns:46px minmax(0,1fr)!important}
  .kps-help-menu-toggle{min-width:46px!important;width:46px!important;padding:0!important}
  .kps-help-menu-toggle>span:last-child{display:none!important}
}


/* KPS 3.6.21 – Mobile Hilfe im Hauptmenü */
.kps-mobile-help-menu-item{display:none!important}
@media (max-width:980px){
  .kps-mobile-help-menu-item{display:flex!important}
  .kps-help-launch,.kps-app .kps-help-launch{display:none!important}
  .kps-mobile-help-menu-item .kps-tab-icon{
    display:grid;place-items:center;width:30px;height:30px;min-width:30px;
    border-radius:9px;background:color-mix(in srgb,var(--kps-accent) 12%,transparent);
    color:var(--kps-accent);font-weight:900;font-size:18px;line-height:1
  }
}


/* KPS 3.6.23 – Aufmaß- und Montageverwaltung PRO */
.kps-schedule-filters{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) minmax(220px,1.5fr) auto;gap:12px;align-items:end;margin:18px 0;padding:16px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) - 4px);background:color-mix(in srgb,var(--kps-surface) 92%,var(--kps-accent) 8%)}
.kps-schedule-filters label{display:grid;gap:6px;min-width:0}.kps-schedule-filters label>span{font-size:12px;font-weight:800;color:var(--kps-muted);text-transform:uppercase;letter-spacing:.05em}.kps-schedule-filters input,.kps-schedule-filters select{width:100%;min-height:44px}
.kps-schedule-table-wrap{width:100%;overflow:auto;border:1px solid var(--kps-border);border-radius:var(--kps-radius);background:var(--kps-surface)}
.kps-schedule-table{width:100%;min-width:980px;border-collapse:collapse}.kps-schedule-table th,.kps-schedule-table td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--kps-border)}.kps-schedule-table th{position:sticky;top:0;z-index:1;background:var(--kps-surface);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--kps-muted)}.kps-schedule-table tbody tr:last-child td{border-bottom:0}.kps-schedule-table td strong,.kps-schedule-table td small{display:block}.kps-schedule-table td small{margin-top:3px;color:var(--kps-muted)}
.kps-schedule-status{display:inline-flex;align-items:center;min-height:30px;padding:4px 10px;border-radius:999px;font-weight:800;font-size:12px}.kps-schedule-status.is-open{background:color-mix(in srgb,var(--kps-danger) 12%,transparent);color:var(--kps-danger)}.kps-schedule-status.is-done{background:color-mix(in srgb,var(--kps-success) 14%,transparent);color:var(--kps-success)}
.kps-schedule-edit{display:grid;grid-template-columns:minmax(190px,1fr) auto auto;gap:10px;align-items:center}.kps-schedule-edit input[type=datetime-local]{min-height:42px}.kps-schedule-edit .kps-check{white-space:nowrap}.kps-project-schedule-form .kps-form-message{margin-top:6px}
@media(max-width:900px){.kps-schedule-filters{grid-template-columns:1fr 1fr}.kps-schedule-search{grid-column:1/-1}.kps-schedule-filters>[data-kps-schedule-reset]{grid-column:1/-1;width:100%}.kps-schedule-table{min-width:0}.kps-schedule-table thead{display:none}.kps-schedule-table,.kps-schedule-table tbody,.kps-schedule-table tr,.kps-schedule-table td{display:block;width:100%}.kps-schedule-table tr{padding:14px;border-bottom:1px solid var(--kps-border)}.kps-schedule-table tr:last-child{border-bottom:0}.kps-schedule-table td{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;padding:7px 0;border:0}.kps-schedule-table td::before{content:attr(data-label);font-size:12px;font-weight:800;color:var(--kps-muted);text-transform:uppercase}.kps-schedule-table td[data-label="Bearbeiten"]{display:block;padding-top:12px}.kps-schedule-table td[data-label="Bearbeiten"]::before{display:block;margin-bottom:8px}.kps-schedule-edit{grid-template-columns:1fr}.kps-schedule-edit .kps-primary-button{width:100%}}
@media(max-width:520px){.kps-schedule-filters{grid-template-columns:1fr}.kps-schedule-search,.kps-schedule-filters>[data-kps-schedule-reset]{grid-column:auto}.kps-schedule-table td{grid-template-columns:92px minmax(0,1fr)}}


/* KPS 3.6.25 – Cockpit-Karten und Desktop-Aufgabenbadges */
.kps-kpi-schedule{position:relative;overflow:hidden}
.kps-kpi-schedule::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--kps-success)}
.kps-kpi-schedule.urgency-warning::before{background:#e59a00}.kps-kpi-schedule.urgency-danger::before{background:var(--kps-danger)}
.kps-kpi-schedule button{margin-top:10px}
.kps-nav-task-badge{display:none}
@media(min-width:981px){
  .kps-tab{position:relative}
  .kps-nav-task-badge{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-left:auto;padding:0 7px;border-radius:999px;background:var(--kps-success);color:#fff;font-size:12px;font-weight:900;line-height:1;box-shadow:0 3px 10px rgba(20,35,60,.14)}
  .kps-nav-task-badge.urgency-warning{background:#e59a00}.kps-nav-task-badge.urgency-danger{background:var(--kps-danger)}
  .kps-nav-task-badge[hidden]{display:none!important}
}


/* 3.6.26 – Aufmaß als zentrale Nachbearbeitung */
.kps-project-schedule-form .kps-schedule-edit {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(170px, 1fr) auto;
  align-items: end;
  gap: 10px;
}
.kps-project-schedule-form .kps-schedule-edit > label:not(.kps-check),
.kps-customer-edit-grid label {
  display: grid;
  gap: 5px;
}
.kps-project-schedule-form label > span,
.kps-customer-edit-grid label > span {
  font-size: 12px;
  font-weight: 700;
  color: var(--kps-muted);
}
.kps-customer-edit {
  margin-top: 10px;
  border: 1px solid var(--kps-border);
  border-radius: 12px;
  background: color-mix(in srgb, var(--kps-surface) 92%, var(--kps-bg));
}
.kps-customer-edit summary {
  cursor: pointer;
  padding: 10px 12px;
  font-weight: 750;
}
.kps-customer-edit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(140px, 1fr));
  gap: 10px;
  padding: 0 12px 12px;
}
.kps-schedule-form-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .kps-project-schedule-form .kps-schedule-edit,
  .kps-customer-edit-grid {
    grid-template-columns: 1fr;
  }
  .kps-schedule-form-actions .kps-primary-button {
    width: 100%;
  }
}


/* 3.6.27 – Cockpit-Ampel für offene Aufmaße */
.kps-app .kps-kpi-module-link{
  display:inline-block;
  margin-top:9px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--kps-accent);
  font:inherit;
  font-weight:800;
  text-align:left;
  cursor:pointer;
}
.kps-app .kps-kpi-module-link:hover{text-decoration:underline}
.kps-kpi-traffic-status{display:flex;align-items:center;gap:7px;margin:4px 0 3px;font-size:13px;line-height:1.35}
.kps-kpi-traffic-status i{display:block;flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:var(--kps-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--kps-success) 16%,transparent)}
.kps-kpi-traffic-status b{font-weight:800;color:var(--kps-text)}
.kps-kpi-schedule.urgency-warning .kps-kpi-traffic-status i{background:#e59a00;box-shadow:0 0 0 3px rgba(229,154,0,.16)}
.kps-kpi-schedule.urgency-danger .kps-kpi-traffic-status i{background:var(--kps-danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--kps-danger) 16%,transparent)}


/* 3.6.28 – Google-Maps-Link bei vorhandener Kundenadresse */
.kps-maps-link {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: 4px;
  color: var(--kps-primary, #2563eb);
  font-size: 12px;
  font-weight: 750;
  text-decoration: none;
}
.kps-maps-link:hover,
.kps-maps-link:focus-visible {
  text-decoration: underline;
}


/* 3.6.29 - Einheitliche Cockpitlinks und Abschöpfung */
.kps-app .kps-kpi-module-link {
  display:inline-block;
  margin-top:9px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--kps-accent);
  font:inherit;
  font-weight:800;
  text-align:left;
  cursor:pointer;
}
.kps-extraction-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.kps-extraction-head h3{margin:4px 0 5px}
.kps-extraction-head p{margin:0;color:var(--kps-muted)}
.kps-extraction-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.kps-extraction-actions label{display:grid;gap:5px;min-width:190px}
.kps-extraction-actions label span{font-size:12px;font-weight:800;color:var(--kps-muted)}
.kps-extraction-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}
.kps-extraction-kpis article{padding:18px;border:1px solid var(--kps-border);border-radius:16px;background:var(--kps-surface)}
.kps-extraction-kpis span,.kps-extraction-kpis small{display:block;color:var(--kps-muted)}
.kps-extraction-kpis strong{display:block;margin:7px 0 4px;font-size:28px;color:var(--kps-text)}
.kps-extraction-table-wrap{overflow:auto;border:1px solid var(--kps-border);border-radius:16px}
.kps-extraction-table{width:100%;border-collapse:collapse;min-width:850px}
.kps-extraction-table th,.kps-extraction-table td{padding:13px 14px;border-bottom:1px solid var(--kps-border);text-align:left;vertical-align:top}
.kps-extraction-table th{font-size:12px;text-transform:uppercase;letter-spacing:.055em;color:var(--kps-muted);background:color-mix(in srgb,var(--kps-surface) 90%,var(--kps-bg))}
.kps-extraction-table tr:last-child td{border-bottom:0}
.kps-extraction-table .is-number{text-align:right;white-space:nowrap}
.kps-extraction-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}
.kps-extraction-status.status-order{background:color-mix(in srgb,var(--kps-success) 14%,transparent);color:var(--kps-success)}
.kps-extraction-status.status-open{background:color-mix(in srgb,var(--kps-accent) 13%,transparent);color:var(--kps-accent)}
.kps-extraction-status.status-lost{background:color-mix(in srgb,var(--kps-danger) 12%,transparent);color:var(--kps-danger)}
@media(max-width:900px){.kps-extraction-head{align-items:stretch;flex-direction:column}.kps-extraction-actions{align-items:stretch}.kps-extraction-actions label,.kps-extraction-actions button{flex:1}.kps-extraction-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.kps-extraction-kpis{grid-template-columns:1fr}.kps-extraction-actions{display:grid;grid-template-columns:1fr}.kps-extraction-actions label{min-width:0}}



/* 3.6.30 – Kalender-, Bestell- und Lieferwoche im Cockpit */
.kps-kpi-weeks{position:relative;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--kps-accent) 8%,var(--kps-surface)),var(--kps-surface))!important}
.kps-kpi-weeks::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--kps-accent)}
.kps-cockpit-grid .kps-kpi-weeks>strong{font-size:34px;line-height:1;letter-spacing:-.035em;color:var(--kps-accent);margin:10px 0 13px}
.kps-week-plan{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid color-mix(in srgb,var(--kps-border) 78%,transparent)}
.kps-week-plan b{font-size:12px;color:var(--kps-muted)}
.kps-week-plan em{font-style:normal;font-size:15px;font-weight:900;color:var(--kps-text);white-space:nowrap}
.kps-kpi-weeks>small{display:block;margin-top:7px}
@media(max-width:620px){.kps-cockpit-grid .kps-kpi-weeks>strong{font-size:38px}}


/* 3.6.31 – Tageschronik-Archiv */
.kps-daylog-archive-link{appearance:none;border:0;background:transparent;padding:0;margin:18px 0 2px;color:var(--kps-accent);font:inherit;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.kps-daylog-archive-link:hover{text-decoration:underline;text-underline-offset:4px}
.kps-daylog-archive{margin-top:24px;padding-top:24px;border-top:1px solid var(--kps-border)}
.kps-daylog-archive-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:24px;align-items:start}
.kps-daylog-archive-result{min-width:0;border:1px solid var(--kps-border);border-radius:18px;background:var(--kps-surface);padding:22px;box-shadow:0 12px 30px rgba(16,24,40,.06)}
.kps-daylog-archive-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--kps-border)}
.kps-daylog-archive-heading h3,.kps-daylog-archive-filters h3{margin:3px 0 0}
.kps-daylog-archive-total{text-align:right}.kps-daylog-archive-total strong{display:block;font-size:30px;line-height:1}.kps-daylog-archive-total span{display:block;margin-top:5px;color:var(--kps-muted);font-size:12px;font-weight:700}
.kps-daylog-archive-filters{position:sticky;top:18px;border:1px solid var(--kps-border);border-radius:18px;background:color-mix(in srgb,var(--kps-surface) 94%,var(--kps-bg));padding:22px;box-shadow:0 12px 30px rgba(16,24,40,.06)}
.kps-daylog-archive-filters p{margin:8px 0 18px;color:var(--kps-muted);line-height:1.5}
.kps-daylog-archive-filters form,.kps-daylog-archive-filters label{display:grid;gap:8px}.kps-daylog-archive-filters form{gap:15px}.kps-daylog-archive-filters label>span{font-size:12px;font-weight:800;color:var(--kps-muted)}
.kps-daylog-archive-filters select,.kps-daylog-archive-filters input{width:100%}
@media(max-width:900px){.kps-daylog-archive-shell{grid-template-columns:1fr}.kps-daylog-archive-filters{position:static;grid-row:1}.kps-daylog-archive-result{grid-row:2;padding:16px}.kps-daylog-archive-heading{align-items:center}.kps-daylog-archive-heading h3{font-size:20px}.kps-daylog-archive-total strong{font-size:26px}}


/* 3.6.32 – Globaler Smartphone-Standard: ruhig vertikal scrollen */
@media (max-width: 767px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
    overscroll-behavior-x: none;
    touch-action: pan-y;
  }

  body,
  .kps-app,
  .kps-app-shell,
  .kps-main,
  .kps-content,
  .kps-tab-panel,
  .kps-card,
  .kps-form,
  .kps-cockpit-grid,
  .kps-daylog-layout,
  .kps-daylog-archive,
  .kps-daylog-archive-shell,
  .kps-daylog-archive-result,
  .kps-daylog-archive-filters,
  [data-kps-live-cockpit],
  [data-kps-live-offers],
  [data-kps-live-measurements],
  [data-kps-live-extraction] {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }

  .kps-app *,
  .kps-app *::before,
  .kps-app *::after {
    box-sizing: border-box;
  }

  img,
  svg,
  canvas,
  video,
  iframe {
    max-width: 100%;
    height: auto;
  }

  input,
  select,
  textarea,
  button {
    max-width: 100%;
  }

  p,
  span,
  strong,
  small,
  td,
  th,
  label,
  summary,
  a {
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .kps-grid,
  .kps-grid-auto,
  .kps-cockpit-grid,
  .kps-offer-kpis,
  .kps-extraction-kpis,
  .kps-customer-edit-grid,
  .kps-project-schedule-form .kps-schedule-edit {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .kps-offer-board,
  .kps-table-wrap,
  .kps-schedule-table-wrap,
  .kps-extraction-table-wrap {
    max-width: 100% !important;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
  }

  .kps-offer-board {
    overflow-x: hidden !important;
    scroll-snap-type: none !important;
    transform: none !important;
  }

  .kps-offer-column {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .kps-offer-card,
  .kps-schedule-table,
  .kps-extraction-table {
    max-width: 100% !important;
  }

  .kps-main,
  .kps-tab-panel {
    transform: none !important;
  }
}


/* 3.6.34 – Geschützte PDF- und CSV-Downloads */
.kps-export-gate{margin:16px 0;padding:16px;border:1px solid var(--kps-border);border-radius:16px;background:var(--kps-surface);box-shadow:0 10px 30px rgba(15,23,42,.06)}
.kps-export-gate-copy{display:grid;gap:3px;margin-bottom:12px}.kps-export-gate-copy strong{font-size:16px}.kps-export-gate-copy span{color:var(--kps-muted)}
.kps-export-gate-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.kps-export-gate-form label{display:grid;gap:5px;min-width:220px;flex:1}.kps-export-gate-form label span{font-size:12px;font-weight:750;color:var(--kps-muted)}
.kps-export-message{min-height:22px;margin-top:10px;font-weight:650}.kps-export-downloads{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.kps-export-downloads small{width:100%;color:var(--kps-muted)}
@media(max-width:767px){.kps-export-gate-form,.kps-export-downloads{display:grid;grid-template-columns:1fr}.kps-export-gate-form label{min-width:0}.kps-export-gate-form button,.kps-export-downloads a{width:100%;text-align:center}}


/* 3.6.35 – Umsatztrend im Cockpit */
.kps-kpi-revenue-trend .kps-trend-line{display:flex;align-items:center;gap:10px;margin-top:10px;padding:9px 10px;border-radius:12px;background:var(--kps-bg)}
.kps-kpi-revenue-trend .kps-trend-line i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-size:22px;font-style:normal;font-weight:900}
.kps-kpi-revenue-trend .kps-trend-line div{display:grid;gap:1px}.kps-kpi-revenue-trend .kps-trend-line b{font-size:15px}.kps-kpi-revenue-trend .kps-trend-line small{margin:0}
.kps-kpi-revenue-trend .trend-up i{background:#dcfce7;color:#15803d}.kps-kpi-revenue-trend .trend-up b{color:#15803d}
.kps-kpi-revenue-trend .trend-down i{background:#fee2e2;color:#b91c1c}.kps-kpi-revenue-trend .trend-down b{color:#b91c1c}
.kps-kpi-revenue-trend .trend-flat i{background:#e2e8f0;color:#475569}.kps-kpi-revenue-trend .trend-flat b{color:#475569}
.kps-extraction-admin-note{display:flex;gap:10px;align-items:flex-start;margin:0 0 18px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a8a}.kps-extraction-admin-note span{font-size:13px}


/* 3.6.36 – Sicherer mobiler Rand, vollständiger Header, kein seitliches Wobbeln */
@media (max-width: 767px) {
  :root {
    --kps-mobile-gutter: max(16px, env(safe-area-inset-left, 0px));
    --kps-mobile-gutter-right: max(16px, env(safe-area-inset-right, 0px));
  }

  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-x: clip !important;
    overscroll-behavior-x: none !important;
    touch-action: pan-y !important;
  }

  .kps-app {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow-x: clip !important;
  }

  .kps-app-header {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-top: 12px !important;
    padding-right: var(--kps-mobile-gutter-right) !important;
    padding-bottom: 12px !important;
    padding-left: var(--kps-mobile-gutter) !important;
    overflow: visible !important;
  }

  .kps-header-brand {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding-right: 58px !important;
    padding-left: 58px !important;
  }

  .kps-header-logo-wrap,
  .kps-header-brand .kps-brand-copy,
  .kps-header-brand .kps-company-logo,
  .kps-header-brand .kps-mobile-brand-title {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .kps-header-brand .kps-mobile-brand-title {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .kps-header-menu-toggle {
    top: 12px !important;
    right: var(--kps-mobile-gutter-right) !important;
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    transform: none !important;
    overflow: visible !important;
  }

  .kps-header-menu-toggle .kps-menu-icon,
  .kps-header-menu-toggle .kps-menu-icon i {
    max-width: 24px !important;
  }

  .kps-header-account,
  .kps-header-meta {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .kps-header-meta {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: center !important;
  }

  .kps-header-date {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    white-space: normal !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
  }

  .kps-main,
  .kps-content,
  .kps-tab-panel,
  .kps-product-footer,
  .kps-app > section,
  .kps-app > main,
  .kps-app > nav {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .kps-main,
  .kps-content,
  .kps-tab-panel {
    padding-left: var(--kps-mobile-gutter) !important;
    padding-right: var(--kps-mobile-gutter-right) !important;
  }

  .kps-card,
  .kps-cockpit-grid > *,
  .kps-offer-card,
  .kps-daylog-archive-result,
  .kps-daylog-archive-filters,
  form,
  fieldset,
  table,
  .kps-table-wrap,
  .kps-schedule-table-wrap,
  .kps-extraction-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .kps-app input,
  .kps-app select,
  .kps-app textarea,
  .kps-app button,
  .kps-app a {
    min-width: 0;
  }

  .kps-app img,
  .kps-app svg,
  .kps-app canvas,
  .kps-app video,
  .kps-app iframe {
    max-width: 100% !important;
  }

  .kps-app .kps-tabs,
  .kps-nav-left .kps-tabs {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: var(--kps-mobile-gutter) !important;
    padding-right: var(--kps-mobile-gutter-right) !important;
    overflow-x: clip !important;
  }

  .kps-offer-board {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }
}

@media (max-width: 380px) {
  .kps-header-brand {
    padding-right: 52px !important;
    padding-left: 52px !important;
  }

  .kps-header-brand .kps-mobile-brand-title {
    font-size: 15px !important;
  }
}


/* KPS 3.6.37 – Mobile Layout Framework PRO
   Ein zentraler Außenabstand, keine doppelten Paddings, keine Viewport-Überbreite. */
@media (max-width: 767px) {
  :root {
    --kps-mobile-left: max(16px, env(safe-area-inset-left, 0px));
    --kps-mobile-right: max(16px, env(safe-area-inset-right, 0px));
  }

  html,
  body,
  body.kps-kiosk-body {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overscroll-behavior-x: none !important;
    touch-action: pan-y !important;
  }

  .kps-app,
  body.kps-kiosk-body .kps-app,
  .kps-app-shell,
  .kps-nav-left .kps-app-shell {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
    overflow-x: hidden !important;
  }

  /* Header bleibt im sicheren Displaybereich. */
  .kps-app-header,
  body.kps-kiosk-body .kps-app-header {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px var(--kps-mobile-right) 12px var(--kps-mobile-left) !important;
    overflow: visible !important;
  }

  .kps-header-brand {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding-left: 54px !important;
    padding-right: 54px !important;
    justify-items: center !important;
    text-align: center !important;
  }

  .kps-header-logo-wrap,
  .kps-header-brand .kps-brand-copy,
  .kps-header-brand .kps-mobile-brand-title {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .kps-header-brand .kps-mobile-brand-title {
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  .kps-header-menu-toggle {
    position: absolute !important;
    top: 12px !important;
    right: var(--kps-mobile-right) !important;
    left: auto !important;
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  /* Glocke und Datum exakt im verfügbaren Raum zentrieren. */
  .kps-userbar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px var(--kps-mobile-right) 8px var(--kps-mobile-left) !important;
    overflow: visible !important;
  }

  .kps-header-meta {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    justify-content: stretch !important;
    align-items: center !important;
    gap: 10px !important;
    overflow: visible !important;
  }

  .kps-header-meta .kps-notification-bell {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
  }

  .kps-header-meta .kps-header-date {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  .kps-header-meta .kps-date-mobile {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    text-overflow: clip !important;
    text-align: center !important;
  }

  /* Einziger Inhalts-Außenabstand: Workspace. */
  .kps-workspace,
  body.kps-kiosk-body .kps-workspace,
  .kps-nav-left .kps-workspace {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding-left: var(--kps-mobile-left) !important;
    padding-right: var(--kps-mobile-right) !important;
    transform: none !important;
    overflow-x: hidden !important;
  }

  /* Keine zweite Einrückung innerhalb des Workspace. */
  .kps-main,
  .kps-content,
  .kps-tab-panel,
  .kps-tab-panel.is-active,
  [data-kps-panel],
  [data-kps-live-cockpit],
  [data-kps-live-offers],
  [data-kps-live-measurements],
  [data-kps-live-extraction] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
  }

  /* Karten und Formulare stehen exakt mittig. */
  .kps-card,
  .kps-form,
  .kps-calendar-card,
  .kps-cockpit-grid,
  .kps-cockpit-grid > *,
  .kps-cockpit-focus,
  .kps-cockpit-focus > *,
  .kps-offer-kpis,
  .kps-offer-board,
  .kps-offer-column,
  .kps-offer-card,
  .kps-appointment-card,
  .kps-daylog-layout,
  .kps-daylog-archive,
  .kps-daylog-archive-shell,
  .kps-daylog-archive-result,
  .kps-daylog-archive-filters,
  .kps-extraction-kpis,
  .kps-extraction-admin-note,
  form,
  fieldset {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .kps-cockpit-grid,
  .kps-cockpit-focus,
  .kps-offer-kpis,
  .kps-extraction-kpis,
  .kps-grid,
  .kps-grid-auto,
  .kps-customer-edit-grid,
  .kps-project-schedule-form .kps-schedule-edit {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  /* Nur Tabellencontainer dürfen intern horizontal scrollen. */
  .kps-table-wrap,
  .kps-schedule-table-wrap,
  .kps-extraction-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-x: contain !important;
    -webkit-overflow-scrolling: touch;
  }

  .kps-offer-board {
    overflow-x: hidden !important;
    scroll-snap-type: none !important;
  }

  .kps-app input,
  .kps-app select,
  .kps-app textarea,
  .kps-app button,
  .kps-app img,
  .kps-app svg,
  .kps-app canvas,
  .kps-app video,
  .kps-app iframe {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .kps-app p,
  .kps-app span,
  .kps-app strong,
  .kps-app small,
  .kps-app label,
  .kps-app summary,
  .kps-app a,
  .kps-app td,
  .kps-app th {
    overflow-wrap: break-word;
  }

  .kps-app .kps-tabs,
  .kps-nav-left .kps-tabs {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: var(--kps-mobile-left) !important;
    padding-right: var(--kps-mobile-right) !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
}

@media (max-width: 380px) {
  .kps-header-brand {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }

  .kps-workspace,
  body.kps-kiosk-body .kps-workspace,
  .kps-nav-left .kps-workspace {
    padding-left: max(12px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(12px, env(safe-area-inset-right, 0px)) !important;
  }
}


/* 3.6.38 – Einheitlicher mobiler Karten-Innenabstand */
@media (max-width: 767px) {
  .kps-app {
    --kps-mobile-card-padding: 18px;
  }

  /* Jede visuelle Hauptkarte nutzt mobil exakt denselben Innenabstand. */
  .kps-card,
  .kps-form,
  .kps-calendar-card,
  .kps-login-panel,
  .kps-appointment-card,
  .kps-offer-card,
  .kps-cockpit-grid > article,
  .kps-cockpit-focus > article,
  .kps-extraction-kpis > article,
  .kps-daylog-archive-result,
  .kps-daylog-archive-filters,
  .kps-profile-card {
    padding: var(--kps-mobile-card-padding) !important;
  }

  /* Abschöpfung: Kopfbereich darf keinen abweichenden oberen Versatz erzeugen. */
  [data-kps-live-extraction] > .kps-form,
  [data-kps-panel="extraction"] .kps-form,
  .kps-extraction-head {
    margin-top: 0 !important;
  }

  .kps-extraction-head {
    padding: 0 !important;
    margin-bottom: 18px !important;
  }

  .kps-extraction-kpis {
    margin-top: 0 !important;
  }

  /* Verschachtelte Inhalte erhalten keinen zweiten Karten-Innenabstand. */
  .kps-card .kps-card,
  .kps-form .kps-card,
  .kps-form .kps-form,
  .kps-extraction-kpis > article > *:first-child,
  .kps-cockpit-grid > article > *:first-child {
    margin-top: 0 !important;
  }
}

@media (max-width: 380px) {
  .kps-app {
    --kps-mobile-card-padding: 16px;
  }
}

/* 4.0.3 – zentrale Terminverwaltung */
.kps-appointments-toolbar,.kps-appointments-list-head{display:flex;align-items:center;justify-content:space-between;gap:24px}
.kps-appointments-toolbar{padding-bottom:22px}
.kps-appointments-toolbar h3,.kps-appointments-list-head h3{margin:3px 0 0}
.kps-appointments-toolbar p{margin:7px 0 0;color:var(--kps-muted)}
.kps-appointments-create-form{margin:22px 0;padding:22px;border:1px solid var(--kps-border);border-radius:var(--kps-radius);background:color-mix(in srgb,var(--kps-bg) 62%,var(--kps-surface))}
.kps-appointments-list-head{margin:26px 0 14px}
.kps-all-appointments-list .kps-appointment-card{grid-template-columns:minmax(112px,140px) 1fr auto;align-items:center}
.kps-appointment-time span{display:block;margin-top:4px;color:var(--kps-muted);font-weight:700}
.kps-appointment-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.kps-status-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--kps-bg);font-size:12px;font-weight:800}
.kps-appointment-card.is-external{opacity:.82}
.kps-appointment-card.is-external small{color:var(--kps-muted)}
@media(max-width:760px){.kps-appointments-toolbar,.kps-appointments-list-head{align-items:flex-start;flex-direction:column}.kps-appointments-toolbar .kps-primary-button{width:100%}.kps-all-appointments-list .kps-appointment-card{grid-template-columns:1fr}.kps-appointment-actions{justify-content:flex-start}}

/* 4.0.4 – Terminbearbeitung im KPS-Design */
.kps-booking-modal[hidden]{display:none!important}
.kps-booking-modal{position:fixed;inset:0;z-index:1000000;display:flex;align-items:flex-start;justify-content:center;padding:clamp(18px,4vh,48px) 22px;background:rgba(15,23,42,.58);backdrop-filter:blur(7px);overflow-y:auto}
.kps-booking-dialog{width:min(860px,100%);margin:auto;border:1px solid rgba(255,255,255,.65);border-radius:22px;background:var(--kps-surface,#fff);box-shadow:0 36px 110px rgba(15,23,42,.38);overflow:hidden;animation:kpsBookingDialogIn .2s ease-out}
.kps-booking-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:26px 30px 22px;border-bottom:1px solid var(--kps-border);background:linear-gradient(135deg,color-mix(in srgb,var(--kps-accent) 8%,#fff),#fff 58%)}
.kps-booking-dialog-header h3{margin:4px 0 5px;font-size:25px;line-height:1.2;color:var(--kps-text)}
.kps-booking-dialog-header p{margin:0;color:var(--kps-muted)}
.kps-booking-dialog-close{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:1px solid var(--kps-border);border-radius:12px;background:#fff;color:var(--kps-text);font:inherit;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(16,24,40,.06)}
.kps-booking-dialog-close:hover{background:var(--kps-bg);transform:translateY(-1px)}
.kps-booking-dialog-form{padding:0}
.kps-booking-dialog-section{display:grid;grid-template-columns:190px minmax(0,1fr);gap:26px;padding:24px 30px;border-bottom:1px solid var(--kps-border)}
.kps-booking-section-title{display:flex;align-items:flex-start;gap:12px;padding-top:3px}
.kps-booking-section-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--kps-accent) 11%,#fff);color:var(--kps-accent);font-size:12px;font-weight:900}
.kps-booking-section-title strong,.kps-booking-section-title small{display:block}
.kps-booking-section-title strong{margin-top:1px;color:var(--kps-text)}
.kps-booking-section-title small{margin-top:4px;color:var(--kps-muted);line-height:1.35}
.kps-booking-dialog-grid{display:grid;gap:16px}
.kps-booking-dialog-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.kps-booking-dialog-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kps-booking-dialog .kps-field{margin:0}
.kps-booking-dialog .kps-field>span{margin-bottom:7px}
.kps-booking-dialog input,.kps-booking-dialog select,.kps-booking-dialog textarea{width:100%;min-height:46px;border:1px solid var(--kps-border);border-radius:11px;background:#fff;color:var(--kps-text);font:inherit}
.kps-booking-dialog textarea{min-height:106px;resize:vertical}
.kps-booking-dialog input:focus,.kps-booking-dialog select:focus,.kps-booking-dialog textarea:focus{border-color:var(--kps-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--kps-accent) 15%,transparent);outline:0}
.kps-booking-dialog-footer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px 30px;background:color-mix(in srgb,var(--kps-bg) 70%,#fff)}
.kps-booking-dialog-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.kps-booking-dialog-footer .kps-form-message{min-height:20px;text-align:center}
.kps-appointment-action-buttons{display:flex;align-items:center;gap:8px}
.kps-list-delete-button{min-height:40px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--kps-danger,#c62828) 35%,var(--kps-border));border-radius:10px;background:#fff;color:var(--kps-danger,#c62828);font:inherit;font-weight:800;cursor:pointer}
.kps-list-delete-button:hover{background:color-mix(in srgb,var(--kps-danger,#c62828) 7%,#fff);border-color:var(--kps-danger,#c62828)}
@keyframes kpsBookingDialogIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:760px){.kps-booking-modal{padding:12px}.kps-booking-dialog{border-radius:16px}.kps-booking-dialog-header{padding:22px 20px 18px}.kps-booking-dialog-section{grid-template-columns:1fr;gap:15px;padding:20px}.kps-booking-section-title small{display:none}.kps-booking-dialog-grid-2,.kps-booking-dialog-grid-3{grid-template-columns:1fr}.kps-booking-dialog-footer{grid-template-columns:1fr;padding:18px 20px}.kps-booking-dialog-footer .kps-form-message{text-align:left}.kps-booking-dialog-footer-actions{display:grid;grid-template-columns:1fr 1fr}.kps-booking-dialog-footer-actions button,.kps-booking-dialog-footer>.kps-danger-button{width:100%}.kps-appointment-action-buttons{width:100%;flex-wrap:wrap}.kps-appointment-action-buttons button{flex:1 1 auto}}

/* 5.0.1 – schlichte Datums- und Uhrzeitanzeige ohne Kachel oder Trennlinie */
.kps-app .kps-header-datetime{
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  width:max-content;
  max-width:100%;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.kps-app .kps-header-datetime .kps-header-date,
.kps-app .kps-header-datetime .kps-live-clock{
  display:flex;
  align-items:center;
  min-height:22px;
  padding:0!important;
  border:0!important;
  color:var(--kps-text)!important;
  font-size:13px!important;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
}
.kps-app .kps-header-datetime .kps-live-clock{
  font-variant-numeric:tabular-nums;
}
@media(max-width:760px){
  .kps-app .kps-header-datetime{width:100%;justify-content:center;gap:12px!important}
  .kps-app .kps-header-datetime .kps-header-date,
  .kps-app .kps-header-datetime .kps-live-clock{font-size:12px!important}
}


/* KPS 5.0.16 – Stornos in der Pipeline */
.kps-app .kps-offer-kpi-cancelled{padding:0!important;overflow:hidden;background:linear-gradient(145deg,#fff7f7,#fee2e2);border-color:#fecaca}
.kps-app .kps-offer-kpi-cancelled button{width:100%;height:100%;padding:16px;border:0;background:transparent;text-align:left;display:grid;gap:5px;cursor:pointer;color:inherit}
.kps-app .kps-offer-kpi-cancelled button:hover{background:rgba(153,27,27,.06)}
.kps-app .kps-offer-kpi-cancelled strong{color:#991b1b}
.kps-offer-board[data-view="storno"]{grid-template-columns:minmax(300px,520px);justify-content:start}
.kps-offer-board[data-view="storno"] .status-lost{border-color:#ef4444}
.kps-storno-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.kps-storno-actions button{border:1px solid #fecaca;border-radius:9px;padding:7px 10px;background:#fff;color:#7f1d1d;font-weight:800;cursor:pointer}
.kps-storno-actions button.is-danger{background:#991b1b;color:#fff;border-color:#991b1b}
@media(max-width:760px){.kps-offer-board[data-view="storno"]{grid-template-columns:minmax(280px,1fr)}}

/* KPS 5.0.17 – Projekt-Notizen und Pipeline-Zähler */
.kps-app .kps-offer-kpi-notes{padding:0!important;overflow:hidden;background:linear-gradient(145deg,#f8fbff,#e8f1ff);border-color:#cbdcf8}
.kps-app .kps-offer-kpi-notes button{width:100%;height:100%;padding:16px;border:0;background:transparent;text-align:left;display:grid;gap:5px;cursor:pointer;color:inherit}
.kps-app .kps-offer-kpi-notes button:hover{background:rgba(37,99,235,.05)}
.kps-app .kps-offer-kpi-notes strong{color:#1d4ed8}
.kps-offer-board[data-view="notes"]{grid-template-columns:repeat(auto-fit,minmax(280px,420px));justify-content:start}
.kps-offer-board[data-view="notes"] .kps-offer-card:not([data-offer-has-note="1"]){display:none!important}
@media(max-width:760px){.kps-offer-board[data-view="notes"]{grid-template-columns:minmax(280px,1fr)}}
.kps-app .kps-project-note-preview{padding:10px 11px;border-radius:12px;background:#f3f7ff;border:1px solid #dbe7fb;display:grid;gap:4px}
.kps-app .kps-project-note-preview strong{font-size:12px;color:#1d4ed8;text-transform:uppercase;letter-spacing:.04em}
.kps-app .kps-project-note-preview p{margin:0;white-space:normal;overflow-wrap:anywhere}


/* KPS 5.0.18 – Projekt-Notizen Raster */
.kps-app .kps-project-notes-panel{margin:18px 0;padding:18px;border:1px solid #cbdcf8;border-radius:18px;background:linear-gradient(145deg,#f8fbff,#eef5ff)}
.kps-app .kps-project-notes-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}
.kps-app .kps-project-notes-head h3,.kps-app .kps-project-notes-head p{margin:0}
.kps-app .kps-project-notes-head button{border:1px solid #b8cbea;border-radius:10px;background:#fff;padding:9px 13px;font-weight:800;cursor:pointer}
.kps-app .kps-project-notes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.kps-app .kps-project-note-card{display:grid;align-content:start;gap:12px;padding:16px;border:1px solid #d8e3f4;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(30,64,175,.06)}
.kps-app .kps-project-note-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.kps-app .kps-project-note-card header div{display:grid;gap:3px}.kps-app .kps-project-note-card header small{color:var(--kps-muted)}
.kps-app .kps-project-note-card header>span{padding:5px 8px;border-radius:999px;background:#eef4ff;color:#1d4ed8;font-size:12px;font-weight:800}
.kps-app .kps-project-note-card>p{margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.55}
.kps-app .kps-project-note-card details{border-top:1px solid #e5eaf3;padding-top:10px}.kps-app .kps-project-note-card summary{cursor:pointer;font-weight:800;color:#1d4ed8}
.kps-app .kps-project-note-edit{display:grid;gap:10px;margin-top:10px}.kps-app .kps-project-note-edit label{display:grid;gap:6px}.kps-app .kps-project-note-edit textarea{width:100%}
@media(max-width:760px){.kps-app .kps-project-notes-head{display:grid}.kps-app .kps-project-notes-head button{width:100%}.kps-app .kps-project-notes-grid{grid-template-columns:1fr}}

/* KPS 5.0.19 – Pipeline-Karten über den Kundennamen einklappen */
.kps-app .kps-offer-card-toggle{display:grid;gap:1px;min-width:0;padding:0!important;text-align:left;border:0!important;background:transparent!important;color:inherit;cursor:pointer}
.kps-app .kps-offer-card-toggle span{font-size:15px;font-weight:850;white-space:normal;overflow-wrap:anywhere}
.kps-app .kps-offer-card-toggle small{font-size:10px;font-weight:700;color:var(--kps-muted);line-height:1.2}
.kps-app .kps-offer-card-body{display:grid;gap:7px;min-width:0}
.kps-app .kps-offer-card.is-collapsed .kps-offer-card-body{display:none}
.kps-app .kps-offer-card.is-collapsed{gap:0}
.kps-app .kps-offer-card.is-collapsed .kps-offer-card-toggle small::before{content:'Details anzeigen';font-size:10px}
.kps-app .kps-offer-card.is-collapsed .kps-offer-card-toggle small{font-size:0}

/* KPS 5.0.20 – Notizkarten über den Projektnamen einklappen */
.kps-app .kps-project-note-toggle{display:grid;gap:3px;min-width:0;padding:0;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer}
.kps-app .kps-project-note-toggle span{font-weight:850;white-space:normal;overflow-wrap:anywhere}
.kps-app .kps-project-note-toggle small{font-size:11px;font-weight:700;color:var(--kps-muted)}
.kps-app .kps-project-note-body{display:grid;gap:12px}
.kps-app .kps-project-note-body>p{margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.55}
.kps-app .kps-project-note-card.is-collapsed{gap:0}
\n\n/* KPS 5.0.21 – Ruhige farbige Hauptphasen der Pipeline */
.kps-app .kps-offer-column.status-draft,
.kps-app .kps-offer-column.status-offer,
.kps-app .kps-offer-column.status-order,
.kps-app .kps-offer-column.status-lost{
  overflow:hidden;
  border-width:1px;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
}
.kps-app .kps-offer-column.status-draft{background:linear-gradient(145deg,#fafafa 0%,#f1f3f5 100%);border-color:#d9dde2}
.kps-app .kps-offer-column.status-offer{background:linear-gradient(145deg,#fffdf4 0%,#fff5c8 100%);border-color:#eadb8c}
.kps-app .kps-offer-column.status-order{background:linear-gradient(145deg,#f7fff9 0%,#dcf5e3 100%);border-color:#a9d8b6}
.kps-app .kps-offer-column.status-lost{background:linear-gradient(145deg,#fffafa 0%,#f9dede 100%);border-color:#e6aaaa;opacity:1}
.kps-app .kps-offer-column>header{
  min-height:54px;
  padding:15px 16px;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:rgba(255,255,255,.42);
}
.kps-app .kps-offer-column>header strong{
  font-size:15px;
  font-weight:900;
  letter-spacing:-.01em;
}
.kps-app .kps-offer-column.status-draft>header strong{color:#4b5563}
.kps-app .kps-offer-column.status-offer>header strong{color:#806200}
.kps-app .kps-offer-column.status-order>header strong{color:#176b35}
.kps-app .kps-offer-column.status-lost>header strong{color:#9b1c1c}
.kps-app .kps-offer-column>div{padding:12px}

/* KPS 5.0.22 – Responsive Pipeline ohne seitliches Scrollen */
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]){
  width:100%;
  max-width:100%;
  min-width:0;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  overflow-x:hidden;
  padding-bottom:0;
}
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) .kps-offer-column{
  width:100%;
  min-width:0;
  max-width:none;
}
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) .kps-offer-card,
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) .kps-offer-card-body,
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) .kps-offer-card-head{
  min-width:0;
  max-width:100%;
}
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) input,
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) select,
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) textarea,
.kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]) button{
  max-width:100%;
}
@media(max-width:700px){
  .kps-app .kps-offer-board:not([data-view="storno"]):not([data-view="notes"]){
    grid-template-columns:minmax(0,1fr);
    gap:14px;
    overflow-x:hidden;
  }
}

.kps-leader-lock{max-width:620px;margin:40px auto;text-align:center;padding:32px}.kps-leader-lock-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:20px;display:grid;place-items:center;background:var(--kps-header);color:#fff;font-size:28px}.kps-leader-lock form{max-width:420px;margin:24px auto 0;text-align:left}.kps-stats-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.kps-stats-kpi-grid article,.kps-leader-card{background:var(--kps-surface);border:1px solid var(--kps-border);border-radius:var(--kps-radius);padding:18px}.kps-stats-kpi-grid span,.kps-stats-kpi-grid small{display:block;color:var(--kps-muted)}.kps-stats-kpi-grid strong{display:block;font-size:1.55rem;margin:8px 0}.kps-leader-grid{display:grid;gap:18px}.kps-leader-card h4{margin:0 0 14px}.kps-responsive-table{overflow:auto}.kps-responsive-table table{width:100%;border-collapse:collapse}.kps-responsive-table th,.kps-responsive-table td{padding:12px;border-bottom:1px solid var(--kps-border);text-align:left;white-space:nowrap}.kps-responsive-table td small{display:block;color:var(--kps-muted);margin-top:3px}@media(max-width:900px){.kps-stats-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.kps-stats-kpi-grid{grid-template-columns:1fr}}

/* KPS 5.0.38 – Statistik-Abmeldung */
.kps-stats-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.kps-stats-head-actions .kps-secondary-button{white-space:nowrap}


/* KPS 5.0.43 – GHOST-Datenschutzmodus */
.kps-ghost-menu-item{border-top:1px solid var(--kps-border)!important;color:var(--kps-muted)!important}.kps-ghost-menu-item:hover{color:var(--kps-text)!important}.kps-ghost-menu-item .kps-tab-icon{font-size:18px;font-weight:900}
.kps-ghost-screen[hidden]{display:none!important}.kps-ghost-screen{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:24px;background:#fff;color:#172033}.kps-ghost-unlock-card{width:min(430px,100%);padding:34px;border:1px solid #e6e9ef;border-radius:20px;background:#fff;text-align:center;box-shadow:0 24px 80px rgba(16,24,40,.10)}.kps-ghost-mark{display:inline-grid;place-items:center;min-width:92px;height:38px;margin-bottom:18px;padding:0 16px;border-radius:999px;background:#f3f5f8;color:#667085;font-size:12px;font-weight:950;letter-spacing:.14em}.kps-ghost-unlock-card h2{margin:0 0 8px;font-size:25px}.kps-ghost-unlock-card p{margin:0 0 24px;color:#667085}.kps-ghost-unlock-card form{text-align:left}.kps-ghost-unlock-card .kps-primary-button{width:100%;margin-top:8px}.kps-ghost-unlock-card .kps-form-message{min-height:22px;margin:8px 0}.kps-ghost-is-locked{overflow:hidden!important}
@media(max-width:980px){.kps-ghost-menu-item{margin-top:0;border-top:0!important}}

/* KPS 5.0.49 – Filterbare Umsatzhistorie */
.kps-app .kps-sales-history{margin-top:22px;padding:20px;border:1px solid var(--kps-border);border-radius:var(--kps-radius);background:var(--kps-surface)}
.kps-app .kps-sales-history-title h4{margin:3px 0 4px;font-size:20px}.kps-app .kps-sales-history-title p{margin:0;color:var(--kps-muted)}
.kps-app .kps-revenue-history-filter{display:grid;grid-template-columns:minmax(190px,1.3fr) repeat(2,minmax(150px,.8fr)) auto;gap:12px;align-items:end;margin:18px 0}
.kps-app .kps-revenue-history-filter label{display:grid;gap:6px}.kps-app .kps-revenue-history-filter label>span{font-size:12px;font-weight:850;color:var(--kps-muted)}
.kps-app .kps-revenue-history-filter select,.kps-app .kps-revenue-history-filter input{width:100%;min-height:44px}
.kps-app .kps-revenue-history-filter .kps-form-message{grid-column:1/-1;min-height:0;margin:0}
.kps-app .kps-sales-result-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 16px;border:1px solid var(--kps-border);border-radius:13px;background:var(--kps-soft)}
.kps-app .kps-sales-result-head div{display:grid;gap:2px}.kps-app .kps-sales-result-head span{font-size:12px;color:var(--kps-muted);font-weight:800}.kps-app .kps-sales-result-head strong{font-size:15px}.kps-app .kps-sales-result-head>b{font-size:18px;white-space:nowrap}
.kps-app .kps-sales-list-items{margin-top:10px}.kps-app .kps-sales-pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:16px}.kps-app .kps-sales-pagination span{font-size:13px;font-weight:800;color:var(--kps-muted)}
.kps-app .kps-sales-list.is-loading{opacity:.55;pointer-events:none}
@media(max-width:850px){.kps-app .kps-revenue-history-filter{grid-template-columns:1fr 1fr}.kps-app .kps-revenue-history-filter>label:first-of-type{grid-column:1/-1}.kps-app .kps-revenue-history-filter button{grid-column:1/-1}}
@media(max-width:560px){.kps-app .kps-revenue-history-filter{grid-template-columns:1fr}.kps-app .kps-revenue-history-filter>label:first-of-type,.kps-app .kps-revenue-history-filter button{grid-column:auto}.kps-app .kps-sales-result-head{align-items:flex-start}.kps-app .kps-sales-pagination{justify-content:space-between}.kps-app .kps-sales-pagination span{font-size:12px}}


/* KPS 5.0.50 – Persönliche Herstellerstatistik */
.kps-app .kps-supplier-statistics .kps-form-title p{margin:6px 0 0;color:var(--kps-muted)}
.kps-app .kps-supplier-statistics-filter{display:grid;grid-template-columns:minmax(190px,1.3fr) repeat(2,minmax(150px,.8fr)) auto;gap:12px;align-items:end;margin:20px 0}
.kps-app .kps-supplier-statistics-filter label{display:grid;gap:6px}.kps-app .kps-supplier-statistics-filter label>span{font-size:12px;font-weight:850;color:var(--kps-muted)}
.kps-app .kps-supplier-statistics-filter select,.kps-app .kps-supplier-statistics-filter input{width:100%;min-height:44px}.kps-app .kps-supplier-statistics-filter .kps-form-message{grid-column:1/-1;min-height:0;margin:0}
.kps-app .kps-supplier-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.kps-app .kps-supplier-summary article{padding:16px;border:1px solid var(--kps-border);border-radius:14px;background:var(--kps-soft)}
.kps-app .kps-supplier-summary span{display:block;font-size:12px;font-weight:800;color:var(--kps-muted)}.kps-app .kps-supplier-summary strong{display:block;margin-top:5px;font-size:20px}
.kps-app .kps-supplier-ranking{display:grid;gap:10px}.kps-app .kps-supplier-row{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(105px,auto);align-items:center;gap:14px;padding:15px 16px;border:1px solid var(--kps-border);border-radius:15px;background:var(--kps-surface)}
.kps-app .kps-supplier-rank{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--kps-soft);font-weight:950}.kps-app .kps-supplier-main{min-width:0}.kps-app .kps-supplier-name{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}.kps-app .kps-supplier-name strong{overflow-wrap:anywhere}.kps-app .kps-supplier-name span{white-space:nowrap;color:var(--kps-muted);font-size:13px;font-weight:800}
.kps-app .kps-supplier-bar{height:10px;overflow:hidden;border-radius:999px;background:var(--kps-soft)}.kps-app .kps-supplier-bar i{display:block;height:100%;min-width:3px;border-radius:inherit;background:var(--kps-header)}.kps-app .kps-supplier-share{text-align:right}.kps-app .kps-supplier-share strong,.kps-app .kps-supplier-share span{display:block}.kps-app .kps-supplier-share strong{font-size:18px}.kps-app .kps-supplier-share span{margin-top:3px;color:var(--kps-muted);font-size:12px}
.kps-app [data-kps-supplier-statistics-result].is-loading{opacity:.55;pointer-events:none}.kps-app .kps-supplier-note{margin:16px 0 0;color:var(--kps-muted);font-size:12px}
@media(max-width:850px){.kps-app .kps-supplier-statistics-filter{grid-template-columns:1fr 1fr}.kps-app .kps-supplier-statistics-filter>label:first-of-type,.kps-app .kps-supplier-statistics-filter button{grid-column:1/-1}.kps-app .kps-supplier-summary{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.kps-app .kps-supplier-statistics-filter,.kps-app .kps-supplier-summary{grid-template-columns:1fr}.kps-app .kps-supplier-statistics-filter>label:first-of-type,.kps-app .kps-supplier-statistics-filter button{grid-column:auto}.kps-app .kps-supplier-row{grid-template-columns:34px minmax(0,1fr)}.kps-app .kps-supplier-share{grid-column:2;text-align:left;display:flex;align-items:baseline;gap:8px}.kps-app .kps-supplier-name{display:grid;gap:3px}.kps-app .kps-supplier-name span{white-space:normal}}


/* Verkaufsstatistik: exakte Buchungszeitpunkte aus der Kasse */
.kps-stat-bookings{margin-top:24px;padding-top:20px;border-top:1px solid var(--kps-border,#dcdcde)}
.kps-stat-bookings-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}
.kps-stat-bookings-head h4{margin:2px 0 0}
.kps-stat-bookings-head small{color:var(--kps-muted,#646970)}
.kps-stat-bookings-list{display:grid;gap:8px}
.kps-stat-bookings-list article{display:grid;grid-template-columns:minmax(150px,190px) minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--kps-border,#dcdcde);border-radius:10px;background:#fff}
.kps-stat-bookings-list time{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.kps-stat-bookings-list div{min-width:0;display:grid;gap:2px}
.kps-stat-bookings-list span{color:var(--kps-muted,#646970);overflow-wrap:anywhere}
.kps-stat-bookings-list b{white-space:nowrap}
@media(max-width:700px){.kps-stat-bookings-list article{grid-template-columns:1fr auto}.kps-stat-bookings-list time{grid-column:1/-1}.kps-stat-bookings-head{align-items:flex-start;flex-direction:column}}

/* KPS 5.0.58 – Datum und Uhrzeit in Umsatzlisten auf Desktop einzeilig */
@media(min-width:701px){.kps-app .kps-stat-bookings-list article{grid-template-columns:minmax(190px,220px) minmax(0,1fr) auto}.kps-app .kps-stat-bookings-list time,.kps-app .kps-sales-list time{white-space:nowrap}}

/* KPS 5.0.59 – Umsatzstorno und vollständiger Buchungszeitpunkt */
.kps-app .kps-sales-list-items article{grid-template-columns:minmax(190px,220px) minmax(0,1fr) auto 38px}
.kps-app .kps-sale-cancel{width:34px;height:34px;padding:0;border:1px solid #fecaca;border-radius:9px;background:#fff;color:var(--kps-danger,#b42318);font-size:22px;font-weight:900;line-height:1;cursor:pointer}
.kps-app .kps-sale-cancel:hover{background:#fff1f1;border-color:var(--kps-danger,#b42318)}
.kps-app .kps-sale-cancel:disabled{opacity:.45;cursor:wait}
.kps-app .kps-timeline-sale>time{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){.kps-app .kps-sales-list-items article{grid-template-columns:1fr auto}.kps-app .kps-sales-list-items article>time,.kps-app .kps-sales-list-items article>div{grid-column:1/-1}.kps-app .kps-sale-cancel{grid-column:2;grid-row:3}}


/* KPS 5.0.61 – Tageschronik: Kassenumsätze wieder sauber zweispaltig */
.kps-app .kps-timeline article.kps-timeline-sale{
  display:grid;
  grid-template-columns:205px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.kps-app .kps-timeline article.kps-timeline-sale>time{
  grid-column:1;
  white-space:nowrap;
}
.kps-app .kps-timeline article.kps-timeline-sale>.kps-timeline-copy{
  grid-column:2;
  width:auto;
  min-width:0;
}
@media(max-width:700px){
  .kps-app .kps-timeline article.kps-timeline-sale{grid-template-columns:1fr;gap:7px}
  .kps-app .kps-timeline article.kps-timeline-sale>time,
  .kps-app .kps-timeline article.kps-timeline-sale>.kps-timeline-copy{grid-column:1}
}


/* KPS 5.0.64 – Montierte Küchen */
.kps-app .kps-mounted-list{margin-top:28px;padding-top:24px;border-top:1px solid var(--kps-border)}
.kps-app .kps-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}
.kps-app .kps-section-heading h3{margin:3px 0 4px}.kps-app .kps-section-heading p{margin:0;color:var(--kps-muted)}
.kps-app .kps-section-heading>strong{min-width:48px;padding:10px 14px;border-radius:14px;background:var(--kps-bg);text-align:center;font-size:22px}
.kps-app .kps-offer-list-filters{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(210px,1fr) auto;gap:12px;align-items:end;margin-bottom:14px;padding:14px;border:1px solid var(--kps-border);border-radius:16px;background:var(--kps-bg)}
.kps-app .kps-mounted-list .kps-offer-list-filters{grid-template-columns:minmax(240px,1.5fr) minmax(150px,.55fr) minmax(210px,1fr) auto}
.kps-app .kps-offer-list-filters label{display:grid;gap:6px}.kps-app .kps-offer-list-filters label>span{font-size:12px;font-weight:800;color:var(--kps-muted)}
.kps-app .kps-offer-list-filters input,.kps-app .kps-offer-list-filters select{width:100%}
.kps-app .kps-offer-list-table{overflow-x:auto;border:1px solid var(--kps-border);border-radius:16px;background:var(--kps-surface)}
.kps-app .kps-offer-list-table table{width:100%;border-collapse:collapse;min-width:920px}
.kps-app .kps-offer-list-table th,.kps-app .kps-offer-list-table td{padding:12px 14px;border-bottom:1px solid var(--kps-border);text-align:left;white-space:nowrap}
.kps-app .kps-offer-list-table th{font-size:12px;color:var(--kps-muted);background:var(--kps-bg)}
.kps-app .kps-offer-list-table tr:last-child td{border-bottom:0}.kps-app .kps-offer-list-table .kps-empty-row td{text-align:center;color:var(--kps-muted);padding:28px}
.kps-app .kps-row-x{width:34px;height:34px;border-radius:50%;border:1px solid color-mix(in srgb,var(--kps-danger) 35%,var(--kps-border));background:transparent;color:var(--kps-danger);font-size:20px;line-height:1;cursor:pointer}
.kps-app .kps-row-x:hover{background:color-mix(in srgb,var(--kps-danger) 10%,transparent)}
@media(max-width:900px){.kps-app .kps-offer-list-filters,.kps-app .kps-mounted-list .kps-offer-list-filters{grid-template-columns:1fr}.kps-app .kps-section-heading{align-items:center}.kps-app .kps-section-heading p{display:none}}


/* 5.0.65 – Aufmaßzeilen nutzen die volle Desktopbreite */
@media (min-width: 901px) {
  .kps-schedule-table {
    min-width: 1180px;
    table-layout: fixed;
  }
  .kps-schedule-table .kps-col-measurement { width: 11%; }
  .kps-schedule-table .kps-col-customer { width: 25%; }
  .kps-schedule-table .kps-col-project { width: 14%; }
  .kps-schedule-table .kps-col-installation { width: 11%; }
  .kps-schedule-table .kps-col-status { width: 9%; }
  .kps-schedule-table .kps-col-edit { width: 30%; }
  .kps-schedule-table td { overflow-wrap: anywhere; }
  .kps-schedule-source {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 42px;
  }
  .kps-schedule-source .kps-sync-badge { white-space: nowrap; }
}

/* KPS 5.0.67 – Aufmaße ohne seitlichen Scroll, manuelle Anlage */
.kps-measurement-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.kps-manual-measurement-form{margin:0 0 16px;padding:16px;border:1px solid var(--kps-border);border-radius:16px;background:var(--kps-bg)}
.kps-manual-measurement-grid{display:grid;grid-template-columns:140px 120px minmax(180px,1.2fr) minmax(160px,.8fr) minmax(220px,1.4fr) 90px minmax(140px,.8fr);gap:10px;align-items:end}
.kps-manual-measurement-grid label{display:grid;gap:5px;min-width:0}.kps-manual-measurement-grid label>span{font-size:12px;font-weight:800;color:var(--kps-muted)}
.kps-manual-measurement-grid input{width:100%;min-width:0}
.kps-manual-measurement-grid .kps-measurement-notes{grid-column:1/-1}
.kps-schedule-table-wrap{overflow-x:hidden}
@media (min-width:901px){
  .kps-schedule-table{min-width:0!important;width:100%;table-layout:fixed}
  .kps-schedule-table .kps-col-measurement{width:10%}
  .kps-schedule-table .kps-col-customer{width:24%}
  .kps-schedule-table .kps-col-installation{width:10%}
  .kps-schedule-table .kps-col-status{width:8%}
  .kps-schedule-table .kps-col-edit{width:48%}
  .kps-schedule-table th,.kps-schedule-table td{padding:12px 10px}
  .kps-project-schedule-form .kps-schedule-edit{grid-template-columns:minmax(145px,1fr) minmax(145px,1fr) auto}
  .kps-schedule-source{display:grid;grid-template-columns:auto minmax(120px,1fr) minmax(105px,.8fr) auto;gap:8px;align-items:end}
}
@media (max-width:1200px){.kps-manual-measurement-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.kps-manual-measurement-grid .kps-measurement-address{grid-column:span 2}.kps-manual-measurement-grid .kps-measurement-notes{grid-column:1/-1}}
@media (max-width:900px){.kps-manual-measurement-grid{grid-template-columns:1fr 1fr}.kps-manual-measurement-grid .kps-measurement-address,.kps-manual-measurement-grid .kps-measurement-notes{grid-column:1/-1}}
@media (max-width:560px){.kps-manual-measurement-grid{grid-template-columns:1fr}.kps-manual-measurement-grid .kps-measurement-address,.kps-manual-measurement-grid .kps-measurement-notes{grid-column:auto}.kps-measurement-head-actions{align-items:stretch}.kps-measurement-head-actions .kps-primary-button{width:100%}}

/* KPS 5.0.69 – professionelle Aufmaßkarten ohne Seitenscroll */
.kps-measurement-list{display:grid;gap:12px;min-width:0}
.kps-measurement-card{min-width:0;border:1px solid var(--kps-border);border-radius:16px;background:var(--kps-surface);box-shadow:0 7px 22px rgba(15,23,42,.055);overflow:hidden}
.kps-measurement-summary{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(290px,1fr) auto auto;gap:18px;align-items:center;padding:16px 18px}
.kps-measurement-primary{display:grid;gap:4px;min-width:0}.kps-measurement-primary strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kps-measurement-primary span{color:var(--kps-muted);font-size:13px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kps-measurement-meta{display:flex;align-items:center;gap:18px;min-width:0;color:var(--kps-text);font-size:13px}.kps-measurement-meta span,.kps-measurement-meta a{white-space:nowrap}.kps-measurement-meta a{color:var(--kps-accent);font-weight:800;text-decoration:none}
.kps-measurement-toggle{min-width:90px}
.kps-measurement-details{padding:18px;border-top:1px solid var(--kps-border);background:color-mix(in srgb,var(--kps-bg) 55%,var(--kps-surface))}
.kps-measurement-detail-form{display:grid;gap:16px}.kps-measurement-detail-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.kps-measurement-editor-card{padding:20px}.kps-measurement-editor-heading h4{margin:3px 0 16px;font-size:19px}
.kps-measurement-editor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kps-measurement-editor-grid label{display:grid;gap:6px;min-width:0}.kps-measurement-editor-grid label>span{color:var(--kps-muted);font-size:12px;font-weight:850}.kps-measurement-editor-grid input,.kps-measurement-editor-grid textarea{width:100%;min-width:0}.kps-measurement-editor-grid .kps-span-2{grid-column:span 2}.kps-measurement-editor-grid .kps-span-full{grid-column:1/-1}
.kps-measurement-detail-form .kps-schedule-form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.kps-schedule-table-wrap{overflow-x:visible}
@media(max-width:1050px){.kps-measurement-summary{grid-template-columns:minmax(200px,1fr) minmax(240px,1fr) auto}.kps-measurement-toggle{grid-column:3}.kps-schedule-status{justify-self:start}.kps-measurement-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.kps-measurement-summary{grid-template-columns:1fr auto;gap:12px}.kps-measurement-primary,.kps-measurement-meta{grid-column:1/-1}.kps-measurement-meta{align-items:flex-start;flex-direction:column;gap:5px}.kps-measurement-toggle{grid-column:auto}.kps-measurement-editor-grid{grid-template-columns:1fr}.kps-measurement-editor-grid .kps-span-2,.kps-measurement-editor-grid .kps-span-full{grid-column:auto}.kps-measurement-details{padding:15px}}


/* KPS 5.0.71 – einheitlicher professioneller Formularstandard */
.kps-app form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
.kps-app form select,
.kps-app form textarea{
  width:100%;min-width:0;max-width:100%;min-height:48px;padding:12px 14px;
  border:1px solid var(--kps-border);border-radius:11px;background:var(--kps-surface);
  color:var(--kps-text);font:inherit;font-size:15px;line-height:1.35;
  box-shadow:0 1px 2px rgba(16,24,40,.025);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease
}
.kps-app form textarea{min-height:112px;resize:vertical}
.kps-app form input:not([type="checkbox"]):not([type="radio"]):focus,
.kps-app form select:focus,
.kps-app form textarea:focus{
  outline:0;border-color:var(--kps-accent);background:var(--kps-surface);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--kps-accent) 14%,transparent)
}
.kps-app form input::placeholder,.kps-app form textarea::placeholder{color:color-mix(in srgb,var(--kps-muted) 72%,transparent)}
.kps-app form input:disabled,.kps-app form select:disabled,.kps-app form textarea:disabled{opacity:.68;cursor:not-allowed;background:var(--kps-bg)}
.kps-measurement-editor-card{padding:0;overflow:hidden;border:1px solid var(--kps-border);border-radius:18px;background:var(--kps-surface);box-shadow:0 14px 34px rgba(15,23,42,.07)}
.kps-measurement-editor-heading{padding:24px 28px 20px;background:linear-gradient(135deg,color-mix(in srgb,var(--kps-accent) 8%,var(--kps-surface)),var(--kps-surface));border-bottom:1px solid var(--kps-border)}
.kps-measurement-editor-heading h4{margin:3px 0 5px;font-size:22px}.kps-measurement-editor-heading p{margin:0;color:var(--kps-muted);font-size:13px}
.kps-measurement-form-section{display:grid;grid-template-columns:190px minmax(0,1fr);gap:26px;padding:24px 28px;border-bottom:1px solid var(--kps-border)}
.kps-measurement-form-section .kps-booking-section-title{align-self:start}
.kps-measurement-editor-grid{gap:16px}.kps-measurement-editor-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.kps-measurement-editor-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kps-measurement-editor-grid .kps-field{display:flex;gap:7px}.kps-measurement-editor-grid .kps-field>span{color:var(--kps-text);font-size:13px;font-weight:750}
.kps-manual-measurement-form>.kps-form-footer{margin:0;padding:20px 28px;background:var(--kps-bg);justify-content:flex-end;flex-wrap:wrap}.kps-manual-measurement-form>.kps-form-footer .kps-form-message{margin-right:auto}
.kps-measurement-detail-form .kps-measurement-editor-grid{padding:2px}.kps-measurement-detail-form .kps-field>span{color:var(--kps-text)}
@media(max-width:900px){.kps-measurement-form-section{grid-template-columns:1fr;gap:15px}.kps-measurement-editor-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.kps-measurement-editor-heading,.kps-measurement-form-section,.kps-manual-measurement-form>.kps-form-footer{padding-left:18px;padding-right:18px}.kps-measurement-editor-grid-2,.kps-measurement-editor-grid-3{grid-template-columns:1fr}.kps-measurement-editor-grid .kps-span-2,.kps-measurement-editor-grid .kps-span-full{grid-column:auto}.kps-manual-measurement-form>.kps-form-footer{display:grid;grid-template-columns:1fr}.kps-manual-measurement-form>.kps-form-footer .kps-form-message{margin:0}.kps-manual-measurement-form>.kps-form-footer button{width:100%}}

/* KPS 5.0.72 – Aufmaßaktionen und Checkbox */
.kps-app .kps-check-inline{display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;width:auto;max-width:max-content;margin:0;padding:4px 0;cursor:pointer}
.kps-app .kps-check-inline input[type="checkbox"]{order:0;flex:0 0 auto;width:18px!important;height:18px!important;min-height:18px!important;margin:0;padding:0}
.kps-app .kps-check-inline span{order:1;white-space:nowrap;font-weight:800}
.kps-app .kps-schedule-form-actions .kps-danger-button{width:auto}
@media(max-width:620px){.kps-app .kps-schedule-form-actions .kps-danger-button{width:100%}}
.kps-app .kps-reminder-created-by{display:block;margin-top:6px;color:var(--kps-muted);font-weight:750}

/* KPS 5.0.73 – Herstellerpflege in der Abschöpfung */
.kps-extraction-maintenance{margin:0 0 18px;border:1px solid #f0c36d;border-radius:14px;background:#fffaf0;overflow:hidden}.kps-extraction-maintenance summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;cursor:pointer;font-weight:800}.kps-extraction-maintenance summary strong{display:inline-flex;padding:5px 10px;border-radius:999px;background:#fff1cf;color:#8a5800;font-size:12px}.kps-extraction-maintenance-body{padding:0 18px 15px;color:#6b5a37}.kps-extraction-manufacturer{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef4ff;color:#244a94;font-weight:700;font-size:12px}.kps-extraction-manufacturer.is-missing{background:#fff1cf;color:#8a5800}.kps-extraction-edit{margin-top:8px;min-width:210px}.kps-extraction-edit>summary{cursor:pointer;color:#245fc3;font-weight:700}.kps-extraction-edit form{margin-top:10px;padding:14px;border:1px solid #dfe5ec;border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(16,24,40,.06)}.kps-extraction-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px}.kps-extraction-edit-grid label{display:grid;gap:6px}.kps-extraction-edit-grid label>span{font-size:12px;font-weight:800;color:#475467}.kps-extraction-edit-grid input,.kps-extraction-edit-grid select{width:100%;min-height:44px;border:1px solid #cfd7e3;border-radius:10px;padding:8px 11px;background:#fff}.kps-extraction-edit-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.kps-extraction-edit-actions button{min-height:42px;border:0;border-radius:10px;padding:0 16px;background:#245fc3;color:#fff;font-weight:800;cursor:pointer}@media(max-width:780px){.kps-extraction-edit-grid{grid-template-columns:1fr}.kps-extraction-edit-actions{align-items:stretch;flex-direction:column}.kps-extraction-edit-actions button{width:100%}}


/* KPS 6.0.1 – professioneller erster Login */
.kps-first-login-shell{display:flex!important;grid-template-columns:none!important;align-items:flex-start;justify-content:center;width:100%;padding:44px 28px 56px}
.kps-first-login-shell .kps-password-required{width:min(100%,760px);max-width:760px;margin:0 auto;padding:42px 48px 46px;text-align:center;border-radius:24px;box-shadow:0 24px 70px rgba(15,23,42,.12);overflow:hidden;position:relative}
.kps-first-login-shell .kps-password-required::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--kps-accent)}
.kps-first-login-icon{width:68px;height:68px;margin:0 auto 18px;display:grid;place-items:center;border-radius:20px;background:color-mix(in srgb,var(--kps-accent) 12%,#fff);border:1px solid color-mix(in srgb,var(--kps-accent) 28%,#fff);color:var(--kps-accent);font-size:30px;font-weight:950}
.kps-first-login-heading{display:flex;flex-direction:column;align-items:center;gap:7px}
.kps-first-login-heading h3{margin:0;font-size:clamp(1.65rem,3vw,2.15rem);line-height:1.18;color:var(--kps-text)}
.kps-first-login-heading .kps-secure-badge{margin-top:5px}
.kps-password-required .kps-first-login-intro{max-width:610px;margin:22px auto 30px;line-height:1.7;color:var(--kps-muted);font-size:1rem}
.kps-password-required .kps-first-login-intro strong{color:var(--kps-text)}
.kps-first-login-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:15px;text-align:left}
.kps-first-login-fields .kps-field input{min-height:52px;padding:13px 15px;border-radius:12px;font-size:16px}
.kps-password-hint{display:flex;align-items:flex-start;gap:9px;padding:12px 14px;border-radius:11px;background:color-mix(in srgb,var(--kps-accent) 6%,#fff);color:var(--kps-muted);text-align:left}
.kps-password-hint>span{flex:0 0 20px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--kps-accent);color:#fff;font-size:12px;font-weight:900}
.kps-password-hint small{line-height:1.5}
.kps-password-required .kps-form-message{margin:16px 0 4px;text-align:center}
.kps-first-login-submit{width:100%;min-height:52px;margin-top:12px;border-radius:12px;font-size:16px;box-shadow:0 10px 24px color-mix(in srgb,var(--kps-accent) 24%,transparent)}
@media(max-width:760px){.kps-first-login-shell{padding:24px 16px 40px}.kps-first-login-shell .kps-password-required{margin:0 auto;padding:34px 24px 30px}.kps-first-login-fields{grid-template-columns:1fr}.kps-first-login-icon{width:60px;height:60px;border-radius:17px}}
@media(max-width:480px){.kps-first-login-shell{padding:16px 12px 30px}.kps-first-login-shell .kps-password-required{padding:30px 18px 24px;border-radius:18px}.kps-password-required .kps-first-login-intro{font-size:.95rem}.kps-first-login-submit{font-size:15px}}


/* KPS 6.0.2 – Hilfehinweis beim ersten Login */
.kps-first-login-help-tip{margin:24px 0 0;padding:16px 18px;text-align:left;line-height:1.6;border-radius:14px}
.kps-first-login-help-tip strong:first-child{display:block;margin-bottom:5px;color:var(--kps-text)}
@media(max-width:480px){.kps-first-login-help-tip{margin-top:20px;padding:14px 15px;font-size:.92rem}}

/* KPS 6.1.0 – Menügruppen und Unterpunkte */
.kps-nav-group{display:flex;align-items:stretch;gap:6px}.kps-nav-group-toggle{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) * .5);background:color-mix(in srgb,var(--kps-surface) 94%,var(--kps-bg));color:var(--kps-text);font:inherit;font-size:12px;font-weight:850;letter-spacing:.04em;cursor:pointer;white-space:nowrap}.kps-nav-group-chevron{transition:transform .18s ease}.kps-nav-group.is-open .kps-nav-group-chevron{transform:rotate(180deg)}.kps-nav-group-items{display:none;align-items:stretch;gap:6px}.kps-nav-group.is-open .kps-nav-group-items{display:flex}
.kps-nav-left .kps-nav-group{display:block;padding:2px 0}.kps-nav-left .kps-nav-group-toggle{width:100%;padding:9px 10px;border:0;background:transparent;color:var(--kps-muted);font-size:11px;text-transform:uppercase;letter-spacing:.09em}.kps-nav-left .kps-nav-group-toggle:hover{background:color-mix(in srgb,var(--kps-accent) 6%,transparent);color:var(--kps-text)}.kps-nav-left .kps-nav-group-items{flex-direction:column;gap:5px;padding:3px 0 7px 8px;border-left:1px solid color-mix(in srgb,var(--kps-border) 80%,transparent)}.kps-nav-left .kps-nav-group.is-open .kps-nav-group-items{display:flex}.kps-nav-left .kps-nav-group-items .kps-tab{padding-left:12px}
@media(max-width:980px){.kps-app .kps-tabs .kps-nav-group,.kps-nav-left .kps-tabs .kps-nav-group{display:block;width:100%;grid-column:1/-1}.kps-app .kps-tabs .kps-nav-group-toggle,.kps-nav-left .kps-tabs .kps-nav-group-toggle{width:100%;min-height:42px}.kps-app .kps-tabs .kps-nav-group-items,.kps-nav-left .kps-tabs .kps-nav-group-items{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 0 2px;border-left:0}.kps-app .kps-tabs .kps-nav-group.is-open .kps-nav-group-items,.kps-nav-left .kps-tabs .kps-nav-group.is-open .kps-nav-group-items{display:grid}}
@media(max-width:560px){.kps-app .kps-tabs .kps-nav-group-items,.kps-nav-left .kps-tabs .kps-nav-group-items{grid-template-columns:1fr}}


/* KPS 6.1.1 – feste Cockpit- und GHOST-Zonen */
.kps-nav-fixed-top,.kps-nav-fixed-bottom{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}
.kps-nav-configurable{display:flex;gap:6px;min-width:0}
.kps-nav-left .kps-nav-configurable{flex:1 1 auto;min-height:0;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:4px 0}
.kps-nav-left .kps-nav-fixed-top{padding-bottom:10px;border-bottom:1px solid var(--kps-border)}
.kps-nav-left .kps-nav-fixed-bottom{margin-top:auto;padding-top:12px;border-top:1px solid var(--kps-border);background:var(--kps-surface);position:sticky;bottom:0}
.kps-nav-left .kps-cockpit-fixed{font-weight:900}
.kps-nav-left .kps-ghost-menu-item{min-height:58px;border:1px solid color-mix(in srgb,var(--kps-accent) 22%,var(--kps-border))!important;border-radius:calc(var(--kps-radius) * .65);background:color-mix(in srgb,var(--kps-accent) 7%,var(--kps-surface));color:var(--kps-text)!important;align-items:center}
.kps-nav-left .kps-ghost-menu-item>span:last-child{display:grid;gap:1px;text-align:left}
.kps-nav-left .kps-ghost-menu-item small{font-size:10px;font-weight:700;color:var(--kps-muted)}
.kps-nav-left .kps-ghost-menu-item:hover{background:color-mix(in srgb,var(--kps-accent) 12%,var(--kps-surface))}
@media(min-width:981px){.kps-nav-left .kps-tabs{overflow:hidden}.kps-nav-left .kps-nav-configurable{scrollbar-width:thin}}
@media(max-width:980px){
 .kps-nav-fixed-top,.kps-nav-fixed-bottom,.kps-nav-configurable{display:contents}
 .kps-app .kps-tabs .kps-cockpit-fixed,.kps-nav-left .kps-tabs .kps-cockpit-fixed{grid-column:1/-1}
 .kps-app .kps-tabs .kps-ghost-menu-item,.kps-nav-left .kps-tabs .kps-ghost-menu-item{grid-column:1/-1;border-top:1px solid var(--kps-border)!important}
 .kps-app .kps-tabs .kps-ghost-menu-item small,.kps-nav-left .kps-tabs .kps-ghost-menu-item small{display:none}
}

/* KPS 6.1.3 – heller GHOST-Schalter unter dem Menü */
.kps-nav-left .kps-nav-fixed-top{gap:8px;padding-bottom:8px}
.kps-nav-security-action{flex:0 0 auto;padding:10px 12px 12px;border-top:1px solid color-mix(in srgb,var(--kps-border) 82%,transparent)}
.kps-ghost-power-button{
  display:grid;place-items:center;width:100%;min-height:48px;padding:0;
  border:1px solid color-mix(in srgb,var(--kps-border) 78%,#fff);border-radius:calc(var(--kps-radius) * .62);
  background:linear-gradient(180deg,#fff 0%,#f7f8fa 52%,#eef1f5 100%);color:var(--kps-text);cursor:pointer;
  box-shadow:0 7px 18px rgba(16,24,40,.09),inset 0 1px 0 rgba(255,255,255,.92);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease
}
.kps-css-power-icon{position:relative;display:block;width:23px;height:23px;border:2.5px solid currentColor;border-top-color:transparent;border-radius:50%;box-sizing:border-box}
.kps-css-power-icon:before{content:"";position:absolute;left:50%;top:-4px;width:2.5px;height:12px;border-radius:999px;background:currentColor;transform:translateX(-50%)}
.kps-ghost-power-button:hover{background:linear-gradient(180deg,#fff 0%,#f3f5f8 48%,#e7ebf0 100%);border-color:color-mix(in srgb,var(--kps-accent) 28%,var(--kps-border));box-shadow:0 10px 24px rgba(16,24,40,.13),inset 0 1px 0 #fff;transform:translateY(-1px)}
.kps-ghost-power-button:focus-visible{outline:3px solid color-mix(in srgb,var(--kps-accent) 48%,#fff);outline-offset:3px}
.kps-ghost-power-button:active{transform:translateY(0);box-shadow:0 4px 12px rgba(16,24,40,.1),inset 0 1px 2px rgba(16,24,40,.06)}
@media(max-width:980px){
  .kps-nav-security-action{grid-column:1/-1;padding:8px 0 0;border-top:0}
  .kps-ghost-power-button{min-height:46px;border-radius:12px}
  .kps-css-power-icon{width:22px;height:22px}
}


/* KPS 6.1.4 – kompakte Sidebar und einstellbare Menüüberschriften */
@media(min-width:981px){
  .kps-nav-left .kps-app-shell{align-items:start}
  .kps-nav-left .kps-tabs{height:auto;max-height:none;align-self:start;overflow:visible}
  body.kps-kiosk-body .kps-nav-left .kps-tabs{height:auto;max-height:none}
  .kps-nav-left .kps-nav-configurable{flex:0 0 auto;min-height:0;overflow:visible;padding:4px 0}
  .kps-nav-left .kps-nav-security-action{margin-top:4px}
}
.kps-nav-group-toggle{font-size:var(--kps-menu-heading-size,11px);font-weight:var(--kps-menu-heading-weight,850)}
.kps-nav-left .kps-nav-group-toggle{font-size:var(--kps-menu-heading-size,11px);font-weight:var(--kps-menu-heading-weight,850)}

/* KPS 6.2.0 – Design-Center, Profilbilder und konfigurierbare Navigation */
@media(min-width:981px){
  .kps-nav-left .kps-app-shell{grid-template-columns:var(--kps-sidebar-width,250px) minmax(0,1fr)}
  .kps-nav-left .kps-nav-configurable{display:flex;flex-direction:column;gap:var(--kps-menu-group-gap,4px)}
}
.kps-nav-group-toggle{color:var(--kps-menu-heading-color,var(--kps-muted));text-transform:var(--kps-menu-heading-transform,uppercase)}
.kps-nav-left .kps-nav-group-toggle{color:var(--kps-menu-heading-color,var(--kps-muted));text-transform:var(--kps-menu-heading-transform,uppercase)}
.kps-nav-left .kps-tab,.kps-nav-left .kps-cockpit-fixed{font-size:var(--kps-menu-item-size,14px)}
.kps-header-account{display:flex;align-items:center;gap:12px}
.kps-header-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:50%;object-fit:cover;border:2px solid color-mix(in srgb,var(--kps-accent) 28%,var(--kps-border));background:var(--kps-surface);box-shadow:0 4px 14px rgba(16,24,40,.12)}
.kps-header-avatar-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--kps-accent) 14%,var(--kps-surface)),var(--kps-surface));color:var(--kps-accent);font-weight:900;font-size:18px}
.kps-profile-identity{display:flex;align-items:center;gap:16px;margin:0 0 20px;padding:18px;border:1px solid var(--kps-border);border-radius:calc(var(--kps-radius) - 2px);background:linear-gradient(135deg,var(--kps-surface),color-mix(in srgb,var(--kps-accent) 5%,var(--kps-surface)))}
.kps-profile-identity>img,.kps-profile-identity>span{width:72px;height:72px;flex:0 0 72px;border-radius:50%;object-fit:cover;border:3px solid var(--kps-surface);box-shadow:0 7px 20px rgba(16,24,40,.14)}
.kps-profile-identity>span{display:grid;place-items:center;background:color-mix(in srgb,var(--kps-accent) 12%,var(--kps-surface));color:var(--kps-accent);font-size:28px;font-weight:900}
.kps-profile-identity div{display:grid;gap:4px}.kps-profile-identity strong{font-size:1.15rem}.kps-profile-identity small{color:var(--kps-muted)}
@media(max-width:760px){.kps-header-avatar{width:38px;height:38px;flex-basis:38px}.kps-profile-identity>img,.kps-profile-identity>span{width:58px;height:58px;flex-basis:58px}}


/* KPS 6.3.0 – erweiterte Menue-Typografie und Icons */
.kps-nav-group-toggle{letter-spacing:var(--kps-menu-heading-letter-spacing,.08em)}
.kps-nav-left .kps-tab,.kps-nav-left .kps-cockpit-fixed{min-height:var(--kps-menu-item-line-height,44px);font-weight:var(--kps-menu-item-weight,650);gap:var(--kps-menu-icon-gap,10px)}
.kps-nav-left .kps-tab-icon{width:var(--kps-menu-icon-size,18px);min-width:var(--kps-menu-icon-size,18px);font-size:var(--kps-menu-icon-size,18px);line-height:1;text-align:center}


/* KPS 6.4.0 – dauerhaft hervorgehobenes Cockpit */
.kps-nav-left .kps-cockpit-fixed,
.kps-nav-left .kps-cockpit-fixed.is-active,
.kps-nav-left .kps-cockpit-fixed:hover,
.kps-nav-left .kps-cockpit-fixed:focus-visible{
  width:var(--kps-cockpit-width,100%);margin-inline:auto;justify-content:var(--kps-cockpit-alignment,left);font-size:var(--kps-cockpit-font-size,14px)!important;font-weight:var(--kps-cockpit-font-weight,800)!important;border-width:var(--kps-cockpit-border-width,1px)!important;border-style:solid!important;border-radius:var(--kps-cockpit-border-radius,12px)!important;background:linear-gradient(var(--kps-cockpit-gradient-angle,135deg),var(--kps-cockpit-gradient-start,#1677ff) 0%,var(--kps-cockpit-gradient-end,#0b4fc4) 100%)!important;
  color:var(--kps-cockpit-text-color,#fff)!important;
  border-color:var(--kps-cockpit-border-color,#083b91)!important;
  box-shadow:0 9px 22px color-mix(in srgb,var(--kps-cockpit-gradient-end,#0b4fc4) 28%,transparent),inset 0 1px 0 rgba(255,255,255,.2);
}
.kps-nav-left .kps-cockpit-fixed .kps-tab-icon{display:var(--kps-cockpit-icon-display,inline-flex);color:var(--kps-cockpit-symbol-color,var(--kps-cockpit-text-color,#fff))!important}
.kps-nav-left .kps-cockpit-fixed{
  box-sizing:border-box!important;
  flex:0 0 auto!important;
  min-height:var(--kps-menu-item-line-height,44px)!important;
  max-height:var(--kps-menu-item-line-height,44px)!important;
  padding:12px 20px!important;
  transform:none!important;
  translate:none!important;
  scale:1!important;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;
}
.kps-nav-left .kps-cockpit-fixed:hover,
.kps-nav-left .kps-cockpit-fixed:focus-visible,
.kps-nav-left .kps-cockpit-fixed:active{
  transform:none!important;
  translate:none!important;
  scale:1!important;
  min-height:var(--kps-menu-item-line-height,44px)!important;
  max-height:var(--kps-menu-item-line-height,44px)!important;
  padding:12px 20px!important;
}
.kps-nav-left .kps-cockpit-fixed:hover{filter:none;background:linear-gradient(var(--kps-cockpit-gradient-angle,135deg),var(--kps-cockpit-hover-start,#2585ff),var(--kps-cockpit-hover-end,#1359cf))!important;color:var(--kps-cockpit-hover-text-color,#fff)!important}
@media(max-width:980px){
  .kps-app .kps-cockpit-fixed,.kps-nav-left .kps-cockpit-fixed{background:linear-gradient(var(--kps-cockpit-gradient-angle,135deg),var(--kps-cockpit-gradient-start,#1677ff),var(--kps-cockpit-gradient-end,#0b4fc4))!important;color:var(--kps-cockpit-text-color,#fff)!important}
}

/* KPS 6.5.4-secure4-chat – Verkäufer-Chat */
.kps-chat-module{display:flex;flex-direction:column;min-height:620px;padding:0!important;overflow:hidden}
.kps-chat-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 26px;border-bottom:1px solid var(--kps-border);background:var(--kps-surface)}
.kps-chat-header h3{margin:3px 0 5px;font-size:22px}.kps-chat-header p{margin:0;color:var(--kps-muted)}
.kps-chat-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:var(--kps-success)}
.kps-chat-status:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 12%,transparent)}
.kps-chat-status.is-offline{color:var(--kps-danger)}
.kps-chat-list{flex:1;min-height:390px;max-height:62vh;overflow-y:auto;padding:24px;background:color-mix(in srgb,var(--kps-bg) 76%,var(--kps-surface));scroll-behavior:smooth}
.kps-chat-empty{display:grid;place-items:center;min-height:260px;color:var(--kps-muted);text-align:center}
.kps-chat-message{display:flex;align-items:flex-end;gap:11px;margin:0 0 18px;max-width:min(760px,88%)}
.kps-chat-message.is-own{margin-left:auto;flex-direction:row-reverse}
.kps-chat-avatar-wrap{flex:0 0 40px}.kps-chat-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;object-fit:cover;background:var(--kps-header);color:#fff;font-weight:800;box-shadow:0 2px 8px rgba(16,24,40,.14)}
.kps-chat-bubble{min-width:0;padding:12px 15px;border:1px solid var(--kps-border);border-radius:16px 16px 16px 5px;background:var(--kps-surface);box-shadow:0 4px 15px rgba(16,24,40,.05)}
.kps-chat-message.is-own .kps-chat-bubble{border-color:transparent;border-radius:16px 16px 5px 16px;background:var(--kps-accent);color:var(--kps-button-text)}
.kps-chat-meta{display:flex;align-items:baseline;gap:10px;margin-bottom:5px}.kps-chat-meta strong{font-size:13px}.kps-chat-meta time{font-size:10px;color:var(--kps-muted);white-space:nowrap}.kps-chat-message.is-own .kps-chat-meta time{color:color-mix(in srgb,var(--kps-button-text) 72%,transparent)}
.kps-chat-text{font-size:14px;line-height:1.55;overflow-wrap:anywhere;word-break:normal;white-space:normal}
.kps-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:18px 22px;border-top:1px solid var(--kps-border);background:var(--kps-surface)}
.kps-chat-compose textarea{box-sizing:border-box;width:100%;min-height:48px;max-height:130px;resize:vertical;margin:0}.kps-chat-compose button{min-height:48px}.kps-chat-compose .kps-form-message{grid-column:1/-1;margin:0}
@media(max-width:680px){.kps-chat-module{min-height:540px}.kps-chat-header{padding:18px}.kps-chat-status{display:none}.kps-chat-list{padding:16px;max-height:58vh}.kps-chat-message{max-width:94%}.kps-chat-avatar-wrap{flex-basis:34px}.kps-chat-avatar{width:34px;height:34px}.kps-chat-compose{grid-template-columns:1fr;padding:14px}.kps-chat-compose button{width:100%}}

/* KPS 6.5.5 – Chat mit Verkäuferauswahl */
.kps-chat-layout{display:grid;grid-template-columns:250px minmax(0,1fr);flex:1;min-height:0;background:var(--kps-surface)}
.kps-chat-sidebar{min-width:0;padding:16px 12px;border-right:1px solid var(--kps-border);background:color-mix(in srgb,var(--kps-bg) 72%,var(--kps-surface));overflow-y:auto}
.kps-chat-sidebar-title{display:flex;flex-direction:column;gap:2px;padding:3px 10px 12px}.kps-chat-sidebar-title strong{font-size:14px}.kps-chat-sidebar-title small{color:var(--kps-muted);font-size:11px}
.kps-chat-person{display:flex;align-items:center;gap:10px;width:100%;padding:10px;margin:0 0 5px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--kps-text);text-align:left;cursor:pointer;transition:.18s ease}
.kps-chat-person:hover{background:var(--kps-surface);border-color:var(--kps-border)}.kps-chat-person.is-active{background:var(--kps-surface);border-color:color-mix(in srgb,var(--kps-accent) 36%,var(--kps-border));box-shadow:0 3px 12px rgba(16,24,40,.06)}
.kps-chat-person img,.kps-chat-person-icon{flex:0 0 38px;width:38px;height:38px;border-radius:50%;object-fit:cover}.kps-chat-person-icon{display:grid;place-items:center;background:var(--kps-header);color:#fff;font-weight:800}
.kps-chat-person>span:last-child{min-width:0;display:flex;flex-direction:column}.kps-chat-person strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kps-chat-person small{color:var(--kps-muted);font-size:10px;margin-top:2px}
.kps-chat-main{display:flex;min-width:0;min-height:0;flex-direction:column}.kps-chat-view-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 18px;border-bottom:1px solid var(--kps-border);background:var(--kps-surface)}
.kps-chat-view-title>div{display:flex;align-items:baseline;gap:8px}.kps-chat-view-title span{font-size:11px;color:var(--kps-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.kps-chat-view-title strong{font-size:14px}.kps-chat-view-title button{border:0;background:transparent;color:var(--kps-accent);font-size:12px;font-weight:800;cursor:pointer}
.kps-chat-input-wrap{min-width:0}.kps-chat-input-wrap label{display:block;margin:0 0 7px;font-size:12px;font-weight:800}.kps-chat-input-wrap textarea{min-height:92px!important;padding:13px 14px;line-height:1.5}.kps-chat-input-wrap small{display:block;margin-top:6px;color:var(--kps-muted);font-size:10px}
.kps-chat-message[hidden]{display:none!important}
@media(max-width:800px){.kps-chat-layout{grid-template-columns:1fr}.kps-chat-sidebar{display:flex;gap:7px;padding:10px;border-right:0;border-bottom:1px solid var(--kps-border);overflow-x:auto}.kps-chat-sidebar-title{display:none}.kps-chat-person{flex:0 0 auto;width:auto;margin:0;padding:8px 10px}.kps-chat-person img,.kps-chat-person-icon{flex-basis:32px;width:32px;height:32px}.kps-chat-person small{display:none}}
@media(max-width:680px){.kps-chat-compose{grid-template-columns:1fr}.kps-chat-input-wrap textarea{min-height:110px!important}}

/* KPS 6.5.8 – Chat Benachrichtigungen, Tippanzeige und Leeren */
.kps-chat-person-avatar{position:relative;display:grid;flex:0 0 38px}
.kps-chat-person-badge,.kps-chat-menu-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border:none;border-radius:999px;background:var(--kps-danger);color:#fff;font-size:10px;font-weight:900;line-height:1;box-shadow:0 3px 9px color-mix(in srgb,var(--kps-danger) 35%,transparent)}
.kps-chat-person-badge{position:absolute;right:-5px;top:-5px}.kps-chat-person-badge[hidden],.kps-chat-menu-badge[hidden]{display:none!important}
.kps-chat-menu-badge{margin-left:auto}
.kps-chat-clear{padding:7px 10px!important;border:1px solid var(--kps-border)!important;border-radius:9px!important;background:var(--kps-surface)!important;color:var(--kps-danger)!important}
.kps-chat-clear:hover:not(:disabled){border-color:color-mix(in srgb,var(--kps-danger) 45%,var(--kps-border))!important;background:color-mix(in srgb,var(--kps-danger) 7%,var(--kps-surface))!important}
.kps-chat-clear:disabled{opacity:.42;cursor:not-allowed}
.kps-chat-typing{display:inline-flex!important;align-items:center;gap:3px;margin-left:7px;color:var(--kps-muted);text-transform:none!important;letter-spacing:0!important;font-weight:600!important}
.kps-chat-typing[hidden]{display:none!important}.kps-chat-typing i{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;animation:kpsChatDot 1.2s infinite ease-in-out}.kps-chat-typing i:nth-child(2){animation-delay:.15s}.kps-chat-typing i:nth-child(3){animation-delay:.3s}.kps-chat-typing em{margin-left:4px;font-style:normal;font-size:11px}
@keyframes kpsChatDot{0%,60%,100%{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@media(max-width:800px){.kps-chat-person-avatar{flex-basis:32px}.kps-chat-view-title{align-items:flex-start}.kps-chat-view-title>div{flex-wrap:wrap}.kps-chat-typing em{display:none}}


/* KPS 6.6.0 – Chat-Badges einheitlich rot ohne Rand */
.kps-chat-menu-badge,
.kps-chat-person-badge{
  display:inline-grid;
  place-items:center;
  min-width:24px;
  height:24px;
  padding:0 7px;
  border:0;
  border-radius:999px;
  background:#dc2626;
  color:#fff;
  font-size:12px;
  font-weight:900;
  line-height:1;
  box-shadow:0 3px 10px rgba(20,35,60,.14);
}
.kps-chat-menu-badge{margin-left:auto}
.kps-chat-person-badge{padding:0 6px;right:-7px;top:-7px}
.kps-chat-menu-badge[hidden],
.kps-chat-person-badge[hidden]{display:none!important}

/* 6.6.1 – Telefonnummer direkt bei Projekt-Notizen */
.kps-app .kps-project-phone{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:8px;padding:8px 10px;border-radius:10px;background:#fff;color:#0f172a;text-decoration:none;font-size:13px;line-height:1.2;box-shadow:inset 0 0 0 1px #dbe7fb;transition:background .15s ease,box-shadow .15s ease,transform .15s ease}
.kps-app .kps-project-phone span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8f1ff;color:#1d4ed8;font-size:14px;flex:0 0 auto}
.kps-app .kps-project-phone strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kps-app .kps-project-phone:hover{background:#f8fbff;box-shadow:inset 0 0 0 1px #b8cbea,0 5px 14px rgba(30,64,175,.08);transform:translateY(-1px)}
.kps-app .kps-project-note-body>.kps-project-phone{margin-top:0}


/* KPS 6.6.3 – Projekt-Notizen: drei Karten pro Reihe, standardmäßig geschlossen */
.kps-app .kps-project-notes-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:start;
}
.kps-app .kps-project-note-card{min-width:0}
.kps-app .kps-project-note-card.is-collapsed .kps-project-note-body{display:none}
@media(max-width:1100px){
  .kps-app .kps-project-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .kps-app .kps-project-notes-grid{grid-template-columns:minmax(0,1fr)}
}


/* KPS 6.6.4 – Emoji-Schnellauswahl im Direktchat */
.kps-chat-emoji-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 9px;padding:8px 10px;border:1px solid var(--kps-border);border-radius:14px;background:color-mix(in srgb,var(--kps-surface) 88%,var(--kps-bg) 12%)}
.kps-chat-emoji-group{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.kps-chat-emoji-group-smileys{margin-left:auto;padding-left:16px;border-left:1px solid var(--kps-border)}
.kps-chat-emoji-button{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:999px;background:transparent;font-size:20px;line-height:1;cursor:pointer;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}
.kps-chat-emoji-button:hover:not(:disabled),.kps-chat-emoji-button:focus-visible:not(:disabled){transform:translateY(-1px) scale(1.08);background:var(--kps-surface);box-shadow:0 4px 12px rgba(20,35,60,.12);outline:none}
.kps-chat-emoji-button:active:not(:disabled){transform:scale(.95)}.kps-chat-emoji-button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:760px){.kps-chat-emoji-bar{align-items:flex-start;overflow-x:auto;scrollbar-width:thin}.kps-chat-emoji-group{flex-wrap:nowrap}.kps-chat-emoji-group-smileys{padding-left:12px}.kps-chat-emoji-button{flex:0 0 34px}}

/* KPS 6.6.5 – Kompaktes, vertikal skalierbares Chatfenster am Desktop */
@media(min-width:801px){
  .kps-chat-module{
    height:540px;
    min-height:420px;
    max-height:82vh;
    resize:vertical;
    overflow:hidden;
  }
  .kps-chat-layout{min-height:0;overflow:hidden}
  .kps-chat-sidebar,.kps-chat-main{min-height:0}
  .kps-chat-list{
    min-height:0;
    max-height:none;
  }
  .kps-chat-empty{min-height:140px}
}


/* KPS 6.6.6 – zuverlässige Desktop-Höhensteuerung mit eigenem Ziehgriff */
@media(min-width:801px){
  .kps-chat-module{
    position:relative;
    height:680px;
    min-height:560px;
    max-height:none;
    resize:none;
    overflow:hidden;
  }
  .kps-chat-layout{
    flex:1 1 auto;
    min-height:0;
    overflow:hidden;
  }
  .kps-chat-main,
  .kps-chat-sidebar{min-height:0}
  .kps-chat-main{overflow:hidden}
  .kps-chat-list{
    flex:1 1 auto;
    min-height:0;
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .kps-chat-compose{flex:0 0 auto}
  .kps-chat-resize-handle{
    position:absolute;
    left:250px;
    right:0;
    bottom:0;
    z-index:12;
    display:grid;
    place-items:end center;
    height:18px;
    padding:0 0 4px;
    border:0;
    background:linear-gradient(to bottom,transparent,rgba(15,23,42,.05));
    cursor:ns-resize;
    touch-action:none;
  }
  .kps-chat-resize-handle span{
    width:54px;
    height:4px;
    border-radius:999px;
    background:color-mix(in srgb,var(--kps-muted) 50%,transparent);
    transition:background-color .15s ease,transform .15s ease;
  }
  .kps-chat-resize-handle:hover span,
  .kps-chat-resize-handle:focus-visible span{
    background:var(--kps-accent);
    transform:scaleX(1.12);
  }
  .kps-chat-module.is-resizing,
  .kps-chat-module.is-resizing *{user-select:none}
  .kps-chat-module.is-resizing .kps-chat-resize-handle span{background:var(--kps-accent)}
}
@media(max-width:800px){.kps-chat-resize-handle{display:none}}

/* KPS 6.6.7 – offene, farbige Cockpit-Notizzettel */
.kps-note-color-picker{margin:0;padding:0;border:0}.kps-note-color-picker legend{margin-bottom:9px;font-size:13px;font-weight:850;color:var(--kps-text)}
.kps-note-color-picker{display:flex;flex-wrap:wrap;gap:9px}.kps-note-color-picker label{cursor:pointer}.kps-note-color-picker input{position:absolute;opacity:0;pointer-events:none}
.kps-note-color-picker span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:2px solid transparent;border-radius:999px;font-size:12px;font-weight:850;box-shadow:0 2px 8px rgba(20,35,60,.08)}
.kps-note-color-picker span:before{content:"";width:14px;height:14px;border-radius:50%;background:var(--swatch)}
.kps-note-color-picker .is-yellow{--swatch:#f6cf45;background:#fff8d8}.kps-note-color-picker .is-red{--swatch:#ef6b6b;background:#ffe5e5}.kps-note-color-picker .is-blue{--swatch:#66a7ea;background:#e6f2ff}.kps-note-color-picker .is-green{--swatch:#69bb7b;background:#e8f7eb}.kps-note-color-picker .is-pink{--swatch:#e886b4;background:#ffe8f3}
.kps-note-color-picker input:checked+span{border-color:var(--kps-accent);box-shadow:0 0 0 3px rgba(31,94,255,.12)}
@media(min-width:1024px){
.kps-sticky-note{padding:28px 20px 20px;min-height:170px;color:#403b25}
.kps-sticky-note.is-yellow{background:linear-gradient(145deg,#fff4a9,#ffe978)}
.kps-sticky-note.is-red{background:linear-gradient(145deg,#ffd5d5,#ff9f9f);border-color:rgba(130,35,35,.18)}
.kps-sticky-note.is-blue{background:linear-gradient(145deg,#d9eeff,#9fd0ff);border-color:rgba(34,84,130,.18)}
.kps-sticky-note.is-green{background:linear-gradient(145deg,#ddf6df,#a9dfa9);border-color:rgba(43,105,50,.18)}
.kps-sticky-note.is-pink{background:linear-gradient(145deg,#ffe0ef,#f8add0);border-color:rgba(127,48,87,.18)}
.kps-sticky-note:hover,.kps-sticky-note:focus-within{z-index:3;transform:translateY(-3px) rotate(0);box-shadow:0 16px 30px rgba(65,55,20,.22),inset 0 1px rgba(255,255,255,.85)}
.kps-sticky-note-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:1px dashed rgba(65,55,20,.24)}
.kps-sticky-note-head strong{font-size:15px;font-weight:900}.kps-sticky-note-head time{font-size:11px;font-weight:800;opacity:.72;white-space:nowrap}
.kps-sticky-note>p{margin:14px 0 0;font-size:14px;line-height:1.58;white-space:normal;overflow-wrap:anywhere}
.kps-sticky-note-x{position:absolute;z-index:5;top:7px;right:8px;display:grid;place-items:center;width:27px;height:27px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.64);color:#493f2a;font:900 20px/1 Arial;cursor:pointer;transition:.18s ease}
.kps-sticky-note-x:hover{background:#fff;color:#b42318;transform:scale(1.08)}
}

/* KPS 6.6.8 – gespeicherte Farben auch unter Verlauf > Letzte Notizen */
.kps-note-item.is-yellow{--kps-history-note-bg:linear-gradient(145deg,#fff9b7 0%,#fff3a0 72%,#f6df69 100%);--kps-history-note-border:#e0c75b;--kps-history-note-ribbon:#d7a600;--kps-history-note-ribbon-dark:#8d6c00;--kps-history-note-fold:#d4b83e;--kps-history-note-text:#322b0c;--kps-history-note-meta:#78651d}
.kps-note-item.is-red{--kps-history-note-bg:linear-gradient(145deg,#ffe1e1 0%,#ffc2c2 72%,#f18e8e 100%);--kps-history-note-border:#e49a9a;--kps-history-note-ribbon:#d94c4c;--kps-history-note-ribbon-dark:#963131;--kps-history-note-fold:#c86f6f;--kps-history-note-text:#522020;--kps-history-note-meta:#854343}
.kps-note-item.is-blue{--kps-history-note-bg:linear-gradient(145deg,#e5f3ff 0%,#c4e3ff 72%,#8fc7f5 100%);--kps-history-note-border:#94c5eb;--kps-history-note-ribbon:#428dcc;--kps-history-note-ribbon-dark:#2c6392;--kps-history-note-fold:#6aa8d7;--kps-history-note-text:#173b5c;--kps-history-note-meta:#3c6586}
.kps-note-item.is-green{--kps-history-note-bg:linear-gradient(145deg,#e8f8e9 0%,#cceecd 72%,#9bd59f 100%);--kps-history-note-border:#9aca9e;--kps-history-note-ribbon:#4caa5f;--kps-history-note-ribbon-dark:#347640;--kps-history-note-fold:#75b87e;--kps-history-note-text:#214d29;--kps-history-note-meta:#477b4e}
.kps-note-item.is-pink{--kps-history-note-bg:linear-gradient(145deg,#ffeaf4 0%,#ffd0e6 72%,#f1a4c8 100%);--kps-history-note-border:#e7a5c4;--kps-history-note-ribbon:#d65f96;--kps-history-note-ribbon-dark:#963e67;--kps-history-note-fold:#cc7ca2;--kps-history-note-text:#58213b;--kps-history-note-meta:#874966}
.kps-note-item[class*="is-"]{background:var(--kps-history-note-bg);border-color:var(--kps-history-note-border)}
.kps-note-item[class*="is-"] .kps-note-ribbon{background:var(--kps-history-note-ribbon)}
.kps-note-item[class*="is-"] .kps-note-ribbon:before{border-top-color:var(--kps-history-note-ribbon-dark)}
.kps-note-item[class*="is-"]:after{background:linear-gradient(135deg,rgba(255,255,255,.15) 0 49%,var(--kps-history-note-fold) 50% 100%)}
.kps-note-item[class*="is-"] time{color:var(--kps-history-note-meta)}
.kps-note-item[class*="is-"] p{color:var(--kps-history-note-text)}
.kps-note-item[class*="is-"] .kps-note-delete{color:var(--kps-history-note-text)}


/* KPS 6.6.9 – Farbkorrektur ausschließlich für Verlauf > Letzte Notizen */
.kps-note-history .kps-note-item.is-yellow{
  background:linear-gradient(145deg,#fff9b7 0%,#fff3a0 72%,#f6df69 100%)!important;
  border-color:#e0c75b!important;color:#322b0c!important;
}
.kps-note-history .kps-note-item.is-red{
  background:linear-gradient(145deg,#ffe1e1 0%,#ffc2c2 72%,#f18e8e 100%)!important;
  border-color:#e49a9a!important;color:#522020!important;
}
.kps-note-history .kps-note-item.is-blue{
  background:linear-gradient(145deg,#e5f3ff 0%,#c4e3ff 72%,#8fc7f5 100%)!important;
  border-color:#94c5eb!important;color:#173b5c!important;
}
.kps-note-history .kps-note-item.is-green{
  background:linear-gradient(145deg,#e8f8e9 0%,#cceecd 72%,#9bd59f 100%)!important;
  border-color:#9aca9e!important;color:#214d29!important;
}
.kps-note-history .kps-note-item.is-pink{
  background:linear-gradient(145deg,#ffeaf4 0%,#ffd0e6 72%,#f1a4c8 100%)!important;
  border-color:#e7a5c4!important;color:#58213b!important;
}
.kps-note-history .kps-note-item.is-yellow .kps-note-ribbon{background:#d7a600!important}
.kps-note-history .kps-note-item.is-red .kps-note-ribbon{background:#d94c4c!important}
.kps-note-history .kps-note-item.is-blue .kps-note-ribbon{background:#428dcc!important}
.kps-note-history .kps-note-item.is-green .kps-note-ribbon{background:#4caa5f!important}
.kps-note-history .kps-note-item.is-pink .kps-note-ribbon{background:#d65f96!important}
.kps-note-history .kps-note-item.is-yellow time,.kps-note-history .kps-note-item.is-yellow p{color:#322b0c!important}
.kps-note-history .kps-note-item.is-red time,.kps-note-history .kps-note-item.is-red p{color:#522020!important}
.kps-note-history .kps-note-item.is-blue time,.kps-note-history .kps-note-item.is-blue p{color:#173b5c!important}
.kps-note-history .kps-note-item.is-green time,.kps-note-history .kps-note-item.is-green p{color:#214d29!important}
.kps-note-history .kps-note-item.is-pink time,.kps-note-history .kps-note-item.is-pink p{color:#58213b!important}

/* 6.7.4 – Teamkalender mit Verkäuferfarben */
.kps-seller-colored {
  background: var(--kps-seller-color) !important;
  border-color: color-mix(in srgb, var(--kps-seller-color) 72%, #000 28%) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--kps-seller-color) 24%, transparent) !important;
}
.kps-seller-colored strong,
.kps-seller-colored span,
.kps-seller-colored small,
.kps-seller-colored time,
.kps-seller-colored p,
.kps-seller-colored .kps-appointment-notes { color: inherit !important; }
.kps-seller-colored.is-light-color { color: #2f2a16 !important; }
.kps-seller-colored .kps-status-pill,
.kps-seller-colored .kps-secondary-button,
.kps-seller-colored select,
.kps-seller-colored .kps-colleague-appointment-label {
  background: rgba(255,255,255,.9) !important;
  color: #172033 !important;
  border-color: rgba(255,255,255,.7) !important;
}
.kps-seller-colored.is-light-color .kps-status-pill,
.kps-seller-colored.is-light-color .kps-secondary-button,
.kps-seller-colored.is-light-color select,
.kps-seller-colored.is-light-color .kps-colleague-appointment-label { background: rgba(255,255,255,.72) !important; }
.kps-seller-owner { font-weight: 750; opacity: .95; }
.kps-colleague-appointment-label { align-self: center; border: 1px solid; border-radius: 12px; padding: 8px 12px; display: grid; gap: 2px; min-width: 112px; }
.kps-colleague-appointment-label span { color: #667085 !important; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.kps-colleague-appointment-label strong { color: #172033 !important; font-size: 12px; }
.kps-colleague-readonly { padding: 5px 9px; border-radius: 999px; background: rgba(255,255,255,.88); color: #172033 !important; font-weight: 800; }
.kps-week-appointment.kps-seller-colored,
.kps-month-appointment.kps-seller-colored { text-align: left; }
.kps-week-appointment.kps-seller-colored:hover,
.kps-month-appointment.kps-seller-colored:hover { filter: brightness(1.04); transform: translateY(-1px); }

/* 6.7.5 – Heute-Farben mit 50 Prozent Deckkraft */
.kps-team-today-list .kps-today-transparent {
  background: color-mix(in srgb, var(--kps-seller-color) 50%, #fff 50%) !important;
  color: #172033 !important;
  border-color: color-mix(in srgb, var(--kps-seller-color) 62%, #172033 12%) !important;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--kps-seller-color) 14%, transparent) !important;
}
.kps-team-today-list .kps-today-transparent .kps-status-pill,
.kps-team-today-list .kps-today-transparent .kps-secondary-button,
.kps-team-today-list .kps-today-transparent select,
.kps-team-today-list .kps-today-transparent .kps-colleague-appointment-label { background: rgba(255,255,255,.72) !important; }
.kps-vacation-module .kps-booking-form { margin-bottom: 22px; }


/* 6.7.8 – Persönliches Verkäuferkürzel und Google-Farbfeld */
.kps-profile-color-field{display:inline-flex!important;align-items:center;gap:10px}.kps-profile-color-field i{display:inline-block;width:34px;height:22px;border-radius:6px;border:1px solid rgba(15,23,42,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}


/* KPS 6.8.0 – Verkäuferfarbe für Profil und nächsten Termin */
.kps-seller-color-card{background:color-mix(in srgb,var(--kps-seller-card-color) 50%,transparent)!important;}
.kps-profile-card.kps-seller-color-card{border-color:color-mix(in srgb,var(--kps-seller-card-color) 65%,var(--kps-border))!important;}
.kps-next-appointment-card.kps-seller-color-card{border-color:color-mix(in srgb,var(--kps-seller-card-color) 65%,var(--kps-border))!important;}

/* 6.8.1 – persönliche Terminoptionen */
.kps-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:12px 0 24px}.kps-template-choice{display:flex;gap:10px;padding:15px;border:1px solid var(--kps-border);border-radius:12px;background:var(--kps-surface);cursor:pointer}.kps-template-choice:has(input:checked){outline:2px solid var(--kps-accent);background:color-mix(in srgb,var(--kps-accent) 8%,white)}.kps-template-choice input{margin-top:3px}.kps-template-choice span{display:grid;gap:5px}.kps-template-choice small{color:var(--kps-muted);line-height:1.45}.kps-option-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0 22px}.kps-option-checkboxes label{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--kps-border);border-radius:10px;background:var(--kps-surface)}.kps-options-preview{padding:18px;border:1px dashed var(--kps-border);border-radius:14px;background:color-mix(in srgb,var(--kps-bg) 65%,white);margin-bottom:18px}.kps-options-preview>span{display:block;font-size:12px;font-weight:800;text-transform:uppercase;color:var(--kps-muted);margin-bottom:10px}.kps-personal-booking{min-width:0;width:100%}.kps-personal-template-one{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(180px,1.6fr);gap:12px;align-items:start}.kps-personal-template-one>div,.kps-personal-stack,.kps-personal-line{display:flex;flex-wrap:wrap;gap:5px 10px;align-items:center}.kps-personal-stack{display:grid;gap:5px}.kps-personal-stack>div{display:flex;flex-wrap:wrap;gap:5px 10px}.kps-personal-field{font-size:.92em}.kps-personal-customer{font-size:1em}.kps-personal-field.is-phone{color:inherit;text-decoration:underline;text-underline-offset:2px}.kps-personal-field.is-notes{display:block;width:100%;font-size:.88em;opacity:.82}.kps-week-appointment .kps-personal-booking,.kps-month-appointment .kps-personal-booking{font-size:.9em}.kps-month-appointment .kps-personal-field.is-phone,.kps-month-appointment .kps-personal-field.is-address,.kps-month-appointment .kps-personal-field.is-notes{display:none}.kps-next-appointment-card .kps-personal-booking{margin-top:4px}.kps-next-appointment-card .kps-personal-customer{font-size:1.08rem}@media(max-width:700px){.kps-personal-template-one{grid-template-columns:1fr}.kps-template-grid{grid-template-columns:1fr}}

/* 6.8.2 Live-Vorschau */
.kps-options-preview [data-kps-options-preview-content]{min-height:62px;padding:13px 14px;border-radius:11px;background:var(--kps-surface);box-shadow:0 6px 18px rgba(15,23,42,.06)}.kps-preview-hint{display:block;margin-top:10px;color:var(--kps-muted);line-height:1.4}.kps-preview-empty{color:var(--kps-muted);font-style:italic}

/* 6.8.3 – Cockpit-Termin konsequent linksbündig */
.kps-next-appointment-card,.kps-next-appointment-card *{text-align:left}.kps-next-appointment-card .kps-personal-booking,.kps-next-appointment-card .kps-personal-template-one,.kps-next-appointment-card .kps-personal-line,.kps-next-appointment-card .kps-personal-stack{justify-items:start;justify-content:flex-start;align-items:flex-start}

/* 6.8.4 – persönliche Farben und Terminverwaltung */
.kps-option-colors{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;margin:12px 0 24px}
.kps-option-colors label{display:grid;gap:8px;padding:12px;border:1px solid var(--kps-border);border-radius:10px;background:var(--kps-surface);font-weight:700}
.kps-option-colors input[type=color]{width:100%;height:44px;padding:3px;border:1px solid var(--kps-border);border-radius:8px;background:#fff;cursor:pointer}
.kps-personal-booking{padding:12px 14px;border:1px solid color-mix(in srgb,var(--kps-personal-accent) 55%,transparent);border-left:5px solid var(--kps-personal-accent);border-radius:11px;background:color-mix(in srgb,var(--kps-personal-bg) 78%,white 22%);color:var(--kps-personal-text);text-align:left}
.kps-personal-booking .kps-personal-field,.kps-personal-booking .kps-personal-customer,.kps-personal-booking strong,.kps-personal-booking span,.kps-personal-booking a{color:var(--kps-personal-text)!important;text-align:left}
.kps-personal-booking .is-time,.kps-personal-booking .is-date{font-weight:800;color:var(--kps-personal-accent)!important}
.kps-options-preview [data-kps-options-preview-content]{background:color-mix(in srgb,var(--kps-personal-bg,#fff) 35%,var(--kps-surface));}
.kps-all-appointments-list .kps-appointment-card{grid-template-columns:minmax(0,1fr) auto}
.kps-all-appointments-list .kps-personal-list-main{display:block;overflow:visible;white-space:normal}
.kps-all-appointments-list .kps-personal-list-main .kps-personal-booking{width:100%}
@media(max-width:700px){.kps-option-colors{grid-template-columns:1fr}.kps-all-appointments-list .kps-appointment-card{grid-template-columns:1fr}}

/* 6.8.5 – Geltungsbereich und Standarddarstellung */
.kps-option-mode-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:12px;margin:12px 0 24px}
.kps-option-mode-checkboxes label{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--kps-border);border-radius:12px;background:var(--kps-surface);cursor:pointer}
.kps-option-mode-checkboxes input{margin-top:3px}.kps-option-mode-checkboxes span{display:grid;gap:4px}.kps-option-mode-checkboxes small{color:var(--kps-muted);line-height:1.4}
[data-kps-color-options].is-disabled{opacity:.48;filter:grayscale(.25)}
[data-kps-color-options].is-disabled input[type=color]{cursor:not-allowed}
.kps-personal-booking.use-standard-colors{--kps-personal-bg:var(--kps-surface)!important;--kps-personal-text:var(--kps-text)!important;--kps-personal-accent:var(--kps-accent)!important}
.kps-standard-booking{display:grid;gap:4px;min-width:0;text-align:left}.kps-standard-booking.context-compact{gap:2px}.kps-standard-booking.context-compact time{font-weight:800}.kps-standard-booking.context-cockpit strong,.kps-standard-booking.context-cockpit small{display:block;text-align:left}
@media(max-width:700px){.kps-option-mode-checkboxes{grid-template-columns:1fr}}


/* 6.8.7 – flache Terminlisten und einheitliche Cockpit-Karte */
.kps-all-appointments-list .kps-personal-list-main .kps-personal-booking{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
}
.kps-all-appointments-list .kps-personal-list-main .kps-personal-booking *,
.kps-all-appointments-list .kps-personal-list-main .kps-personal-booking .is-time,
.kps-all-appointments-list .kps-personal-list-main .kps-personal-booking .is-date{
  color:inherit!important;
}
.kps-next-appointment-card.kps-seller-color-card{
  background:var(--kps-surface)!important;
  border-color:var(--kps-border)!important;
}
.kps-next-appointment-card .kps-personal-booking{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* 6.8.8 – modernes responsives Layout für alle Terminkarten */
.kps-appointment-stack{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:hidden;
}
.kps-appointment-card{
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:18px 20px;
  border:1px solid color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 42%,var(--kps-border));
  border-left:6px solid var(--kps-seller-color,var(--kps-accent));
  border-radius:16px;
  background:color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 13%,var(--kps-surface) 87%);
  box-shadow:0 8px 24px rgba(15,23,42,.07);
  overflow:hidden;
}
.kps-appointment-card:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(15,23,42,.10);
}
.kps-appointment-card .kps-appointment-time,
.kps-appointment-card .kps-appointment-main,
.kps-appointment-card .kps-personal-list-main,
.kps-appointment-card .kps-personal-booking,
.kps-appointment-card .kps-standard-booking,
.kps-appointment-card .kps-personal-template-one,
.kps-appointment-card .kps-personal-line,
.kps-appointment-card .kps-personal-stack,
.kps-appointment-card .kps-personal-stack>div{
  min-width:0!important;
  max-width:100%;
  overflow:visible!important;
  white-space:normal!important;
}
.kps-appointment-card .kps-appointment-main,
.kps-appointment-card .kps-personal-list-main{
  padding:0!important;
}
.kps-appointment-card .kps-personal-template-one{
  grid-template-columns:minmax(120px,.7fr) minmax(0,1.6fr);
}
.kps-appointment-card .kps-personal-line,
.kps-appointment-card .kps-personal-stack>div,
.kps-appointment-card .kps-standard-booking{
  flex-wrap:wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.kps-appointment-card .kps-personal-customer,
.kps-appointment-card .kps-personal-field,
.kps-appointment-card .kps-seller-owner,
.kps-appointment-card .kps-appointment-notes,
.kps-appointment-card strong,
.kps-appointment-card span,
.kps-appointment-card small,
.kps-appointment-card a{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.kps-appointment-actions{
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}
.kps-appointment-action-buttons{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.kps-appointment-actions button,
.kps-booking-status-form button,
.kps-booking-status-form select{
  max-width:100%;
}
.kps-booking-status-form{
  min-width:0!important;
  margin-left:0!important;
  display:grid;
  grid-template-columns:minmax(150px,1fr) auto;
  gap:10px;
  align-items:center;
}
.kps-booking-status-form .kps-form-message{
  grid-column:1/-1;
}
.kps-appointment-time{
  min-width:0!important;
  padding-right:0!important;
}
.kps-team-today-list .kps-appointment-card{
  grid-template-columns:110px minmax(0,1fr) minmax(250px,320px);
}
.kps-team-today-list .kps-appointment-time{
  align-self:start;
  padding-top:2px;
}
.kps-all-appointments-list .kps-appointment-card{
  grid-template-columns:minmax(0,1fr) auto!important;
}
.kps-all-appointments-list .kps-personal-list-main{
  width:100%;
}

@media(max-width:900px){
  .kps-team-today-list .kps-appointment-card{
    grid-template-columns:90px minmax(0,1fr);
  }
  .kps-team-today-list .kps-booking-status-form{
    grid-column:1/-1;
  }
}

@media(max-width:700px){
  .kps-appointment-stack{
    gap:12px;
  }
  .kps-appointment-card,
  .kps-all-appointments-list .kps-appointment-card,
  .kps-team-today-list .kps-appointment-card{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px;
    align-items:stretch;
    padding:16px;
    border-left-width:5px;
    border-radius:14px;
    overflow:hidden!important;
  }
  .kps-appointment-card:hover{
    transform:none;
  }
  .kps-appointment-card .kps-personal-template-one{
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px;
  }
  .kps-appointment-card .kps-personal-line,
  .kps-appointment-card .kps-personal-stack,
  .kps-appointment-card .kps-personal-stack>div{
    width:100%;
    min-width:0!important;
    gap:6px 9px;
  }
  .kps-appointment-time{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap;
    align-items:baseline!important;
    gap:6px 10px!important;
    width:100%;
  }
  .kps-appointment-time strong{
    font-size:1rem;
  }
  .kps-appointment-actions{
    width:100%;
    justify-content:flex-start;
    padding-top:12px;
    border-top:1px solid rgba(15,23,42,.10);
  }
  .kps-appointment-action-buttons{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .kps-appointment-action-buttons button{
    width:100%;
    min-width:0;
  }
  .kps-booking-status-form{
    width:100%;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .kps-booking-status-form select,
  .kps-booking-status-form .kps-secondary-button,
  .kps-list-delete-button{
    width:100%;
  }
  .kps-status-pill{
    max-width:100%;
  }
}

@media(max-width:420px){
  .kps-appointment-card{
    padding:14px;
    border-radius:12px;
  }
  .kps-appointment-action-buttons{
    grid-template-columns:minmax(0,1fr);
  }
}


/* 6.8.9 – einheitliches Profi-Layout mit Google-Verkäuferfarben */
.kps-option-colors,[data-kps-color-options]{display:none!important}
.kps-appointment-layout{min-width:0;width:100%;display:grid;gap:8px;color:inherit;text-align:left}
.kps-appointment-headline{font-weight:800;line-height:1.35;overflow-wrap:anywhere;word-break:normal}
.kps-appointment-details{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 0;min-width:0;line-height:1.5;color:inherit}
.kps-appointment-details>span{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}
.kps-appointment-details>span+span::before{content:" | ";padding:0 8px;color:color-mix(in srgb,currentColor 55%,transparent);font-weight:500}
.kps-appointment-card{background:color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 16%,var(--kps-surface) 84%)!important;border-left-color:var(--kps-seller-color,var(--kps-accent))!important}
.kps-appointment-card .kps-personal-booking,.kps-appointment-card .kps-standard-booking{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.kps-options-preview [data-kps-options-preview-content]{padding:16px;border-left:6px solid var(--kps-booking-color,#039be5);border-radius:12px;background:color-mix(in srgb,var(--kps-booking-color,#039be5) 16%,var(--kps-surface) 84%)}
.kps-next-appointment-card.kps-seller-color-card{position:relative;background:var(--kps-surface)!important;border-color:var(--kps-border)!important;border-left:6px solid var(--kps-seller-card-color)!important}
.kps-next-appointment-card .kps-appointment-layout{margin-top:6px}
.kps-next-appointment-card .kps-appointment-details>span+span::before{padding:0 6px}
@media(max-width:700px){
  .kps-appointment-card{padding:15px!important}
  .kps-appointment-details{font-size:.94rem}
  .kps-appointment-details>span+span::before{padding:0 6px}
}
\n\n/* 6.9.0 – ruhige, weiße Terminkarten mit Google-Farbe nur als Akzent */
.kps-app .kps-appointment-card,
.kps-app .kps-appointment-card.kps-seller-colored,
.kps-app .kps-team-today-list .kps-appointment-card.kps-today-transparent{
  background:#fff!important;
  color:#111827!important;
  border-color:#dfe4ea!important;
  border-left:6px solid var(--kps-seller-color,var(--kps-accent))!important;
  box-shadow:none!important;
}
.kps-app .kps-appointment-card *,
.kps-app .kps-appointment-card.kps-seller-colored *{
  color:#111827!important;
}
.kps-app .kps-appointment-card .kps-status-pill,
.kps-app .kps-appointment-card .kps-secondary-button,
.kps-app .kps-appointment-card select,
.kps-app .kps-appointment-card .kps-colleague-appointment-label{
  background:#fff!important;
  color:#111827!important;
  border-color:#d6dce4!important;
}
.kps-app .kps-appointment-headline{
  color:#111827!important;
  font-weight:800!important;
}
.kps-app .kps-appointment-details{
  color:#111827!important;
}
.kps-app .kps-appointment-details>span+span::before{
  color:#7b8491!important;
}
.kps-options-preview [data-kps-options-preview-content]{
  background:#fff!important;
  color:#111827!important;
  border:1px solid #dfe4ea!important;
  border-left:6px solid var(--kps-booking-color,#039be5)!important;
  box-shadow:none!important;
}
.kps-next-appointment-card.kps-seller-color-card{
  background:var(--kps-surface)!important;
  color:var(--kps-text)!important;
  border-color:var(--kps-border)!important;
  border-left:6px solid var(--kps-seller-card-color)!important;
  box-shadow:var(--kps-card-shadow,0 8px 24px rgba(16,24,40,.06))!important;
}


/* 6.9.1 – festes modernes Drei-Zeilen-Layout */
.kps-appointment-layout{display:grid;gap:7px;min-width:0;width:100%;text-align:left;color:#111827}
.kps-appointment-line{display:flex;flex-wrap:wrap;align-items:baseline;min-width:0;line-height:1.45;color:#111827}
.kps-appointment-line>span{min-width:0;overflow-wrap:anywhere;color:#111827!important}
.kps-appointment-line>span+span::before{content:" | ";display:inline-block;padding:0 8px;color:rgba(17,24,39,.55);font-weight:500}
.kps-appointment-seller-line{font-weight:800;font-size:1rem}
.kps-appointment-seller-line>span+span::before{content:" - ";padding:0 5px;color:#111827;font-weight:800}
.kps-appointment-date-line{font-size:.94rem;font-weight:700}
.kps-appointment-info-line{font-size:.94rem;font-weight:500}
.kps-appointment-info-line>span:first-child{font-weight:800}

/* Übersicht Alle Termine: 30 % Google-Verkäuferfarbe, ohne Farbschatten */
.kps-app .kps-all-appointments-list .kps-appointment-card.kps-seller-colored{
  background:color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 30%,#fff 70%)!important;
  color:#111827!important;
  border:1px solid color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 42%,#dfe4ea 58%)!important;
  border-left:6px solid var(--kps-seller-color,var(--kps-accent))!important;
  box-shadow:none!important;
}
.kps-all-appointments-list .kps-appointment-card{grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important}
.kps-all-appointments-list .kps-personal-list-main{min-width:0!important;width:100%!important}

/* Cockpit-Karte: gleicher 30-Prozent-Hintergrund */
.kps-next-appointment-card.kps-seller-color-card{
  background:color-mix(in srgb,var(--kps-seller-card-color,var(--kps-accent)) 30%,#fff 70%)!important;
  color:#111827!important;
  border:1px solid color-mix(in srgb,var(--kps-seller-card-color,var(--kps-accent)) 42%,var(--kps-border) 58%)!important;
  border-left:6px solid var(--kps-seller-card-color,var(--kps-accent))!important;
  box-shadow:none!important;
}
.kps-next-appointment-card.kps-seller-color-card *{color:#111827!important}

/* Vorschau in Verkäuferfarbe */
.kps-options-preview [data-kps-options-preview-content]{
  background:color-mix(in srgb,var(--kps-booking-color,#039be5) 30%,#fff 70%)!important;
  color:#111827!important;
  border:1px solid color-mix(in srgb,var(--kps-booking-color,#039be5) 42%,#dfe4ea 58%)!important;
  border-left:6px solid var(--kps-booking-color,#039be5)!important;
  box-shadow:none!important;
}

@media(max-width:760px){
  .kps-all-appointments-list .kps-appointment-card{grid-template-columns:1fr!important;gap:14px!important}
  .kps-all-appointments-list .kps-appointment-actions{width:100%;justify-content:flex-start!important}
  .kps-appointment-line>span+span::before{padding:0 5px}
}

/* 6.9.2 – klare Typografie und moderner Termin-Kalender */
.kps-appointment-seller-line{font-weight:800!important}
.kps-appointment-date-line,
.kps-appointment-info-line,
.kps-appointment-info-line>span:first-child{font-weight:400!important}
.kps-next-appointment-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.kps-appointment-edit-button{appearance:none;border:1px solid rgba(17,24,39,.16);background:rgba(255,255,255,.78);color:#111827;border-radius:9px;padding:7px 11px;font:inherit;font-size:12px;font-weight:700;line-height:1;cursor:pointer;white-space:nowrap}
.kps-appointment-edit-button:hover{background:#fff;border-color:rgba(17,24,39,.28)}

.kps-calendar-module{overflow:hidden}
.kps-calendar-toolbar{background:#f8fafc;border-color:#e3e8ef;box-shadow:none}
.kps-calendar-view{min-width:0}
.kps-schedule-list{display:grid;gap:12px}
.kps-schedule-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:15px 16px;border:1px solid color-mix(in srgb,var(--kps-seller-color) 38%,#dfe4ea);border-left:6px solid var(--kps-seller-color);border-radius:14px;background:color-mix(in srgb,var(--kps-seller-color) 30%,#fff);box-shadow:none;min-width:0}
.kps-schedule-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.kps-schedule-item .kps-appointment-seller-line{font-weight:800!important}
.kps-schedule-item .kps-appointment-date-line,.kps-schedule-item .kps-appointment-info-line{font-weight:400!important}

.kps-week-grid{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}
.kps-week-day{min-width:0;border:1px solid #e3e8ef;border-radius:14px;background:#fff;overflow:hidden}
.kps-week-day>header{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;background:#f8fafc;border-bottom:1px solid #e8edf3}
.kps-week-day.is-today{border-color:var(--kps-accent)}
.kps-week-day.is-today>header{background:color-mix(in srgb,var(--kps-accent) 10%,#fff)}
.kps-week-day-list{display:grid;gap:8px;padding:9px}
.kps-week-appointment{display:block;width:100%;min-width:0;text-align:left;padding:10px;border:1px solid color-mix(in srgb,var(--kps-seller-color) 38%,#dfe4ea);border-left:5px solid var(--kps-seller-color);border-radius:10px;background:color-mix(in srgb,var(--kps-seller-color) 24%,#fff);color:#111827;box-shadow:none;cursor:pointer}
.kps-week-appointment .kps-appointment-layout{gap:4px}
.kps-week-appointment .kps-appointment-line{font-size:12px;line-height:1.32}
.kps-week-appointment .kps-appointment-seller-line{font-weight:800!important}
.kps-week-appointment .kps-appointment-date-line,.kps-week-appointment .kps-appointment-info-line{font-weight:400!important}
.kps-week-appointment .kps-appointment-info-line{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.kps-month-grid{gap:6px}
.kps-month-cell{min-width:0;min-height:118px;padding:6px;border:1px solid #e3e8ef;border-radius:10px;background:#fff;overflow:hidden}
.kps-month-cell>header{font-size:12px;font-weight:800;color:#475467;margin-bottom:5px}
.kps-month-cell.is-today{outline:2px solid color-mix(in srgb,var(--kps-accent) 62%,transparent);outline-offset:-2px}
.kps-month-cell>div{display:grid;gap:4px}
.kps-month-appointment{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center;gap:5px;width:100%;min-width:0;padding:5px 6px;border:0;border-left:4px solid var(--kps-seller-color);border-radius:6px;background:color-mix(in srgb,var(--kps-seller-color) 24%,#fff);color:#111827;text-align:left;box-shadow:none;cursor:pointer;overflow:hidden}
.kps-month-seller{font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}
.kps-month-title-text{min-width:0;font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:900px){
  .kps-schedule-item{grid-template-columns:1fr}
  .kps-schedule-actions{justify-content:flex-start}
  .kps-week-grid{grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:visible}
}
@media(max-width:620px){
  .kps-week-grid{grid-template-columns:1fr}
  .kps-week-day-list{padding:8px}
  .kps-month-weekdays,.kps-month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
  .kps-month-cell{min-height:82px;padding:3px;border-radius:6px}
  .kps-month-cell>header{font-size:10px;margin-bottom:3px}
  .kps-month-appointment{grid-template-columns:1fr!important;gap:1px;padding:3px 4px;border-left-width:3px}
  .kps-month-seller,.kps-month-title-text{font-size:8px}
  .kps-month-title-text{max-width:100%}
  .kps-next-appointment-head{align-items:flex-start}
}

/* 6.9.4 – calendar interaction */
.kps-schedule-item[data-kps-edit-booking]{cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.kps-schedule-item[data-kps-edit-booking]:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--kps-seller-color) 45%,#d8dee8)}
.kps-schedule-item[data-kps-edit-booking]:focus-visible{outline:3px solid color-mix(in srgb,var(--kps-seller-color) 45%,transparent);outline-offset:2px}
.kps-today-week-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}
.kps-today-week-nav strong{text-align:center;font-size:.95rem}
.kps-today-week-nav button{width:42px;min-width:42px;padding:8px;font-size:1.35rem;line-height:1}
.kps-today-day-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:14px}
.kps-today-day-tabs button{border:1px solid #dfe5ec;background:#fff;border-radius:12px;padding:9px 4px;color:#1e293b;cursor:pointer;min-width:0}
.kps-today-day-tabs button span,.kps-today-day-tabs button strong{display:block;overflow:hidden;text-overflow:ellipsis}
.kps-today-day-tabs button span{font-size:.72rem;font-weight:500}.kps-today-day-tabs button strong{font-size:.84rem;margin-top:2px}
.kps-today-day-tabs button.is-active{border-color:#111827;box-shadow:inset 0 0 0 1px #111827;background:#f8fafc}
@media(max-width:600px){.kps-today-day-tabs{gap:4px}.kps-today-day-tabs button{padding:8px 2px;border-radius:9px}.kps-today-day-tabs button span{font-size:.65rem}.kps-today-day-tabs button strong{font-size:.72rem}.kps-today-week-nav strong{font-size:.82rem}}
.kps-appointment-card[data-kps-edit-booking],.kps-next-appointment-card[data-kps-edit-booking]{cursor:pointer}
.kps-appointment-card[data-kps-edit-booking]:focus-visible,.kps-next-appointment-card[data-kps-edit-booking]:focus-visible{outline:3px solid color-mix(in srgb,var(--kps-seller-color,#2563eb) 35%,transparent);outline-offset:2px}

/* v6.9.5 – ganztägige Termine im Bearbeitungsdialog */
.kps-booking-all-day{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:14px 16px;border:1px solid #dfe3e8;border-radius:12px;background:#f7f8fa;cursor:pointer}
.kps-booking-all-day input{width:20px;height:20px;margin:1px 0 0;flex:0 0 auto}
.kps-booking-all-day span{display:grid;gap:3px;color:#111}
.kps-booking-all-day strong{font-size:14px;line-height:1.35}
.kps-booking-all-day small{font-size:12px;line-height:1.4;color:#5f6670}
.kps-booking-dialog [hidden]{display:none!important}


/* v6.9.6 – Ganztagsauswahl zuverlässig sichtbar */
.kps-booking-all-day{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important}
.kps-booking-all-day input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;display:block!important;visibility:visible!important;opacity:1!important;accent-color:#111827}
.kps-booking-dialog .kps-field>span small{font-weight:400;color:#6b7280}


/* v6.9.7 – großzügiger Bereich für Datum, Uhrzeit, Dauer und Status */
.kps-booking-time-section{grid-template-columns:190px minmax(0,1fr)}
.kps-booking-time-section>.kps-booking-section-title{align-self:start}
.kps-booking-time-grid{grid-template-columns:minmax(180px,1.25fr) minmax(130px,.8fr) minmax(160px,.95fr) minmax(190px,1.15fr);align-items:end;gap:18px}
.kps-booking-time-grid .kps-field{min-width:0}
.kps-booking-time-grid input,.kps-booking-time-grid select{width:100%;min-width:0;min-height:48px}
@media(max-width:1180px){
  .kps-booking-time-section{grid-template-columns:1fr;gap:16px}
  .kps-booking-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .kps-booking-time-grid{grid-template-columns:1fr;gap:14px}
  .kps-booking-time-grid input,.kps-booking-time-grid select{min-height:50px}
}

/* 6.9.9 – persönliche Reminder und Geburtstage */
.kps-options-divider{height:1px;background:var(--kps-border,#dbe3ef);margin:28px 0}
.kps-reminder-options-title{margin-bottom:16px}
.kps-reminder-checkboxes{margin-top:14px}
.kps-profile-birthday-form{margin-top:22px;padding-top:22px;border-top:1px solid var(--kps-border,#dbe3ef)}
.kps-profile-form-intro{margin:0 0 16px;color:var(--kps-muted,#64748b)}
.kps-popup-reminder-copy{display:grid;gap:8px}
.kps-popup-reminder-copy strong{font-size:1.05rem;color:#0f172a}
.kps-popup-reminder-copy span,.kps-popup-reminder-copy time{color:#475569}
.kps-popup-reminder-copy time{font-weight:700}
.kps-popup-reminder .kps-popup{border-top:5px solid #2563eb}
.kps-popup-birthday .kps-popup{border-top:5px solid #f59e0b}

/* 6.10.0 – Geburtstage direkt im Begrüßungsbildschirm */
.kps-welcome-birthday-notice {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px 16px;
  margin: 0 0 14px;
  border: 1px solid rgba(217, 119, 6, .28);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(254, 243, 199, .88), rgba(255, 247, 237, .96));
  color: #111827;
}
.kps-welcome-birthday-notice > span { font-size: 26px; line-height: 1; }
.kps-welcome-birthday-notice strong { display: block; font-size: 15px; line-height: 1.4; }
.kps-welcome-birthday-notice p { margin: 4px 0 0; color: #4b5563; }
.kps-welcome-birthday-person { display: flex; align-items: center; gap: 9px; }
.kps-welcome-birthday-person + .kps-welcome-birthday-person { margin-top: 8px; }


/* 6.10.1 – Urlaubskarten in 30 % Google-Verkäuferfarbe */
.kps-app .kps-vacation-card.kps-seller-colored{
  background:color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 30%,#fff 70%)!important;
  color:#111827!important;
  border:1px solid color-mix(in srgb,var(--kps-seller-color,var(--kps-accent)) 42%,#dfe4ea 58%)!important;
  border-left:6px solid var(--kps-seller-color,var(--kps-accent))!important;
  box-shadow:none!important;
}
.kps-app .kps-vacation-card.kps-seller-colored *{color:#111827!important}
.kps-app .kps-vacation-card .kps-list-delete-button{
  background:#fff!important;
  color:#111827!important;
  border-color:rgba(17,24,39,.18)!important;
}

/* 6.10.2 – calendar period navigation */
.kps-period-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}
.kps-period-nav .kps-secondary-button{width:42px;min-width:42px;padding:8px;font-size:1.35rem;line-height:1}
.kps-period-label{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;text-align:center}
.kps-period-label strong{font-size:.95rem;white-space:nowrap}
.kps-period-label span{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border:1px solid var(--kps-border);border-radius:999px;background:#fff;color:var(--kps-muted);font-size:.72rem;font-weight:850;white-space:nowrap}
.kps-week-period[hidden],.kps-month-period[hidden]{display:none!important}
.kps-month-period .kps-month-weekdays{margin-top:2px}
@media(max-width:600px){
  .kps-period-nav{gap:8px}
  .kps-period-label{gap:6px;flex-wrap:wrap}
  .kps-period-label strong{font-size:.82rem}
  .kps-period-label span{font-size:.66rem;min-height:22px;padding:2px 7px}
}

/* 6.10.3 – professionelle Kalenderdarstellung und mobile Navigation */
.kps-week-appointment{display:grid;gap:4px}
.kps-calendar-seller-row{display:block;min-width:0;font-size:12px;line-height:1.3;font-weight:800;color:#111827;white-space:normal;overflow-wrap:anywhere}
.kps-calendar-detail-row,.kps-calendar-time-row{display:block;min-width:0;font-size:12px;line-height:1.35;font-weight:400;color:#111827;white-space:normal;overflow-wrap:anywhere}
.kps-calendar-time-row{color:#374151}
.kps-month-appointment{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;align-items:start!important}
.kps-month-seller{display:block;min-width:0;font-size:9px;font-weight:800;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kps-month-title-text{display:block;min-width:0;font-size:9px;font-weight:400;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kps-month-agenda{display:none}

@media(max-width:760px){
  .kps-calendar-module{overflow:visible}
  .kps-calendar-module>.kps-form-title{position:relative;z-index:4}
  .kps-calendar-toolbar{position:sticky;top:8px;z-index:30;margin:8px -4px 14px;padding:8px;border-radius:14px;background:rgba(248,250,252,.96);box-shadow:0 8px 24px rgba(15,23,42,.10);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .kps-calendar-toolbar>span{display:none}
  .kps-calendar-view-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;padding:4px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
  .kps-calendar-view-switch button{min-height:42px;border-radius:9px;font-size:.84rem;font-weight:750}
  .kps-period-nav,.kps-today-week-nav{position:sticky;top:68px;z-index:25;margin:8px 0 12px;padding:7px;border:1px solid #e2e8f0;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(15,23,42,.07);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
  .kps-period-nav .kps-secondary-button,.kps-today-week-nav button{width:44px;min-width:44px;height:40px;padding:0;border-radius:10px}
  .kps-period-label strong,.kps-today-week-nav strong{font-size:.82rem}
  .kps-week-grid{grid-template-columns:1fr;gap:12px}
  .kps-week-day{min-height:0;border-radius:14px}
  .kps-week-day>header{position:sticky;top:124px;z-index:5;padding:10px 12px}
  .kps-week-day-list{gap:8px;padding:8px}
  .kps-week-appointment{padding:11px 12px;border-radius:11px}
  .kps-calendar-seller-row{font-size:.86rem}
  .kps-calendar-detail-row,.kps-calendar-time-row{font-size:.82rem}
  .kps-month-weekdays,.kps-month-grid{display:none!important}
  .kps-month-agenda{display:grid;gap:12px}
  .kps-month-agenda-day{overflow:hidden;border:1px solid #e2e8f0;border-radius:14px;background:#fff}
  .kps-month-agenda-day>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #e8edf3;background:#f8fafc}
  .kps-month-agenda-day>header strong{font-size:.86rem}
  .kps-month-agenda-day>header span{font-size:.78rem;color:#64748b}
  .kps-month-agenda-day>div{display:grid;gap:8px;padding:8px}
  .kps-month-agenda-item{display:grid;gap:3px;width:100%;min-width:0;padding:11px 12px;border:1px solid color-mix(in srgb,var(--kps-seller-color) 38%,#dfe4ea);border-left:5px solid var(--kps-seller-color);border-radius:11px;background:color-mix(in srgb,var(--kps-seller-color) 24%,#fff);color:#111827;text-align:left;box-shadow:none;cursor:pointer}
  .kps-month-agenda-item strong{font-size:.86rem;font-weight:800;line-height:1.3;overflow-wrap:anywhere}
  .kps-month-agenda-item span{font-size:.82rem;font-weight:400;line-height:1.35;overflow-wrap:anywhere}
}

@media(max-width:390px){
  .kps-calendar-toolbar{top:4px}
  .kps-period-nav,.kps-today-week-nav{top:64px}
  .kps-calendar-view-switch button{min-height:40px;font-size:.78rem;padding-inline:4px}
  .kps-period-label{max-width:calc(100% - 100px)}
}

/* 6.10.4 – ruhiger Kalender ohne Dopplungen und Vergangenheits-Ausgrauung */
.kps-calendar-module .is-past{
  opacity:1!important;
  filter:none!important;
}
.kps-today-day-tabs button.is-active{
  border-color:color-mix(in srgb,#16a34a 52%,#dfe5ec)!important;
  background:color-mix(in srgb,#22c55e 30%,#fff)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,#16a34a 38%,transparent)!important;
  color:#111827!important;
}
.kps-week-day.is-today{
  background:color-mix(in srgb,#22c55e 30%,#fff)!important;
}
.kps-week-day.is-today>header{
  background:color-mix(in srgb,var(--kps-accent) 12%,#fff)!important;
}
.kps-month-cell.is-today{
  background:color-mix(in srgb,#22c55e 30%,#fff)!important;
}
.kps-month-cell.is-today>header{
  margin:-6px -6px 5px;
  padding:6px;
  background:color-mix(in srgb,var(--kps-accent) 12%,#fff)!important;
  color:#334155;
}


/* 6.10.5 – saubere Trenner und dreizeilige Monatskarten */
.kps-month-appointment{
  min-height:36px;
  overflow:hidden;
}
.kps-month-seller{
  line-height:1.2;
}
.kps-month-title-text{
  display:-webkit-box;
  min-width:0;
  overflow:hidden;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  text-overflow:ellipsis;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  line-height:1.2;
  max-height:2.4em;
}

/* 6.10.6 – Monatszellen nur so hoch wie ihr Inhalt */
.kps-month-grid{
  align-items:start;
  grid-auto-rows:auto;
}
.kps-month-cell{
  min-height:0!important;
  height:auto;
  align-self:start;
}
.kps-month-cell>header{
  display:block;
  min-height:1.25em;
  margin-bottom:6px;
}
.kps-month-cell>div{
  gap:7px;
}
.kps-month-cell.is-empty{
  min-height:0!important;
}
@media(max-width:760px){
  .kps-month-agenda-day{align-self:start}
}

/* 6.10.7 – Urlaubsplanung mit Ferien und Feiertagen */
.kps-vacation-entry-form{display:grid;gap:16px}
.kps-vacation-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kps-vacation-note-row{width:100%;max-width:none}
.kps-vacation-note-row textarea{width:100%;min-height:84px;resize:vertical}
.kps-vacation-planning{margin:22px 0 28px;padding:20px;border:1px solid var(--kps-border,#d0d5dd);border-radius:16px;background:var(--kps-surface,#fff)}
.kps-vacation-planning-head h3{margin:4px 0 6px}
.kps-vacation-planning-head p{margin:0;color:var(--kps-muted,#667085)}
.kps-vacation-planning-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
.kps-vacation-planning-list{min-width:0;padding:16px;border:1px solid #e4e7ec;border-radius:14px;background:#f8fafc}
.kps-vacation-planning-list h4{margin:0 0 12px;font-size:15px}
.kps-vacation-planning-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid #e4e7ec}
.kps-vacation-planning-list article:first-of-type{border-top:0;padding-top:0}
.kps-vacation-planning-list article strong{min-width:0;font-size:13px;line-height:1.35;color:#111827}
.kps-vacation-planning-list article span{flex:0 0 auto;font-size:12px;line-height:1.35;color:#475467;text-align:right;white-space:nowrap}
.kps-vacation-planning-list.is-school{border-left:5px solid #34a853}
.kps-vacation-planning-list.is-public{border-left:5px solid #f9ab00}
.kps-external-calendar-item{cursor:default!important;box-shadow:none!important}
.kps-external-calendar-item:hover{transform:none!important}
.kps-external-calendar-item .kps-calendar-seller-row,
.kps-external-calendar-item .kps-month-seller{font-weight:700}
@media(max-width:760px){
  .kps-vacation-date-row,.kps-vacation-planning-columns{grid-template-columns:1fr}
  .kps-vacation-planning{padding:16px}
  .kps-vacation-planning-list article{display:grid;gap:3px}
  .kps-vacation-planning-list article span{text-align:left;white-space:normal}
}

/* 6.10.8 – kompakter Urlaub und einklappbare Planung */
.kps-vacation-planning{padding:0!important;overflow:hidden}
.kps-vacation-planning-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;cursor:pointer;list-style:none;background:#fff}
.kps-vacation-planning-summary::-webkit-details-marker{display:none}
.kps-vacation-planning-summary span{display:grid;gap:2px}.kps-vacation-planning-summary small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#667085}.kps-vacation-planning-summary strong{font-size:16px;color:#111827}.kps-vacation-planning-summary i{font-style:normal;transition:transform .2s ease}.kps-vacation-planning[open] .kps-vacation-planning-summary i{transform:rotate(180deg)}
.kps-vacation-planning-body{padding:0 18px 18px;border-top:1px solid #e4e7ec}
.kps-vacation-filters{display:flex;flex-wrap:wrap;gap:10px;padding:14px 0}.kps-vacation-filters label{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;font-size:13px;color:#344054;cursor:pointer}
.kps-vacation-compact-list{display:grid;gap:10px}.kps-vacation-row{display:flex;align-items:center;gap:6px;min-width:0;padding:13px 15px 13px 18px;border:1px solid #d0d5dd;border-left:5px solid var(--kps-seller-color);border-radius:12px;background:color-mix(in srgb,var(--kps-seller-color) 30%,#fff);color:#111827;cursor:pointer;box-shadow:none}.kps-vacation-row strong,.kps-vacation-row span{font-size:14px;line-height:1.4;color:#111827}.kps-vacation-row span{min-width:0;overflow-wrap:anywhere}
#kps-booking-edit-form.is-vacation-edit [data-kps-booking-time-field],#kps-booking-edit-form.is-vacation-edit [data-kps-booking-duration-field],#kps-booking-edit-form.is-vacation-edit .kps-booking-all-day{display:none!important}
@media(max-width:680px){.kps-vacation-row{align-items:flex-start;flex-wrap:wrap}.kps-vacation-planning-body{padding:0 14px 14px}.kps-vacation-filters{gap:7px}.kps-vacation-filters label{flex:1 1 auto;justify-content:center}}

/* v6.10.9 – Urlaubsübersicht und kurze Ferienfilter */
.kps-vacation-row{display:grid;gap:5px;align-items:start}
.kps-vacation-row-main{display:flex;align-items:baseline;gap:6px;min-width:0;flex-wrap:wrap}
.kps-vacation-row-main strong,.kps-vacation-row-main span{font-size:14px;line-height:1.4;color:#111827}
.kps-vacation-row-main span{min-width:0;overflow-wrap:anywhere}
.kps-vacation-row-note{padding-left:0;font-size:12.5px;line-height:1.45;color:#344054;overflow-wrap:anywhere}
.kps-vacation-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:14px}
.kps-vacation-filters label{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:7px 10px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;font-size:12px;font-weight:750;cursor:pointer}
.kps-vacation-filters input{margin:0}
@media(max-width:680px){.kps-vacation-row-main{display:grid;gap:1px}.kps-vacation-filters label{flex:1 1 calc(50% - 8px);justify-content:flex-start}}

/* v6.11.0 – Ferienfilter sichtbar und Urlaub zweizeilig */
fieldset.kps-vacation-filters{margin:14px 0 4px;padding:12px;border:1px solid #d0d5dd;border-radius:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#f8fafc;min-width:0}
fieldset.kps-vacation-filters legend{padding:0 6px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#667085}
fieldset.kps-vacation-filters label{display:inline-flex!important;visibility:visible!important;align-items:center;gap:6px;min-height:36px;padding:7px 11px;border:1px solid #cfd5df;border-radius:999px;background:#fff;color:#111827;font-size:12px;font-weight:700;cursor:pointer}
fieldset.kps-vacation-filters input[type="checkbox"]{display:inline-block!important;visibility:visible!important;opacity:1!important;position:static!important;width:16px;height:16px;margin:0;accent-color:#2563eb}
.kps-vacation-row{grid-template-columns:minmax(0,1fr)}
.kps-vacation-row-note{display:block;width:100%;margin-top:1px;color:#344054}
@media(max-width:680px){fieldset.kps-vacation-filters{display:grid;grid-template-columns:1fr 1fr}fieldset.kps-vacation-filters legend{grid-column:1/-1}fieldset.kps-vacation-filters label{width:100%;justify-content:flex-start}}


/* v6.11.1 – Urlaub kompakt, Feiertagsfilter getrennt */
.kps-vacation-note-action-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end}
.kps-vacation-submit-wrap{display:grid;gap:8px;justify-items:end;min-width:180px}
.kps-vacation-submit-wrap .kps-primary-button{white-space:nowrap}
.kps-vacation-list-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.kps-vacation-days-total{flex:0 0 auto;padding:7px 11px;border:1px solid #d0d5dd;border-radius:999px;background:#f8fafc;color:#111827;font-size:13px;line-height:1}
.kps-vacation-row,.kps-vacation-row *{color:#000!important}
.kps-vacation-planning-list.is-school{display:block!important}
@media(max-width:680px){.kps-vacation-note-action-row{grid-template-columns:1fr}.kps-vacation-submit-wrap{justify-items:stretch;min-width:0}.kps-vacation-submit-wrap .kps-primary-button{width:100%}.kps-vacation-list-head{align-items:center}.kps-vacation-days-total{font-size:12px}}


/* v6.11.2 – Urlaubstage je Eintrag */
.kps-vacation-row-main{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:nowrap}
.kps-vacation-row-title{display:flex;align-items:baseline;gap:6px;min-width:0;flex-wrap:wrap}
.kps-vacation-row-title strong,.kps-vacation-row-title span{color:#111827}
.kps-vacation-row-days{margin-left:auto;flex:0 0 auto;white-space:nowrap;color:#111827;font-size:13px}
@media(max-width:680px){.kps-vacation-row-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 10px}.kps-vacation-row-title{display:block}.kps-vacation-row-title strong{margin-right:4px}.kps-vacation-row-days{margin-left:0;font-size:12px}}

/* v6.11.3 – Feiertagsfilter zuverlässig und chronologisch */
.kps-vacation-planning [data-kps-holiday-item][hidden]{display:none!important}

/* 6.11.5 – Aufmaß von/bis und Urlaubstage als Badge */
.kps-vacation-row-days{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 12px;border:1px solid rgba(17,24,39,.16);border-radius:999px;background:rgba(255,255,255,.72);font-weight:400;line-height:1;text-align:center;color:#111827!important}
.kps-manual-measurement-form .kps-measurement-editor-grid-2{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:820px){.kps-manual-measurement-form .kps-measurement-editor-grid-2{grid-template-columns:1fr 1fr}.kps-manual-measurement-form .kps-measurement-editor-grid-2 .kps-field:first-child{grid-column:1/-1}}
@media(max-width:560px){.kps-manual-measurement-form .kps-measurement-editor-grid-2{grid-template-columns:1fr}.kps-manual-measurement-form .kps-measurement-editor-grid-2 .kps-field:first-child{grid-column:auto}}


/* v6.11.7 – KOBALD und weißer Urlaubshinweis */
.kps-app .kps-vacation-row .kps-vacation-row-note{color:#fff!important;font-weight:400!important;}

/* v6.11.9 – Nur externe iCal-Ferien und -Feiertage ruhig und vorangestellt */
.kps-calendar-info-item,
.kps-calendar-info-item.kps-seller-colored,
.kps-calendar-info-item.kps-week-appointment,
.kps-calendar-info-item.kps-month-appointment,
.kps-calendar-info-item.kps-month-agenda-item,
.kps-calendar-info-item.kps-schedule-item {
  --kps-seller-color:#c7cbd1!important;
  background:#f1f3f4!important;
  border-color:#d8dce1!important;
  border-left-color:#b7bcc3!important;
  color:#4b5563!important;
  box-shadow:none!important;
}
.kps-calendar-info-item strong,
.kps-calendar-info-item span,
.kps-calendar-info-item time { color:#4b5563!important; }
.kps-calendar-info-item:hover { filter:none!important; transform:none!important; }


/* v6.11.10 – iCal-Einträge nur mit ihrem eigentlichen Namen, einzeilig */
.kps-calendar-info-item .kps-calendar-info-single-line{
  display:block;
  width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:650;
  line-height:1.25;
}

/* v6.11.11 – Einzeilige iCal-Einträge behalten die normale Kalender-Schriftgröße */
.kps-schedule-item.kps-calendar-info-item .kps-calendar-info-single-line,
.kps-week-appointment.kps-calendar-info-item .kps-calendar-info-single-line{
  font-size:12px;
  font-weight:400;
  line-height:1.35;
}
.kps-month-appointment.kps-calendar-info-item .kps-calendar-info-single-line{
  font-size:9px;
  font-weight:400;
  line-height:1.15;
}
@media(max-width:800px){
  .kps-month-agenda-item.kps-calendar-info-item .kps-calendar-info-single-line{
    font-size:.82rem;
    font-weight:400;
    line-height:1.35;
  }
}
@media(max-width:560px){
  .kps-month-appointment.kps-calendar-info-item .kps-calendar-info-single-line{
    font-size:8px;
  }
}


/* Teamtermin */
.kps-team-appointment-row{display:block;width:100%;clear:both;margin:4px 0 14px}
.kps-team-appointment-row + .kps-grid{clear:both}
.kps-team-appointment-check{display:inline-flex;align-items:center;gap:7px;width:auto;max-width:100%;margin:0;padding:14px 16px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:rgba(66,133,244,.06)}
.kps-team-appointment-check input[type="checkbox"]{flex:0 0 auto;width:16px!important;height:16px!important;min-height:16px!important;margin:0}
.kps-team-appointment-check span{font-weight:600}
.kps-field.is-team-disabled{opacity:.55}
.kps-field.is-team-disabled select{cursor:not-allowed}


/* 6.11.20 – Teamtermine: schwarzer Hintergrund, weiße Schrift */
.kps-app .kps-team-appointment,
.kps-app .kps-appointment-card.kps-team-appointment,
.kps-app .kps-team-today-list .kps-appointment-card.kps-team-appointment,
.kps-app .kps-schedule-item.kps-team-appointment,
.kps-app .kps-week-appointment.kps-team-appointment,
.kps-app .kps-month-appointment.kps-team-appointment,
.kps-app .kps-month-agenda-item.kps-team-appointment {
  --kps-seller-color:#000000 !important;
  background:#000000 !important;
  color:#ffffff !important;
  border-color:#000000 !important;
  border-left-color:#000000 !important;
}
.kps-app .kps-team-appointment *,
.kps-app .kps-team-appointment strong,
.kps-app .kps-team-appointment span,
.kps-app .kps-team-appointment small,
.kps-app .kps-team-appointment time,
.kps-app .kps-team-appointment p,
.kps-app .kps-team-appointment .kps-appointment-headline,
.kps-app .kps-team-appointment .kps-appointment-details,
.kps-app .kps-team-appointment .kps-appointment-notes {
  color:#ffffff !important;
}
.kps-app .kps-team-appointment .kps-appointment-details>span+span::before {
  color:rgba(255,255,255,.68) !important;
}
.kps-app .kps-team-appointment .kps-status-pill,
.kps-app .kps-team-appointment .kps-secondary-button,
.kps-app .kps-team-appointment .kps-list-delete-button,
.kps-app .kps-team-appointment select,
.kps-app .kps-team-appointment .kps-colleague-appointment-label {
  background:rgba(255,255,255,.14) !important;
  color:#ffffff !important;
  border-color:rgba(255,255,255,.38) !important;
}
.kps-app .kps-team-appointment select option {
  background:#ffffff;
  color:#111827 !important;
}
.kps-app .kps-team-appointment:hover {
  filter:brightness(1.08);
}

/* 6.11.29 – kompakte Pro-Darstellung für den nächsten Termin im Cockpit */
.kps-cockpit-next-pro{display:flex!important;flex-direction:column;align-items:stretch;gap:0}
.kps-cockpit-next-pro .kps-cockpit-next-line{display:block;margin:7px 0 0;font-size:15px;line-height:1.45;font-weight:800;overflow-wrap:anywhere}
.kps-cockpit-next-pro .kps-cockpit-now-note{display:block;margin-top:4px}
.kps-cockpit-team-line{display:flex;flex-wrap:wrap;gap:4px 7px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(17,24,39,.13);font-size:13px;line-height:1.45}
.kps-cockpit-team-line b{font-weight:750}
.kps-cockpit-team-line span{font-weight:400}
.kps-cockpit-followups{display:block;margin-top:14px;padding-top:10px;border-top:1px solid rgba(17,24,39,.1);font-size:12px;font-weight:400;line-height:1.4}
@media(max-width:620px){.kps-cockpit-next-pro .kps-cockpit-next-line{font-size:14px}.kps-cockpit-team-line{display:grid;gap:2px}}

/* 6.11.32 – Zusatzhinweis nur bei vorhandenen Folgeterminen */


/* 6.11.34 – Kontaktdaten unter dem nächsten Termin */
.kps-cockpit-next-pro .kps-cockpit-contact-line{display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;overflow-wrap:anywhere}
@media(max-width:620px){.kps-cockpit-next-pro .kps-cockpit-contact-line{font-size:12px}}


/* 6.11.35 – optionale Notiz als dritte Zeile im Cockpit */
.kps-cockpit-next-pro .kps-cockpit-note-line{display:block;margin-top:5px;font-size:12px;font-weight:400;line-height:1.45;opacity:.82;overflow-wrap:anywhere;white-space:normal}
@media(max-width:620px){.kps-cockpit-next-pro .kps-cockpit-note-line{font-size:11px}}


/* 6.11.36 – Notizen im Cockpit standardmäßig eingeklappt */
.kps-cockpit-next-pro .kps-cockpit-note-line{display:none!important}
.kps-cockpit-notes-toggle{display:block;margin-top:7px;font-size:12px;line-height:1.45}
.kps-cockpit-notes-toggle summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-weight:700;list-style:none;user-select:none}
.kps-cockpit-notes-toggle summary::-webkit-details-marker{display:none}
.kps-cockpit-notes-arrow::before{content:'▶';display:inline-block;font-size:9px;line-height:1;transition:transform .18s ease}
.kps-cockpit-notes-toggle[open] .kps-cockpit-notes-arrow::before{transform:rotate(90deg)}
.kps-cockpit-notes-content{margin-top:7px;padding:9px 11px;border-radius:9px;background:rgba(17,24,39,.055);font-weight:400;line-height:1.5;overflow-wrap:anywhere;white-space:normal}
@media(max-width:620px){.kps-cockpit-notes-toggle{font-size:11px}.kps-cockpit-notes-content{padding:8px 9px}}

/* Blackbord 7.1.1 */
.kps-blackboard-menu-badge{background:#000!important;color:#fff!important;border:1px solid rgba(255,255,255,.35)!important}
.kps-blackboard-shell{display:grid;gap:20px}
.kps-blackboard-composer{width:100%;background:transparent;border:0}
.kps-blackboard-composer>summary{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;min-height:52px;padding:14px 20px;background:#050505;color:#fff;border:1px solid #191919;border-radius:var(--kps-radius);font-weight:800;cursor:pointer;list-style:none}
.kps-blackboard-composer>summary::-webkit-details-marker{display:none}
.kps-blackboard-composer>summary::before{content:'+';font-size:20px;margin-right:10px;line-height:1}
.kps-blackboard-composer[open]>summary::before{content:'−'}
.kps-blackboard-form{width:100%;max-width:none;margin-top:12px;box-sizing:border-box}
.kps-blackboard-submit{background:#050505!important;color:#fff!important;border-color:#191919!important}
.kps-blackboard-submit:hover{background:#181818!important}
.kps-blackboard-board{min-height:430px;background:#050505;border:1px solid #191919;border-radius:var(--kps-radius);padding:28px;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:30px 24px;align-items:start;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);overflow:hidden}
.kps-blackboard-title{grid-column:1/-1;margin:0 0 8px;color:#fff;font-size:clamp(25px,3vw,34px);font-weight:700;letter-spacing:-.02em}
.kps-blackboard-note{position:relative;background:#fff;color:#111;padding:28px 18px 22px;min-height:210px;border-radius:2px;box-shadow:0 12px 28px rgba(0,0,0,.5);transform:translateY(var(--kps-note-offset,0)) rotate(var(--kps-note-rotation,0deg));transform-origin:50% 8px;overflow:visible;overflow-wrap:anywhere;transition:transform .18s ease,box-shadow .18s ease}
.kps-blackboard-note:hover{transform:translateY(calc(var(--kps-note-offset,0) - 3px)) rotate(var(--kps-note-rotation,0deg));box-shadow:0 17px 34px rgba(0,0,0,.58);z-index:2}
.kps-blackboard-note::after{content:'';position:absolute;right:0;bottom:0;width:30px;height:30px;background:linear-gradient(135deg,#dedede 0 49%,#f4f4f4 50% 100%);clip-path:polygon(0 100%,100% 0,100% 100%);filter:drop-shadow(-2px -2px 2px rgba(0,0,0,.16))}
.kps-blackboard-pin{position:absolute;top:-11px;left:50%;width:22px;height:22px;transform:translateX(-50%);border-radius:50%;background:var(--kps-pin-color,#2563eb);border:3px solid rgba(255,255,255,.75);box-shadow:0 3px 7px rgba(0,0,0,.5),inset 0 -3px 4px rgba(0,0,0,.18);z-index:3}
.kps-blackboard-pin::after{content:'';position:absolute;width:4px;height:12px;left:50%;top:17px;transform:translateX(-50%);background:#777;border-radius:0 0 2px 2px;z-index:-1}
.kps-blackboard-note header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:24px;font-size:13px;letter-spacing:.04em}
.kps-blackboard-note header strong{font-weight:900}.kps-blackboard-note time{font-variant-numeric:tabular-nums;color:#333}
.kps-blackboard-note hr{border:0;border-top:1px solid #bdbdbd;margin:12px 0}.kps-blackboard-note p{margin:0;white-space:normal;line-height:1.55;font-size:15px;min-height:92px}.kps-blackboard-note footer{text-align:right;font-style:italic;font-size:13px;color:#333;padding-right:20px}
.kps-blackboard-delete{position:absolute;right:8px;top:7px;width:28px;height:28px;border:0;background:transparent;color:#111;font-size:24px;line-height:1;cursor:pointer;border-radius:50%;z-index:4}.kps-blackboard-delete:hover{background:#111;color:#fff}
.kps-blackboard-empty{grid-column:1/-1;color:#fff;text-align:center;padding:80px 20px;font-size:15px;opacity:.72}.kps-blackboard-note.is-deleting{opacity:.35;transform:scale(.96)}
@media(max-width:700px){.kps-blackboard-board{padding:18px;grid-template-columns:1fr;gap:24px}.kps-blackboard-note{transform:rotate(var(--kps-note-rotation,0deg))!important;margin:4px 8px}.kps-blackboard-title{text-align:center}}


/* v7.1.2 Blackboard title */
.kps-blackboard-title{
 text-align:center;
 color:#fff;
 font-size:36px;
 font-weight:700;
 letter-spacing:1.5px;
 transform:rotate(-3deg);
 text-shadow:0 2px 6px rgba(0,0,0,.45);
 margin:20px auto 28px;
 display:block;
}


/* v7.1.3 Blackbord board controls and frame */
.kps-blackboard-board{
  position:relative;
  display:block;
  min-height:470px;
  padding:30px 30px 92px;
  border:2px solid #343434;
  border-radius:22px;
  box-shadow:inset 0 0 34px rgba(255,255,255,.07),inset 0 0 0 1px rgba(0,0,0,.9),0 12px 30px rgba(0,0,0,.18);
}
.kps-blackboard-notes{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:30px 24px;
  align-items:start;
}
.kps-blackboard-title{margin:14px auto 38px;}
.kps-blackboard-composer{
  position:absolute;
  right:24px;
  bottom:22px;
  width:auto;
  max-width:calc(100% - 48px);
  z-index:8;
}
.kps-blackboard-composer>summary{
  width:auto;
  min-height:46px;
  padding:11px 18px;
  border:1px solid #454545;
  border-radius:12px;
  background:#050505;
  box-shadow:inset 0 0 12px rgba(255,255,255,.055),0 5px 15px rgba(0,0,0,.28);
  white-space:nowrap;
}
.kps-blackboard-composer[open]{
  left:24px;
  width:auto;
  max-width:none;
  padding-top:58px;
}
.kps-blackboard-composer[open]>summary{
  position:absolute;
  right:0;
  top:0;
}
.kps-blackboard-form{
  width:100%;
  margin:0;
  border:1px solid #3d3d3d;
  box-shadow:inset 0 0 20px rgba(0,0,0,.08),0 8px 24px rgba(0,0,0,.28);
}
.kps-blackboard-note footer{display:none!important;}
.kps-blackboard-note p+hr{display:none!important;}
.kps-blackboard-empty{grid-column:1/-1;}
@media(max-width:700px){
  .kps-blackboard-board{padding:18px 14px 84px;border-radius:12px;}
  .kps-blackboard-notes{grid-template-columns:1fr;gap:24px;}
  .kps-blackboard-composer{right:16px;bottom:16px;max-width:calc(100% - 32px);}
  .kps-blackboard-composer[open]{left:16px;}
}


/* 7.1.6 – Blackbord: verbindlicher Desktop-Radius, Papierverlauf und Ersthilfe */
.kps-blackboard-board{
  border-radius:20px!important;
  border:2px solid #343434!important;
  overflow:hidden;
}
.kps-blackboard-note{
  background:linear-gradient(135deg,#fff 0%,#fafafa 48%,#ececec 100%)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.85);
}
.kps-blackboard-help{display:flex;justify-content:flex-end;align-items:flex-start;margin-top:-8px;}
.kps-blackboard-help-card{position:relative;display:flex;align-items:flex-start;gap:10px;width:min(100%,520px);padding:12px 42px 12px 14px;border:1px solid rgba(17,24,39,.1);border-radius:12px;background:rgba(255,255,255,.72);box-shadow:0 5px 16px rgba(17,24,39,.07);color:#4b5563;font-size:13px;line-height:1.45;}
.kps-blackboard-help-icon{font-size:17px;line-height:1.25;}
.kps-blackboard-help-copy strong{display:block;margin-bottom:2px;color:#1f2937;font-size:13px;}
.kps-blackboard-help-copy p{margin:0;}
.kps-blackboard-help-close{position:absolute;right:8px;top:7px;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#6b7280;font-size:21px;line-height:1;cursor:pointer;}
.kps-blackboard-help-close:hover{background:rgba(17,24,39,.08);color:#111827;}
.kps-blackboard-help-toggle{padding:2px 0;border:0;background:transparent;color:#6b7280;font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
.kps-blackboard-help-toggle:hover{color:#111827;}
@media(max-width:700px){
  .kps-blackboard-board{border-radius:12px!important;}
  .kps-blackboard-help{margin-top:-10px;}
  .kps-blackboard-help-card{width:100%;}
}


/* 7.1.7 – Desktop-Radius und Hilfe-Fix */
.kps-blackboard-shell{
  border-radius:20px;
}
.kps-blackboard-board{
  border-radius:20px!important;
  overflow:hidden!important;
  background-clip:padding-box;
}
.kps-blackboard-help-card[hidden],
.kps-blackboard-help-toggle[hidden],
.kps-blackboard-help-card.is-hidden,
.kps-blackboard-help-toggle.is-hidden{
  display:none!important;
}
@media(max-width:700px){
  .kps-blackboard-shell{border-radius:12px;}
  .kps-blackboard-board{border-radius:12px!important;}
}


/* v7.1.8 Blackboard help toggle */
.kp-blackboard-help-toggle,
.kp-blackboard-help-toggle:link,
.kp-blackboard-help-toggle:visited{
    font-weight:700 !important;
    text-decoration:none !important;
}
.kp-blackboard-help-toggle:hover,
.kp-blackboard-help-toggle:focus{
    text-decoration:none !important;
}
