/* Retter-Portal v1.3.32
   Markenblock entquetscht und Whitemode vollständig kontrastreicher aufgebaut. */

:root{
  --rp32-sidebar-expanded:286px;
  --rp32-light-page:#e9eef5;
  --rp32-light-page-2:#f4f7fb;
  --rp32-light-card:#ffffff;
  --rp32-light-card-soft:#f8fafc;
  --rp32-light-card-muted:#f1f5f9;
  --rp32-light-line:#cfd9e5;
  --rp32-light-line-soft:rgba(100,116,139,.16);
  --rp32-light-text:#172033;
  --rp32-light-muted:#5d6b7f;
  --rp32-light-shadow:0 12px 30px rgba(15,23,42,.08);
}

/* --------------------------------------------------------------------------
   Sidebar-Markenbereich: Button sitzt in eigener Spalte statt über Text.
   -------------------------------------------------------------------------- */
html body .sidebar-brand-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  align-items:start!important;
  column-gap:8px!important;
  min-height:72px!important;
  padding:0 0 14px!important;
  margin:0 0 14px!important;
}
html body .sidebar .brand{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:4px 0 0 4px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  max-height:46px!important;
}
html body .sidebar .brand-text{
  min-width:0!important;
  display:block!important;
  font-size:1.16rem!important;
  line-height:1.05!important;
  letter-spacing:-.022em!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
html body .sidebar .brand-context,
html body .sidebar .brand-text small{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:5px!important;
  font-size:.65rem!important;
  line-height:1.15!important;
  letter-spacing:.045em!important;
  white-space:nowrap!important;
}
html body .sidebar-collapse-toggle{
  position:static!important;
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  width:38px!important;
  height:38px!important;
  margin:4px 0 0!important;
  border-radius:12px!important;
}
html body .sidebar-collapse-toggle__icon{width:20px!important;height:20px!important;}

@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar-brand-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:10px!important;
    padding-bottom:12px!important;
  }
  html body.sidebar-collapsed .sidebar .brand{
    display:block!important;
    padding:0!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    grid-column:1!important;
    grid-row:2!important;
    justify-self:center!important;
    margin:0!important;
  }
}

/* --------------------------------------------------------------------------
   Whitemode: klare Hierarchie, keine ausgewaschenen Flächen und keine
   unlesbaren Sidebar-Einträge.
   -------------------------------------------------------------------------- */
body[data-theme="light"]{
  --bg:var(--rp32-light-page)!important;
  --bg2:var(--rp32-light-page-2)!important;
  --surface:var(--rp32-light-card)!important;
  --surface-2:var(--rp32-light-card-soft)!important;
  --text:var(--rp32-light-text)!important;
  --muted:var(--rp32-light-muted)!important;
  --muted-2:#7a8798!important;
  --line:var(--rp32-light-line)!important;
  --line-soft:var(--rp32-light-line-soft)!important;
  color:var(--rp32-light-text)!important;
  background:linear-gradient(180deg,var(--rp32-light-page),var(--rp32-light-page-2))!important;
}
body[data-theme="light"]::before{display:none!important;content:none!important;}
body[data-theme="light"] .main{
  color:var(--rp32-light-text)!important;
  background:
    radial-gradient(circle at 8% 0,rgba(225,29,72,.045),transparent 25rem),
    radial-gradient(circle at 92% 0,rgba(37,99,235,.055),transparent 28rem),
    linear-gradient(180deg,var(--rp32-light-page),var(--rp32-light-page-2))!important;
}

/* Sidebar in Lightmode bleibt dunkel, aber alle Einträge sind voll lesbar. */
body[data-theme="light"] .sidebar{
  color:#eef4fb!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.17),transparent 20rem),
    linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right-color:rgba(148,163,184,.16)!important;
}
body[data-theme="light"] .sidebar,
body[data-theme="light"] .sidebar *{opacity:1!important;}
body[data-theme="light"] .sidebar .brand-text{color:#f8fafc!important;}
body[data-theme="light"] .sidebar .brand-context,
body[data-theme="light"] .sidebar .brand-text small{color:#9caabe!important;}
body[data-theme="light"] .sidebar .nav-section{color:#91a0b4!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link,
body[data-theme="light"] .sidebar .sidebar-nav-link{
  color:#d9e2ee!important;
  background:transparent!important;
  border-color:transparent!important;
  text-shadow:none!important;
}
body[data-theme="light"] .sidebar .sidebar-nav-label{color:inherit!important;}
body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#9eacc0!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover,
body[data-theme="light"] .sidebar .sidebar-nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.06)!important;
  border-color:rgba(148,163,184,.14)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active,
body[data-theme="light"] .sidebar .sidebar-nav-link.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(225,29,72,.19),rgba(37,99,235,.08))!important;
  border-color:rgba(251,113,133,.28)!important;
  box-shadow:inset 3px 0 0 #ef3154,0 10px 24px rgba(2,6,23,.15)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
body[data-theme="light"] .nav-count{
  color:#fff!important;
  background:rgba(148,163,184,.22)!important;
  border-color:rgba(148,163,184,.16)!important;
}

/* Header */
body[data-theme="light"] .topbar{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid var(--rp32-light-line)!important;
  box-shadow:0 5px 18px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .topbar .topbar-eyebrow{color:#4f5e72!important;}
body[data-theme="light"] .topbar .topbar-version{
  color:var(--rp32-light-text)!important;
  background:#edf2f7!important;
  border-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static){
  background:#f8fafc!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static) span{color:#66758a!important;}
body[data-theme="light"] .topbar .department-context-switch select,
body[data-theme="light"] .topbar .department-context-static strong{color:var(--rp32-light-text)!important;}
body[data-theme="light"] .topbar .department-context-switch select{background:#fff!important;border-color:var(--rp32-light-line)!important;}
body[data-theme="light"] .topbar :is(.theme-switch,.topbar-account-info,.user-chip,.btn:not(.primary)){
  color:var(--rp32-light-text)!important;
  background:#fff!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
}

/* Hauptflächen */
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="light"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card,.admin-command-nav,.admin-water-source-row,.billing-status-card,.stat-card),
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card),
body[data-theme="light"] :is(.feed-card,.dashboard-card,.overview-card){
  color:var(--rp32-light-text)!important;
  background:var(--rp32-light-card)!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:var(--rp32-light-shadow)!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::before,
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::after,
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card)::before,
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card)::after{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] :is(h1,h2,h3,h4,h5,strong,th,.card-head,.page-head,.page-hero,.rp55-dash-hero){color:var(--rp32-light-text)!important;}
body[data-theme="light"] :is(.muted,.subtle,small,label,.timeline-list small,.rp55-kpi-card small){color:var(--rp32-light-muted)!important;}

/* Dashboard-Details */
body[data-theme="light"] .rp55-dash-hero{
  background:linear-gradient(145deg,#ffffff,#f8fafc)!important;
  border:1px solid var(--rp32-light-line)!important;
}
body[data-theme="light"] .rp55-dash-tags span{
  color:#334155!important;
  background:#f8fafc!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:0 4px 12px rgba(15,23,42,.04)!important;
}
body[data-theme="light"] .rp55-dash-actions .btn:not(.primary){
  color:#1e293b!important;
  background:linear-gradient(180deg,#ffffff,#f1f5f9)!important;
  border-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] .rp-feed-card .timeline-list,
body[data-theme="light"] .timeline-list{background:transparent!important;}
body[data-theme="light"] .timeline-item,
body[data-theme="light"] .feed-list article,
body[data-theme="light"] .v138-feed-item{
  color:var(--rp32-light-text)!important;
  background:var(--rp32-light-card-soft)!important;
  background-image:none!important;
  border:1px solid var(--rp32-light-line)!important;
  box-shadow:0 4px 14px rgba(15,23,42,.045)!important;
}
body[data-theme="light"] .timeline-item:hover,
body[data-theme="light"] .feed-list article:hover{background:#f1f5f9!important;}
body[data-theme="light"] .rp55-kpi-card{
  background:linear-gradient(145deg,#fff,#f8fafc)!important;
  border:1px solid var(--rp32-light-line)!important;
}
body[data-theme="light"] .rp55-kpi-card strong{color:#101827!important;}
body[data-theme="light"] .rp55-focus-grid article,
body[data-theme="light"] .rp55-own-metrics article,
body[data-theme="light"] .rp55-priority-list a,
body[data-theme="light"] .department-chip{
  color:var(--rp32-light-text)!important;
  background:var(--rp32-light-card-soft)!important;
  border-color:var(--rp32-light-line)!important;
}

/* Formulare, Tabellen, Badges */
body[data-theme="light"] :is(input,select,textarea,.smart-person-picker,.smart-select-field){
  color:var(--rp32-light-text)!important;
  background:#fff!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#8b98a9!important;}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  color:#1e293b!important;
  background:linear-gradient(180deg,#ffffff,#f1f5f9)!important;
  background-image:linear-gradient(180deg,#ffffff,#f1f5f9)!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger):hover{background:linear-gradient(180deg,#f8fafc,#e8eef5)!important;}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .card.table-wrap{background:#fff!important;border-color:var(--rp32-light-line)!important;}
body[data-theme="light"] table thead th{
  color:#4e5d71!important;
  background:#eaf0f6!important;
  background-image:none!important;
  border-bottom-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] table tbody tr{background:#fff!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:#f8fafc!important;}
body[data-theme="light"] table tbody tr:hover{background:#edf3f8!important;}
body[data-theme="light"] table td{color:#26364b!important;border-bottom-color:var(--rp32-light-line-soft)!important;}
body[data-theme="light"] :is(.pill,.status,.role){
  color:#334155!important;
  background:#edf2f7!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] .portal-footer,
body[data-theme="light"] .portal-footer a{
  color:#334155!important;
}
body[data-theme="light"] .portal-footer a{
  background:#f8fafc!important;
  border-color:var(--rp32-light-line)!important;
}

/* Notification-Strip */
body[data-theme="light"] .dashboard-notification-strip{
  color:var(--rp32-light-text)!important;
  background:linear-gradient(90deg,#fff8fa,#f7f9ff)!important;
  border-color:rgba(225,29,72,.26)!important;
  box-shadow:0 8px 20px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .dashboard-notification-strip__copy small{color:var(--rp32-light-muted)!important;}
body[data-theme="light"] .dashboard-notification-strip__action{
  color:var(--rp32-light-text)!important;
  background:#fff!important;
  border-color:var(--rp32-light-line)!important;
}

/* Semantische Farben */
body[data-theme="light"] :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.status.Bezahlt,.ok){
  color:#047857!important;background:#ecfdf5!important;border-color:#a7f3d0!important;
}
body[data-theme="light"] :is(.status.Defekt,.status.Abgelehnt,.status.Storniert,.danger-text){
  color:#be123c!important;background:#fff1f2!important;border-color:#fecdd3!important;
}
body[data-theme="light"] :is(.status.Offen,.status.Entwurf,.status.In,.status.In.Prüfung){
  color:#92400e!important;background:#fffbeb!important;border-color:#fde68a!important;
}

@media(max-width:1100px){
  html body .sidebar-brand-row{
    display:block!important;
    min-height:72px!important;
    padding-right:0!important;
  }
  html body .sidebar .brand{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    padding:4px 4px 10px!important;
  }
}

@media(max-width:760px){
  body[data-theme="light"] .table-wrap table.responsive-table tbody tr{
    color:var(--rp32-light-text)!important;
    background:#fff!important;
    background-image:none!important;
    border-color:var(--rp32-light-line)!important;
    box-shadow:0 7px 20px rgba(15,23,42,.07)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table tbody td{
    color:#26364b!important;
    border-bottom-color:var(--rp32-light-line-soft)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table td::before{color:#66758a!important;}
}
