/* ZaPhi Manager v0.21.1 · gemeinsame Oberfläche der zwölf Nacharbeiten */

/* Status: heller Pastellgrund, farbiger Rand/Punkt und vollständig lesbare Schrift. */
.badge.v20-status-solid.v211-status-chip,
.v20-inline-status.v211-status-chip{
  border:1px solid color-mix(in srgb,var(--v20-status) 48%,#d8dde2)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--v20-status) 11%,#fff)!important;
  color:#111820!important;
  text-shadow:none!important;
  box-shadow:none!important;
  opacity:1!important;
  filter:none!important;
  font-family:var(--font-app)!important;
}
.badge.v20-status-solid.v211-status-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 9px}
.v211-status-chip>i{display:block;width:9px;height:9px;flex:0 0 9px;border-radius:999px;background:var(--v20-status);box-shadow:0 0 0 2px color-mix(in srgb,var(--v20-status) 20%,#fff)}
.v20-inline-status.v211-status-chip{min-height:34px!important;padding:5px 8px!important;gap:7px;font-size:10px!important;font-weight:800!important}
.v20-inline-status.v211-status-chip:hover{background:color-mix(in srgb,var(--v20-status) 17%,#fff)!important}
.v20-inline-status.v211-status-chip>span{flex:1;min-width:0;color:#111820!important}
.v20-inline-status.v211-status-chip>b{color:#3c4651!important}
.v211-native-status-select{display:none!important}
.v211-form-status-trigger{width:100%;min-height:42px!important;border-width:1px!important;border-radius:999px!important;background:color-mix(in srgb,var(--v20-status) 11%,#fff)!important}
.v20-dashboard-status-cell{min-width:190px}
.v20-dashboard-case-table td:nth-child(1){max-width:none;min-width:190px}
.v20-dashboard-case-table td:nth-child(2){min-width:210px}
.v20-dashboard-case-table .v20-inline-status{max-width:210px!important}
.v203-invoice-status,.v203-receipt-status{--v211-status-color:#4f78ad;display:inline-flex!important;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--v211-status-color) 48%,#d8dde2)!important;border-radius:999px!important;background:color-mix(in srgb,var(--v211-status-color) 11%,#fff)!important;color:#111820!important}
.v203-invoice-status:before,.v203-receipt-status:before{content:'';width:8px;height:8px;flex:0 0 8px;border-radius:999px;background:var(--v211-status-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--v211-status-color) 20%,#fff)}
.v203-invoice-status.paid,.v203-receipt-status.checked{--v211-status-color:#3f8c67}.v203-invoice-status.late{--v211-status-color:#b84a4a}.v203-invoice-status.draft{--v211-status-color:#7b8794}.v203-invoice-status.corrected,.v203-receipt-status.working{--v211-status-color:#7657a8}.v203-receipt-status.review{--v211-status-color:#d09a2d}

/* Vorgangstabelle: sichtbare Ziehgriffe mit dauerhaft gespeicherten Breiten. */
.v20-case-table{min-width:0!important}
.v211-resizable-heading{position:sticky!important;padding-right:18px!important}
.v211-column-resizer{position:absolute;z-index:4;top:0;right:-4px;width:9px;height:100%;cursor:col-resize;touch-action:none}
.v211-column-resizer:after{content:'';position:absolute;top:20%;bottom:20%;left:4px;width:1px;background:#c8ced5;transition:.15s}
.v211-column-resizer:hover:after,.v211-resizing-column .v211-column-resizer:after{width:2px;background:#f47b20}
.v211-resizing-column,.v211-resizing-column *{cursor:col-resize!important;user-select:none!important}
.v211-case-column-tools{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:8px;color:var(--color-text-muted,#6c7580);font-size:10px}
.v211-case-column-tools .btn{padding:5px 8px;font-size:10px}

/* ZaPhi Planer-Kennzeichnungen. */
.v211-marker-settings-button{white-space:nowrap}
.v211-marker-pick i{background:var(--v211-marker)!important}
.v211-marker-pick:has(input:checked){border-color:color-mix(in srgb,var(--v211-marker) 48%,#ccd2d8);background:color-mix(in srgb,var(--v211-marker) 9%,#fff)}
.appt.v20-appt:has(.v211-appt-markerbar){padding-top:17px!important}
.v20-appt-markerbar.v211-appt-markerbar{left:-1px!important;right:-1px!important;top:-1px!important;height:15px!important;border-radius:6px 6px 0 0;overflow:hidden;background:transparent}
.v211-appt-markerbar i{display:flex!important;align-items:center;justify-content:center;min-width:0;height:15px!important;background:var(--v211-marker)!important;color:var(--v211-marker-text)!important;font-style:normal;font-size:7px;font-weight:900;line-height:1;padding:0 3px;text-shadow:none}
.v211-appt-markerbar i span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.appt.v20-appt.v20-appt-size-narrow:has(.v211-appt-markerbar){padding-top:9px!important}
.appt.v20-appt.v20-appt-size-narrow .v211-appt-markerbar{height:7px!important}
.appt.v20-appt.v20-appt-size-narrow .v211-appt-markerbar i{height:7px!important}
.appt.v20-appt.v20-appt-size-narrow .v211-appt-markerbar span{display:none}
.v20-mobile-card:has(.v211-appt-markerbar){padding-top:30px}
.v20-mobile-card .v211-appt-markerbar{left:5px!important;height:18px!important}
.v20-mobile-card .v211-appt-markerbar i{height:18px!important;font-size:8px}
.v211-marker-badge{background:color-mix(in srgb,var(--v211-marker) 84%,#fff)!important;color:var(--v211-marker-text)!important}
.v20-participant-row{grid-template-columns:minmax(170px,1fr) auto 105px 105px auto!important}
.v211-remove-participant{align-self:center;white-space:nowrap}
.v211-marker-settings{display:grid;gap:12px}
.v211-marker-settings .notice span{display:block;margin-top:4px}
.v211-marker-settings-head,.v211-marker-setting-row{display:grid;grid-template-columns:62px minmax(190px,1fr) 80px 100px auto;gap:8px;align-items:center}
.v211-marker-settings-head{padding:0 4px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
#v211MarkerSettingRows{display:grid;gap:7px}
.v211-marker-setting-row{border:1px solid var(--line);border-radius:10px;background:#fafbfc;padding:8px}
.v211-marker-setting-row input[type="color"]{width:54px;height:36px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}
.v211-marker-setting-row input[type="text"]{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px;font:inherit}
.v211-marker-setting-row .checkline{margin:0;white-space:nowrap}
.v211-marker-settings-actions,.v211-opening-balance-actions{justify-content:flex-end;margin-top:4px}

/* Zeiterfassung: vier kompakte Kennzahlen und mobile Schnellmaske. */
.v14-time-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.v14-time-kpis div{min-width:0}
.v14-time-kpis strong{overflow-wrap:anywhere}
.v211-carry-label{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.25}
.v211-time-card-actions{justify-content:flex-end;gap:5px}
.v211-time-card-actions .btn{padding:6px 7px;font-size:10px}
.v211-opening-balance-form input{font-variant-numeric:tabular-nums}
.v211-optional-hint{color:var(--muted);font-size:10px;line-height:1.35}

/* Kostenvoranschläge: Rechnungslisten-Raster mit eigenen Statusfarben. */
.v211-offer-workspace[hidden]{display:none!important}
.v211-document-status{display:inline-flex;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--v211-document-status) 48%,#d8dde2);border-radius:999px;background:color-mix(in srgb,var(--v211-document-status) 11%,#fff);color:#111820;padding:4px 9px;font-size:11px;font-weight:800;white-space:nowrap}
.v211-document-status i{width:8px;height:8px;border-radius:999px;background:var(--v211-document-status);box-shadow:0 0 0 2px color-mix(in srgb,var(--v211-document-status) 20%,#fff)}
.v211-offer-table{min-width:980px}
.v211-offer-status-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border:1px solid #dce1e6;border-radius:10px;background:#fafbfc;padding:10px}
.v211-offer-status-actions>strong{margin-right:4px}
.v211-offer-status-actions .btn.active{border-color:#758290;background:#e9edf1;font-weight:800}

/* Leistungsstammdaten: identische App-Schrift und sprachgerechtes Umbrechen. */
#serviceMasterPane,#serviceMasterPane button,#serviceMasterPane input,#serviceMasterPane select,#serviceMasterPane textarea,#serviceTree,.v203-service-tree-row,.v203-clickable-service,.service-name,.service-long,.service-detail-text{font-family:var(--font-app)!important}
.v203-tree-name,.v203-clickable-service .service-name,.v203-clickable-service .service-long,.service-detail-text{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:auto;
  -webkit-hyphens:auto;
  hyphenate-character:'-';
}
.v203-tree-name{white-space:normal!important}

@media(max-width:760px){
 .v211-marker-settings-button{order:4}
 .v20-participant-row{grid-template-columns:1fr 1fr!important}
 .v211-remove-participant{grid-column:1/-1;justify-self:start}
 .v211-marker-settings-head{display:none}
 .v211-marker-setting-row{grid-template-columns:54px 1fr auto}
 .v211-marker-setting-row [data-marker-label]{grid-column:2/4}
 .v211-marker-setting-row .checkline{grid-column:1/3}
 .v211-time-entry-form{grid-template-columns:1fr 1fr!important;gap:9px!important}
 .v211-time-entry-form .v211-time-employee,.v211-time-entry-form .v211-time-date,.v211-time-entry-form .v211-time-case,.v211-time-entry-form .v211-time-note,.v211-time-entry-form .field.full{grid-column:1/-1}
 .v211-time-entry-form .field input,.v211-time-entry-form .field select,.v211-time-entry-form .field textarea{padding:9px 10px}
 .v211-time-entry-form .v211-time-note textarea{min-height:62px}
}

@media(max-width:520px){
 .v211-case-column-tools{align-items:flex-end;flex-direction:column}
 .v14-time-kpis{grid-template-columns:1fr 1fr!important}
 .v14-time-employee-head{display:grid!important}
 .v211-time-card-actions{justify-content:flex-start}
 .v211-marker-setting-row{grid-template-columns:50px 1fr}
 .v211-marker-setting-row [data-marker-label]{grid-column:1/-1}
 .v211-marker-setting-row [data-marker-icon]{grid-column:2}
 .v211-marker-setting-row .checkline{grid-column:1/-1}
}
