/* MP-20260829-008 · Baustellen Golden Screen v2
   Absichtlich als letzte, ausschließlich auf #view-projekte begrenzte
   Schicht: eine kompakte Header-Card, eine Projekt-Card, gleich hohe KPIs. */

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .view-header {
  min-height: 92px !important;
  margin: 0 0 16px !important;
  padding: 18px 22px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
  background: rgba(var(--mp-flaeche-rgb), .97) !important;
  box-shadow: 0 8px 24px -22px rgba(15,23,42,.48) !important;
}

/* =====================================================================
   APPWEITER GOLDEN-STANDARD · FINALE KASKADE
   ===================================================================== */

/* Kommunikation zeigt nur den echten Kommunikationsverlauf. Die alte
   Positions-/Dokumentenkarte ist kein Ersatz fuer diesen Arbeitsbereich. */
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] [data-mp-editor-communication-proxy],
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] #kvaA4Wrapper,
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] .mp-doc-view-host,
#view-rechnung.mp-document-editor-golden[data-mp-editor-section="kommunikation"] #rgA4Wrapper {
  display: none !important;
}
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] .mp-comm-card[data-kind="offer"],
#view-rechnung.mp-document-editor-golden[data-mp-editor-section="kommunikation"] .mp-comm-card[data-kind="invoice"] {
  display: block !important;
}

/* Eine Leiste, ein horizontaler Scrollpfad. Footer-Aktionen werden als
   direkte Flex-Kinder der Bereichsleiste behandelt und nicht separat gescrollt. */
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav,
#view-aufmass .mp-aufmass-section-nav,
#view-projekte #mpBsGroupNav,
#view-projekte #projTabsNav {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  touch-action: pan-x pan-y !important;
}
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav::-webkit-scrollbar,
#view-aufmass .mp-aufmass-section-nav::-webkit-scrollbar,
#view-projekte #mpBsGroupNav::-webkit-scrollbar,
#view-projekte #projTabsNav::-webkit-scrollbar { display: none !important; }

:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions {
  display: contents !important;
}
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > :is(.mp-editor-section-item,.view-footer-actions > *),
#view-aufmass .mp-aufmass-section-nav > *,
#view-projekte #mpBsGroupNav > *,
#view-projekte #projTabsNav > * {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions > :first-child {
  margin-left: auto !important;
}

/* Angebot und Rechnung verwenden denselben oberen Modulrhythmus wie die
   Baustellenansicht. Die gemeinsame Workspace-Regel bestimmt den Abstand;
   hier gibt es bewusst keine dokumentbezogene 0-px-Ausnahme mehr. */
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck {
  top: 0 !important;
  margin-top: 0 !important;
}

/* Eingeklappte Listenfenster verschwinden vollstaendig. Der Pfeil ist eine
   eigene Steuerung; kein 58px-Rest, keine senkrechte Linie, kein Schatten. */
.mp-workspace-external-rail-toggle { display: none !important; }
@media (min-width: 768px) {
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat,#view-aufmass,#view-mail).view.active.is-list-rail-collapsed > :is(.mp-workspace-list-master,.mp-aufmass-master),
  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-master,
  html body #view-aufmass.view.active.is-list-rail-collapsed > .mp-aufmass-master {
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat,#view-aufmass,#view-mail).view.active.is-list-rail-collapsed > :is(.mp-workspace-external-rail-toggle,.mp-aufmass-external-rail-toggle),
  html body #view-aufmass.view.active:has(> .view-box.is-rail-collapsed) > :is(.mp-workspace-external-rail-toggle,.mp-aufmass-external-rail-toggle) {
    position: fixed !important;
    z-index: 4685 !important;
    top: calc(var(--mp-topbar-h,58px) + 10px) !important;
    left: 5px !important;
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    place-items: center !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    border-radius: 13px !important;
    background: rgb(var(--mp-flaeche-rgb)) !important;
    color: rgb(var(--mp-t2-344257)) !important;
    box-shadow: 0 10px 24px -17px rgba(15,23,42,.52) !important;
  }
  :is(.mp-workspace-external-rail-toggle,.mp-aufmass-external-rail-toggle) svg {
    width: 18px !important;
    height: 18px !important;
  }
}

/* MP-20260904-020 (Ida Neumann, Marcel: „finde nichts mehr um die
   Angebotsliste zu öffnen"): mobile Lasche für denselben externen
   Rail-Toggle. Ursache des Funds: die Regel oben (display:none) wurde nur
   im Desktop-Rail-Zustand (.is-list-rail-collapsed) wieder eingeblendet —
   eine Bedingung, die es auf dem Handy gar nicht gibt (dort ist die Liste
   entweder ganz zu ODER als Overlay offen, kein „eingeklappter Rail").
   Beide vorgesehenen Öffner (der interne .mp-workspace-rail-toggle IM
   Panel — dadurch strukturell unerreichbar, solange das Panel zu ist —
   und dieser externe Knopf, der als Geschwister von
   .mp-workspace-list-master theoretisch erreichbar wäre) waren dadurch
   auf dem Handy tot; nur der Weg über das ⋯-Menü funktionierte.
   Optik gespiegelt vom rechten Vorbild #mpRailToggle
   (css/mp-list-workspaces-golden.css:2605-2624): flache Seite an der
   Kante, gerundete Seite zum Inhalt — hier links statt rechts, exakt
   dieselben Maße/Deckkraft/Schatten-Richtung gespiegelt. Sichtbarkeit an
   :not(.is-mobile-list-open) gebunden — verschwindet, sobald die Liste
   offen ist, wie das Vorbild, keine zweite Schließ-Lasche nötig.
   K-390 beachtet: KEINE eigene ID vergeben (die bestehende Klasse reicht),
   damit nichts mit dem separaten #mpRailToggle-System (mp-leads-sidebar.js)
   auf derselben Kante kollidiert. */
/* MP-20260905-002-NACHBESSERUNG (Marcel: "das Fähnchen ist hier ein
   kleiner Pfeil in schwarz, das muss genau wie bei Angebote sein"): Aufmaß
   per Selektorliste an genau DIESE Regel angehängt — keine zweite Kopie der
   Werte. Ursache des Funds: css/mp-ui-final-hardwall.css enthielt zwar
   eine fast wortgleiche Aufmaß-Fassung dieser Regel, aber INNERHALB eines
   toten "@media not all"-Blocks (Zeile 890-1246 dort, retiredes
   MP-20260831-006-Fragment) — matcht auf KEINEM Gerät, egal wie korrekt der
   Inhalt aussieht. Siehe SHARED_LEARNINGS.md L-2026-09-05-B. Aufmaß hatte
   bislang GAR KEINE lebendige Regel, die dem externen Fähnchen mobil
   Position/Hintergrund/Rand/Schatten gab — nur die grössen-/formgebende
   Basis aus css/mp-aufmass-layout-contract.css (42×42/radius 13,
   position:static). Ergebnis genau wie gemeldet: nackter schwarzer Pfeil,
   kein Hintergrund, im normalen Dokumentfluss (daher "unten"), statt der
   fixierten 24×62-Randlasche. */
@media (max-width: 767px) {
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat,#view-mail).view.active:not(.is-mobile-list-open) > .mp-workspace-external-rail-toggle,
  html body #view-aufmass.view.active:not(.is-mobile-list-open) > .mp-aufmass-external-rail-toggle {
    display: flex !important;
    position: fixed !important;
    z-index: 939 !important;
    top: 50% !important;
    left: 0 !important;
    right: auto !important;
    transform: translateY(-50%) !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 62px !important;
    padding: 0 !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    border-left: 0 !important;
    border-radius: 0 14px 14px 0 !important;
    background: rgba(var(--mp-flaeche-rgb), .92) !important;
    color: rgb(var(--mp-t2-344257)) !important;
    box-shadow: 8px 0 24px -16px rgba(15,23,42,.58) !important;
    -webkit-backdrop-filter: blur(20px) saturate(1.3) !important;
    backdrop-filter: blur(20px) saturate(1.3) !important;
  }
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat,#view-mail).view.active:not(.is-mobile-list-open) > .mp-workspace-external-rail-toggle svg,
  html body #view-aufmass.view.active:not(.is-mobile-list-open) > .mp-aufmass-external-rail-toggle svg {
    width: 16px !important;
    height: 16px !important;
  }
  /* Trefferfläche unsichtbar auf ≥44px erweitert (Höhe ist mit 62px
     bereits über der Regel, nur die 24px-Breite braucht mehr) — per
     ::after statt Padding, damit die SICHTBARE Optik exakt 24×62 bleibt
     (Padding+Hintergrund hätte den Knopf auch optisch vergrößert). Die
     Erweiterung geht nur nach RECHTS (in den Bildschirm hinein, wo bei
     geschlossener Liste ohnehin keine Listenzeilen liegen, sondern der
     Editor/die Übersicht mit eigenem Rand) — nach LINKS wäre sie jenseits
     der Bildschirmkante und nicht antippbar. */
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat,#view-mail).view.active:not(.is-mobile-list-open) > .mp-workspace-external-rail-toggle::after,
  html body #view-aufmass.view.active:not(.is-mobile-list-open) > .mp-aufmass-external-rail-toggle::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 44px !important;
    height: 100% !important;
  }
}

/* Exakt die farbige Baustellen-Dockvariante gewinnt auch gegen die alte,
   modulbezogene :has()-Regel und deren weissen Hover-Zustand. */
@media (min-width: 768px) {
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab[data-tab="leads"] { background: linear-gradient(145deg,#38b8ff,#168fd7) !important; color:#fff !important; }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab[data-tab="projekte"] { background: linear-gradient(145deg,#35c973,#13a451) !important; color:#fff !important; }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab[data-tab="termine"] { background: linear-gradient(145deg,#69a6ff,#3b7fe9) !important; color:#fff !important; }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab[data-tab="stunden"] { background: linear-gradient(145deg,#35c9bc,#0f9d91) !important; color:#fff !important; }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab[data-tab="chat"] { background: linear-gradient(145deg,#25d366,#25d366) !important; color:#fff !important; }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab[data-tab="notizen"] { background: linear-gradient(145deg,#ffc83f,#eca800) !important; color:#513800 !important; }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab:hover {
    transform: translateX(-3px) translateY(-1px) scale(1.035) !important;
  }
  html body:has(:is(#view-kva,#view-rechnung,#view-projekte,#view-kunden).view.active) #mpSideRail button.mp-rail-tab .mrt-ico {
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    box-shadow: none !important;
  }
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden > .view-container > .view-box > .view-header {
  box-sizing: border-box !important;
  width: 100% !important;
  border: 1px solid rgba(15,23,42,.11) !important;
  border-radius: 16px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: 0 10px 26px -22px rgba(15,23,42,.55) !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .view-header h1 {
  font-size: clamp(26px,2vw,32px) !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte.mp-pkarte.is-karte {
  overflow: visible !important;
  margin: 0 !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
  background: rgba(var(--mp-flaeche-rgb), .97) !important;
  box-shadow: 0 10px 28px -24px rgba(15,23,42,.55) !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte.mp-pkarte {
  box-sizing: border-box !important;
  width: 100% !important;
  overflow: visible !important;
  border: 1px solid rgba(15,23,42,.11) !important;
  border-radius: 16px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: 0 10px 28px -23px rgba(15,23,42,.58) !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte .mp-pkarte-kopf {
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte #projWorkspaceHeader[data-visible="1"] {
  min-height: 66px !important;
  padding: 11px 14px 10px !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte .mp-pkarte-reihe {
  width: 100% !important;
  padding: 0 14px !important;
  border: 0 !important;
  background: transparent !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte .mp-bs-group-nav {
  width: 100% !important;
  border-top: 1px solid rgba(15,23,42,.085) !important;
  border-bottom: 0 !important;
}

#view-projekte.mp-baustellen-golden #projOverviewTop {
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}

#view-projekte.mp-baustellen-golden #projOverviewTop > .mp-bs-panel:not([hidden]) {
  height: 100% !important;
  min-height: 0 !important;
}

#view-projekte.mp-baustellen-golden #projBudgetCard[hidden],
#view-projekte.mp-baustellen-golden #projFinanceCard[hidden],
#view-projekte.mp-baustellen-golden #projBriefingStrip[hidden],
#view-projekte.mp-baustellen-golden [data-proj-section][hidden] {
  display: none !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden[data-bs-active-tab]:not([data-bs-active-tab="uebersicht"]) #projBudgetCard.mp-bs-panel,
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden[data-bs-active-tab]:not([data-bs-active-tab="uebersicht"]) #projFinanceCard.mp-bs-panel,
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden[data-bs-active-tab]:not([data-bs-active-tab="uebersicht"]) #projBriefingStrip {
  display: none !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard.mp-bs-panel[hidden],
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projFinanceCard.mp-bs-panel[hidden],
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBriefingStrip[hidden] {
  display: none !important;
}

#view-projekte.mp-baustellen-golden #projFinanceCard #projKpiGrid [data-kpi="gewinn"] .mp-kpi-value.is-negative,
#view-projekte.mp-baustellen-golden #projFinanceCard #projKpiGrid [data-kpi="gewinn"] .mp-kpi-hint.is-negative {
  color: #d52b2b !important;
}

#view-projekte.mp-baustellen-golden #projFinanceCard #projKpiGrid [data-kpi="gewinn"] .mp-kpi-value.is-positive,
#view-projekte.mp-baustellen-golden #projFinanceCard #projKpiGrid [data-kpi="gewinn"] .mp-kpi-hint.is-positive {
  color: #138a53 !important;
}

#view-projekte.mp-baustellen-golden #projFinanceCard #projKpiGrid [data-kpi="gewinn"] .mp-kpi-value.is-neutral,
#view-projekte.mp-baustellen-golden #projFinanceCard #projKpiGrid [data-kpi="gewinn"] .mp-kpi-hint.is-neutral {
  color: rgb(var(--mp-t1-172033)) !important;
}

@media (min-width: 1200px) {
  html:not(#mpkk):not(#mpkk-2) body #view-projekte.view.active.is-list-rail-collapsed > .view-container > .view-box,
  html:not(#mpkk):not(#mpkk-2) body #view-projekte.view.active > .view-container > .view-box.is-list-rail-collapsed {
    box-sizing: border-box !important;
    padding-left: 62px !important;
  }

  #view-projekte.view.active.is-list-rail-collapsed .mp-workspace-rail-toggle {
    top: 18px !important;
    right: -54px !important;
  }

  #view-projekte.view.active.is-list-rail-collapsed .view-header {
    padding-left: 22px !important;
  }

  #view-projekte.view.active.is-list-rail-collapsed .mp-workspace-rail-toggle::after {
    content: attr(data-mp-tooltip) !important;
    position: absolute !important;
    top: 50% !important;
    left: calc(100% + 10px) !important;
    width: max-content !important;
    max-width: 210px !important;
    padding: 7px 10px !important;
    border-radius: 8px !important;
    background: #172033 !important;
    color: #fff !important;
    box-shadow: 0 8px 22px -12px rgba(15,23,42,.65) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(4px,-50%) !important;
    transition: opacity 140ms ease, transform 140ms ease !important;
    font-size: 11.5px !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
  }

  #view-projekte.view.active.is-list-rail-collapsed .mp-workspace-rail-toggle:hover::after,
  #view-projekte.view.active.is-list-rail-collapsed .mp-workspace-rail-toggle:focus-visible::after {
    opacity: 1 !important;
    transform: translate(0,-50%) !important;
  }
}

@media (max-width: 1199px) {
  #view-projekte.mp-baustellen-golden #projOverviewTop {
    grid-auto-rows: auto !important;
  }

  #view-projekte.mp-baustellen-golden #projOverviewTop > .mp-bs-panel:not([hidden]) {
    height: auto !important;
  }
}

@media (max-width: 767px) {
  #view-projekte.mp-baustellen-golden .view-header {
    min-height: 74px !important;
    padding: 14px 16px !important;
    border-radius: 14px !important;
  }

  #view-projekte.mp-baustellen-golden #mpProjKarte.mp-pkarte.is-karte {
    border-radius: 14px !important;
  }

  #view-projekte.mp-baustellen-golden #mpProjKarte #projWorkspaceHeader[data-visible="1"] {
    padding: 9px 11px 8px !important;
  }

  #view-projekte.mp-baustellen-golden #mpProjKarte .mp-pkarte-reihe {
    padding: 0 10px !important;
  }
}

/* Ein gemeinsamer Sticky-Massstab fuer alle neuen MalerPlus-Bereichsmenues:
   buendig unter der 58-px-Topbar, ohne modulabhaengige Luft. */
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #mpProjKarte,
html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck {
  position: sticky !important;
  z-index: 430 !important;
  top: 0 !important;
}

/* Aufmass-Liste im eingeklappten Zustand: keine weisse Restkarte und keine
   reservierte Seitenspalte. Sichtbar bleibt ausschliesslich der Pfeilgriff. */
@media (min-width: 768px) {
  html body #view-aufmass.view.active > .view-box.is-rail-collapsed,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed {
    grid-template-columns: 0 minmax(0,1fr) !important;
  }

  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-detail,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed .mp-aufmass-detail {
    grid-column: 1 / -1 !important;
  }

  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-master,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed .mp-aufmass-master {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-master .aufmass-list-card,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed .mp-aufmass-master .aufmass-list-card {
    visibility: hidden !important;
    opacity: 0 !important;
  }

  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-rail-toggle,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed .mp-aufmass-rail-toggle {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* Aufmaß übernimmt dieselbe App-Icon-Arbeitsnavigation. */
#view-aufmass .mp-aufmass-section-nav {
  box-sizing: border-box !important;
  display: flex !important;
  width: 100% !important;
  min-height: 66px !important;
  margin: 0 0 16px !important;
  padding: 0 14px !important;
  align-items: center !important;
  gap: 26px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: 0 10px 28px -23px rgba(15,23,42,.58) !important;
}
#view-aufmass .mp-aufmass-section-item {
  position: relative !important;
  display: inline-flex !important;
  min-height: 64px !important;
  padding: 0 6px !important;
  align-items: center !important;
  gap: 9px !important;
  border: 0 !important;
  background: transparent !important;
  color: rgb(var(--mp-t3-607087)) !important;
  box-shadow: none !important;
  font: 700 13px/1.2 inherit !important;
  white-space: nowrap !important;
}
#view-aufmass .mp-aufmass-section-item::after {
  content: "" !important;
  position: absolute !important;
  right: 2px !important;
  bottom: -1px !important;
  left: 2px !important;
  height: 2px !important;
  background: transparent !important;
}
#view-aufmass .mp-aufmass-section-item.is-active { color: rgb(var(--mp-t1-172033)) !important; }
#view-aufmass .mp-aufmass-section-item.is-active::after { background: var(--aufmass-accent,#2bb0ff) !important; }
#view-aufmass .mp-aufmass-section-icon {
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  flex: 0 0 34px !important;
  place-items: center !important;
  border-radius: 10px !important;
  background: var(--aufmass-accent,#2bb0ff) !important;
  color: #fff !important;
  box-shadow: 0 6px 13px -8px var(--aufmass-accent,#2bb0ff), inset 0 1px 0 rgba(255,255,255,.38) !important;
}
#view-aufmass .mp-aufmass-section-icon svg { width: 19px !important; height: 19px !important; }
#view-aufmass .mp-aufmass-section-transfer { margin-left: auto !important; }
#view-aufmass .mp-aufmass-section-save { margin-left: 0 !important; }

/* Die alte Aufmass-Kommandozeile ist vollstaendig in Header, Seitenpfeil
   und neue App-Leiste aufgegangen. Keine zweite Aktionskarte mehr. */
#view-aufmass .aufmass-sticky-header :is(.aufmass-cmd-divider,.aufmass-cmd) {
  display: none !important;
}

#view-aufmass[data-mp-aufmass-section="zuordnung"] .aufmass-sticky-header .aufmass-cmd,
#view-aufmass[data-mp-aufmass-section="zuordnung"] :is(#aufmassInnenContainer,#aufmassFassadeContainer) { display: none !important; }
#view-aufmass[data-mp-aufmass-section="innen"] .aufmass-sticky-header .aufmass-zuordnung,
#view-aufmass[data-mp-aufmass-section="fassade"] .aufmass-sticky-header .aufmass-zuordnung,
#view-aufmass[data-mp-aufmass-section="innen"] .aufmass-mode-shell,
#view-aufmass[data-mp-aufmass-section="fassade"] .aufmass-mode-shell,
#view-aufmass[data-mp-aufmass-section="innen"] .aufmass-cmd-divider,
#view-aufmass[data-mp-aufmass-section="fassade"] .aufmass-cmd-divider { display: none !important; }
#view-aufmass[data-mp-aufmass-section="innen"] #aufmassInnenContainer { display: block !important; }
#view-aufmass[data-mp-aufmass-section="innen"] #aufmassFassadeContainer { display: none !important; }
#view-aufmass[data-mp-aufmass-section="fassade"] #aufmassFassadeContainer { display: block !important; }
#view-aufmass[data-mp-aufmass-section="fassade"] #aufmassInnenContainer { display: none !important; }
#view-aufmass #aufmassSummaryContainer { display: none !important; }
#view-aufmass[data-mp-aufmass-section="summary"] :is(.aufmass-sticky-header,#aufmassInnenContainer,#aufmassFassadeContainer) { display: none !important; }
#view-aufmass[data-mp-aufmass-section="summary"] #aufmassSummaryContainer { display: block !important; }
#view-aufmass[data-mp-aufmass-section="innen"] .aufmass-sticky-header,
#view-aufmass[data-mp-aufmass-section="fassade"] .aufmass-sticky-header { display: none !important; }
#view-aufmass[data-mp-aufmass-section="innen"] .aufmass-sticky-header .aufmass-cmd,
#view-aufmass[data-mp-aufmass-section="fassade"] .aufmass-sticky-header .aufmass-cmd { width: 100% !important; justify-content: flex-end !important; }

/* Aufmaß-Zusammenfassung: bewusst zweispaltig nach Innen/Fassade, damit
   auch umfangreiche Messungen in wenigen Sekunden kontrollierbar sind. */
#view-aufmass .mp-aufmass-summary {
  box-sizing: border-box !important;
  width: 100% !important;
  padding: 26px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 24px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: 0 18px 46px -36px rgba(15,23,42,.6) !important;
}
#view-aufmass .mp-aufmass-summary-head {
  display: flex !important;
  margin-bottom: 20px !important;
  padding-bottom: 18px !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 18px !important;
  border-bottom: 1px solid #e5eaf1 !important;
}
#view-aufmass .mp-aufmass-summary-kicker { color:#2a9fdc !important; font-size:11px !important; font-weight:850 !important; letter-spacing:.08em !important; text-transform:uppercase !important; }
#view-aufmass .mp-aufmass-summary-head h2 { margin:4px 0 3px !important; color:rgb(var(--mp-t1-172033)) !important; font-size:25px !important; line-height:1.15 !important; }
#view-aufmass .mp-aufmass-summary-head p { margin:0 !important; color:rgb(var(--mp-t3-758399)) !important; font-size:13px !important; }
#view-aufmass .mp-aufmass-summary-status { display:inline-flex !important; min-height:34px !important; padding:0 12px !important; align-items:center !important; gap:7px !important; border-radius:999px !important; background:rgb(var(--mp-f2-eaf9f1)) !important; color:#14804a !important; font-size:12px !important; font-weight:750 !important; white-space:nowrap !important; }
#view-aufmass .mp-aufmass-summary-status > span { width:8px !important; height:8px !important; border-radius:50% !important; background:#23b66d !important; box-shadow:0 0 0 4px rgba(35,182,109,.12) !important; }
#view-aufmass .mp-aufmass-summary-totals { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:10px !important; margin-bottom:18px !important; }
#view-aufmass .mp-aufmass-summary-totals > div { min-width:0 !important; padding:15px 16px !important; border:1px solid #e3e8ef !important; border-radius:15px !important; background:rgb(var(--mp-flaeche-2-rgb)) !important; }
#view-aufmass .mp-aufmass-summary-totals span { display:block !important; margin-bottom:5px !important; overflow:hidden !important; color:rgb(var(--mp-t3-7d899c)) !important; font-size:11px !important; font-weight:750 !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-aufmass .mp-aufmass-summary-totals strong { color:rgb(var(--mp-t1-172033)) !important; font-size:20px !important; line-height:1.1 !important; }
#view-aufmass .mp-aufmass-summary-totals .is-total { border-color:#bce5fa !important; background:rgb(var(--mp-f2-eef9ff)) !important; }
#view-aufmass .mp-aufmass-summary-totals .is-total strong { color:#087fc0 !important; }
#view-aufmass .mp-aufmass-summary-grid { display:grid !important; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr) !important; align-items:start !important; gap:16px !important; }
#view-aufmass .mp-aufmass-summary-panel { min-width:0 !important; padding:18px !important; border:1px solid #e2e8f0 !important; border-radius:18px !important; background:rgb(var(--mp-f1-fbfcfe)) !important; }
#view-aufmass .mp-aufmass-summary-panel > header { display:flex !important; margin-bottom:14px !important; align-items:center !important; gap:11px !important; }
#view-aufmass .mp-aufmass-summary-panel > header h3 { margin:0 !important; color:rgb(var(--mp-t1-172033)) !important; font-size:17px !important; }
#view-aufmass .mp-aufmass-summary-panel > header p { margin:2px 0 0 !important; color:rgb(var(--mp-t3-8793a5)) !important; font-size:11px !important; }
#view-aufmass .mp-aufmass-summary-panel-icon { display:grid !important; width:38px !important; height:38px !important; flex:0 0 38px !important; place-items:center !important; border-radius:11px !important; color:#fff !important; font-size:20px !important; font-weight:800 !important; }
#view-aufmass .mp-aufmass-summary-panel-icon.is-inside { background:#20ad65 !important; }
#view-aufmass .mp-aufmass-summary-panel-icon.is-facade { background:#f47a24 !important; }
#view-aufmass .mp-aufmass-summary-room-list { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important; }
#view-aufmass .mp-aufmass-summary-room { min-width:0 !important; padding:14px !important; border:1px solid #e2e8f0 !important; border-radius:14px !important; background:rgb(var(--mp-flaeche-rgb)) !important; }
#view-aufmass .mp-aufmass-summary-room-top { display:flex !important; align-items:center !important; gap:9px !important; }
#view-aufmass .mp-aufmass-summary-room-index { display:grid !important; width:27px !important; height:27px !important; flex:0 0 27px !important; place-items:center !important; border-radius:8px !important; background:rgb(var(--mp-f2-eaf9f1)) !important; color:#14804a !important; font-size:11px !important; font-weight:850 !important; }
#view-aufmass .mp-aufmass-summary-room h4 { margin:0 !important; overflow:hidden !important; color:rgb(var(--mp-t1-172033)) !important; font-size:14px !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-aufmass .mp-aufmass-summary-room-top div > span { color:rgb(var(--mp-t3-8a96a8)) !important; font-size:10px !important; }
#view-aufmass .mp-aufmass-summary-dimensions { margin:10px 0 8px !important; color:rgb(var(--mp-t3-6f7d91)) !important; font-size:11px !important; }
#view-aufmass .mp-aufmass-summary-values,
#view-aufmass .mp-aufmass-summary-facade-values { margin:0 !important; }
#view-aufmass .mp-aufmass-summary-values { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:5px !important; }
#view-aufmass .mp-aufmass-summary-values > div { min-width:0 !important; padding:8px !important; border-radius:9px !important; background:rgb(var(--mp-f2-f5f7fa)) !important; }
#view-aufmass .mp-aufmass-summary-values dt { color:rgb(var(--mp-t3-8a96a8)) !important; font-size:9px !important; font-weight:700 !important; }
#view-aufmass .mp-aufmass-summary-values dd { margin:2px 0 0 !important; color:rgb(var(--mp-t2-263247)) !important; font-size:12px !important; font-weight:800 !important; white-space:nowrap !important; }
#view-aufmass .mp-aufmass-summary-room-meta { display:flex !important; margin-top:9px !important; flex-wrap:wrap !important; gap:5px 10px !important; color:rgb(var(--mp-t3-7b889b)) !important; font-size:9.5px !important; }
#view-aufmass .mp-aufmass-summary-facade-hero { margin-bottom:11px !important; padding:18px !important; border-radius:14px !important; background:linear-gradient(135deg,rgb(var(--mp-f2-fff3e9)),rgb(var(--mp-f2-fff9f4))) !important; }
#view-aufmass .mp-aufmass-summary-facade-hero span { display:block !important; color:#a25825 !important; font-size:11px !important; font-weight:750 !important; }
#view-aufmass .mp-aufmass-summary-facade-hero strong { display:block !important; margin-top:5px !important; color:#d66011 !important; font-size:27px !important; }
#view-aufmass .mp-aufmass-summary-facade-values > div { display:flex !important; min-height:39px !important; padding:0 3px !important; align-items:center !important; justify-content:space-between !important; gap:10px !important; border-bottom:1px solid #e7ebf1 !important; }
#view-aufmass .mp-aufmass-summary-facade-values dt { color:rgb(var(--mp-t3-6f7d91)) !important; font-size:11px !important; }
#view-aufmass .mp-aufmass-summary-facade-values dd { margin:0 !important; color:rgb(var(--mp-t2-253148)) !important; font-size:12px !important; font-weight:800 !important; white-space:nowrap !important; }
#view-aufmass .mp-aufmass-summary-empty { padding:28px 16px !important; border:1px dashed #d4dce7 !important; border-radius:13px !important; color:rgb(var(--mp-t3-8a96a8)) !important; text-align:center !important; font-size:12px !important; }

@media (max-width:1100px) {
  #view-aufmass .mp-aufmass-summary-grid { grid-template-columns:minmax(0,1fr) !important; }
}
@media (max-width:767px) {
  #view-aufmass .mp-aufmass-summary { padding:16px !important; border-radius:18px !important; }
  #view-aufmass .mp-aufmass-summary-head { align-items:flex-start !important; }
  #view-aufmass .mp-aufmass-summary-status { display:none !important; }
  #view-aufmass .mp-aufmass-summary-head h2 { font-size:20px !important; }
  #view-aufmass .mp-aufmass-summary-totals { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #view-aufmass .mp-aufmass-summary-totals > div { padding:12px !important; }
  #view-aufmass .mp-aufmass-summary-totals strong { font-size:17px !important; }
  #view-aufmass .mp-aufmass-summary-panel { padding:13px !important; }
  #view-aufmass .mp-aufmass-summary-room-list { grid-template-columns:minmax(0,1fr) !important; }
}

.mp-create-drawer-overlay {
  position: fixed !important;
  inset: 0 !important;
  display: grid !important;
  padding-top: var(--mp-ws-top,58px) !important;
  place-items: stretch end !important;
  background: rgba(20,29,43,.42) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
}
.mp-create-drawer-sheet {
  display: grid !important;
  grid-template-rows: auto minmax(0,1fr) auto !important;
  width: min(540px,calc(100vw - 24px)) !important;
  height: calc(100dvh - var(--mp-ws-top,58px)) !important;
  overflow: hidden !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  border-radius: 24px 0 0 24px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: -18px 0 54px -30px rgba(15,23,42,.68) !important;
  animation: mpBsCreateIn 360ms cubic-bezier(.16,1,.3,1) both !important;
}
.mp-create-drawer-body { min-height: 0 !important; padding: 18px !important; overflow: auto !important; }
.mp-create-drawer-body .aufmass-zuordnung { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.mp-create-drawer-body .aufmass-zuo-grid { grid-template-columns: minmax(0,1fr) !important; gap: 14px !important; }
.mp-create-drawer-actions {
  display: flex !important;
  padding: 13px 18px calc(13px + env(safe-area-inset-bottom,0px)) !important;
  justify-content: flex-end !important;
  gap: 9px !important;
  border-top: 1px solid rgba(15,23,42,.09) !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
}
.mp-create-drawer-actions > button { min-width: 132px !important; min-height: 44px !important; border-radius: 11px !important; }
.mp-aufmass-create-icon { background: #7a6df0 !important; }

@media (max-width: 767px) {
  #view-aufmass .mp-aufmass-section-nav { min-height:60px !important; padding:0 8px !important; gap:5px !important; overflow-x:auto !important; }
  #view-aufmass .mp-aufmass-section-item { min-height:58px !important; padding:0 7px !important; font-size:11.5px !important; }
  #view-aufmass .mp-aufmass-section-icon { width:31px !important; height:31px !important; flex-basis:31px !important; }
  #view-aufmass .mp-aufmass-section-save span:last-child { display:none !important; }
  .mp-create-drawer-overlay { padding:0 !important; }
  .mp-create-drawer-sheet { width:min(94vw,480px) !important; height:100dvh !important; border-radius:22px 0 0 22px !important; }
}

/* Nachträge: Titel, Primäraktionen, Ansichtsumschalter und Zoom bilden eine
   einzige sauber ausgerichtete Werkzeugzeile. */
#view-projekte #projNachtraegeCard > .mp-header {
  display: grid !important;
  grid-template-columns: minmax(260px,1fr) auto auto !important;
  align-items: center !important;
  column-gap: 12px !important;
  row-gap: 10px !important;
}
#view-projekte #projNachtraegeCard > .mp-header > .mp-header-left { min-width: 0 !important; align-self: center !important; }
#view-projekte #projNachtraegeCard > .mp-header > .mp-header-actions,
#view-projekte #projNachtraegeCard > .mp-header > .kva-doc-mode-toolbar {
  display: inline-flex !important;
  min-height: 44px !important;
  margin: 0 !important;
  align-items: center !important;
  gap: 8px !important;
}
#view-projekte #projNachtraegeCard > .mp-header > .mp-header-actions > button,
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-segment,
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-zoom {
  box-sizing: border-box !important;
  min-height: 44px !important;
  margin: 0 !important;
}
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-segment,
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-zoom { align-items: center !important; }
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-segment-btn,
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-zoom-btn,
#view-projekte #projNachtraegeCard > .mp-header .kva-doc-zoom-label { min-height: 36px !important; }

@media (max-width: 1100px) {
  #view-projekte #projNachtraegeCard > .mp-header { grid-template-columns: minmax(0,1fr) auto !important; }
  #view-projekte #projNachtraegeCard > .mp-header > .kva-doc-mode-toolbar { grid-column: 1 / -1 !important; justify-self: end !important; }
}
@media (max-width: 700px) {
  #view-projekte #projNachtraegeCard > .mp-header { grid-template-columns: minmax(0,1fr) !important; align-items: start !important; }
  #view-projekte #projNachtraegeCard > .mp-header > :is(.mp-header-actions,.kva-doc-mode-toolbar) { justify-self: stretch !important; flex-wrap: wrap !important; }
}

/* Eine einzige rechte MalerPlus-Dockleiste in JEDEM Modul, einschließlich
   Dashboard. Die Modulansicht darf keine eigene Variante mehr erfinden. */
@media (min-width: 768px) {
  body #mpSideRail {
    gap: 7px !important;
    padding: 9px !important;
    border: 1px solid rgba(255,255,255,.84) !important;
    border-radius: 24px !important;
    background: rgba(var(--mp-f2-f6f9fc), 0.88) !important;
    box-shadow: 0 18px 42px -24px rgba(15,23,42,.52), inset 0 1px 0 rgba(255,255,255,.98), inset 0 0 0 1px rgba(15,23,42,.035) !important;
    -webkit-backdrop-filter: blur(24px) saturate(1.25) !important;
    backdrop-filter: blur(24px) saturate(1.25) !important;
  }
  body #mpSideRail .mp-rail-tab {
    box-sizing: border-box !important;
    width: 46px !important;
    height: 46px !important;
    border: 1px solid rgba(255,255,255,.50) !important;
    border-radius: 13px !important;
    color: #fff !important;
    box-shadow: 0 7px 15px -9px rgba(15,23,42,.58), inset 0 1px 0 rgba(255,255,255,.42) !important;
  }
  body #mpSideRail .mp-rail-tab[data-tab="leads"] { background: linear-gradient(145deg,#38b8ff,#168fd7) !important; }
  body #mpSideRail .mp-rail-tab[data-tab="projekte"] { background: linear-gradient(145deg,#35c973,#13a451) !important; }
  body #mpSideRail .mp-rail-tab[data-tab="termine"] { background: linear-gradient(145deg,#69a6ff,#3b7fe9) !important; }
  body #mpSideRail .mp-rail-tab[data-tab="stunden"] { background: linear-gradient(145deg,#35c9bc,#0f9d91) !important; }
  body #mpSideRail .mp-rail-tab[data-tab="chat"] { background: linear-gradient(145deg,#25d366,#25d366) !important; }
  body #mpSideRail .mp-rail-tab[data-tab="notizen"] { background: linear-gradient(145deg,#ffc83f,#eca800) !important; color:#513800 !important; }
  body #mpSideRail .mp-rail-tab:hover { transform: translateX(-3px) translateY(-1px) scale(1.035) !important; }
  body #mpSideRail :is(.mp-rail-collapse,.mp-rail-toggle,#mpRailToggle) {
    border-radius: 12px !important;
    background: rgb(var(--mp-flaeche-3-rgb)) !important;
    color: rgb(var(--mp-t3-728197)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8) !important;
  }
  body #mpSideRail :is(.mp-rail-badge,[data-badge]) {
    border: 2px solid #fff !important;
    box-shadow: 0 3px 8px -4px rgba(15,23,42,.5) !important;
  }
}

/* Drawer-/Topbar-Ebenen: kein globaler Dock-Griff oder Listenpfeil liegt
   über einem Erfassungsfenster. Personalisierung bleibt immer ganz oben. */
body.mp-bs-create-open,
body.mp-create-drawer-open { overflow: hidden !important; }

.mp-bs-create-overlay,
.mp-create-drawer-overlay { z-index: 18000 !important; }

body.mp-bs-create-open :is(#mpBottomNavGrip,#mpSideRail,#mpRailToggle,.mp-workspace-rail-toggle,.mp-pn-save,.mp-pn-fab),
body.mp-create-drawer-open :is(#mpBottomNavGrip,#mpSideRail,#mpRailToggle,.mp-workspace-rail-toggle,.mp-pn-save,.mp-pn-fab) {
  visibility: hidden !important;
  pointer-events: none !important;
}

html body:has(#mpAccountDropdown:not(.hidden)) header.topbar {
  z-index: 2147483000 !important;
  isolation: isolate !important;
  overflow: visible !important;
}
html body:has(#mpAccountDropdown:not(.hidden)) #mpTopbarAccount {
  position: relative !important;
  z-index: 2147483100 !important;
  isolation: isolate !important;
}
html body #mpAccountDropdown { z-index: 2147483200 !important; }
html body:has(#mpAccountDropdown:not(.hidden)) #mpSideRail {
  visibility: hidden !important;
  pointer-events: none !important;
}
.mp-ust-ov { z-index: 2147483300 !important; }

/* Material ist fachlich in drei fokussierte Arbeitsansichten getrennt. */
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view] > [data-bs-material-part] {
  display: none !important;
}
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view="planned"] > [data-bs-material-part="planned"],
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view="extra"] > [data-bs-material-part="extra"],
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view="receipts"] > [data-bs-material-part="receipts"] {
  display: block !important;
}
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view="receipts"] > .projekt-summen,
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view="planned"] > .projekt-summen,
#view-projekte.mp-baustellen-golden #projMaterialCard[data-bs-material-view="extra"] > .projekt-summen {
  display: none !important;
}

#view-projekte.mp-baustellen-golden .mp-bs-nav-save { margin-left: auto !important; }
#view-projekte.mp-baustellen-golden .mp-bs-nav-save .mp-bs-nav-icon {
  background: linear-gradient(145deg,#2fc86e,#12a44e) !important;
}

/* Tablet: KPI-Werte und Materialeingaben dürfen weder gequetscht noch
   abgeschnitten werden. Unter 1024 px werden die beiden Hauptflächen
   bewusst untereinander gesetzt. */
@media (min-width: 768px) and (max-width: 1199px) {
  #view-projekte.mp-baustellen-golden #projOverviewTop {
    grid-template-columns: minmax(0,1fr) !important;
  }
  #view-projekte.mp-baustellen-golden #projKpiGrid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
  #view-projekte.mp-baustellen-golden #projKpiGrid .mp-kpi,
  #view-projekte.mp-baustellen-golden .proj-budget-statgrid > * {
    min-width: 0 !important;
  }
  #view-projekte.mp-baustellen-golden #projKpiGrid .mp-kpi-label,
  #view-projekte.mp-baustellen-golden .proj-budget-statgrid .proj-budget-stat-label {
    white-space: normal !important;
    line-height: 1.25 !important;
  }
  #view-projekte.mp-baustellen-golden #projKpiGrid .mp-kpi-value,
  #view-projekte.mp-baustellen-golden .proj-budget-statgrid strong {
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: clamp(19px,2.6vw,28px) !important;
  }
  #view-projekte.mp-baustellen-golden .proj-budget-statgrid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
  #view-projekte.mp-baustellen-golden #projMaterialCard .proj-inline-inputs:not(.proj-beleg-add) {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 10px !important;
  }
  #view-projekte.mp-baustellen-golden #projMaterialCard .proj-inline-inputs:not(.proj-beleg-add) > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
  #view-projekte.mp-baustellen-golden #projMaterialCard :is(.proj-bestell-scroll,.proj-material-scroll,.belege-scroll) {
    max-width: 100% !important;
    overflow-x: auto !important;
  }
}

@media (max-width: 900px) {
  #view-projekte.mp-baustellen-golden #projMaterialCard .desktop-only { display: none !important; }
  #view-projekte.mp-baustellen-golden #projMaterialCard .mobile-only { display: block !important; }
}

/* Angebote/Rechnungen übernehmen die freigegebene MalerPlus-Bereichsleiste. */
#view-kva .mp-editor-section-nav,
#view-rechnung .mp-editor-section-nav,
#view-mail .mp-editor-section-nav {
  box-sizing: border-box !important;
  display: flex !important;
  width: 100% !important;
  min-height: 66px !important;
  margin: 16px 0 !important;
  padding: 0 14px !important;
  align-items: center !important;
  gap: 26px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: 0 10px 28px -23px rgba(15,23,42,.58) !important;
}

#view-kva .mp-editor-section-item,
#view-rechnung .mp-editor-section-item,
#view-mail .mp-editor-section-item {
  position: relative !important;
  display: inline-flex !important;
  min-height: 64px !important;
  padding: 0 6px !important;
  align-items: center !important;
  gap: 9px !important;
  border: 0 !important;
  background: transparent !important;
  color: rgb(var(--mp-t3-607087)) !important;
  box-shadow: none !important;
  font: 700 13px/1.2 inherit !important;
  white-space: nowrap !important;
}

#view-kva .mp-editor-section-item::after,
#view-rechnung .mp-editor-section-item::after,
#view-mail .mp-editor-section-item::after {
  content: "" !important;
  position: absolute !important;
  right: 2px !important;
  bottom: -1px !important;
  left: 2px !important;
  height: 2px !important;
  border-radius: 2px !important;
  background: transparent !important;
}

#view-kva .mp-editor-section-item.is-active,
#view-rechnung .mp-editor-section-item.is-active,
#view-mail .mp-editor-section-item.is-active { color: rgb(var(--mp-t1-172033)) !important; }
#view-kva .mp-editor-section-item.is-active::after,
#view-rechnung .mp-editor-section-item.is-active::after,
#view-mail .mp-editor-section-item.is-active::after { background: var(--editor-accent,#2bb0ff) !important; }

#view-kva .mp-editor-section-icon,
#view-rechnung .mp-editor-section-icon,
#view-mail .mp-editor-section-icon {
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  flex: 0 0 34px !important;
  place-items: center !important;
  border-radius: 10px !important;
  background: var(--editor-accent,#2bb0ff) !important;
  color: #fff !important;
  box-shadow: 0 6px 13px -8px var(--editor-accent,#2bb0ff), inset 0 1px 0 rgba(255,255,255,.38) !important;
}
#view-kva .mp-editor-section-icon svg,
#view-rechnung .mp-editor-section-icon svg,
#view-mail .mp-editor-section-icon svg,
#view-mail .mp-editor-section-icon svg { width: 19px !important; height: 19px !important; }

#view-kva.mp-document-editor-golden[data-mp-editor-section] [data-mp-editor-card],
#view-rechnung.mp-document-editor-golden[data-mp-editor-section] [data-mp-editor-card],
#view-mail.mp-document-editor-golden[data-mp-editor-section] [data-mp-editor-card],
#view-mail.mp-document-editor-golden[data-mp-editor-section] [data-mp-editor-card] { display: none !important; }
#view-kva.mp-document-editor-golden[data-mp-editor-section="rahmen"] [data-mp-editor-card="rahmen"],
#view-kva.mp-document-editor-golden[data-mp-editor-section="positionen"] [data-mp-editor-card="positionen"],
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] [data-mp-editor-card="kommunikation"],
#view-rechnung.mp-document-editor-golden[data-mp-editor-section="rahmen"] [data-mp-editor-card="rahmen"],
#view-mail.mp-document-editor-golden[data-mp-editor-section="rahmen"] [data-mp-editor-card="rahmen"],
#view-rechnung.mp-document-editor-golden[data-mp-editor-section="positionen"] [data-mp-editor-card="positionen"],
#view-mail.mp-document-editor-golden[data-mp-editor-section="positionen"] [data-mp-editor-card="positionen"],
#view-rechnung.mp-document-editor-golden[data-mp-editor-section="kommunikation"] [data-mp-editor-card="kommunikation"],
#view-mail.mp-document-editor-golden[data-mp-editor-section="kommunikation"] [data-mp-editor-card="kommunikation"],
#view-rechnung.mp-document-editor-golden[data-mp-editor-section="zahlung"] [data-mp-editor-card="zahlung"],
#view-mail.mp-document-editor-golden[data-mp-editor-section="zahlung"] [data-mp-editor-card="zahlung"],
#view-mail.mp-document-editor-golden[data-mp-editor-section="nachricht"] [data-mp-editor-card="nachricht"],
#view-mail.mp-document-editor-golden[data-mp-editor-section="verfassen"] [data-mp-editor-card="verfassen"] {
  display: block !important;
}

#view-rechnung.rg-editor-zu .mp-editor-section-nav,
#view-mail.rg-editor-zu .mp-editor-section-nav,
#view-rechnung.rg-editor-zu [data-mp-editor-card],
#view-mail.rg-editor-zu [data-mp-editor-card] { display: none !important; }

@media (min-width: 768px) {
  /* Freigegebene Arbeitsreihenfolge: Bereichsleiste direkt unter der
     Topbar, echte Modulaktionen unmittelbar darunter. */
  #view-kva .mp-editor-section-nav,
  #view-rechnung .mp-editor-section-nav,
  #view-mail .mp-editor-section-nav {
    position: sticky !important;
    z-index: 430 !important;
    top: var(--mp-ws-top,58px) !important;
    margin-top: 0 !important;
  }
  #view-kva .view-footer-actions,
  #view-rechnung .view-footer-actions {
    position: sticky !important;
    z-index: 425 !important;
    top: calc(var(--mp-ws-top,58px) + 66px) !important;
    padding-block: 8px !important;
    background: rgba(var(--mp-f2-f4f6f9), 0.96) !important;
  }

  /* Anschreiben, Schlusstext und Zahlungsbedingungen werden auf Desktop
     direkt in der Dokumentansicht bearbeitet – keine doppelten Karten. */
  #view-kva [data-mp-editor-redundant="desktop"] { display: none !important; }

  /* Eingeklappt bedeutet wirklich eingeklappt: kein weißer 58-px-Rest. */
  html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).view.active.is-list-rail-collapsed > .view-container > .view-box,
  html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).view.active > .view-container > .view-box.is-list-rail-collapsed {
    box-sizing: border-box !important;
    width: 100% !important;
    margin-left: 0 !important;
    padding-left: 62px !important;
  }
  html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).view.active.is-list-rail-collapsed > .mp-workspace-list-master {
    overflow: visible !important;
    transform: translateX(-100%) !important;
    box-shadow: none !important;
  }
  html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).view.active.is-list-rail-collapsed .mp-workspace-rail-toggle {
    position: absolute !important;
    top: 18px !important;
    right: -54px !important;
    width: 42px !important;
    height: 42px !important;
  }
}

/* Headerkarten exakt auf die kompakte Baustellenhöhe bringen. */
html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header {
  box-sizing: border-box !important;
  min-height: 96px !important;
  padding: 18px 22px !important;
  margin-bottom: 16px !important;
}

/* Angebot: keine separaten Doppel-Karten mehr. Kommunikation wird direkt
   im vorhandenen Dokument bearbeitet; Zahlungsbedingungen ebenso. */
#view-kva.mp-document-editor-golden [data-mp-editor-redundant="desktop"] { display: none !important; }

/* Angebot und Rechnung besitzen einen einzigen, sticky Arbeitskopf. Die
   Bereichs-Icons und die echten Dokumentaktionen sind keine zwei losen
   Balken mehr, sondern zwei Ebenen derselben Card. */
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck {
  position: sticky !important;
  z-index: 430 !important;
  top: var(--mp-ws-top,58px) !important;
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  overflow: visible !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: 0 10px 28px -23px rgba(15,23,42,.58) !important;
  align-items: center !important;
}

:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav {
  position: relative !important;
  z-index: 2 !important;
  top: auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 64px !important;
  flex: none !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  gap: 14px !important;
}

:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions {
  position: relative !important;
  z-index: 1 !important;
  top: auto !important;
  min-width: 0 !important;
  min-height: 64px !important;
  flex: 0 1 auto !important;
  margin: 0 0 0 auto !important;
  padding: 8px 14px 8px 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
}

:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck :is(#mpAufWerteBtn,.mp-nzwin-btn,[data-mp-command-hidden="1"]) {
  display: none !important;
}

#view-rechnung .mp-editor-command-deck #mpSearchBtn,
#view-mail .mp-editor-command-deck #mpSearchBtn {
  display: none !important;
}

:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck .view-footer-actions > * {
  flex: 0 0 auto !important;
}

/* Diese Felder werden in der Dokumentansicht bearbeitet. Die alten
   separaten Karten bleiben als Daten-/Handler-Quelle im DOM, aber nie als
   zweite sichtbare Oberfläche. Die ID-Fallbacks wirken schon vor dem JS. */
#view-kva :is(.card:has(#kvaDepositEnabled),.card:has(#kvaAnschreibenText),.card:has(#kvaSchlussText)),
#view-rechnung :is(.rg-editor-card:has(#rechnungAnschreibenText),.rg-editor-card:has(#rechnungSchlussText)),
:is(#view-kva,#view-rechnung,#view-mail) [data-mp-editor-redundant="always"] {
  display: none !important;
}

/* Die rechte MalerPlus-Dockleiste ist eine einzige globale Komponente. Die
   vom Basismodul injizierten linken Fahnen-/Textregeln werden appweit auf
   den freigegebenen rechten App-Icon-Pod normalisiert. */
@media (min-width: 768px) {
  html body #mpSideRail {
    position: fixed !important;
    z-index: 940 !important;
    top: 50% !important;
    right: 12px !important;
    left: auto !important;
    display: flex !important;
    width: auto !important;
    padding: 9px !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 7px !important;
    transform: translateY(-50%) !important;
  }

  html body.mp-rail-collapsed #mpSideRail {
    transform: translateY(-50%) translateX(145%) !important;
  }

  html body #mpSideRail .mp-rail-tab {
    display: grid !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    padding: 0 !important;
    place-items: center !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    letter-spacing: 0 !important;
  }

  html body #mpSideRail .mp-rail-tab:hover {
    padding: 0 !important;
  }

  html body #mpSideRail .mp-rail-tab .mrt-label {
    display: none !important;
  }

  html body #mpSideRail .mp-rail-tab .mrt-ico {
    display: grid !important;
    width: 24px !important;
    height: 24px !important;
    place-items: center !important;
    writing-mode: horizontal-tb !important;
  }

  html body #mpSideRail .mp-rail-tab .mrt-ico svg {
    width: 23px !important;
    height: 23px !important;
  }

  html body #mpSideRail .mp-rail-tab .mrt-badge {
    top: -5px !important;
    right: -5px !important;
    border: 2px solid #fff !important;
  }

  html body #mpSideRail .mp-rail-collapse {
    width: 46px !important;
    height: 38px !important;
    margin: 0 !important;
  }

  html body #mpRailToggle {
    right: 0 !important;
    left: auto !important;
    border-right: 0 !important;
    border-left: 1px solid rgba(148,163,184,.22) !important;
    border-radius: 12px 0 0 12px !important;
  }

  /* Hoehere Spezifitaet als die alte helle Rail-Variante: exakt die
     freigegebenen Baustellenfarben gelten in jedem aktiven Modul. */
  html body #mpSideRail .mp-rail-tab[data-tab="leads"] { background: linear-gradient(145deg,#38b8ff,#168fd7) !important; color:#fff !important; }
  html body #mpSideRail .mp-rail-tab[data-tab="projekte"] { background: linear-gradient(145deg,#35c973,#13a451) !important; color:#fff !important; }
  html body #mpSideRail .mp-rail-tab[data-tab="termine"] { background: linear-gradient(145deg,#69a6ff,#3b7fe9) !important; color:#fff !important; }
  html body #mpSideRail .mp-rail-tab[data-tab="stunden"] { background: linear-gradient(145deg,#35c9bc,#0f9d91) !important; color:#fff !important; }
  html body #mpSideRail .mp-rail-tab[data-tab="chat"] { background: linear-gradient(145deg,#25d366,#25d366) !important; color:#fff !important; }
  html body #mpSideRail .mp-rail-tab[data-tab="notizen"] { background: linear-gradient(145deg,#ffc83f,#eca800) !important; color:#513800 !important; }

  html body #mpSideRail .mp-rail-tab .mrt-ico {
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    box-shadow: none !important;
  }
}

@media (max-width: 767px) {
  :is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck {
    top: 0 !important;
    margin-bottom: 12px !important;
    border-radius: 14px !important;
    overflow-x: auto !important;
  }
  :is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav {
    border-radius: 14px 14px 0 0 !important;
  }
  :is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions {
    border-radius: 14px !important;
    overflow-x: auto !important;
  }
}

/* Der Aufmass-Pfeil ist vom ausfahrenden Listenfenster entkoppelt. So kann
   das Fenster vollstaendig verschwinden, ohne einen weissen Rand oder eine
   senkrechte Linie stehen zu lassen. */
.mp-aufmass-external-rail-toggle { display: none !important; }

@media (min-width: 768px) {
  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-master,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed .mp-aufmass-master {
    pointer-events: none !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(calc(-100% - 18px)) !important;
  }

  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-rail-toggle,
  html body #view-aufmass.view.active > .view-container > .view-box.is-rail-collapsed .mp-aufmass-rail-toggle {
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html body #view-aufmass.view.active:has(.view-box.is-rail-collapsed) > .mp-aufmass-external-rail-toggle {
    position: fixed !important;
    z-index: 950 !important;
    top: calc(var(--mp-ws-top,58px) + 10px) !important;
    left: 8px !important;
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    place-items: center !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    border-radius: 13px !important;
    background: rgb(var(--mp-flaeche-rgb)) !important;
    color: rgb(var(--mp-t2-344257)) !important;
    box-shadow: 0 10px 24px -17px rgba(15,23,42,.52) !important;
  }

  .mp-aufmass-external-rail-toggle svg {
    width: 18px !important;
    height: 18px !important;
  }
}

@media (max-width: 767px) {
  #view-kva .mp-editor-section-nav,
  #view-rechnung .mp-editor-section-nav,
  #view-mail .mp-editor-section-nav {
    min-height: 60px !important;
    margin: 12px 0 !important;
    padding: 0 8px !important;
    gap: 5px !important;
    overflow-x: auto !important;
  }
  #view-kva .mp-editor-section-item,
  #view-rechnung .mp-editor-section-item,
  #view-mail .mp-editor-section-item { min-height: 58px !important; padding: 0 7px !important; font-size: 11.5px !important; }
  #view-kva .mp-editor-section-icon,
  #view-rechnung .mp-editor-section-icon,
  #view-mail .mp-editor-section-icon { width: 31px !important; height: 31px !important; flex-basis: 31px !important; }
}

/* Briefing-Hinweis: Statuszeile statt Werbebanner. */
#view-projekte.mp-baustellen-golden #projBriefingStrip:not([hidden]) {
  display: grid !important;
  grid-template-columns: 28px minmax(0,1fr) auto !important;
  min-height: 54px !important;
  margin: 12px 0 0 !important;
  padding: 9px 12px !important;
  align-items: center !important;
  gap: 10px !important;
  border: 1px solid rgba(217,119,6,.20) !important;
  border-radius: 11px !important;
  background: rgb(var(--mp-f2-fff8ee)) !important;
  box-shadow: none !important;
}

#view-projekte.mp-baustellen-golden #projBriefingStrip .mp-briefing-strip-icon {
  font-size: 17px !important;
}

#view-projekte.mp-baustellen-golden #projBriefingStrip .mp-briefing-strip-title {
  color: #7c3d12 !important;
  font-size: 12.5px !important;
}

#view-projekte.mp-baustellen-golden #projBriefingStrip .mp-briefing-strip-sub {
  margin-top: 1px !important;
  color: #965b35 !important;
  font-size: 11.5px !important;
}

#view-projekte.mp-baustellen-golden #projBriefingStrip .mp-briefing-strip-cta {
  min-height: 34px !important;
  padding: 0 8px !important;
  border: 0 !important;
  background: transparent !important;
  color: #c45d0b !important;
  box-shadow: none !important;
  font-size: 12px !important;
}

/* Neue Baustelle: vorhandenes, getestetes Formular in einem fokussierten
   Erfassungsfenster. Keine zweite Speicherlogik. */
body.mp-bs-create-open { overflow: hidden !important; }

.mp-bs-create-overlay {
  position: fixed !important;
  z-index: 18000 !important;
  inset: 0 !important;
  display: grid !important;
  padding: var(--mp-ws-top,58px) 0 0 !important;
  place-items: stretch end !important;
  background: rgba(20,29,43,.42) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
}

.mp-bs-create-sheet {
  display: grid !important;
  grid-template-rows: auto minmax(0,1fr) !important;
  width: min(540px,calc(100vw - 24px)) !important;
  height: calc(100dvh - var(--mp-ws-top,58px)) !important;
  max-height: none !important;
  overflow: hidden !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  border-radius: 24px 0 0 24px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow: -18px 0 54px -30px rgba(15,23,42,.68) !important;
  animation: mpBsCreateIn 360ms cubic-bezier(.16,1,.3,1) both !important;
}

@keyframes mpBsCreateIn {
  from { opacity: .6; transform: translateX(36px); }
  to { opacity: 1; transform: translateX(0); }
}

.mp-bs-create-head {
  display: flex !important;
  min-height: 76px !important;
  padding: 14px 16px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  border-bottom: 1px solid rgba(15,23,42,.09) !important;
}

.mp-bs-create-head > div {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.mp-bs-create-icon {
  display: grid !important;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  place-items: center !important;
  border-radius: 11px !important;
  background: #16a34a !important;
  color: #fff !important;
  box-shadow: 0 7px 16px -10px rgba(22,163,74,.75), inset 0 1px 0 rgba(255,255,255,.35) !important;
}

.mp-bs-create-icon svg { width: 21px !important; height: 21px !important; }
.mp-bs-create-head h2 { margin: 0 !important; color:rgb(var(--mp-t1-172033)) !important; font-size:21px !important; }
.mp-bs-create-head p { margin:3px 0 0 !important; color:rgb(var(--mp-t3-718095)) !important; font-size:12px !important; }

.mp-bs-create-close {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  padding: 0 !important;
  place-items: center !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 11px !important;
  background: rgb(var(--mp-flaeche-rgb)) !important;
  color:rgb(var(--mp-t3-526176)) !important;
  box-shadow:none !important;
  font-size:23px !important;
}

.mp-bs-create-close svg { width:19px !important; height:19px !important; }

.mp-bs-create-body {
  min-height: 0 !important;
  padding: 18px !important;
  overflow: auto !important;
}

.mp-bs-create-body #projektForm {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  gap: 14px !important;
}

.mp-bs-create-body #projektForm > .form-group {
  margin: 0 !important;
}

.mp-bs-create-body #projektForm > .form-group:nth-of-type(3),
.mp-bs-create-body #projektForm > #projGeoBlock {
  grid-column: auto !important;
}

.mp-bs-create-body #projektForm label {
  display: block !important;
  margin: 0 0 6px !important;
  color:rgb(var(--mp-t3-607087)) !important;
  font-size:11px !important;
  font-weight:750 !important;
  letter-spacing:.025em !important;
  text-transform:uppercase !important;
}

.mp-bs-create-body #projektForm input,
.mp-bs-create-body #projektForm select {
  width:100% !important;
  min-height:46px !important;
  border:1px solid rgba(15,23,42,.12) !important;
  border-radius:11px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:0 4px 12px -11px rgba(15,23,42,.45) !important;
}

.mp-bs-create-body #projektForm #projektIsOutdoor {
  width:auto !important;
  min-height:0 !important;
}

.mp-bs-create-body #projektForm > .form-group:nth-of-type(7) {
  padding: 12px 13px !important;
  border: 1px solid rgba(15,23,42,.09) !important;
  border-radius: 12px !important;
  background: rgb(var(--mp-flaeche-2-rgb)) !important;
}

.mp-bs-create-body #projektForm > .form-group:nth-of-type(7) > label {
  display: flex !important;
  margin: 0 !important;
  align-items: center !important;
  gap: 9px !important;
  color: rgb(var(--mp-t2-344257)) !important;
  font-size: 12px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.mp-bs-create-body #projektForm > .form-group:nth-of-type(7) .mp-settings-small {
  margin: 5px 0 0 27px !important;
  color: rgb(var(--mp-t3-718095)) !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
}

.mp-bs-create-actions {
  position: sticky !important;
  z-index: 4 !important;
  bottom: -18px !important;
  display: flex !important;
  margin: 4px -18px -18px !important;
  padding: 13px 18px calc(13px + env(safe-area-inset-bottom,0px)) !important;
  justify-content: flex-end !important;
  gap: 9px !important;
  border-top: 1px solid rgba(15,23,42,.09) !important;
  background: rgba(var(--mp-flaeche-rgb), .97) !important;
}

.mp-bs-create-body #btnProjektSpeichern,
.mp-bs-create-body .mp-bs-create-cancel {
  width: auto !important;
  min-width: 132px !important;
  min-height:44px !important;
  margin-top:4px !important;
  border-radius:11px !important;
}

.mp-bs-create-body #btnProjektSpeichern {
  border: 1px solid #159bdf !important;
  background: #20a9ee !important;
  color: #fff !important;
  box-shadow: 0 8px 16px -12px rgba(17,143,211,.75) !important;
}

.mp-bs-create-body .mp-bs-create-cancel {
  border:1px solid rgba(15,23,42,.12) !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  color:rgb(var(--mp-t2-344257)) !important;
  box-shadow:none !important;
}

.mp-bs-create-success {
  display:grid !important;
  min-height:290px !important;
  padding:32px !important;
  place-items:center !important;
  align-content:center !important;
  gap:8px !important;
  text-align:center !important;
}

.mp-bs-create-success[hidden] { display:none !important; }
.mp-bs-create-success > span { display:grid !important; width:54px !important; height:54px !important; place-items:center !important; border-radius:16px !important; background:#16a34a !important; color:#fff !important; }
.mp-bs-create-success svg { width:28px !important; height:28px !important; }
.mp-bs-create-success strong { color:rgb(var(--mp-t1-172033)) !important; font-size:21px !important; }
.mp-bs-create-success small { color:rgb(var(--mp-t3-718095)) !important; font-size:12.5px !important; }

@media (max-width: 767px) {
  .mp-bs-create-overlay { padding:0 !important; place-items:stretch end !important; }
  .mp-bs-create-sheet { width:min(94vw,480px) !important; height:100dvh !important; max-height:none !important; border-radius:22px 0 0 22px !important; }
  .mp-bs-create-body { padding:14px !important; }
  .mp-bs-create-body #projektForm { grid-template-columns:minmax(0,1fr) !important; gap:12px !important; }
  .mp-bs-create-body #projektForm > .form-group:nth-of-type(3),
  .mp-bs-create-body #projektForm > #projGeoBlock { grid-column:auto !important; }
  #view-projekte.mp-baustellen-golden #projBriefingStrip:not([hidden]) { grid-template-columns:24px minmax(0,1fr) !important; }
  #view-projekte.mp-baustellen-golden #projBriefingStrip .mp-briefing-strip-cta { grid-column:2 !important; justify-self:start !important; }
}

/* Die Bereichswahl bleibt eine leichte Zeile, ihre Symbole sind aber wieder
   echte MalerPlus-App-Icons statt neutraler Tab-Piktogramme. */
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-group-nav {
  min-height: 64px !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item,
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item > summary {
  min-height: 64px !important;
  gap: 9px !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-icon {
  display: grid !important;
  width: 32px !important;
  height: 32px !important;
  flex: 0 0 32px !important;
  place-items: center !important;
  border-radius: 9px !important;
  background: var(--bs-group-accent, #2bb0ff) !important;
  color: #fff !important;
  box-shadow: 0 5px 12px -7px var(--bs-group-accent, #2bb0ff), inset 0 1px 0 rgba(255,255,255,.35) !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-icon svg {
  width: 18px !important;
  height: 18px !important;
  color: #fff !important;
  stroke: currentColor !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  fill: none !important;
}

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item[data-bs-group="uebersicht"] .mp-bs-nav-icon { background: linear-gradient(145deg,#7778ff,#5658eb) !important; }
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item[data-bs-group="ausfuehrung"] .mp-bs-nav-icon { background: linear-gradient(145deg,#2fc86e,#12a44e) !important; }
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item[data-bs-group="kosten"] .mp-bs-nav-icon { background: linear-gradient(145deg,#20b8d7,#078ca9) !important; }
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item[data-bs-group="dokumente"] .mp-bs-nav-icon { background: linear-gradient(145deg,#ff8a32,#f2630d) !important; }
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item[data-bs-group="mehr"] .mp-bs-nav-icon { background: linear-gradient(145deg,#5598ff,#2f76e9) !important; }

html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item.is-active .mp-bs-nav-icon,
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden .mp-bs-nav-item.is-active > summary .mp-bs-nav-icon {
  box-shadow: 0 6px 14px -7px var(--bs-group-accent, #2bb0ff), inset 0 1px 0 rgba(255,255,255,.42), 0 0 0 3px rgba(43,176,255,.10) !important;
}

/* Rechte Schnellwerkzeuge als vertikale Schwester der MalerPlus-Dockleiste. */
@media (min-width: 768px) {
  body:has(#view-projekte.view.active) #mpSideRail {
    gap: 7px !important;
    padding: 9px !important;
    border: 1px solid rgba(255,255,255,.82) !important;
    border-radius: 24px !important;
    background: rgba(var(--mp-f2-f6f9fc), 0.82) !important;
    box-shadow: 0 18px 42px -24px rgba(15,23,42,.52), inset 0 1px 0 rgba(255,255,255,.96), inset 0 0 0 1px rgba(15,23,42,.035) !important;
    -webkit-backdrop-filter: blur(24px) saturate(1.35) !important;
    backdrop-filter: blur(24px) saturate(1.35) !important;
  }

  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab {
    width: 46px !important;
    height: 46px !important;
    border: 1px solid rgba(255,255,255,.48) !important;
    border-radius: 13px !important;
    color: #fff !important;
    box-shadow: 0 7px 15px -9px rgba(15,23,42,.58), inset 0 1px 0 rgba(255,255,255,.38) !important;
  }

  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab[data-tab="leads"] { background: linear-gradient(145deg,#38b8ff,#168fd7) !important; }
  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab[data-tab="projekte"] { background: linear-gradient(145deg,#35c973,#13a451) !important; }
  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab[data-tab="termine"] { background: linear-gradient(145deg,#69a6ff,#3b7fe9) !important; }
  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab[data-tab="stunden"] { background: linear-gradient(145deg,#35c9bc,#0f9d91) !important; }
  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab[data-tab="chat"] { background: linear-gradient(145deg,#25d366,#25d366) !important; }
  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab[data-tab="notizen"] { background: linear-gradient(145deg,#ffc83f,#eca800) !important; color:#513800 !important; }

  body:has(#view-projekte.view.active) #mpSideRail .mp-rail-tab:hover {
    transform: translateX(-3px) translateY(-1px) scale(1.035) !important;
  }
}

@media (max-width: 767px) {
  #view-projekte.mp-baustellen-golden .mp-bs-group-nav {
    min-height: 60px !important;
  }

  #view-projekte.mp-baustellen-golden .mp-bs-nav-item,
  #view-projekte.mp-baustellen-golden .mp-bs-nav-item > summary {
    min-height: 60px !important;
  }

  #view-projekte.mp-baustellen-golden .mp-bs-nav-icon {
    width: 30px !important;
    height: 30px !important;
    flex-basis: 30px !important;
  }

  /* Fuenf sichtbare App-Bereiche passen exakt in die Projekt-Card. Der
     Speichern-Befehl bleibt im Mehr-Menue erreichbar und erzeugt keine
     abgeschnittene sechste Kachel am rechten Rand. */
  #view-projekte.mp-baustellen-golden .mp-bs-group-nav {
    grid-template-columns: repeat(5,minmax(0,1fr)) !important;
    overflow: visible !important;
  }

  #view-projekte.mp-baustellen-golden .mp-bs-nav-save {
    display: none !important;
  }

  /* Mobile Bereichsmenues gehoeren unmittelbar unter das angeklickte
     App-Icon, nicht an den unteren Bildschirmrand. */
  #view-projekte.mp-baustellen-golden .mp-bs-nav-menu {
    position: fixed !important;
    z-index: 18500 !important;
    top: var(--mp-bs-menu-top, 128px) !important;
    right: auto !important;
    bottom: auto !important;
    left: var(--mp-bs-menu-left, 12px) !important;
    width: min(280px,calc(100vw - 24px)) !important;
    max-height: min(56dvh,430px) !important;
    transform: none !important;
  }

  /* Stundenbudget: keine Desktop-Flexreste und niemals buchstabenweiser
     Umbruch. Kopf, Ziel und Link erhalten eine belastbare Mobile-Matrix. */
  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard.mp-bs-panel > .card-header {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    min-height: 0 !important;
    padding: 13px !important;
    align-items: start !important;
    gap: 8px 10px !important;
  }

  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard.mp-bs-panel > .card-header > div:first-child {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard.mp-bs-panel > .card-header h2 {
    width: auto !important;
    max-width: none !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    white-space: nowrap !important;
  }

  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard.mp-bs-panel > .card-header > div:nth-child(2) {
    grid-column: 1 !important;
    justify-self: start !important;
  }

  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard.mp-bs-panel > .card-header > .mp-bs-hours-link {
    grid-column: 2 !important;
    justify-self: end !important;
  }

  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard .proj-budget-statgrid .mp-kpi-tile {
    min-width: 0 !important;
    padding: 12px !important;
  }

  html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projBudgetCard .proj-budget-statgrid .mp-kpi-value {
    max-width: 100% !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: clamp(18px,6vw,24px) !important;
  }
}

/* Finaler Golden-Hardwall: diese Regeln muessen nach allen historischen
   Modulvarianten stehen. */
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] :is([data-mp-editor-communication-proxy],#kvaA4Wrapper,.mp-doc-view-host) { display:none !important; }
#view-kva.mp-document-editor-golden[data-mp-editor-section="kommunikation"] .mp-comm-card[data-kind="offer"] { display:block !important; }

:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav,
#view-aufmass .mp-aufmass-section-nav,
#view-projekte :is(#mpBsGroupNav,#projTabsNav) {
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
}
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions { display:contents !important; }
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions > :first-child {
  margin-left:12px !important;
}
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > :is(.mp-editor-section-item,.view-footer-actions > *),
#view-aufmass .mp-aufmass-section-nav > *,
#view-projekte :is(#mpBsGroupNav,#projTabsNav) > * { flex:0 0 auto !important; white-space:nowrap !important; }

@media (min-width:768px) {
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat).view.active.is-list-rail-collapsed > .view-container > .view-box,
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat).view.active > .view-container > .view-box.is-list-rail-collapsed {
    box-sizing:border-box !important;
    width:100% !important;
    margin-left:0 !important;
    padding-left:56px !important;
  }
  html body #view-aufmass.view.active > .view-box.is-rail-collapsed {
    box-sizing:border-box !important;
    padding-left:56px !important;
  }
  html body :is(#view-kva,#view-rechnung,#view-projekte,#view-kunden,#view-notizen,#view-baustellenchat).view.active.is-list-rail-collapsed > .mp-workspace-list-master,
  html body #view-aufmass.view.active > .view-box.is-rail-collapsed .mp-aufmass-master { display:none !important; border:0 !important; box-shadow:none !important; }

  html body:has(.view.active) #mpSideRail button.mp-rail-tab[data-tab="leads"] { background:linear-gradient(145deg,#38b8ff,#168fd7) !important; background-image:linear-gradient(145deg,#38b8ff,#168fd7) !important; color:#fff !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab[data-tab="projekte"] { background:linear-gradient(145deg,#35c973,#13a451) !important; background-image:linear-gradient(145deg,#35c973,#13a451) !important; color:#fff !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab[data-tab="termine"] { background:linear-gradient(145deg,#69a6ff,#3b7fe9) !important; background-image:linear-gradient(145deg,#69a6ff,#3b7fe9) !important; color:#fff !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab[data-tab="stunden"] { background:linear-gradient(145deg,#35c9bc,#0f9d91) !important; background-image:linear-gradient(145deg,#35c9bc,#0f9d91) !important; color:#fff !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab[data-tab="chat"] { background:linear-gradient(145deg,#25d366,#25d366) !important; background-image:linear-gradient(145deg,#25d366,#25d366) !important; color:#fff !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab[data-tab="notizen"] { background:linear-gradient(145deg,#ffc83f,#eca800) !important; background-image:linear-gradient(145deg,#ffc83f,#eca800) !important; color:#513800 !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab:hover { transform:translateX(-3px) translateY(-1px) scale(1.035) !important; }
  html body:has(.view.active) #mpSideRail button.mp-rail-tab .mrt-ico { border:0 !important; background:transparent !important; background-image:none !important; color:inherit !important; box-shadow:none !important; }
}

/* Stundenuebersicht: derselbe App-Tab-Aufbau wie Baustellen/Angebote. */
#view-stundenuebersicht.mp-hours-golden[data-mp-hours-section] [data-mp-hours-panel] { display:none !important; }
#view-stundenuebersicht.mp-hours-golden[data-mp-hours-section="overtime"] [data-mp-hours-panel~="overtime"]:not([hidden]),
#view-stundenuebersicht.mp-hours-golden[data-mp-hours-section="cost"] [data-mp-hours-panel~="cost"]:not([hidden]),
#view-stundenuebersicht.mp-hours-golden[data-mp-hours-section="list"] [data-mp-hours-panel~="list"]:not([hidden]) { display:block !important; }
#view-stundenuebersicht.mp-hours-golden[data-mp-hours-section="cost"] #mpHrepSummary { display:grid !important; }

#view-stundenuebersicht .mp-hours-section-nav {
  position:sticky !important;
  z-index:430 !important;
  top:0 !important;
  box-sizing:border-box !important;
  display:flex !important;
  width:100% !important;
  min-height:64px !important;
  margin:0 0 16px !important;
  padding:7px 10px !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:16px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:0 10px 28px -23px rgba(15,23,42,.58) !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
}
#view-stundenuebersicht .mp-hours-section-nav::-webkit-scrollbar { display:none !important; }
#view-stundenuebersicht .mp-hours-section-item {
  position:relative !important;
  display:inline-flex !important;
  min-height:50px !important;
  padding:0 9px !important;
  align-items:center !important;
  gap:10px !important;
  flex:0 0 auto !important;
  border:0 !important;
  background:transparent !important;
  color:rgb(var(--mp-t3-617089)) !important;
  font:650 14px/1.2 inherit !important;
  white-space:nowrap !important;
}
#view-stundenuebersicht .mp-hours-section-item::after {
  content:"";
  position:absolute;
  right:0;
  bottom:-7px;
  left:0;
  height:2px;
  border-radius:999px;
  background:transparent;
}
#view-stundenuebersicht .mp-hours-section-item.is-active { color:rgb(var(--mp-t1-172033)) !important; }
#view-stundenuebersicht .mp-hours-section-item.is-active::after { background:var(--hours-accent,#2bb0ff) !important; }
#view-stundenuebersicht .mp-hours-section-icon {
  display:grid !important;
  width:36px !important;
  height:36px !important;
  place-items:center !important;
  flex:0 0 36px !important;
  border-radius:11px !important;
  background:var(--hours-accent,#2bb0ff) !important;
  color:#fff !important;
  box-shadow:0 6px 13px -8px var(--hours-accent,#2bb0ff),inset 0 1px 0 rgba(255,255,255,.38) !important;
}
#view-stundenuebersicht .mp-hours-section-icon svg { width:19px !important; height:19px !important; }
#view-stundenuebersicht .mp-hours-nav-action { margin-left:0 !important; flex:0 0 auto !important; }
#view-stundenuebersicht .mp-hours-section-nav > .mp-hours-nav-filter {
  width:auto !important;
  min-width:max-content !important;
  margin-left:auto !important;
  flex:0 0 auto !important;
}
#view-stundenuebersicht .mp-hours-section-nav > .mp-hours-nav-filter > summary {
  min-height:46px !important;
  padding:5px 11px !important;
  white-space:nowrap !important;
}
#view-stundenuebersicht .mp-hours-section-nav > .mp-hours-nav-filter .mp-hours-filter-summary-copy small { display:none !important; }
#view-stundenuebersicht.mp-hours-golden[data-mp-hours-section] .mp-hrep-filters-card.mp-hours-filter-host-empty { display:none !important; }

/* Die vielen Auswertungsfilter liegen hinter einem einzigen, klaren
   Filterknopf. Alle bestehenden Controls und Event-Handler bleiben erhalten. */
#view-stundenuebersicht .mp-hrep-filters-card {
  position:relative !important;
  min-height:58px !important;
  margin:0 0 16px !important;
  padding:8px !important;
  overflow:visible !important;
  border:1px solid rgba(15,23,42,.09) !important;
  border-radius:16px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:0 8px 24px -22px rgba(15,23,42,.45) !important;
}
#view-stundenuebersicht .mp-hours-filter-menu { position:relative !important; width:min(320px,100%) !important; margin-left:auto !important; }
#view-stundenuebersicht .mp-hours-filter-menu > summary {
  box-sizing:border-box !important;
  display:flex !important;
  min-height:42px !important;
  padding:6px 10px !important;
  align-items:center !important;
  gap:9px !important;
  list-style:none !important;
  cursor:pointer !important;
  border:1px solid rgba(43,176,255,.24) !important;
  border-radius:12px !important;
  background:rgb(var(--mp-flaeche-2-rgb)) !important;
  color:rgb(var(--mp-t2-26354a)) !important;
}
#view-stundenuebersicht .mp-hours-filter-menu > summary::-webkit-details-marker { display:none !important; }
#view-stundenuebersicht .mp-hours-filter-summary-icon { display:grid !important; width:30px !important; height:30px !important; place-items:center !important; flex:0 0 30px !important; border-radius:9px !important; background:rgb(var(--mp-f2-e9f7ff)) !important; color:#149fe8 !important; }
#view-stundenuebersicht .mp-hours-filter-summary-icon svg { width:16px !important; height:16px !important; }
#view-stundenuebersicht .mp-hours-filter-summary-copy { display:grid !important; min-width:0 !important; text-align:left !important; }
#view-stundenuebersicht .mp-hours-filter-summary-copy strong { font-size:13.5px !important; }
#view-stundenuebersicht .mp-hours-filter-summary-copy small { overflow:hidden !important; color:rgb(var(--mp-t3-7a889b)) !important; font-size:10.5px !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-stundenuebersicht .mp-hours-filter-count { display:grid !important; min-width:23px !important; height:23px !important; padding:0 5px !important; place-items:center !important; border-radius:999px !important; background:#dff4ff !important; color:#087fbd !important; font-size:11px !important; font-weight:800 !important; }
#view-stundenuebersicht .mp-hours-filter-count[hidden] { display:none !important; }
#view-stundenuebersicht .mp-hours-filter-chevron { margin-left:auto !important; transition:transform 160ms ease !important; }
#view-stundenuebersicht .mp-hours-filter-menu[open] .mp-hours-filter-chevron { transform:rotate(180deg) !important; }
#view-stundenuebersicht .mp-hours-filter-popover {
  position:fixed !important;
  z-index:1200 !important;
  top:var(--mp-hours-filter-top,calc(var(--mp-topbar-h,58px) + 74px)) !important;
  right:var(--mp-hours-filter-right,18px) !important;
  box-sizing:border-box !important;
  width:min(1120px,calc(100vw - 56px)) !important;
  max-height:min(72vh,720px) !important;
  padding:16px !important;
  overflow:auto !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:16px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:0 24px 64px -28px rgba(15,23,42,.46) !important;
}

@media (max-width:1023px) {
  html body #view-projekte.mp-baustellen-golden .mp-bs-group-nav > .mp-bs-nav-save { display:none !important; }
  #view-stundenuebersicht .mp-hours-section-nav { border-radius:14px !important; gap:6px !important; }
  #view-stundenuebersicht .mp-hours-section-item { min-height:48px !important; padding-inline:7px !important; font-size:12px !important; }
  #view-stundenuebersicht .mp-hours-section-icon { width:32px !important; height:32px !important; flex-basis:32px !important; }
  #view-stundenuebersicht .mp-hours-section-nav > .mp-hours-nav-filter { width:auto !important; }
  #view-stundenuebersicht .mp-hours-filter-popover { position:fixed !important; top:var(--mp-hours-filter-top,calc(var(--mp-topbar-h,52px) + 64px)) !important; right:12px !important; left:12px !important; width:auto !important; max-height:calc(100dvh - var(--mp-hours-filter-top,116px) - 12px) !important; }
}

/* =====================================================================
   WORKSPACE 46 · FINALER EINHEITLICHER APP-HARDWALL
   ===================================================================== */

/* Editor-Leisten folgen dem gemeinsamen Workspace-Rahmen. Eine fruehere
   0-px-Sonderregel fuer Angebot/Rechnung hatte deren Header sichtbar naeher
   an die Topbar gezogen als den Baustellen-Header und ist deshalb entfallen. */
html body :is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck {
  top:0 !important;
  margin-top:0 !important;
}

/* Tablet: die Baustellen-Untermenues verlassen den horizontal scrollenden
   Tab-Container und werden am tatsaechlich gedrueckten Icon verankert. */
@media (max-width:1180px) {
  #view-projekte.mp-baustellen-golden .mp-bs-nav-menu {
    position:fixed !important;
    z-index:18500 !important;
    top:var(--mp-bs-menu-top,128px) !important;
    right:auto !important;
    bottom:auto !important;
    left:var(--mp-bs-menu-left,12px) !important;
    width:min(280px,calc(100vw - 24px)) !important;
    max-height:min(60dvh,460px) !important;
    overflow:auto !important;
    transform:none !important;
  }
}

/* MP-20260913: Aufmaß-Dock nutzt universell dieselben Effekte, Scheine und Animationen wie Baustellen */


/* MP-20260830-003 · Angebot/Rechnung folgen der kompakten Baustellen-Kopfkarte.
   Titel, Beschreibung und echte Kopfaktionen teilen sich ein zweizeiliges
   Raster, statt untereinander eine hohe Leerflaeche aufzubauen. */
html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  grid-template-areas: "title actions" "sub actions" !important;
  box-sizing: border-box !important;
  min-height: 0 !important;
  margin: 0 0 16px !important;
  padding: 20px 24px !important;
  align-items: center !important;
  column-gap: 20px !important;
  row-gap: 4px !important;
}
html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header > h1 {
  grid-area: title !important;
  margin: 0 !important;
}
html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header > p {
  grid-area: sub !important;
  max-width: 760px !important;
  margin: 0 !important;
}
html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header > .view-header-actions {
  grid-area: actions !important;
  margin: 0 !important;
  align-self: center !important;
}

/* Der renderer darf die Karte befuellen, sichtbar ist sie trotzdem nur im
   echten Übersichtsbereich. Das fängt auch verspätete Async-Updates ab. */
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden[data-bs-active-tab]:not([data-bs-active-tab="uebersicht"]) #projOfferProgressCard,
html:not(#mpkk):not(#mpkk-2) body #view-projekte.mp-baustellen-golden #projOfferProgressCard[data-proj-section="uebersicht"][hidden] {
  display: none !important;
}

@media (max-width:767px) {
  html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header {
    grid-template-columns: minmax(0,1fr) !important;
    grid-template-areas: "title" "sub" !important;
    margin-bottom: 12px !important;
    padding: 16px 17px !important;
  }
  html:not(#mpkk):not(#mpkk-2) body :is(#view-kva,#view-rechnung,#view-mail).mp-document-editor-golden .view-header > .view-header-actions {
    display: none !important;
  }
}

/* ── Profit & Auftraege ───────────────────────────────────────────── */
#view-profit-dashboard .pdc-section-nav {
  position:sticky !important; z-index:430 !important; top:0 !important;
  box-sizing:border-box !important; display:flex !important; width:100% !important;
  min-height:68px !important; margin:0 0 16px !important; padding:8px 12px !important;
  align-items:center !important; gap:12px !important; flex-wrap:nowrap !important;
  overflow-x:auto !important; overflow-y:hidden !important;
  border:1px solid rgba(15,23,42,.09) !important; border-radius:17px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 12px 30px -24px rgba(15,23,42,.58) !important;
  scrollbar-width:none !important; -webkit-overflow-scrolling:touch !important;
}
#view-profit-dashboard .pdc-section-nav::-webkit-scrollbar { display:none !important; }
#view-profit-dashboard .pdc-section-item {
  position:relative !important; display:inline-flex !important; min-height:50px !important;
  padding:0 10px !important; align-items:center !important; gap:10px !important;
  flex:0 0 auto !important; border:0 !important; background:transparent !important;
  color:rgb(var(--mp-t3-617089)) !important; font:650 14px/1.2 inherit !important; white-space:nowrap !important;
}
#view-profit-dashboard .pdc-section-item::after { content:""; position:absolute; right:0; bottom:-8px; left:0; height:2px; border-radius:99px; background:transparent; }
#view-profit-dashboard .pdc-section-item.is-active { color:rgb(var(--mp-t1-172033)) !important; }
#view-profit-dashboard .pdc-section-item.is-active::after { background:var(--profit-accent,#2bb0ff) !important; }
#view-profit-dashboard .pdc-section-icon { display:grid !important; width:36px !important; height:36px !important; place-items:center !important; flex:0 0 36px !important; border-radius:11px !important; color:#fff !important; background:var(--profit-accent,#2bb0ff) !important; box-shadow:0 7px 14px -9px var(--profit-accent,#2bb0ff),inset 0 1px 0 rgba(255,255,255,.4) !important; }
#view-profit-dashboard .pdc-section-icon svg { width:19px !important; height:19px !important; }
#view-profit-dashboard .pdc-period-menu { position:relative !important; flex:0 0 auto !important; margin-left:auto !important; }
#view-profit-dashboard .pdc-period-menu > summary { display:flex !important; min-height:48px !important; padding:5px 10px !important; align-items:center !important; gap:9px !important; list-style:none !important; cursor:pointer !important; border:1px solid rgba(43,176,255,.22) !important; border-radius:13px !important; background:rgb(var(--mp-flaeche-2-rgb)) !important; color:rgb(var(--mp-t2-26354a)) !important; }
#view-profit-dashboard .pdc-period-menu > summary::-webkit-details-marker { display:none !important; }
#view-profit-dashboard .pdc-period-icon { display:grid !important; width:32px !important; height:32px !important; place-items:center !important; border-radius:10px !important; background:#e7f6ff !important; color:#159fe9 !important; }
#view-profit-dashboard .pdc-period-icon svg { width:17px !important; height:17px !important; }
#view-profit-dashboard .pdc-period-copy { display:grid !important; min-width:0 !important; text-align:left !important; }
#view-profit-dashboard .pdc-period-copy strong { font-size:13px !important; }
#view-profit-dashboard .pdc-period-copy small { color:rgb(var(--mp-t3-7a889b)) !important; font-size:10px !important; }
#view-profit-dashboard .pdc-period-copy #pdDataFreshness { max-width:170px !important; overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-profit-dashboard .pdc-period-popover { position:fixed !important; z-index:1600 !important; top:var(--pdc-period-top,130px) !important; right:var(--pdc-period-right,16px) !important; box-sizing:border-box !important; width:min(520px,calc(100vw - 24px)) !important; max-height:calc(100dvh - var(--pdc-period-top,130px) - 14px) !important; padding:14px !important; overflow:auto !important; border:1px solid rgba(15,23,42,.1) !important; border-radius:16px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 24px 62px -28px rgba(15,23,42,.5) !important; }
#view-profit-dashboard .pdc-filter-host-empty { display:none !important; }
#view-profit-dashboard .pd-tab-bar { display:none !important; }
#view-profit-dashboard[data-mp-profit-section] .pdc-content > :is(.pdc-hero,.pdc-strip,#pdProjectFocus,#pdBoard,#pdRadar2Section,#pdOverviewSection) { display:none !important; }
#view-profit-dashboard[data-mp-profit-section="overview"] .pdc-content > :is(.pdc-hero,.pdc-strip) { display:grid !important; }
#view-profit-dashboard[data-mp-profit-section="overview"] .pdc-content > #pdOverviewSection { display:block !important; }
#view-profit-dashboard[data-mp-profit-section="projects"] #pdProjectFocus:not([hidden]) { display:block !important; }
#view-profit-dashboard[data-mp-profit-section="followup"] #pdBoard,
#view-profit-dashboard[data-mp-profit-section="won"] #pdBoard { display:grid !important; grid-template-columns:1fr !important; }
#view-profit-dashboard[data-mp-profit-section="followup"] #pdBoard > :not(#pdColFollowUp),
#view-profit-dashboard[data-mp-profit-section="won"] #pdBoard > #pdColFollowUp { display:none !important; }
#view-profit-dashboard[data-mp-profit-section="won"] #pdBoard > :is(#pdColWon,#pdColActive) { display:block !important; }
#view-profit-dashboard[data-mp-profit-section="radar"] #pdRadar2Section:not([style*="display:none"]):not([style*="display: none"]) { display:block !important; }
#view-profit-dashboard:not([data-mp-profit-section="projects"]) .pdc-project-master { display:none !important; }
#view-profit-dashboard:not([data-mp-profit-section="projects"]) .pdc-workspace { grid-template-columns:minmax(0,1fr) !important; }
#view-profit-dashboard .pdc-project-external-toggle { position:fixed !important; z-index:520 !important; left:max(8px,env(safe-area-inset-left)) !important; top:calc(var(--mp-topbar-h,52px) + 12px) !important; display:none !important; width:42px !important; height:42px !important; place-items:center !important; border:1px solid rgba(15,23,42,.1) !important; border-radius:13px !important; background:rgb(var(--mp-flaeche-rgb)) !important; color:rgb(var(--mp-t2-334155)) !important; box-shadow:0 10px 24px -15px rgba(15,23,42,.6) !important; }
#view-profit-dashboard[data-mp-profit-section="projects"] .pdc-workspace.is-project-rail-collapsed ~ .pdc-project-external-toggle,
#view-profit-dashboard[data-mp-profit-section="projects"] > .pdc-project-external-toggle { display:grid !important; }

/* ── Übersicht: Baustellen-Fortschritt (MP-20260901-009, Jonas Falk) ──
   Reiter "Übersicht" (data-mp-profit-section="overview") zeigte bisher nur
   Hero/Strip-KPIs und darunter nichts — Sichtbarkeit siehe oben. Diese Regeln
   stylen die neue Kartenliste in #pdOverviewSection, gefüllt von
   dashboard.js:_pdRenderOverview(). Anschluss an bestehende pdc-Design-Token
   (--pdc-border/--pdc-bg/--pdc-shadow/--pdc-label), eigene Klassen — kein
   Eingriff in mp-list-workspaces-golden.js/.css. */
#view-profit-dashboard .pdc-overview-section { padding-top:2px !important; }
#view-profit-dashboard .pdc-overview-groups { display:flex !important; flex-direction:column !important; gap:22px !important; }
#view-profit-dashboard .pdc-overview-group-head { display:flex !important; align-items:baseline !important; gap:10px !important; margin:0 0 12px !important; }
#view-profit-dashboard .pdc-overview-group-title { font-size:15px !important; font-weight:800 !important; letter-spacing:-.01em !important; color:rgb(var(--mp-t1-172033)) !important; }
#view-profit-dashboard .pdc-overview-group-count { font-size:12px !important; font-weight:700 !important; color:rgb(var(--mp-t3-7a889b)) !important; }
#view-profit-dashboard .pdc-overview-grid { display:grid !important; grid-template-columns:1fr !important; gap:14px !important; }
@media (min-width:700px){ #view-profit-dashboard .pdc-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; } }
@media (min-width:1000px){ #view-profit-dashboard .pdc-overview-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; } }
#view-profit-dashboard .pdc-overview-card { display:flex !important; flex-direction:column !important; gap:12px !important; padding:18px !important; border:1px solid var(--pdc-border,rgba(24,39,75,.08)) !important; border-radius:16px !important; background:var(--pdc-bg,rgb(var(--mp-flaeche-rgb))) !important; box-shadow:var(--pdc-shadow,0 6px 18px rgba(31,41,55,.06)) !important; cursor:pointer !important; transition:border-color .12s,box-shadow .12s !important; }
#view-profit-dashboard .pdc-overview-card:hover { border-color:rgba(43,176,255,.35) !important; box-shadow:0 12px 28px -18px rgba(43,176,255,.45) !important; }
#view-profit-dashboard .pdc-overview-card-head { display:flex !important; align-items:flex-start !important; justify-content:space-between !important; gap:10px !important; }
#view-profit-dashboard .pdc-overview-card-name { font-size:16px !important; font-weight:800 !important; letter-spacing:-.01em !important; color:rgb(var(--mp-t1-172033)) !important; line-height:1.25 !important; }
#view-profit-dashboard .pdc-overview-card-kunde { margin-top:2px !important; font-size:12.5px !important; color:rgb(var(--mp-t3-7a889b)) !important; }
#view-profit-dashboard .pdc-overview-card-period { font-size:11.5px !important; color:rgb(var(--mp-t3-8a94a6)) !important; white-space:nowrap !important; }
#view-profit-dashboard .pdc-overview-status { flex:0 0 auto !important; padding:3px 9px !important; border-radius:8px !important; font-size:11px !important; font-weight:700 !important; letter-spacing:.01em !important; white-space:nowrap !important; }
#view-profit-dashboard .pdc-overview-status--laufend { background:rgba(43,176,255,.12) !important; color:#0d7bc4 !important; }
#view-profit-dashboard .pdc-overview-status--offen { background:rgba(148,163,184,.16) !important; color:rgb(var(--mp-t2-475569)) !important; }
#view-profit-dashboard .pdc-overview-status--pausiert { background:rgba(255,138,61,.14) !important; color:#c2570f !important; }
#view-profit-dashboard .pdc-overview-status--abgeschlossen { background:rgba(22,163,74,.14) !important; color:#15803d !important; }
#view-profit-dashboard .pdc-overview-progress-head { display:flex !important; align-items:baseline !important; justify-content:space-between !important; gap:8px !important; }
#view-profit-dashboard .pdc-overview-progress-label { font-size:10.5px !important; font-weight:700 !important; text-transform:uppercase !important; letter-spacing:.05em !important; color:var(--pdc-label,rgb(var(--mp-t3-8a94a6))) !important; }
#view-profit-dashboard .pdc-overview-progress-pct { font-size:13px !important; font-weight:800 !important; color:#2bb0ff !important; font-variant-numeric:tabular-nums !important; }
#view-profit-dashboard .pdc-overview-progress-track { position:relative !important; height:9px !important; border-radius:6px !important; background:rgba(15,23,42,.07) !important; box-shadow:inset 0 1px 2px rgba(15,23,42,.07) !important; overflow:hidden !important; }
#view-profit-dashboard .pdc-overview-progress-fill { height:100% !important; min-width:6px !important; border-radius:6px !important; background:linear-gradient(90deg,#2bb0ff,#6fd0ff) !important; transition:width .5s cubic-bezier(.34,1.1,.64,1) !important; }
#view-profit-dashboard .pdc-overview-card[data-stage="pausiert"] .pdc-overview-progress-fill { background:linear-gradient(90deg,#ff8a3d,#ffb273) !important; }
#view-profit-dashboard .pdc-overview-card[data-stage="abgeschlossen"] .pdc-overview-progress-fill { background:linear-gradient(90deg,#16a34a,#3ddc84) !important; }
#view-profit-dashboard .pdc-overview-card[data-stage="abgeschlossen"] .pdc-overview-progress-pct { color:#16a34a !important; }
#view-profit-dashboard .pdc-overview-progress-note { font-size:11px !important; color:rgb(var(--mp-t3-8a94a6)) !important; }
#view-profit-dashboard .pdc-overview-card-foot { display:flex !important; align-items:baseline !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:4px 10px !important; padding-top:8px !important; border-top:1px solid var(--pdc-border,rgba(24,39,75,.08)) !important; }
#view-profit-dashboard .pdc-overview-profit { font-size:13.5px !important; font-weight:800 !important; white-space:nowrap !important; }
#view-profit-dashboard .pdc-overview-profit--pos { color:#16a34a !important; }
#view-profit-dashboard .pdc-overview-profit--neg { color:#dc2626 !important; }
#view-profit-dashboard .pdc-overview-profit--muted { color:rgb(var(--mp-t3-8a94a6)) !important; font-weight:700 !important; }
/* Nachbesserung MP-20260901-011 (Basis-Beschriftung "· Budget"/"Basis:
   Angebot"): NIE per overflow:hidden mitten im Wort kappen. flex-wrap oben
   erlaubt den Umbruch der Marge/Basis-Zeile unter den Profit-Betrag, statt
   sie zu quetschen — anders als die 112px-Pille der Projektliste (dort
   gedeckelt in gesperrter mp-list-workspaces-golden.css), hier volle
   Kontrolle im eigenen Stylesheet. */
#view-profit-dashboard .pdc-overview-margin { font-size:11.5px !important; color:rgb(var(--mp-t3-7a889b)) !important; white-space:normal !important; word-break:normal !important; overflow-wrap:anywhere !important; flex:1 1 auto !important; min-width:0 !important; text-align:right !important; }
#view-profit-dashboard .pdc-overview-empty { padding:38px 20px !important; border:1px dashed var(--pdc-border,rgba(24,39,75,.12)) !important; border-radius:16px !important; text-align:center !important; color:rgb(var(--mp-t3-7a889b)) !important; font-size:14px !important; }
@media (max-width:680px){
  #view-profit-dashboard .pdc-overview-card { padding:16px !important; }
  #view-profit-dashboard .pdc-overview-card-name { font-size:15px !important; }
}

/* ── Meine Stunden ───────────────────────────────────────────────── */
/* Nachtrag 5 (Marcel, S24 = 360×780, Screenshot 839cda5b): Modultitel „Meine
   erfassten Stunden" lief ohne Ellipse über den Rand. Root Cause (gemessen,
   nicht vermutet): `css/mp-responsive-system.css` erzwingt app-weit auf
   `.view-header h1` `white-space:nowrap;overflow:hidden;text-overflow:
   ellipsis` — das ist die geteilte Regel fuer ALLE 20 Module und wird hier
   NICHT angefasst (Blast-Radius). Zusaetzlich schrumpft die Titel-Box in der
   Flex-Kette `.mp-module-header-title > .mp-module-header-copy > h1` bei
   diesem (ungewoehnlich langen) Titel nicht auf den tatsaechlich verfuegbaren
   Platz (gemessen: Box 281px breit bei nur ~245px verfuegbarem Raum ab
   360px Breite) — UND `text-overflow:ellipsis` wirkt auf einen
   `display:flex`-Container (h1 selbst ist flex, mp-layout-system.css:97)
   in der Praxis nicht zuverlaessig, daher kein "…", sondern ein harter,
   randloser Abschnitt. Fix NUR fuer dieses Modul: Titel darf umbrechen statt
   abzuschneiden (genau der vom Koordinator vorgeschlagene Weg
   "Titel overflow-wrap"), 2 IDs schlagen die geteilte 1-Klasse-1-Typ-Regel. */
#view-meine-stunden .view-header h1 {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: break-word !important;
  word-break: break-word !important;
}
#view-meine-stunden.mp-my-hours-golden[data-mp-my-hours-section] [data-mp-my-hours-panel] { display:none !important; }
/* MP-20260905-019 (Nachtrag 1): Tab „Stundenübersicht" entfernt — KPI-Reihe
   und Überstundenkonto haengen jetzt am Bereich "list" (oberhalb der Filter).
   :not([hidden]) bleibt Pflicht: #mwhOvertime setzt hidden=true fuer Worker-
   Rollen und ohne hinterlegte Wochenarbeitszeit (mp-worker-my-hours.js
   renderOvertime()) — ohne die Klausel wuerde diese Regel das hidden-Attribut
   mit display:block ueberstimmen und die leere Karte immer zeigen. */
#view-meine-stunden.mp-my-hours-golden[data-mp-my-hours-section="quick"] [data-mp-my-hours-panel~="quick"],
#view-meine-stunden.mp-my-hours-golden[data-mp-my-hours-section="list"] [data-mp-my-hours-panel~="list"]:not([hidden]) { display:block !important; }
#view-meine-stunden .mp-my-hours-section-nav {
  position:sticky !important; z-index:430 !important; top:0 !important; box-sizing:border-box !important;
  display:flex !important; width:100% !important; min-height:66px !important; margin:0 0 16px !important;
  padding:8px 12px !important; align-items:center !important; gap:14px !important; flex-wrap:nowrap !important;
  overflow-x:auto !important; overflow-y:hidden !important; border:1px solid rgba(15,23,42,.09) !important;
  border-radius:17px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 12px 30px -24px rgba(15,23,42,.58) !important;
  scrollbar-width:none !important; -webkit-overflow-scrolling:touch !important;
}
#view-meine-stunden .mp-my-hours-section-nav::-webkit-scrollbar { display:none !important; }
#view-meine-stunden .mp-my-hours-section-item { position:relative !important; display:inline-flex !important; min-height:50px !important; padding:0 10px !important; align-items:center !important; gap:10px !important; flex:0 0 auto !important; border:0 !important; background:transparent !important; color:rgb(var(--mp-t3-617089)) !important; font:650 14px/1.2 inherit !important; white-space:nowrap !important; }
#view-meine-stunden .mp-my-hours-section-item::after { content:""; position:absolute; right:0; bottom:-8px; left:0; height:2px; background:transparent; }
#view-meine-stunden .mp-my-hours-section-item.is-active { color:rgb(var(--mp-t1-172033)) !important; }
#view-meine-stunden .mp-my-hours-section-item.is-active::after { background:var(--my-hours-accent,#2bb0ff) !important; }
#view-meine-stunden .mp-my-hours-section-icon { display:grid !important; width:36px !important; height:36px !important; place-items:center !important; flex:0 0 36px !important; border-radius:11px !important; background:var(--my-hours-accent,#2bb0ff) !important; color:#fff !important; box-shadow:0 7px 14px -9px var(--my-hours-accent,#2bb0ff),inset 0 1px 0 rgba(255,255,255,.4) !important; }
#view-meine-stunden .mp-my-hours-section-icon svg { width:19px !important; height:19px !important; }
/* MP-20260905-019 (Nachtrag 1): Bereich "overview" entfernt, das Konto haengt
   jetzt in "list". Ab MP-20260905-019 (Nachtrag 3) sitzt #mwhOvertime IM
   Wrapper #mwhKpiPanel; auf ≤767px ueberschreibt die dortige Fussleisten-
   Regel (siehe unten) diese Kartenoptik bewusst — Desktop/Tablet bleiben
   unveraendert bei der eigenstaendigen Karte. */
#view-meine-stunden[data-mp-my-hours-section="list"] #mwhOvertime { min-height:260px !important; padding:20px !important; border:1px solid rgba(15,23,42,.09) !important; border-radius:18px !important; background:rgb(var(--mp-flaeche-rgb)) !important; }

/* MP-20260905-019 (Nachtrag 3): Kennzahlen-Karte "Meine Stunden" — Kopf per
   Default ausgeblendet (Tablet/Desktop ≥768px unveraendert: die bestehende
   Vierer-Reihe bleibt ohne Karten-Kopf stehen, `.mp-bs-panel`-Rahmen/Schatten
   traegt sie trotzdem mit, siehe Idas Spec Pkt. „Desktop unveraendert" —
   das betrifft nur Kopf + Raster, nicht die Kartenhuelle), ab ≤767px echtes
   2×2-Raster mit Trennlinien statt vier freistehender Kacheln.
   ID-Gewicht bewusst hoch: zwei bestehende Regeln mit ZWEI ID-Selektoren
   sind sonst staerker als eine neue Regel mit weniger IDs (Spezifitaet
   vergleicht zuerst die ID-Anzahl, nicht die Gesamtzahl an Selektorteilen) —
   1) mp-worker-my-hours.js injiziert zur Laufzeit spaeter als jedes <link>
   `#view-meine-stunden #mwhKpiRow{display:grid...}` (2 IDs), 2) mp-kpi-
   standard.css schuetzt .dash-kpi/.is-primaer mit dem eigenen
   `:not(#mpkpi):not(#mpkpi-2)`-Anker (siehe SHARED_LEARNINGS
   L-2026-09-05-AY). Der gleiche Fund erklaert nebenbei mechanisch, warum die
   KPI-Reihe VOR diesem Fix nie wirklich an einen Tab gebunden war (siehe
   Handoff): das injizierte 2-ID-`display:grid` schlug die 1-ID-Sichtbar-
   keitsregel in jeder Tab-Stellung. */
/* Nachtrag Marcel (05.09. 11:46, Screenshot 466175f0): Kennzahlen-Karte klebte
   ohne Abstand an der Listenkarte darunter — `.mwh-filters` traegt in der
   Sektion "list" bewusst `margin:0` (soll nahtlos an #mwhListMount anschließen,
   EIN durchgehendes Listenfenster), das hat aber auch den Abstand ZUR
   Kennzahlen-Karte auf 0 gesetzt. Fix: derselbe Abstand wie zwischen den
   Karten der Baustellen-Übersicht (`#projOverviewTop{gap:16px}`,
   mp-list-workspaces-golden.css) — kein eigener Sonderwert, gilt breitenweit
   (Marcel wusste nicht, ob es auf Desktop/Tablet auch fehlt — es fehlte dort
   ebenso, da die Regel oben ungated ist). 2 IDs schlagen die geteilte
   `.mp-bs-panel{margin:0}`-Regel (1 ID + 2 Klassen). */
#view-meine-stunden #mwhKpiPanel { margin-bottom: 16px !important; }
#view-meine-stunden #mwhKpiPanelHead { display: none !important; }
/* QA-Befund B4 (Lena Berger, 05.09.): "Desktop unveraendert" hiess buchstaeblich
   unveraendert — die Kartenhuelle (.mp-bs-panel: Rahmen/Radius/Schatten) und die
   getoente Betonungs-Kachel duerfen NUR ≤767px erscheinen, sonst weicht
   Staging sichtbar von Produktion ab (belegt per curl+Screenshot-A/B). Beide
   werden deshalb hier ab 768px explizit zurueckgebaut, mit genug ID-Gewicht,
   um die geteilte `.mp-bs-panel`-Regel (mp-list-workspaces-golden.css, 1 ID)
   bzw. mp-kpi-standard.css' `.is-primaer`-Anker (2 ID-Aequivalente) sicher zu
   schlagen. */
@media (min-width: 768px) {
  #view-meine-stunden #mwhKpiPanel {
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 20px !important;
    background: var(--mp-card, #ffffff) !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04) !important;
    overflow: hidden !important;
  }
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow .dash-kpi.is-primaer {
    background: var(--mpkpi-bg) !important; /* MP-20260905-019 N1 (Lena, Nachpruefung 2): transparent = Loch auf der Bildwelt, Kontrast 1,08:1 -> Token wie Nachbarkacheln */
    border-color: var(--mpkpi-border) !important;
  }
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow .dash-kpi.is-primaer .dash-kpi-value {
    font-size: 20px !important;
  }
}
@media (max-width: 767px) {
  #view-meine-stunden #mwhKpiPanelHead { display: flex !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 0 !important;
  }
  /* QA-Befund B6 (P3): "alle vier Zellen gleich groß" — ohne feste Mindesthöhe
     macht die groessere Schrift der betonten Kachel (25px) ihre GANZE Zeile
     10px hoeher als die andere (127 vs. 117px gemessen). 128px deckt beide
     Zeilen gleich ab, unabhaengig davon, welche Kachel gerade betont ist. */
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow .dash-kpi {
    border: 0 !important;
    border-right: 1px solid var(--bs-line) !important;
    border-bottom: 1px solid var(--bs-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 16px !important;
    min-height: 128px !important;
    box-sizing: border-box !important;
  }
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow .dash-kpi:nth-child(2n) { border-right: 0 !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow .dash-kpi:nth-last-child(-n+2) { border-bottom: 0 !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-meine-stunden .dash-kpi.is-primaer .dash-kpi-value { font-size: 25px !important; }
  /* Überstundenkonto sitzt jetzt IM Panel — Fußzeile ohne eigene Kontur statt
     eigenständiger Karte (Inhalt/Plus-Minus-Logik unveraendert). Drei echte
     IDs schlagen die Section-Karten-Regel oben (2 IDs + 1 Attribut) allein
     schon durch die hoehere ID-Zahl. */
  #view-meine-stunden #mwhKpiPanel #mwhOvertime {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    border: 0 !important;
    border-top: 1px solid var(--bs-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
}
/* Dark Mode ueber html.dark (K-069: NIE prefers-color-scheme in diesem Modul,
   dieselbe Quelle hatte dadurch schon einmal unlesbaren Text). */
html.dark #view-meine-stunden #mwhKpiPanel { background: rgba(255,255,255,.04) !important; border-color: rgba(255,255,255,.08) !important; }
html.dark #view-meine-stunden #mwhKpiPanelHead { background: transparent !important; border-bottom-color: rgba(255,255,255,.08) !important; }
html.dark #view-meine-stunden #mwhKpiPanelHead h2 { color: #e2e8f0 !important; }
html.dark #view-meine-stunden .mp-bs-eyebrow { color: #94a3b8 !important; }
@media (max-width: 767px) {
  /* QA-Befund B5 (Lena Berger, 05.09., mit korrekt geoeffnetem #mpDarkCss-
     Medien-Tor gemessen): diese Dunkelregel hatte zuvor 2 ID-Gewichte, die
     Hellregel direkt darueber (mit dem :not(#mpkk):not(#mpkk-2)-Anker) 4 —
     die Hellregel gewann in ECHTEM Dark Mode (helle Trennlinien in der
     dunklen Karte). Gleiche Technik, gleiche ID-Zahl, dazu eine zusaetzliche
     Klasse (.dark) angleicht die Spezifitaet zugunsten der Dunkelregel. */
  html.dark:not(#mpkk):not(#mpkk-2) body #view-meine-stunden #mwhKpiRow .dash-kpi { border-color: rgba(255,255,255,.10) !important; }
  html.dark #view-meine-stunden #mwhKpiPanel #mwhOvertime { border-top-color: rgba(255,255,255,.10) !important; }
}
/* Fehlerzustand: Werte bleiben auf dem letzten bekannten Stand, nur der
   Eyebrow bekommt einen ruhigen Zusatz — kein Rot, kein Overlay (mp-worker-
   my-hours.js renderAll() setzt/entfernt den Text). */
#view-meine-stunden #mwhKpiEyebrow[data-mwh-stale]::after { content: " · nicht aktuell"; }
/* QA-Befund B7 (P3): Eyebrow „MEINE STUNDEN" lag mit der geteilten
   --bs-muted-Farbe bei 4,09:1 auf Weiß — unter WCAG AA (4,5:1). Nur fuer
   "Meine Stunden" abgedunkelt (5,44:1, gerechnet), NICHT die geteilte
   --bs-muted-Variable geaendert (beträfe auch die Baustellen-Finanzkarte,
   dort nicht beauftragt). Nur im Hellmodus — html.dark hat bereits eine
   eigene, korrekte Farbe (Zeile darüber) und darf nicht überschrieben werden. */
html:not(.dark) body #view-meine-stunden #mwhKpiEyebrow { color: rgb(var(--mp-t3-5b6b80)) !important; }

/* ── Kundenstamm ─────────────────────────────────────────────────── */
#view-kunden #kundenForm.mp-customer-form-golden { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px !important; }
#view-kunden .mp-customer-form-block { grid-column:1/-1 !important; overflow:hidden !important; border:1px solid rgba(15,23,42,.09) !important; border-radius:17px !important; background:rgba(var(--mp-flaeche-rgb), .94) !important; box-shadow:0 10px 26px -24px rgba(15,23,42,.42) !important; }
#view-kunden .mp-customer-form-block > header { padding:14px 17px 11px !important; border-bottom:1px solid rgba(15,23,42,.07) !important; background:linear-gradient(135deg,rgb(var(--mp-f1-fbfdff)),rgb(var(--mp-f2-f7fafc))) !important; }
#view-kunden .mp-customer-form-block > header h3 { margin:0 !important; color:rgb(var(--mp-t1-172033)) !important; font-size:15px !important; font-weight:800 !important; }
#view-kunden .mp-customer-form-block > header p { margin:3px 0 0 !important; color:rgb(var(--mp-t3-7a889b)) !important; font-size:11.5px !important; }
#view-kunden .mp-customer-form-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; padding:16px !important; }
#view-kunden .mp-customer-form-grid > :is(.form-group,.kunden-form-head,.kunden-verwalter-panel,.kunden-verwalter-toggle-row) { min-width:0 !important; margin:0 !important; }
#view-kunden .mp-customer-form-grid > :is(.kunden-form-head,.form-group-full,.kunden-verwalter-panel,.kunden-verwalter-toggle-row) { grid-column:1/-1 !important; }
#view-kunden .kunden-fav-btn { width:48px !important; height:48px !important; flex:0 0 48px !important; border:1px solid rgba(245,158,11,.25) !important; border-radius:14px !important; background:rgb(var(--mp-f2-fffaf0)) !important; color:#d29112 !important; box-shadow:0 6px 16px -12px rgba(146,92,0,.5),inset 0 1px 0 #fff !important; }
#view-kunden .kunden-fav-btn svg { width:23px !important; height:23px !important; stroke-width:2.1 !important; }
#view-kunden .kunden-fav-btn.is-fav { border-color:#f4b62d !important; background:linear-gradient(145deg,#ffd65d,#f5ac16) !important; color:#fff !important; box-shadow:0 9px 20px -11px rgba(199,124,0,.75),inset 0 1px 0 rgba(255,255,255,.55) !important; }
#view-kunden .kunden-fav-btn.is-fav svg { fill:currentColor !important; stroke:currentColor !important; }
#view-kunden .kunden-form-actions { grid-column:1/-1 !important; position:sticky !important; bottom:10px !important; z-index:50 !important; justify-self:end !important; padding:8px !important; border:1px solid rgba(15,23,42,.08) !important; border-radius:15px !important; background:rgba(var(--mp-flaeche-rgb), .94) !important; box-shadow:0 16px 38px -26px rgba(15,23,42,.6) !important; backdrop-filter:blur(18px) !important; }

/* ── Planer ──────────────────────────────────────────────────────── */
#view-baustellenplanung .mp-planner-golden-nav { position:sticky !important; z-index:440 !important; top:0 !important; box-sizing:border-box !important; display:flex !important; width:100% !important; min-height:68px !important; margin:0 0 14px !important; padding:8px 12px !important; align-items:center !important; gap:10px !important; flex-wrap:nowrap !important; overflow-x:auto !important; overflow-y:hidden !important; border:1px solid rgba(15,23,42,.09) !important; border-radius:17px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 12px 30px -24px rgba(15,23,42,.58) !important; scrollbar-width:none !important; -webkit-overflow-scrolling:touch !important; }
#view-baustellenplanung .mp-planner-golden-nav::-webkit-scrollbar { display:none !important; }
#view-baustellenplanung .mp-planner-golden-item { position:relative !important; box-sizing:border-box !important; display:inline-flex !important; min-height:50px !important; padding:0 9px !important; align-items:center !important; gap:9px !important; flex:0 0 auto !important; list-style:none !important; cursor:pointer !important; border:0 !important; background:transparent !important; color:rgb(var(--mp-t3-617089)) !important; font:650 13.5px/1.2 inherit !important; white-space:nowrap !important; }
#view-baustellenplanung .mp-planner-golden-item::-webkit-details-marker { display:none !important; }
#view-baustellenplanung button.mp-planner-golden-item::after { content:""; position:absolute; right:0; bottom:-8px; left:0; height:2px; background:transparent; }
#view-baustellenplanung button.mp-planner-golden-item.is-active { color:rgb(var(--mp-t1-172033)) !important; }
#view-baustellenplanung button.mp-planner-golden-item.is-active::after { background:var(--planner-accent,#2bb0ff) !important; }
#view-baustellenplanung .mp-planner-golden-icon { display:grid !important; width:36px !important; height:36px !important; place-items:center !important; flex:0 0 36px !important; border-radius:11px !important; background:var(--planner-accent,#2bb0ff) !important; color:#fff !important; box-shadow:0 7px 14px -9px var(--planner-accent,#2bb0ff),inset 0 1px 0 rgba(255,255,255,.4) !important; }
#view-baustellenplanung .mp-planner-golden-icon svg { width:19px !important; height:19px !important; }
#view-baustellenplanung .mp-planner-golden-menu { flex:0 0 auto !important; }
#view-baustellenplanung .mp-planner-golden-chevron { margin-left:2px !important; }
#view-baustellenplanung .mp-planner-golden-popover { position:fixed !important; z-index:1700 !important; top:var(--planner-popover-top,130px) !important; left:var(--planner-popover-left,12px) !important; box-sizing:border-box !important; width:min(420px,calc(100vw - 24px)) !important; max-height:calc(100dvh - var(--planner-popover-top,130px) - 12px) !important; padding:13px !important; overflow:auto !important; border:1px solid rgba(15,23,42,.1) !important; border-radius:16px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 24px 62px -28px rgba(15,23,42,.5) !important; }
#view-baustellenplanung .mp-planner-golden-subbar { box-sizing:border-box !important; display:flex !important; width:100% !important; min-height:56px !important; margin:0 0 16px !important; padding:8px 14px !important; align-items:center !important; justify-content:space-between !important; gap:12px !important; flex-wrap:wrap !important; border:1px solid rgba(15,23,42,.09) !important; border-radius:15px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 8px 24px -20px rgba(15,23,42,.45) !important; }
#view-baustellenplanung .mp-planner-golden-subbar-actions { display:flex !important; align-items:center !important; gap:8px !important; flex:0 0 auto !important; flex-wrap:nowrap !important; }
#view-baustellenplanung .mp-planner-golden-subbar .mp-planner-golden-period { display:flex !important; min-height:44px !important; margin:0 0 0 auto !important; align-items:center !important; gap:4px !important; flex:0 0 auto !important; border:1px solid rgba(15,23,42,.08) !important; border-radius:12px !important; background:rgb(var(--mp-flaeche-2-rgb)) !important; padding:3px !important; }
#view-baustellenplanung .mp-planner-golden-subbar .mp-planner-golden-period > * { margin:0 !important; white-space:nowrap !important; }
#view-baustellenplanung .mp-planner-golden-subbar .mp-planner-golden-period #dashPlannerWeekLabel { min-width:110px !important; border:0 !important; background:transparent !important; text-align:center !important; font-weight:700 !important; color:#0284c7 !important; }
#view-baustellenplanung .mp-planner-golden-subbar .mp-planner-golden-new { flex:0 0 auto !important; min-height:44px !important; margin:0 !important; border-radius:12px !important; font-weight:650 !important; }
@media(max-width:768px){
  #view-baustellenplanung .mp-planner-golden-subbar .mp-planner-golden-period { margin-left:0 !important; width:100% !important; justify-content:space-between !important; }
}
#view-baustellenplanung .mp-planner-head-relocated { display:none !important; }
#view-baustellenplanung #mpPlannerFilterRow.is-empty { display:none !important; }
#view-baustellenplanung .dash-planner-view-toggle,
#view-baustellenplanung #mpViewMenuBtn,
#view-baustellenplanung #mpTeamMenuBtn { display:none !important; }
#view-baustellenplanung .mp-planner-golden-popover #mpPlannerStatusFilter { display:flex !important; margin:0 !important; flex-wrap:wrap !important; }
#view-baustellenplanung .mp-planner-golden-popover #mpPlannerQuickActions,
#view-baustellenplanung .mp-planner-golden-popover #dashPlannerActions { display:grid !important; width:100% !important; grid-template-columns:1fr !important; gap:8px !important; }

/* ── Materialkatalog ─────────────────────────────────────────────── */
#view-material .mp-material-filter-rail { display:flex !important; width:100% !important; padding:8px 10px !important; align-items:center !important; gap:10px !important; flex-wrap:nowrap !important; overflow-x:auto !important; border:1px solid rgba(15,23,42,.08) !important; border-radius:15px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 9px 24px -22px rgba(15,23,42,.45) !important; scrollbar-width:none !important; }
#view-material .mp-material-filter-rail::-webkit-scrollbar { display:none !important; }
#view-material .mp-material-filter-menu { position:relative !important; flex:1 1 240px !important; min-width:210px !important; }
#view-material .mp-material-filter-menu > summary { display:flex !important; min-height:50px !important; padding:6px 11px !important; align-items:center !important; gap:10px !important; list-style:none !important; cursor:pointer !important; border:1px solid rgba(43,176,255,.2) !important; border-radius:13px !important; background:rgb(var(--mp-flaeche-2-rgb)) !important; color:rgb(var(--mp-t2-26354a)) !important; }
#view-material .mp-material-filter-menu > summary::-webkit-details-marker { display:none !important; }
#view-material .mp-material-filter-menu > summary > span:nth-child(2) { display:grid !important; min-width:0 !important; }
#view-material .mp-material-filter-menu > summary small { color:rgb(var(--mp-t3-7a889b)) !important; font-size:10px !important; font-weight:650 !important; text-transform:uppercase !important; letter-spacing:.04em !important; }
#view-material .mp-material-filter-menu > summary strong { overflow:hidden !important; color:rgb(var(--mp-t1-172033)) !important; font-size:13.5px !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-material .mp-material-filter-menu > summary > b { margin-left:auto !important; }
#view-material .mp-material-filter-icon { display:grid !important; width:34px !important; height:34px !important; place-items:center !important; flex:0 0 34px !important; border-radius:10px !important; background:#e7f6ff !important; color:#159fe9 !important; }
#view-material .mp-material-filter-icon svg { width:18px !important; height:18px !important; }
#view-material .mp-material-filter-popover { position:fixed !important; z-index:1650 !important; top:var(--material-filter-top,180px) !important; left:var(--material-filter-left,12px) !important; box-sizing:border-box !important; width:min(520px,calc(100vw - 24px)) !important; max-height:calc(100dvh - var(--material-filter-top,180px) - 12px) !important; padding:14px !important; overflow:auto !important; border:1px solid rgba(15,23,42,.1) !important; border-radius:16px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 24px 62px -28px rgba(15,23,42,.5) !important; }
#view-material .mp-material-filter-popover :is(.mat-cat-tabs,.mat-brand-tabs) { display:flex !important; margin:0 !important; padding:0 !important; gap:8px !important; flex-wrap:wrap !important; overflow:visible !important; }
#view-material .mp-material-filter-popover :is(.mat-cat-tab,.mat-tab) { min-height:40px !important; }

/* ── Naechster Termin im Dashboard (MP-20261003-024) ─────────────── */
#view-dashboard .dash-next-appointment-hint {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  max-width: min(100%, 560px) !important;
  min-height: 48px !important;
  margin: 12px 0 0 !important;
  padding: 8px 14px 8px 8px !important;
  border: 1px solid rgba(43, 176, 255, 0.24) !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(243, 248, 255, 0.92) 100%) !important;
  color: rgb(var(--mp-t2-26354a)) !important;
  text-align: left !important;
  box-shadow: 0 4px 18px -4px rgba(43, 176, 255, 0.12), 0 1px 3px rgba(15, 23, 42, 0.04) !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
  text-decoration: none !important;
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.18s ease, background 0.18s ease !important;
}
#view-dashboard .dash-next-appointment-hint:hover {
  transform: translateY(-1.5px) !important;
  border-color: rgba(43, 176, 255, 0.5) !important;
  box-shadow: 0 8px 24px -6px rgba(43, 176, 255, 0.22), 0 3px 8px rgba(15, 23, 42, 0.06) !important;
}
#view-dashboard .dash-next-appointment-hint:active {
  transform: translateY(0) scale(0.99) !important;
  box-shadow: 0 2px 6px rgba(43, 176, 255, 0.15) !important;
}
#view-dashboard .dash-next-appointment-hint[hidden] {
  display: none !important;
}
#view-dashboard .dash-next-appointment-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, rgba(43, 176, 255, 0.16) 0%, rgba(43, 176, 255, 0.06) 100%) !important;
  border: 1px solid rgba(43, 176, 255, 0.25) !important;
  color: #0284c7 !important;
  box-shadow: 0 2px 6px rgba(43, 176, 255, 0.12) !important;
  transition: transform 0.2s ease !important;
}
#view-dashboard .dash-next-appointment-hint:hover .dash-next-appointment-icon {
  transform: scale(1.05) !important;
}
#view-dashboard .dash-next-appointment-icon svg {
  width: 17px !important;
  height: 17px !important;
}
#view-dashboard .dash-next-appointment-hint > span:not(.dash-next-appointment-icon):not(.dash-next-appointment-arrow),
#view-dashboard .dash-next-appointment-content {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  gap: 2px !important;
  text-align: left !important;
}
#view-dashboard .dash-next-appointment-hint small,
#view-dashboard .dash-next-appointment-kicker {
  display: inline-flex !important;
  align-items: center !important;
  color: #0284c7 !important;
  font: 600 11px/1.2 'Inter', system-ui, -apple-system, sans-serif !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}
/* MP-20261003-027: Pulse-Dot restlos entfernt */
#view-dashboard .dash-next-appointment-dot {
  display: none !important;
}
#view-dashboard .dash-next-appointment-hint strong,
#view-dashboard .dash-next-appointment-title {
  display: block !important;
  overflow: hidden !important;
  color: #0f172a !important;
  font: 700 13px/1.3 'Inter', system-ui, -apple-system, sans-serif !important;
  letter-spacing: -0.015em !important;
  font-variant-numeric: tabular-nums !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
#view-dashboard .dash-next-appointment-arrow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  margin-left: auto !important;
  color: #94a3b8 !important;
  transition: transform 0.2s ease, color 0.2s ease !important;
}
#view-dashboard .dash-next-appointment-hint:hover .dash-next-appointment-arrow {
  transform: translateX(2px) !important;
  color: #0284c7 !important;
}

/* ── Dark Mode ── */
html.dark #view-dashboard .dash-next-appointment-hint,
[data-theme="dark"] #view-dashboard .dash-next-appointment-hint {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%) !important;
  border-color: rgba(43, 176, 255, 0.28) !important;
  color: #f1f5f9 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35) !important;
}
html.dark #view-dashboard .dash-next-appointment-hint:hover,
[data-theme="dark"] #view-dashboard .dash-next-appointment-hint:hover {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%) !important;
  border-color: rgba(43, 176, 255, 0.55) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45), 0 0 12px rgba(43, 176, 255, 0.25) !important;
}
html.dark #view-dashboard .dash-next-appointment-icon,
[data-theme="dark"] #view-dashboard .dash-next-appointment-icon {
  background: rgba(43, 176, 255, 0.18) !important;
  border-color: rgba(43, 176, 255, 0.35) !important;
  color: #38bdf8 !important;
  box-shadow: none !important;
}
html.dark #view-dashboard .dash-next-appointment-hint small,
html.dark #view-dashboard .dash-next-appointment-kicker,
[data-theme="dark"] #view-dashboard .dash-next-appointment-hint small,
[data-theme="dark"] #view-dashboard .dash-next-appointment-kicker {
  color: #38bdf8 !important;
}
html.dark #view-dashboard .dash-next-appointment-hint strong,
html.dark #view-dashboard .dash-next-appointment-title,
[data-theme="dark"] #view-dashboard .dash-next-appointment-hint strong,
[data-theme="dark"] #view-dashboard .dash-next-appointment-title {
  color: #f8fafc !important;
}
html.dark #view-dashboard .dash-next-appointment-arrow,
[data-theme="dark"] #view-dashboard .dash-next-appointment-arrow {
  color: #64748b !important;
}
html.dark #view-dashboard .dash-next-appointment-hint:hover .dash-next-appointment-arrow,
[data-theme="dark"] #view-dashboard .dash-next-appointment-hint:hover .dash-next-appointment-arrow {
  color: #38bdf8 !important;
}

@media (max-width: 600px) {
  #view-dashboard .dash-next-appointment-hint {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* ── Angebotsfortschritt in der Baustellen-Uebersicht ───────────── */
#view-projekte #projOfferProgressCard { grid-column:1/-1 !important; padding:18px !important; overflow:hidden !important; border:1px solid rgba(15,23,42,.09) !important; border-radius:18px !important; background:linear-gradient(145deg,rgb(var(--mp-flaeche-rgb)),rgb(var(--mp-f1-fbfdff))) !important; box-shadow:0 12px 30px -26px rgba(15,23,42,.55) !important; }
#view-projekte #projOfferProgressCard > header { display:flex !important; align-items:center !important; justify-content:space-between !important; gap:14px !important; }
#view-projekte #projOfferProgressCard > header span { color:#159fe9 !important; font-size:10px !important; font-weight:800 !important; letter-spacing:.07em !important; text-transform:uppercase !important; }
#view-projekte #projOfferProgressCard > header h2 { margin:3px 0 0 !important; color:rgb(var(--mp-t1-172033)) !important; font-size:17px !important; }
#view-projekte #projOfferProgressPct { color:#159fe9 !important; font-size:24px !important; font-weight:850 !important; }
#view-projekte .mp-bs-offer-progress-track { height:9px !important; margin:14px 0 7px !important; overflow:hidden !important; border-radius:99px !important; background:rgb(var(--mp-f3-e8edf3)) !important; }
#view-projekte .mp-bs-offer-progress-track > span { display:block !important; height:100% !important; width:0; border-radius:inherit !important; background:linear-gradient(90deg,#16a34a,#42c97a) !important; transition:width .35s ease !important; }
#view-projekte .mp-bs-offer-progress-meta { color:rgb(var(--mp-t3-6d7b8e)) !important; font-size:11.5px !important; }
#view-projekte .mp-bs-offer-progress-list { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:9px !important; margin-top:14px !important; }
#view-projekte .mp-bs-offer-task { display:grid !important; grid-template-columns:28px minmax(0,1fr) auto !important; min-height:58px !important; padding:9px 11px !important; align-items:center !important; gap:9px !important; border:1px solid rgba(15,23,42,.08) !important; border-radius:13px !important; background:rgb(var(--mp-flaeche-rgb)) !important; }
#view-projekte .mp-bs-offer-task > span { display:grid !important; width:26px !important; height:26px !important; place-items:center !important; border-radius:8px !important; background:rgb(var(--mp-f3-eef2f6)) !important; color:#94a3b8 !important; font-size:13px !important; font-weight:900 !important; }
#view-projekte .mp-bs-offer-task.is-done > span { background:#dcf8e7 !important; color:#169b55 !important; }
#view-projekte .mp-bs-offer-task strong { display:block !important; overflow:hidden !important; color:rgb(var(--mp-t2-26354a)) !important; font-size:12.5px !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-projekte .mp-bs-offer-task small { display:block !important; overflow:hidden !important; color:rgb(var(--mp-t3-8a98aa)) !important; font-size:10.5px !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-projekte .mp-bs-offer-task em { color:rgb(var(--mp-t3-8390a2)) !important; font-size:10.5px !important; font-style:normal !important; font-weight:750 !important; }
#view-projekte .mp-bs-offer-task.is-done em { color:#169b55 !important; }

/* ── Ueberstundenkonto als echter Arbeitsbereich ─────────────────── */
#view-stundenuebersicht[data-mp-hours-section="overtime"] #mpHrepOvertime { min-height:0 !important; height:auto !important; margin:0 !important; padding:20px !important; border:1px solid rgba(15,23,42,.09) !important; border-radius:19px !important; background:linear-gradient(145deg,rgb(var(--mp-flaeche-rgb)),rgb(var(--mp-f1-fbfdff))) !important; box-shadow:0 14px 34px -28px rgba(15,23,42,.52) !important; }
#view-stundenuebersicht .mp-hrep-overtime-head { margin:0 0 14px !important; padding:0 2px 12px !important; align-items:flex-end !important; justify-content:space-between !important; border-bottom:1px solid rgba(15,23,42,.07) !important; }
#view-stundenuebersicht .mp-hrep-overtime-title { font-size:17px !important; font-weight:820 !important; letter-spacing:-.02em !important; }
#view-stundenuebersicht .mp-hrep-overtime-hint { max-width:640px !important; text-align:right !important; line-height:1.35 !important; }
#view-stundenuebersicht .mp-hrep-overtime-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr)) !important; gap:10px !important; }
#view-stundenuebersicht .mp-ot-card {
  display:grid !important;
  grid-template-columns:40px minmax(0,1fr) auto !important;
  grid-template-areas:"avatar copy balance" "avatar meta meta" !important;
  min-height:92px !important;
  padding:13px 14px !important;
  align-items:center !important;
  gap:4px 11px !important;
  border-left-width:1px !important;
  border-radius:15px !important;
  background:linear-gradient(145deg,rgb(var(--mp-flaeche-rgb)),rgb(var(--mp-f1-fbfdff))) !important;
  box-shadow:0 9px 22px -22px rgba(15,23,42,.55) !important;
}
#view-stundenuebersicht .mp-ot-avatar { grid-area:avatar !important; display:grid !important; width:40px !important; height:40px !important; place-items:center !important; border-radius:12px !important; background:rgb(var(--mp-f2-eef5fb)) !important; color:#4d627b !important; font-size:12px !important; font-weight:850 !important; }
#view-stundenuebersicht .mp-ot-copy { grid-area:copy !important; display:grid !important; min-width:0 !important; gap:1px !important; }
#view-stundenuebersicht .mp-ot-name { overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-stundenuebersicht .mp-ot-balance { grid-area:balance !important; display:grid !important; justify-items:end !important; }
#view-stundenuebersicht .mp-ot-saldo { font-size:21px !important; }
#view-stundenuebersicht .mp-ot-status { font-size:10.5px !important; }
#view-stundenuebersicht .mp-ot-meta { grid-area:meta !important; display:flex !important; margin:3px 0 0 !important; padding-top:7px !important; justify-content:flex-end !important; border-top:1px solid rgba(15,23,42,.06) !important; }
#view-stundenuebersicht .mp-ot-plus .mp-ot-avatar { background:rgb(var(--mp-f2-eaf8ef)) !important; color:#169b55 !important; }
#view-stundenuebersicht .mp-ot-minus .mp-ot-avatar { background:rgb(var(--mp-f3-fff0f0)) !important; color:#dc3a3a !important; }
#view-stundenuebersicht .mp-ot-none { grid-template-areas:"avatar copy" !important; grid-template-columns:40px minmax(0,1fr) !important; min-height:72px !important; cursor:default !important; opacity:1 !important; }
#view-stundenuebersicht .mp-ot-none .mp-ot-avatar { background:rgb(var(--mp-f2-f1f4f7)) !important; color:rgb(var(--mp-t3-7a889b)) !important; }
#view-stundenuebersicht .mp-ot-nohint { color:rgb(var(--mp-t3-8a97a8)) !important; }
#view-stundenuebersicht .mp-ot-dialog { max-width:760px !important; border:1px solid rgba(255,255,255,.8) !important; border-radius:22px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 34px 90px -32px rgba(15,23,42,.72),inset 0 1px 0 #fff !important; }

/* ── Termin- und Kommunikationsfenster ───────────────────────────── */
#mpTerminModal.mp-termin-overlay { z-index:19000 !important; padding:clamp(10px,2.4vw,30px) !important; align-items:center !important; background:rgba(15,23,42,.42) !important; backdrop-filter:blur(12px) saturate(1.15) !important; }
#mpTerminModal .mp-termin-dialog { width:min(820px,calc(100vw - 24px)) !important; max-width:820px !important; max-height:calc(100dvh - 24px) !important; overflow:hidden !important; border:1px solid rgba(255,255,255,.82) !important; border-radius:24px !important; background:linear-gradient(145deg,rgb(var(--mp-flaeche-rgb)) 0%,rgb(var(--mp-flaeche-rgb)) 70%,rgb(var(--mp-f2-f7fafd)) 100%) !important; box-shadow:0 34px 90px -30px rgba(15,23,42,.62),inset 0 1px 0 #fff !important; }
#mpTerminModal .mp-termin-header { padding:19px 22px 16px !important; align-items:center !important; background:linear-gradient(135deg,rgb(var(--mp-f1-fbfdff)),rgb(var(--mp-f2-f6faff))) !important; }
#mpTerminModal .mp-termin-header h2 { font-size:20px !important; font-weight:850 !important; }
#mpTerminModal .mp-termin-sub { margin-top:4px !important; }
#mpTerminModal .mp-termin-body { padding:18px 22px 24px !important; background:transparent !important; }
#mpTerminModal .mp-termin-form { gap:14px !important; }
#mpTerminModal .mp-termin-form .form-group { padding:11px !important; border:1px solid rgba(15,23,42,.07) !important; border-radius:14px !important; background:rgba(var(--mp-flaeche-2-rgb), .7) !important; }
#mpTerminModal .mp-termin-form .form-group > label { display:block !important; margin:0 0 6px !important; color:rgb(var(--mp-t3-64748b)) !important; font-size:10.5px !important; font-weight:780 !important; letter-spacing:.045em !important; text-transform:uppercase !important; }
#mpTerminModal .mp-termin-footer { padding:13px 20px calc(13px + env(safe-area-inset-bottom,0px)) !important; background:rgba(var(--mp-flaeche-rgb), .96) !important; }

.mp-comm-message-overlay { position:fixed !important; inset:0 !important; z-index:19500 !important; display:grid !important; padding:18px !important; place-items:center !important; background:rgba(15,23,42,.43) !important; backdrop-filter:blur(12px) saturate(1.15) !important; }
.mp-comm-message-dialog { display:flex !important; width:min(720px,calc(100vw - 24px)) !important; max-height:calc(100dvh - 28px) !important; flex-direction:column !important; overflow:hidden !important; border:1px solid rgba(255,255,255,.84) !important; border-radius:23px !important; background:linear-gradient(145deg,rgb(var(--mp-flaeche-rgb)),rgb(var(--mp-flaeche-2-rgb))) !important; box-shadow:0 34px 90px -30px rgba(15,23,42,.66),inset 0 1px 0 #fff !important; }
.mp-comm-message-head { display:flex !important; padding:18px 20px !important; align-items:center !important; justify-content:space-between !important; gap:14px !important; border-bottom:1px solid rgba(15,23,42,.08) !important; }
.mp-comm-message-head span { color:#159fe9 !important; font-size:10px !important; font-weight:800 !important; letter-spacing:.07em !important; text-transform:uppercase !important; }
.mp-comm-message-head h2 { margin:4px 0 0 !important; color:rgb(var(--mp-t1-172033)) !important; font-size:18px !important; }
.mp-comm-message-close { display:grid !important; width:38px !important; height:38px !important; place-items:center !important; flex:0 0 38px !important; border:1px solid rgba(15,23,42,.1) !important; border-radius:12px !important; background:rgb(var(--mp-flaeche-rgb)) !important; color:rgb(var(--mp-t3-657389)) !important; font-size:22px !important; }
.mp-comm-message-meta { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:10px !important; padding:15px 20px !important; border-bottom:1px solid rgba(15,23,42,.07) !important; background:rgb(var(--mp-flaeche-2-rgb)) !important; }
.mp-comm-message-meta > div { min-width:0 !important; }
.mp-comm-message-meta small { display:block !important; color:rgb(var(--mp-t3-8a98aa)) !important; font-size:9.5px !important; font-weight:760 !important; text-transform:uppercase !important; }
.mp-comm-message-meta strong { display:block !important; overflow:hidden !important; margin-top:3px !important; color:rgb(var(--mp-t2-334155)) !important; font-size:12px !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
.mp-comm-message-body { min-height:180px !important; padding:22px !important; overflow:auto !important; color:rgb(var(--mp-t2-26354a)) !important; font-size:14px !important; line-height:1.65 !important; white-space:normal !important; }
.mp-comm-message-body .is-empty { color:rgb(var(--mp-t3-8a98aa)) !important; font-style:italic !important; }
.mp-comm-message-foot { display:flex !important; padding:13px 18px !important; justify-content:flex-end !important; border-top:1px solid rgba(15,23,42,.08) !important; background:rgb(var(--mp-flaeche-rgb)) !important; }
.mp-comm-bubble[data-mp-comm-open] { cursor:pointer !important; }
.mp-comm-bubble[data-mp-comm-open]:focus-visible { outline:2px solid #2bb0ff !important; outline-offset:2px !important; }
body.mp-comm-message-open { overflow:hidden !important; }

/* Lokale Aktionen wachsen aus dem lokalen Drei-Punkte-Griff. */
#mpActionMenu.is-local-anchor { transform-origin:top left !important; }

/* ── Dock im Tablet-Hochformat ───────────────────────────────────── */
@media (pointer:coarse) and (min-width:768px) and (max-width:1366px) {
  html:not([data-mp-dock-pos]) body nav.bottom-nav,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav {
    box-sizing:border-box !important; width:max-content !important; max-width:calc(100vw - 28px) !important;
    min-width:0 !important; height:auto !important; min-height:66px !important; padding:8px 11px !important;
    gap:7px !important; align-items:center !important; justify-content:flex-start !important; flex-wrap:nowrap !important;
    overflow-x:auto !important; overflow-y:hidden !important; border-radius:24px !important;
    scrollbar-width:none !important; -webkit-overflow-scrolling:touch !important;
  }
  html:not([data-mp-dock-pos]) body nav.bottom-nav::-webkit-scrollbar,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav::-webkit-scrollbar { display:none !important; }
  html:not([data-mp-dock-pos]) body nav.bottom-nav > *,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav > * { flex:0 0 auto !important; min-width:0 !important; transform:none; }
  html:not([data-mp-dock-pos]) body nav.bottom-nav .nav-btn,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav .nav-btn { width:48px !important; min-width:48px !important; height:48px !important; min-height:48px !important; padding:0 !important; border-radius:14px !important; }
}

@media (pointer:coarse) and (orientation:portrait) {
  html:not([data-mp-dock-pos]) body nav.bottom-nav,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav {
    width:max-content !important;
    max-width:calc(100vw - 20px) !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
  }
  html:not([data-mp-dock-pos]) body nav.bottom-nav > *,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav > * {
    flex:0 0 auto !important;
    transform:none !important;
  }
}

/* ── Geraetematrix ───────────────────────────────────────────────── */
@media (max-width:1024px) {
  :is(#view-profit-dashboard .pdc-section-nav,#view-meine-stunden .mp-my-hours-section-nav,#view-baustellenplanung .mp-planner-golden-nav) { gap:5px !important; border-radius:14px !important; padding-inline:8px !important; }
  :is(#view-profit-dashboard .pdc-section-item,#view-meine-stunden .mp-my-hours-section-item,#view-baustellenplanung .mp-planner-golden-item) { padding-inline:7px !important; font-size:12px !important; }
  :is(#view-profit-dashboard .pdc-section-icon,#view-meine-stunden .mp-my-hours-section-icon,#view-baustellenplanung .mp-planner-golden-icon) { width:32px !important; height:32px !important; flex-basis:32px !important; }
  #view-baustellenplanung .mp-planner-golden-period { margin-left:0 !important; }
  #view-projekte .mp-bs-offer-progress-list { grid-template-columns:1fr !important; }
}
@media (max-width:767px) {
  #view-kunden #kundenForm.mp-customer-form-golden,
  #view-kunden .mp-customer-form-grid { grid-template-columns:1fr !important; }
  #view-kunden .mp-customer-form-grid > * { grid-column:1 !important; }
  #view-material .mp-material-filter-menu { flex:0 0 min(82vw,280px) !important; }
  #mpTerminModal.mp-termin-overlay { padding:0 !important; align-items:flex-end !important; }
  #mpTerminModal .mp-termin-dialog { width:100% !important; max-width:none !important; max-height:calc(100dvh - max(10px,env(safe-area-inset-top))) !important; border-radius:24px 24px 0 0 !important; }
  #mpTerminModal .mp-termin-body { padding:14px 15px 20px !important; }
  #mpTerminModal .mp-termin-form { display:grid !important; grid-template-columns:1fr !important; }
  #mpTerminModal .mp-termin-form > * { grid-column:1 !important; }
  .mp-comm-message-overlay { padding:0 !important; place-items:end center !important; }
  .mp-comm-message-dialog { width:100% !important; max-height:calc(100dvh - max(10px,env(safe-area-inset-top))) !important; border-radius:24px 24px 0 0 !important; }
  .mp-comm-message-meta { grid-template-columns:1fr !important; }
}

/* Handy-Dock: alle Module bleiben in Originalgroesse erreichbar. Alte Dock-
   Regeln setzten overflow spaet auf hidden/visible und schnitten rechts ab. */
@media (pointer:coarse) and (max-width:767px) {
  html:not([data-mp-dock-pos]) body nav.bottom-nav,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav {
    box-sizing:border-box !important;
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    min-width:0 !important;
    height:auto !important;
    min-height:66px !important;
    padding:8px 10px !important;
    gap:6px !important;
    align-items:center !important;
    justify-content:flex-start !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    overscroll-behavior-inline:contain !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-x !important;
  }
  html:not([data-mp-dock-pos]) body nav.bottom-nav::-webkit-scrollbar,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav::-webkit-scrollbar { display:none !important; }
  html:not([data-mp-dock-pos]) body nav.bottom-nav > *,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav > * {
    flex:0 0 auto !important;
    transform:none !important;
  }
  html:not([data-mp-dock-pos]) body nav.bottom-nav .nav-btn,
  html[data-mp-dock-pos="bottom"] body nav.bottom-nav .nav-btn {
    width:50px !important;
    min-width:50px !important;
    height:50px !important;
    min-height:50px !important;
    padding:0 !important;
  }
}

/* Lokale Listenaktionen: Position folgt dem angeklickten Drei-Punkte-Griff. */
@media (min-width:681px) {
  html body .mp-record-sheet.is-local-anchor {
    position:fixed !important;
    top:var(--mp-record-sheet-top,72px) !important;
    right:auto !important;
    bottom:auto !important;
    left:var(--mp-record-sheet-left,12px) !important;
    width:var(--mp-record-sheet-width,380px) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:var(--mp-record-sheet-max-height,calc(100dvh - 84px)) !important;
    overflow:auto !important;
    border:1px solid rgba(148,163,184,.25) !important;
    border-radius:22px !important;
    transform:translateY(-8px) scale(.985) !important;
    transform-origin:top right !important;
    opacity:0 !important;
    box-shadow:0 28px 70px -24px rgba(15,23,42,.55),inset 0 1px 0 #fff !important;
  }
  html body .mp-record-sheet.is-local-anchor.is-open {
    transform:translateY(0) scale(1) !important;
    opacity:1 !important;
  }
  html body .mp-record-sheet.is-local-anchor .mp-record-sheet-handle { display:none !important; }
}

/* =====================================================================
   MP-20260830-001 · INTERAKTIONS- UND DICHTE-HARDWALL
   ===================================================================== */

/* Globale Aktionsmenues duerfen eine explizite lokale Verankerung nicht
   wieder durch die alte rechte Drawer-Position ueberschreiben. */
html body #mpActionMenu.is-local-anchor {
  position:fixed !important;
  top:var(--mp-action-local-top,72px) !important;
  right:auto !important;
  bottom:auto !important;
  left:var(--mp-action-local-left,12px) !important;
  margin:0 !important;
  transform-origin:top left !important;
}

/* Baustellen-Bereichsleiste: ab dem ersten Paint kompakt. Die technische
   Original-Tableiste bleibt fuer die bestehende Business-Logik im DOM, kann
   aber vor dem Aufbau der Golden-Navigation nicht mehr gross aufblitzen. */
#view-projekte #projTabsNav {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#view-projekte.mp-baustellen-golden .mp-bs-group-nav {
  position:relative !important;
  z-index:620 !important;
  isolation:isolate !important;
  pointer-events:auto !important;
}
#view-projekte.mp-baustellen-golden .mp-bs-nav-item,
#view-projekte.mp-baustellen-golden .mp-bs-nav-item > summary,
#view-projekte.mp-baustellen-golden .mp-bs-nav-option {
  position:relative !important;
  z-index:2 !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
}
#view-projekte.mp-baustellen-golden .mp-bs-nav-group:not([open]) > .mp-bs-nav-menu { display:none !important; }
#view-projekte.mp-baustellen-golden .mp-bs-nav-group[open] > .mp-bs-nav-menu {
  position:fixed !important;
  z-index:18500 !important;
  right:auto !important;
  bottom:auto !important;
  display:grid !important;
  width:min(280px,calc(100vw - 24px)) !important;
  max-height:min(60dvh,460px) !important;
  overflow:auto !important;
  pointer-events:auto !important;
  transform:none !important;
}

/* Verschobene Planer-Inhalte verlieren ihre alten absoluten/fixen Koordinaten
   und bleiben innerhalb des direkt am Ausloeser positionierten Popovers. */
#view-baustellenplanung .mp-planner-golden-menu:not([open]) > .mp-planner-golden-popover { display:none !important; }
#view-baustellenplanung .mp-planner-golden-menu[open] > .mp-planner-golden-popover { display:block !important; pointer-events:auto !important; }
#view-baustellenplanung .mp-planner-golden-popover > :is(.dash-planner-toolbar,.dash-planner-project-pick,#mpPlannerStatusFilter,#mpPlannerQuickActions),
#view-baustellenplanung .mp-planner-golden-popover :is(.dash-planner-head-actions,.dash-planner-tools,.dash-planner-actions) {
  position:static !important;
  inset:auto !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  transform:none !important;
}

/* Zeitraum und Materialfilter sind echte, lokal verankerte Menues. */
#view-profit-dashboard .pdc-period-menu:not([open]) > .pdc-period-popover,
#view-material .mp-material-filter-menu:not([open]) > .mp-material-filter-popover { display:none !important; }
#view-profit-dashboard .pdc-period-menu[open] > .pdc-period-popover,
#view-material .mp-material-filter-menu[open] > .mp-material-filter-popover {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  right:auto !important;
  bottom:auto !important;
}

/* Kundenfavorit: kompakt, formstabil und mit eindeutigem Aktivzustand. */
#view-kunden .kunden-form-head {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 42px !important;
  align-items:end !important;
  gap:10px !important;
}
#view-kunden .kunden-form-title { min-width:0 !important; }
#view-kunden .kunden-form-title input { width:100% !important; box-sizing:border-box !important; }
#view-kunden .kunden-fav-btn {
  position:relative !important;
  inset:auto !important;
  display:grid !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  padding:0 !important;
  place-items:center !important;
  align-self:end !important;
  border-radius:12px !important;
  transform:none !important;
}
#view-kunden .kunden-fav-btn svg { width:20px !important; height:20px !important; }

/* Aufmass-Zuordnung als bestaetigte Telefonbuch-/Objektauswahl. */
#view-aufmass #aufmassContextHint {
  display:none !important;
  margin:11px 0 0 !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:9px !important;
}
#view-aufmass #aufmassContextHint.has-context { display:grid !important; }
#view-aufmass .aufmass-context-card {
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) 24px !important;
  min-height:56px !important;
  padding:8px 10px !important;
  align-items:center !important;
  gap:9px !important;
  border:1px solid rgba(15,23,42,.085) !important;
  border-radius:13px !important;
  background:linear-gradient(145deg,rgb(var(--mp-flaeche-rgb)),rgb(var(--mp-f2-f8fbfd))) !important;
  box-shadow:0 8px 20px -20px rgba(15,23,42,.55) !important;
}
#view-aufmass .aufmass-context-card-icon {
  display:grid !important;
  width:34px !important;
  height:34px !important;
  place-items:center !important;
  border-radius:10px !important;
  background:#e7f6ff !important;
  color:#159fe9 !important;
  font-size:12px !important;
  font-weight:850 !important;
}
#view-aufmass .aufmass-context-card.is-objekt .aufmass-context-card-icon { background:rgb(var(--mp-f2-e8f8ee)) !important; color:#16a34a !important; }
#view-aufmass .aufmass-context-card-copy { display:grid !important; min-width:0 !important; }
#view-aufmass .aufmass-context-card-copy small { color:rgb(var(--mp-t3-8391a4)) !important; font-size:9.5px !important; font-weight:750 !important; letter-spacing:.055em !important; text-transform:uppercase !important; }
#view-aufmass .aufmass-context-card-copy strong,
#view-aufmass .aufmass-context-card-copy em { overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
#view-aufmass .aufmass-context-card-copy strong { color:rgb(var(--mp-t1-172033)) !important; font-size:13px !important; }
#view-aufmass .aufmass-context-card-copy em { color:rgb(var(--mp-t3-758398)) !important; font-size:10.5px !important; font-style:normal !important; }
#view-aufmass .aufmass-context-card > b { color:#19a95a !important; font-size:15px !important; }

/* Baustellen-KPIs: nur so hoch wie ihr Inhalt; der Leistungsstand bleibt bei
   grossen Angeboten ein begrenztes, intern scrollbareres Fenster. */
#view-projekte.mp-baustellen-golden #projOverviewTop {
  align-items:start !important;
  grid-auto-rows:auto !important;
}
#view-projekte.mp-baustellen-golden #projOverviewTop > :is(#projFinanceCard,#projBudgetCard) {
  height:auto !important;
  min-height:0 !important;
  align-self:start !important;
}
#view-projekte.mp-baustellen-golden #projOverviewTop #projBudgetCard .card-body,
#view-projekte.mp-baustellen-golden #projOverviewTop .proj-budget-statgrid { flex:0 0 auto !important; }
#view-projekte .mp-bs-offer-progress-list {
  max-height:min(360px,44dvh) !important;
  padding-right:5px !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  scrollbar-gutter:stable !important;
}
#view-projekte .mp-bs-offer-task-number { color:rgb(var(--mp-t3-718096)) !important; font:800 10.5px/1 inherit !important; }

/* Meine Zeiten: Filter und Eintraege bilden ein einziges kompaktes
   Listenfenster statt einzelner, grossflaechiger Karten auf dem Hintergrund. */
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-filters {
  margin:0 !important;
  padding:13px 14px !important;
  border:1px solid rgba(15,23,42,.09) !important;
  border-bottom:0 !important;
  border-radius:18px 18px 0 0 !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
}
#view-meine-stunden[data-mp-my-hours-section="list"] #mwhListMount {
  margin:0 !important;
  padding:0 14px 16px !important;
  overflow:hidden !important;
  border:1px solid rgba(15,23,42,.09) !important;
  border-top:0 !important;
  border-radius:0 0 18px 18px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:0 16px 38px -32px rgba(15,23,42,.55) !important;
}
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-group { margin:0 !important; padding:0 !important; }
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-group-head {
  min-height:42px !important;
  padding:9px 4px 7px !important;
  border-bottom:1px solid rgba(15,23,42,.07) !important;
}
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-group-body { display:grid !important; gap:0 !important; }
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-card {
  min-height:0 !important;
  margin:0 !important;
  padding:11px 44px 11px 4px !important;
  border:0 !important;
  border-bottom:1px solid rgba(15,23,42,.07) !important;
  border-radius:0 !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:none !important;
}
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-card:last-child { border-bottom:0 !important; }
#view-meine-stunden[data-mp-my-hours-section="list"] .mwh-card-action { top:50% !important; right:4px !important; transform:translateY(-50%) !important; }

@media (max-width:767px) {
  #view-aufmass #aufmassContextHint { grid-template-columns:1fr !important; }
  #view-projekte .mp-bs-offer-progress-list { max-height:min(330px,48dvh) !important; }
  #view-meine-stunden[data-mp-my-hours-section="list"] .mwh-filters { padding:10px !important; border-radius:15px 15px 0 0 !important; }
  #view-meine-stunden[data-mp-my-hours-section="list"] #mwhListMount { padding:0 10px 12px !important; border-radius:0 0 15px 15px !important; }
}

/* Profit & Auftraege nutzt denselben entkoppelten Finder wie Rechnungen. */
#view-profit-dashboard { --mp-ws-rail-open:420px; --mp-ws-rail-closed:64px; --mp-ws-top:58px; }
html body #view-profit-dashboard .pdc-workspace { display:block !important; min-width:0 !important; }
html body #view-profit-dashboard .pdc-content { width:100% !important; min-width:0 !important; }
html body #view-profit-dashboard .pdc-project-master {
  display:flex !important;
  flex-direction:column !important;
  padding:82px 18px 24px !important;
  background:linear-gradient(105deg,rgba(var(--mp-flaeche-rgb), .99),rgba(var(--mp-flaeche-rgb), .97) 78%,rgba(var(--mp-f2-fafbfd), 0.98)) !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#view-profit-dashboard .pdc-project-master-head { flex:0 0 auto !important; margin:0 0 14px !important; padding:0 !important; border:0 !important; }
#view-profit-dashboard .pdc-project-master-head h2 { margin:0 !important; color:rgb(var(--mp-t1-172033)) !important; font-size:21px !important; font-weight:790 !important; letter-spacing:-.025em !important; }
#view-profit-dashboard .pdc-project-master-head p { margin:4px 0 0 !important; color:rgb(var(--mp-t3-718095)) !important; font-size:11.5px !important; line-height:1.35 !important; }
#view-profit-dashboard .pdc-project-search { flex:0 0 auto !important; min-height:50px !important; margin:0 0 10px !important; border:1px solid rgba(15,23,42,.10) !important; border-radius:13px !important; background:rgb(var(--mp-flaeche-rgb)) !important; }
#view-profit-dashboard .pdc-project-filter { flex:0 0 auto !important; margin:0 0 10px !important; }
#view-profit-dashboard .pdc-project-master-meta { flex:0 0 auto !important; margin:2px 0 9px !important; color:rgb(var(--mp-t3-7a889b)) !important; font-size:10.5px !important; font-weight:750 !important; text-transform:uppercase !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) { min-height:0 !important; padding:0 2px 120px !important; overflow:visible !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList)[hidden] { display:none !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-list--v2 { gap:12px !important; padding:0 !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-month { overflow:hidden !important; border:0 !important; border-radius:15px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 0 0 1px rgba(15,23,42,.075),0 10px 24px -20px rgba(15,23,42,.32) !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-month-summary { min-height:68px !important; padding:13px 46px 12px 14px !important; background:linear-gradient(180deg,rgb(var(--mp-flaeche-rgb)),rgb(var(--mp-f1-fbfcfe))) !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-month-name { color:rgb(var(--mp-t1-172033)) !important; font-size:17px !important; font-weight:820 !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-row { grid-template-columns:minmax(0,1fr) auto !important; gap:10px !important; min-height:78px !important; padding:12px 46px 12px 14px !important; border-top-color:rgba(15,23,42,.07) !important; background:rgb(var(--mp-flaeche-rgb)) !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-row.is-active { background:linear-gradient(105deg,rgba(43,176,255,.14),rgba(43,176,255,.07)) !important; box-shadow:inset 0 0 0 1px rgba(43,176,255,.18) !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-title { color:rgb(var(--mp-t1-172033)) !important; font-size:14px !important; font-weight:760 !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-sub { color:rgb(var(--mp-t3-64748b)) !important; font-size:12px !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-more { display:grid !important; right:6px !important; width:38px !important; height:38px !important; place-items:center !important; }
#view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-tray { display:none !important; }

@media (min-width:1200px) {
  #view-profit-dashboard.view.active > .view-container { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
  #view-profit-dashboard.view.active > .view-container > .view-box { box-sizing:border-box !important; width:calc(100% - var(--mp-ws-rail-open)) !important; max-width:none !important; margin:0 0 0 var(--mp-ws-rail-open) !important; padding:24px 24px 124px !important; transition:width 560ms cubic-bezier(.22,1,.36,1),margin-left 560ms cubic-bezier(.22,1,.36,1) !important; }
  #view-profit-dashboard.view.active > .view-container > .view-box.is-list-rail-collapsed { width:calc(100% - var(--mp-ws-rail-closed)) !important; margin-left:var(--mp-ws-rail-closed) !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-profit-dashboard.view.active > .pdc-project-master { position:fixed !important; /* z-index: siehe zentrale Z-Skala in mp-list-workspaces-golden.css, Dateiende (MP-20260901-004 Nachbesserung 2) */ inset:58px auto 0 0 !important; box-sizing:border-box !important; width:var(--mp-ws-rail-open) !important; height:auto !important; max-height:none !important; margin:0 !important; overflow-y:auto !important; border:1px solid rgba(15,23,42,.10) !important; border-left:0 !important; border-radius:0 28px 28px 0 !important; box-shadow:8px 0 18px -10px rgba(15,23,42,.24),22px 0 52px -24px rgba(15,23,42,.38) !important; transform:translateX(0) !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-profit-dashboard.view.active.is-list-rail-collapsed > .pdc-project-master { transform:translateX(calc(-100% + 58px)) !important; }
  #view-profit-dashboard.view.active .mp-workspace-rail-toggle { position:absolute !important; z-index:8 !important; top:20px !important; right:16px !important; display:grid !important; width:42px !important; height:42px !important; padding:0 !important; place-items:center !important; border:1px solid rgba(15,23,42,.11) !important; border-radius:13px !important; background:rgb(var(--mp-flaeche-rgb)) !important; }
  #view-profit-dashboard.view.active.is-list-rail-collapsed .mp-workspace-rail-toggle > :first-child { transform:rotate(180deg) !important; }
}
@media (min-width:768px) and (max-width:1199px) {
  #view-profit-dashboard.view.active > .view-container > .view-box { width:100% !important; max-width:none !important; padding-left:74px !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-profit-dashboard.view.active > .pdc-project-master { position:fixed !important; /* z-index: siehe zentrale Z-Skala in mp-list-workspaces-golden.css, Dateiende (MP-20260901-004 Nachbesserung 2) */ inset:58px auto 0 0 !important; width:min(520px,calc(100vw - 72px)) !important; margin:0 !important; overflow-y:auto !important; border-radius:0 26px 26px 0 !important; transform:translateX(0) !important; }
  html:not(#mpkk):not(#mpkk-2) body #view-profit-dashboard.view.active.is-list-rail-collapsed > .pdc-project-master { transform:translateX(calc(-100% + 58px)) !important; }
  #view-profit-dashboard.view.active .mp-workspace-rail-toggle { position:absolute !important; z-index:8 !important; top:18px !important; right:14px !important; display:grid !important; width:42px !important; height:42px !important; place-items:center !important; }
}
@media (max-width:767px) {
  #view-profit-dashboard .pdc-project-master { padding:76px 14px 22px !important; }
  #view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-row { grid-template-columns:minmax(0,1fr) 38px !important; grid-template-areas:"main more" "kpi kpi" !important; min-height:92px !important; padding:14px !important; }
  #view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-main { grid-area:main !important; }
  #view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-more { position:static !important; grid-area:more !important; justify-self:end !important; transform:none !important; }
  #view-profit-dashboard :is(#pdProjectMasterList,#pdProfitOfferList) .mp-record-kpi { grid-area:kpi !important; width:100% !important; max-width:none !important; }
}

/* =====================================================================
   APPWEITER STICKY-MASSSTAB · EIN SCROLLER, KEIN ZWEITER TOPBAR-ABSTAND
   =====================================================================
   Die .view ist der eigentliche Scroll-Container und beginnt bereits exakt
   unter der festen Topbar. Darum ist innerhalb der View top:0 richtig. Ein
   weiterer 52/58-px-Offset erzeugt die vom Nutzer gemeldete sichtbare Luecke.
   Jede Leiste ist selbst der einzige horizontale Touch-Scroller. */
:is(
  #view-kva .mp-editor-command-deck,
  #view-rechnung .mp-editor-command-deck,
  #view-mail .mp-editor-command-deck,
  #view-projekte #mpProjKarte,
  #view-stundenuebersicht .mp-hours-section-nav,
  #view-meine-stunden .mp-my-hours-section-nav,
  #view-profit-dashboard .pdc-section-nav,
  #view-baustellenplanung .mp-planner-golden-nav
) {
  position:sticky !important;
  top:0 !important;
  z-index:440 !important;
  box-sizing:border-box !important;
  max-width:100% !important;
}

:is(
  #view-kva .mp-editor-section-nav,
  #view-rechnung .mp-editor-section-nav,
  #view-mail .mp-editor-section-nav,
  #view-aufmass .mp-aufmass-section-nav,
  #view-projekte #mpBsGroupNav,
  #view-stundenuebersicht .mp-hours-section-nav,
  #view-meine-stunden .mp-my-hours-section-nav,
  #view-profit-dashboard .pdc-section-nav,
  #view-baustellenplanung .mp-planner-golden-nav
) {
  display:flex !important;
  width:100% !important;
  min-width:0 !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  overscroll-behavior-inline:contain !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
  touch-action:pan-x pan-y !important;
}

:is(
  #view-kva .mp-editor-section-nav,
  #view-rechnung .mp-editor-section-nav,
  #view-mail .mp-editor-section-nav,
  #view-aufmass .mp-aufmass-section-nav,
  #view-projekte #mpBsGroupNav,
  #view-stundenuebersicht .mp-hours-section-nav,
  #view-meine-stunden .mp-my-hours-section-nav,
  #view-profit-dashboard .pdc-section-nav,
  #view-baustellenplanung .mp-planner-golden-nav
)::-webkit-scrollbar { display:none !important; }

/* Angebot/Rechnung: Der Deck-Rahmen scrollt nie zusaetzlich; Tabs und alle
   echten Aktionen sind Kinder desselben inneren Scrollpfads. */
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck { overflow:hidden !important; }
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > .view-footer-actions {
  display:contents !important;
}
:is(#view-kva,#view-rechnung,#view-mail) .mp-editor-command-deck > .mp-editor-section-nav > :is(.mp-editor-section-item,.view-footer-actions > *),
#view-aufmass .mp-aufmass-section-nav > *,
#view-projekte #mpBsGroupNav > *,
#view-stundenuebersicht .mp-hours-section-nav > *,
#view-meine-stunden .mp-my-hours-section-nav > *,
#view-profit-dashboard .pdc-section-nav > *,
#view-baustellenplanung .mp-planner-golden-nav > * {
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

@media (max-width:1024px) {
  :is(
    #view-kva .mp-editor-section-nav,
    #view-rechnung .mp-editor-section-nav,
    #view-mail .mp-editor-section-nav,
    #view-aufmass .mp-aufmass-section-nav,
    #view-projekte #mpBsGroupNav,
    #view-stundenuebersicht .mp-hours-section-nav,
    #view-meine-stunden .mp-my-hours-section-nav,
    #view-profit-dashboard .pdc-section-nav,
    #view-baustellenplanung .mp-planner-golden-nav
  ) { scroll-padding-inline:10px !important; }
}

/* =====================================================================
   WORKSPACE 49 · VIEWPORT-SICHERE MENUES UND PREMIUM-FENSTER
   ===================================================================== */

/* Portale liegen bewusst direkt unter body. So koennen Sticky-Leisten und
   horizontale Tab-Scroller die Menues weder abschneiden noch verschieben. */
body > .mp-viewport-popover {
  position:fixed !important;
  z-index:19000 !important;
  box-sizing:border-box !important;
  min-width:0 !important;
  margin:0 !important;
  padding:14px !important;
  overflow:auto !important;
  overscroll-behavior:contain !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:17px !important;
  background:rgba(var(--mp-flaeche-rgb), .99) !important;
  color:rgb(var(--mp-t1-172033)) !important;
  box-shadow:0 28px 72px -30px rgba(15,23,42,.55),0 10px 24px -20px rgba(15,23,42,.26),inset 0 1px 0 #fff !important;
  -webkit-backdrop-filter:blur(24px) saturate(1.15) !important;
  backdrop-filter:blur(24px) saturate(1.15) !important;
  animation:mpViewportPopoverIn 150ms cubic-bezier(.22,1,.36,1) both !important;
}
body > .mp-viewport-popover[hidden] { display:none !important; }
@keyframes mpViewportPopoverIn {
  from { opacity:0; transform:translateY(-5px) scale(.985); }
  to { opacity:1; transform:translateY(0) scale(1); }
}

/* Stundenfilter: seine echte Breite entspricht jetzt auch der Breite, mit der
   die Position berechnet wird. Der Formularinhalt darf nie breiter werden. */
body > .mp-viewport-popover--hours { padding:14px !important; }
body > .mp-viewport-popover--hours .mp-hrep-filters {
  box-sizing:border-box !important;
  width:100% !important;
  min-width:0 !important;
}
body > .mp-viewport-popover--hours :is(.mp-hrep-row,.mp-hrep-field,.mp-hrep-field-grow,.mp-hrep-input) {
  min-width:0 !important;
  max-width:100% !important;
}
body > .mp-viewport-popover--hours .mp-hrep-seg {
  display:flex !important;
  flex-wrap:wrap !important;
  height:auto !important;
  min-height:38px !important;
  overflow:visible !important;
  max-width:100% !important;
  gap:4px !important;
}
body > .mp-viewport-popover--hours .mp-hrep-seg-btn {
  flex:1 1 auto !important;
  min-width:max-content !important;
  padding:6px 10px !important;
  font-size:12.5px !important;
  text-align:center !important;
}
@media (max-width:767px) {
  body > .mp-viewport-popover { padding:11px !important; border-radius:15px !important; }
  body > .mp-viewport-popover--hours .mp-hrep-row { grid-template-columns:minmax(0,1fr) !important; gap:10px !important; }
  body > .mp-viewport-popover--hours .mp-hrep-row-search { display:grid !important; }
  body > .mp-viewport-popover--hours .mp-hrep-field-reset,
  body > .mp-viewport-popover--hours .mp-hrep-reset { width:100% !important; justify-self:stretch !important; }
}

/* Planer- und Profitinhalte verlieren nach dem Portieren ihre alten, auf die
   View begrenzten Selektoren. Diese Regeln bilden dieselbe kompakte Karte. */
body > .mp-viewport-popover--planner > :is(.dash-planner-toolbar,.dash-planner-project-pick,#mpPlannerStatusFilter,#mpPlannerQuickActions),
body > .mp-viewport-popover--planner :is(.dash-planner-head-actions,.dash-planner-tools,.dash-planner-actions),
body > .mp-viewport-popover--profit-period > .pdc-filter-controls {
  position:static !important;
  inset:auto !important;
  box-sizing:border-box !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  transform:none !important;
}
body > .mp-viewport-popover--planner > .dash-planner-toolbar {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
body > .mp-viewport-popover--planner .dash-planner-project-pick { display:grid !important; width:100% !important; min-width:0 !important; gap:5px !important; }
body > .mp-viewport-popover--planner .dash-planner-project-pick :is(select,input),
body > .mp-viewport-popover--profit-period :is(select,input) { width:100% !important; min-width:0 !important; }
body > .mp-viewport-popover--planner #mpPlannerStatusFilter { display:flex !important; margin:0 !important; flex-wrap:wrap !important; }
body > .mp-viewport-popover--planner #mpPlannerQuickActions,
body > .mp-viewport-popover--planner #dashPlannerActions { display:grid !important; width:100% !important; grid-template-columns:1fr !important; gap:8px !important; }
body > .mp-viewport-popover--planner :is(button,.mp-btn),
body > .mp-viewport-popover--profit-period :is(button,.mp-btn) { max-width:100% !important; }
body > .mp-viewport-popover--profit-period > .pdc-filter-controls { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:9px !important; }
@media (max-width:480px) {
  body > .mp-viewport-popover--profit-period > .pdc-filter-controls { grid-template-columns:minmax(0,1fr) !important; }
}

/* Materialart und Hersteller oeffnen als echte Menues unmittelbar am
   Ausloeser. Die vorhandenen, funktionalen Filterchips bleiben die Quelle. */
body > .mp-viewport-popover--material :is(.mat-cat-tabs,.mat-brand-tabs) {
  display:flex !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  overflow:visible !important;
}
body > .mp-viewport-popover--material :is(.mat-cat-tab,.mat-tab) { min-height:40px !important; flex:0 0 auto !important; }
#view-material.mp-material-golden-filters .mat-sticky-top { overflow:visible !important; }
#view-material .mp-material-filter-menu > summary { pointer-events:auto !important; touch-action:manipulation !important; }

/* Brief- und Profitfinder folgen exakt dem Rechnungsstandard: eingeklappt ist
   die Liste wirklich weg, nur der externe Pfeil bleibt bedienbar. */
@media (min-width:768px) {
  html body :is(#view-briefe,#view-profit-dashboard).view.active.is-list-rail-collapsed > .mp-workspace-list-master {
    display:none !important;
    border:0 !important;
    box-shadow:none !important;
    pointer-events:none !important;
    transform:none !important;
  }
  html body :is(#view-briefe,#view-profit-dashboard).view.active.is-list-rail-collapsed > .mp-workspace-external-rail-toggle {
    position:fixed !important;
    z-index:950 !important;
    top:calc(var(--mp-topbar-h,58px) + 10px) !important;
    left:5px !important;
    display:grid !important;
    width:42px !important;
    height:42px !important;
    padding:0 !important;
    place-items:center !important;
    border:1px solid rgba(15,23,42,.10) !important;
    border-radius:13px !important;
    background:rgb(var(--mp-flaeche-rgb)) !important;
    color:rgb(var(--mp-t2-344257)) !important;
    box-shadow:0 10px 24px -17px rgba(15,23,42,.52) !important;
  }
  #view-profit-dashboard.view.active > .pdc-project-master { display:flex !important; }
}

/* Profit & Auftraege bleibt in allen Bereichen eine echte Master-Detail-View.
   Auf Tablet liegt der Finder wie bei Rechnungen ueber dem vollen Inhalt und
   klappt nach einer Auswahl bzw. einem Aussentipp sauber ein. */
#view-profit-dashboard:not([data-mp-profit-section="projects"]) > .pdc-project-master { display:flex !important; }
#view-profit-dashboard .pdc-content,
#view-profit-dashboard .pdc-content > *,
#view-profit-dashboard .pd-card,
#view-profit-dashboard .pdc-body { box-sizing:border-box !important; min-width:0 !important; max-width:100% !important; }
@media (min-width:768px) and (max-width:1199px) {
  html:not(#mpkk):not(#mpkk-2) body #view-profit-dashboard.view.active > .pdc-project-master {
    width:min(var(--mp-ws-rail-open),calc(100vw - 72px)) !important;
    max-width:calc(100vw - 72px) !important;
  }
  #view-profit-dashboard.view.active > .view-container > .view-box {
    box-sizing:border-box !important;
    width:100% !important;
    margin:0 !important;
    padding:16px 16px 124px 74px !important;
    overflow-x:hidden !important;
  }
  #view-profit-dashboard .pdc-header { padding:18px 20px !important; }
  #view-profit-dashboard .pdc-hero { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #view-profit-dashboard .pdc-hero-main { grid-column:1/-1 !important; }
  #view-profit-dashboard .pdc-strip { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #view-profit-dashboard .pdc-project-focus-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #view-profit-dashboard #pdRadar2List { grid-template-columns:minmax(0,1fr) !important; max-height:none !important; }
}

/* Die beiden Baustellen-KPI-Fenster nehmen die gemeinsame, vom Inhalt
   bestimmte Zeilenhoehe an. Keine leeren Riesenflaechen, keine Stufe rechts. */
#view-projekte.mp-baustellen-golden #projOverviewTop {
  align-items:stretch !important;
  grid-auto-rows:auto !important;
}
#view-projekte.mp-baustellen-golden #projOverviewTop > :is(#projFinanceCard,#projBudgetCard) {
  height:100% !important;
  min-height:0 !important;
  align-self:stretch !important;
}

/* Material anlegen/bearbeiten: einheitliches Premium-Dialogfenster mit
   ruhigem Kopf, internem Scrollbereich und dauerhaft erreichbaren Aktionen. */
#matSheetOverlay:not(.hidden) {
  position:fixed !important;
  z-index:20000 !important;
  inset:0 !important;
  box-sizing:border-box !important;
  display:grid !important;
  width:100% !important;
  height:100dvh !important;
  padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left)) !important;
  place-items:center !important;
  overflow:hidden !important;
  background:rgba(15,23,42,.44) !important;
  -webkit-backdrop-filter:blur(14px) saturate(1.1) !important;
  backdrop-filter:blur(14px) saturate(1.1) !important;
}
#matSheetOverlay > #matSheet.mat-sheet-wrap {
  box-sizing:border-box !important;
  display:flex !important;
  width:min(760px,calc(100vw - 24px)) !important;
  max-width:760px !important;
  height:auto !important;
  max-height:calc(100dvh - 24px) !important;
  margin:0 !important;
  flex-direction:column !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.82) !important;
  border-radius:24px !important;
  background:rgb(var(--mp-flaeche-2-rgb)) !important;
  box-shadow:0 40px 100px -38px rgba(15,23,42,.72),0 14px 34px -20px rgba(15,23,42,.38),inset 0 1px 0 #fff !important;
}
@media (min-width:640px) and (max-width:1024px) {
  #matSheetOverlay > #matSheet.mat-sheet-wrap {
    width:min(580px,calc(100vw - 48px)) !important;
    max-width:580px !important;
    max-height:calc(100dvh - 48px) !important;
  }
}
#matSheet .mat-sheet-header {
  position:relative !important;
  z-index:2 !important;
  min-height:78px !important;
  padding:18px 20px 15px !important;
  align-items:center !important;
  border-bottom:1px solid rgba(15,23,42,.08) !important;
  background:linear-gradient(145deg,rgba(var(--mp-flaeche-rgb), .99),rgba(var(--mp-flaeche-2-rgb), .98)) !important;
}
#matSheet .mat-sheet-kicker { margin:0 0 4px !important; color:#159fe9 !important; font-size:10px !important; font-weight:820 !important; letter-spacing:.075em !important; }
#matSheet .mat-sheet-header h2 { color:rgb(var(--mp-t1-172033)) !important; font-size:21px !important; font-weight:820 !important; letter-spacing:-.025em !important; }
#matSheet .mat-sheet-close {
  display:grid !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  padding:0 !important;
  place-items:center !important;
  border:1px solid rgba(15,23,42,.09) !important;
  border-radius:13px !important;
  background:rgb(var(--mp-flaeche-3-rgb)) !important;
  color:rgb(var(--mp-t3-64748b)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}
#matSheet .mat-sheet-body {
  box-sizing:border-box !important;
  min-height:0 !important;
  padding:16px !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  background:rgb(var(--mp-flaeche-2-rgb)) !important;
  scrollbar-gutter:stable !important;
}
#matSheet .mat-form-section {
  box-sizing:border-box !important;
  margin:0 0 12px !important;
  padding:15px !important;
  gap:12px !important;
  border:1px solid rgba(15,23,42,.075) !important;
  border-radius:16px !important;
  background:rgb(var(--mp-flaeche-rgb)) !important;
  box-shadow:0 10px 26px -26px rgba(15,23,42,.45) !important;
}
#matSheet .mat-form-section:last-child { margin-bottom:0 !important; }
#matSheet .mat-price-section-label { color:rgb(var(--mp-t3-718096)) !important; font-size:10px !important; font-weight:820 !important; letter-spacing:.07em !important; }
#matSheet .mat-input { min-height:44px !important; border:1px solid rgba(15,23,42,.11) !important; border-radius:12px !important; background:rgb(var(--mp-flaeche-rgb)) !important; box-shadow:0 4px 14px -14px rgba(15,23,42,.4) !important; }
#matSheet .mat-input:focus { border-color:#2bb0ff !important; box-shadow:0 0 0 3px rgba(43,176,255,.14) !important; }
#matSheet .mat-sheet-footer {
  position:relative !important;
  z-index:2 !important;
  min-height:72px !important;
  padding:13px 18px calc(13px + env(safe-area-inset-bottom,0px)) !important;
  border-top:1px solid rgba(15,23,42,.08) !important;
  background:rgba(var(--mp-flaeche-rgb), .98) !important;
  box-shadow:0 -14px 32px -30px rgba(15,23,42,.5) !important;
}
#matSheet .mat-sheet-footer :is(button,.mat-btn-danger,.mat-btn-ghost,.mat-btn-primary) { min-height:44px !important; border-radius:12px !important; }
@media (max-width:639px) {
  #matSheetOverlay:not(.hidden) { padding:8px !important; }
  #matSheetOverlay > #matSheet.mat-sheet-wrap { width:calc(100vw - 16px) !important; max-height:calc(100dvh - 16px) !important; border-radius:21px !important; }
  #matSheet .mat-sheet-header { min-height:70px !important; padding:14px !important; }
  #matSheet .mat-sheet-body { padding:11px !important; }
  #matSheet .mat-form-section { grid-template-columns:minmax(0,1fr) !important; padding:13px !important; }
  #matSheet .mat-form-full { grid-column:1 !important; }
  #matSheet .mat-sheet-footer { padding:11px calc(11px + env(safe-area-inset-right,0px)) calc(11px + env(safe-area-inset-bottom,0px)) calc(11px + env(safe-area-inset-left,0px)) !important; }
}

/* ================================================================
   WORKSPACE 50 · WORKER-ARBEITSLEISTE UND ROLLENSICHERES PROJEKT
   ================================================================ */
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] {
  display: flex !important;
  flex-flow: row nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  gap: 10px !important;
  padding: 8px 6px !important;
  overflow: visible !important;
}
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] > .mp-bs-nav-item {
  display: flex !important;
  flex-direction: column !important;
  flex: 0 0 74px !important;
  width: 74px !important;
  min-width: 74px !important;
  max-width: 84px !important;
  min-height: 60px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 6px 4px !important;
  border-radius: 12px !important;
  text-align: center !important;
  pointer-events: auto !important;
}
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] .mp-bs-nav-icon {
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
}
#mpBsGroupNav[data-bs-nav-mode="worker"] > .mp-bs-nav-item > span:not(.mp-bs-nav-icon),
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte #mpBsGroupNav[data-bs-nav-mode="worker"] > .mp-bs-nav-item > span:not(.mp-bs-nav-icon) {
  display: block !important;
  width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: center !important;
  line-height: 1.2 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] [data-bs-group="worker-overview"] .mp-bs-nav-icon { background:linear-gradient(145deg,#7778ff,#5658eb) !important; }
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] [data-bs-group="worker-bautagebuch"] .mp-bs-nav-icon { background:linear-gradient(145deg,#38bdf8,#0284c7) !important; }
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] [data-bs-group="worker-fotos"] .mp-bs-nav-icon { background:linear-gradient(145deg,#ff9a48,#f97316) !important; }
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] [data-bs-group="worker-status"] .mp-bs-nav-icon { background:linear-gradient(145deg,#fb7185,#ef4444) !important; }
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsProjectMenu,
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #projFinanceCard,
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #projBudgetCard,
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden [data-bs-save] {
  display:none !important;
}
/* MP-20261004-008: Karte "Meine Einsätze" für Worker restlos entfernen (wir haben oben schon "Meine Woche") */
body:is(.mp-role-worker,.mp-role-foreman) #mp-worker-assignments-card,
#view-projekte.mp-worker-project-golden #mp-worker-assignments-card,
#mp-worker-assignments-card {
  display: none !important;
}

/* MP-20261004-009 / MP-20261004-019: Worker Übersicht: Worker-Karten auf Baustelle anzeigen (Cockpit, Arbeitsanweisung, Cockpit Footer). Karte 'Meine Baustellen' (#workerBaustellenCard) entfernt, da Baustellenauswahl bereits in der oberen Menüleiste verfügbar ist. */
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="overview"] [data-proj-section]:not([data-proj-section="baustelle"]) {
  display: none !important;
}
html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="overview"] :is(.mp-worker-only-card, #projWorkerCard):not(#mp-worker-assignments-card):not(#workerBaustellenCard) {
  display: block !important;
  visibility: visible !important;
}
html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="overview"] :is(#mp-worker-cockpit-card, #projWorkerCard, #mp-worker-cockpit-footer-card) {
  display: block !important;
  visibility: visible !important;
}
html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="overview"] :is(#mp-worker-cockpit-card, #projWorkerCard, #mp-worker-cockpit-footer-card)[hidden] {
  display: block !important;
  visibility: visible !important;
}
html body:is(.mp-role-worker,.mp-role-foreman) #workerBaustellenCard {
  display: none !important;
  visibility: hidden !important;
}

/* MP-20261004-008: Worker Bautagebuch: WIRKLICH NUR Bautagebuch (#projBautagebuchCard) anzeigen, kein anderer Kram */
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="bautagebuch"] [data-proj-section],
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="bautagebuch"] .mp-worker-only-card {
  display: none !important;
}
html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="bautagebuch"] #projBautagebuchCard,
html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="bautagebuch"] #projBautagebuchCard[data-proj-section="bautagebuch"],
html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="bautagebuch"] #projBautagebuchCard[hidden] {
  display: block !important;
  visibility: visible !important;
}
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden[data-bs-worker-section="bautagebuch"] :is(#projWorkerCard, #mp-worker-assignments-card, #workerBaustellenCard, #projOverviewCard, #projFinanceCard, #projBudgetCard, #projKpiGrid, #projTeamZugriffCard, #projTeamTimerCard, #projStundenCard, #projMaterialCard, #projRechnungenCard, #projNachtraegeCard, #projKvaCard, #projFotodokuCard, #projBaustellenstoryCard, #projBaustelleGeoCard, #mp-worker-cockpit-card, #mp-worker-cockpit-footer-card) {
  display: none !important;
}

/* Freiraum für Header und Dock-Clearance für Worker */
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden {
  padding-bottom: calc(108px + env(safe-area-inset-bottom, 0px)) !important;
}
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #projWorkerCard,
body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #projBautagebuchCard {
  margin-top: 14px !important;
}

html body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden :is([data-owner-only],#projBaustelleGeoCard,#projNachtraegeCard) {
  display:none !important;
}
@media (max-width:720px) {
  body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 4px !important;
  }
  body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] > .mp-bs-nav-item {
    min-height: 56px !important;
    flex: 0 0 68px !important;
    width: 68px !important;
    min-width: 68px !important;
    flex-direction: column !important;
    gap: 3px !important;
    padding: 5px 2px !important;
    font-size: 10px !important;
  }
  body:is(.mp-role-worker,.mp-role-foreman) #view-projekte.mp-worker-project-golden #mpBsGroupNav[data-bs-nav-mode="worker"] .mp-bs-nav-icon { flex-basis:32px !important; width:32px !important; height:32px !important; }
  #mpBsGroupNav[data-bs-nav-mode="worker"] > .mp-bs-nav-item > span:not(.mp-bs-nav-icon),
  body:is(.mp-role-worker,.mp-role-foreman) #view-projekte #mpBsGroupNav[data-bs-nav-mode="worker"] > .mp-bs-nav-item > span:not(.mp-bs-nav-icon) { font-size: 10px !important; line-height: 1.15 !important; }
}

/* Der alte Brief-/Profit-Rail besitzt durch seine Schutzselektoren eine sehr
   hohe Spezifitaet. Im geschlossenen Zustand darf davon trotzdem kein 58-px-
   Rest stehen bleiben: nur der separate, bewusst platzierte Oeffner bleibt. */
@media (min-width:768px) {
  html:not(#mpkk):not(#mpkk-2) body #view-briefe.view.active.is-list-rail-collapsed > .mp-workspace-list-master,
  html:not(#mpkk):not(#mpkk-2) body #view-profit-dashboard.view.active.is-list-rail-collapsed > .mp-workspace-list-master {
    display:none !important;
    width:0 !important;
    min-width:0 !important;
    height:0 !important;
    overflow:hidden !important;
    border:0 !important;
    box-shadow:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:none !important;
  }
}

/* MP-20260901-003 · P0 iOS-Touchvertrag fuer die Baustellenleiste.
   Native details/summary innerhalb eines momentum-scrollenden Containers
   verlieren in Mobile Safari sporadisch den Tap. Die Gruppenausloeser sind
   deshalb echte Buttons; das geoeffnete Menue wird aus dem Scrollkontext an
   body geportalt. */
#view-projekte.mp-baustellen-golden .mp-bs-nav-group {
  padding:0 !important;
  overflow:visible !important;
  touch-action:manipulation !important;
}
#view-projekte.mp-baustellen-golden .mp-bs-nav-group > .mp-bs-nav-trigger {
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  width:100% !important;
  min-width:0 !important;
  min-height:inherit !important;
  height:100% !important;
  margin:0 !important;
  padding:0 10px !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  border:0 !important;
  border-radius:9px !important;
  background:transparent !important;
  color:inherit !important;
  box-shadow:none !important;
  font:inherit !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
  -webkit-tap-highlight-color:transparent !important;
}
#view-projekte.mp-baustellen-golden .mp-bs-nav-group.is-active > .mp-bs-nav-trigger,
#view-projekte.mp-baustellen-golden .mp-bs-nav-group.is-open > .mp-bs-nav-trigger {
  color:var(--bs-blue,#118fd3) !important;
}
/* MP-20260902-041 · Sicherheitsnetz auf derselben Tiefe wie die Basisregel
   oben: der Trigger ist die tatsaechliche Icon/Label/Chevron-Zeile der
   Gruppen-Tabs. Ohne diese Mobile-Variante bleibt sie bei der Basis-
   Zeilenrichtung (display:flex, row) und quetscht sich in die 62px-Kachel,
   die css/mp-ui-final-hardwall.css der aeusseren .mp-bs-nav-item gibt. */
@media (max-width: 767px) {
  #view-projekte.mp-baustellen-golden .mp-bs-nav-group > .mp-bs-nav-trigger {
    flex-direction: column !important;
    padding: 0 !important;
    gap: 4px !important;
  }
}
html body > .mp-bs-nav-menu-portal {
  position:fixed !important;
  z-index:2147482500 !important;
  display:grid !important;
  width:min(280px,calc(100vw - 24px)) !important;
  max-height:min(60dvh,460px) !important;
  margin:0 !important;
  padding:var(--mp-menu-padding,8px) !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  border:1px solid rgba(15,23,42,.11) !important;
  border-radius:12px !important;
  background:var(--mp-bg-elevated,rgb(var(--mp-flaeche-rgb))) !important;
  box-shadow:0 16px 34px -18px rgba(23,32,51,.52) !important;
  pointer-events:auto !important;
  touch-action:pan-y !important;
  -webkit-overflow-scrolling:touch !important;
}
html body > .mp-bs-nav-menu-portal[hidden] { display:none !important; }
html body > .mp-bs-nav-menu-portal > .mp-bs-nav-option {
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  width:100% !important;
  min-height:var(--mp-menu-row-height,48px) !important;
  padding:var(--mp-menu-row-padding,10px 12px) !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  border:0 !important;
  border-radius:var(--mp-menu-radius,12px) !important;
  background:var(--mp-menu-row-bg,transparent) !important;
  color:var(--mp-menu-row-color,var(--mp-text)) !important;
  font:var(--mp-menu-font-weight,600) var(--mp-menu-font-size,15px)/1.4 var(--mp-font-stack,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif) !important;
  text-align:left !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
  -webkit-tap-highlight-color:transparent !important;
}
html body > .mp-bs-nav-menu-portal > .mp-bs-nav-option:last-child { border-bottom:0 !important; }
html body > .mp-bs-nav-menu-portal > .mp-bs-nav-option:active { background:var(--mp-menu-row-bg,var(--mp-surface-active)) !important; }

/* Die KVA-/Rechnungs-Sonderregeln weiter oben besitzen ID-Spezifitaet und
   wurden nach dem gemeinsamen Header-Stylesheet geladen. Damit sie den
   standardisierten Icon-Kopf nicht wieder in ihr altes Grid zurueckdruecken,
   gewinnt hier bewusst ein gemeinsamer Abschlussvertrag fuer alle Module. */
html:not(#mpkk):not(#mpkk-2) body .view .view-header.mp-module-view-header {
  display:flex !important;
  grid-template-columns:none !important;
  grid-template-rows:none !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:22px !important;
  width:100% !important;
  min-height:120px !important;
  margin:0 0 20px !important;
  padding:22px 28px !important;
  overflow:visible !important;
}
html:not(#mpkk):not(#mpkk-2) body .view .view-header.mp-module-view-header > .mp-module-header-title {
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
}
@media (max-width:767px) {
  html:not(#mpkk):not(#mpkk-2) body .view .view-header.mp-module-view-header {
    min-height:92px !important;
    padding:16px 17px !important;
    gap:12px !important;
  }
}
@media (max-width:520px) {
  html:not(#mpkk):not(#mpkk-2) body .view .view-header.mp-module-view-header {
    align-items:flex-start !important;
    flex-wrap:wrap !important;
  }
}

/* Laptopbreiten: nichts wird rechts angeschnitten. Die fachlichen Ansichten
   und der Zeitraum bleiben in der ersten flexiblen Zeile; Werkzeuge beginnt
   vollstaendig in einer zweiten Zeile. Unterhalb davon bleibt die kompakte
   Touch-Scroller-Variante fuer Tablets erhalten. */
@media (min-width:1100px) and (max-width:1800px) {
  html body #view-baustellenplanung .mp-planner-golden-nav {
    flex-wrap:wrap !important;
    overflow-x:visible !important;
    overflow-y:visible !important;
    row-gap:7px !important;
  }
  html body #view-baustellenplanung .mp-planner-golden-nav > .is-tools {
    order:30 !important;
    flex:0 0 100% !important;
    width:100% !important;
  }
  html body #view-baustellenplanung .mp-planner-golden-nav > .is-tools > summary {
    width:max-content !important;
    max-width:100% !important;
  }
}

/* MP-20260831-005 · erreichbare Arbeitsleisten auf Laptop/Windows.
   Bisher war der Scrollpfad technisch vorhanden, aber sein Balken mit
   !important versteckt. Der dezente 5px-Indikator ist jetzt greifbar; die
   Wheel-/Tastatursteuerung wird im gemeinsamen Workspace-Script gebunden. */
@media (hover:hover) and (pointer:fine) {
  :is(
    #view-kva .mp-editor-section-nav,
    #view-rechnung .mp-editor-section-nav,
    #view-mail .mp-editor-section-nav,
    #view-aufmass .mp-aufmass-section-nav,
    #view-projekte #mpBsGroupNav,
    #view-stundenuebersicht .mp-hours-section-nav,
    #view-meine-stunden .mp-my-hours-section-nav,
    #view-profit-dashboard .pdc-section-nav,
    #view-baustellenplanung .mp-planner-golden-nav
  ) {
    padding-bottom:6px !important;
    scrollbar-width:thin !important;
    scrollbar-color:rgba(100,116,139,.34) transparent !important;
  }
  :is(
    #view-kva .mp-editor-section-nav,
    #view-rechnung .mp-editor-section-nav,
    #view-mail .mp-editor-section-nav,
    #view-aufmass .mp-aufmass-section-nav,
    #view-projekte #mpBsGroupNav,
    #view-stundenuebersicht .mp-hours-section-nav,
    #view-meine-stunden .mp-my-hours-section-nav,
    #view-profit-dashboard .pdc-section-nav,
    #view-baustellenplanung .mp-planner-golden-nav
  )::-webkit-scrollbar {
    display:block !important;
    height:5px !important;
  }
  :is(
    #view-kva .mp-editor-section-nav,
    #view-rechnung .mp-editor-section-nav,
    #view-mail .mp-editor-section-nav,
    #view-aufmass .mp-aufmass-section-nav,
    #view-projekte #mpBsGroupNav,
    #view-stundenuebersicht .mp-hours-section-nav,
    #view-meine-stunden .mp-my-hours-section-nav,
    #view-profit-dashboard .pdc-section-nav,
    #view-baustellenplanung .mp-planner-golden-nav
  )::-webkit-scrollbar-thumb {
    border-radius:99px !important;
    background:rgba(100,116,139,.30) !important;
  }
}

/* Aufmass iPad: alte Golden-CSS blendete die rechte Dockleiste in beiden
   Orientierungen absichtlich aus. Sie blieb dann eine Zeit lang wie in
   jedem Modul sichtbar — SEIT MP-20260902-011 ③ ist das ÜBERHOLT:
   Marcels Zielbild (02.09., Screenshot „Leisten beißen sich") ist, dass
   die Aufmaß-Werkzeugleiste (#aufmassQuickDock) die rechte Modulleiste im
   Aufmaß-Modus ERSETZT. Die frühere Force-Visible-Regel
   (`html body:has(#view-aufmass.view.active) #mpSideRail{display:flex…}`)
   ist deshalb ersatzlos entfernt — die Ausblendung besitzt jetzt
   mp-aufmass-golden.css (MP-011-③-Block). Die iPad-Regeln zur
   Bereichsleiste darunter bleiben unverändert gültig. */
@media (min-width:768px) and (max-width:1199px) {
  html body #view-aufmass.view.active > .view-box {
    box-sizing:border-box !important;
    padding-top:16px !important;
  }
  html body #view-aufmass.view.active .view-header.mp-module-view-header {
    position:relative !important;
    top:auto !important;
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none !important;
  }
}
