*{box-sizing:border-box} :root{--bg:#080808;--header:#101010;--text:#f4efe6;--heading:#d4b27a;--gold:#c8a96b;--muted:#9a948b;--line:rgba(200,169,107,.22)}
body{margin:0;background:radial-gradient(circle at 80% 0,color-mix(in srgb,var(--gold) 14%,transparent),transparent 380px),var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}
a{text-decoration:none;color:inherit}.topbar{position:sticky;top:0;z-index:1000;background:color-mix(in srgb,var(--header) 92%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.topbar-inner{max-width:1500px;margin:auto;padding:15px 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:12px;color:var(--gold);font-weight:850;letter-spacing:.1em}.brand-logo{display:block;height:46px;width:auto;object-fit:contain}.brand-mark{font-size:34px;line-height:1}.center-nav{display:flex;gap:32px;align-items:center}.center-nav a,.nav-actions a{opacity:.78;font-weight:650}.center-nav a.active,.nav-actions a.active,.center-nav a:hover,.nav-actions a:hover{opacity:1;font-weight:850}.nav-actions{justify-self:end;display:flex;gap:18px}
.container{max-width:1500px;margin:auto;padding:42px 24px}.hero{padding:34px 0 28px}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:800}.hero h1{font-size:clamp(42px,6vw,78px);margin:8px 0;color:var(--heading);font-weight:850}.hero p{color:var(--muted);font-size:17px;line-height:1.7;max-width:900px}
.card,.panel,.widget{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018));border:1px solid var(--line);border-radius:30px;padding:26px;box-shadow:0 26px 80px rgba(0,0,0,.22)}
.grid{display:grid;gap:22px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.widget h2,.panel h2{color:var(--heading);margin:4px 0 10px}.big{font-size:clamp(32px,4vw,58px);font-weight:850;color:var(--text)}
.filterbar{margin:24px 0;padding:20px;border:1px solid var(--line);border-radius:32px;background:color-mix(in srgb,var(--header) 88%,transparent);display:grid;gap:14px}.filter-row{display:grid;gap:14px}.filter-row.main{grid-template-columns:repeat(4,1fr)}.filter-row.dates{grid-template-columns:1.3fr repeat(3,1fr)}.filter-row.actions{grid-template-columns:1fr auto auto auto}
label{font-weight:750;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);display:flex;flex-direction:column;gap:8px}input,select{height:48px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.035);color:var(--text);padding:0 14px}button,.btn{height:48px;border:1px solid var(--line);border-radius:999px;background:var(--gold);color:#111;font-weight:850;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.btn.secondary{background:transparent;color:var(--text)}
.date-info{border:1px solid var(--line);border-radius:18px;padding:10px 14px;display:flex;flex-direction:column;justify-content:center;color:var(--text)}.date-info span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.14em}.date-info b{margin-top:4px}
.chart{width:100%;height:350px}.table-wrap{max-height:620px;overflow:auto;border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 55px rgba(0,0,0,.16)}table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}th{position:sticky;top:0;background:color-mix(in srgb,var(--gold) 9%,var(--bg));color:var(--gold);z-index:2;text-transform:uppercase;font-size:11px;letter-spacing:.12em}th,td{padding:13px;border-bottom:1px solid rgba(255,255,255,.06);text-align:left;white-space:normal;overflow-wrap:anywhere}tr:hover td{background:rgba(255,255,255,.035)}
.alert{padding:14px 16px;border:1px solid var(--line);border-radius:18px;margin:16px 0;background:rgba(255,255,255,.04)}
.account-page{max-width:1180px;margin:46px auto;padding:0 22px}.account-block{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:32px;margin-bottom:18px;overflow:hidden}.block-head{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;cursor:pointer}.block-body{display:none;padding:0 26px 26px}.account-block.open .block-body{display:block}.expand{width:44px;height:44px;border:1px solid var(--line);border-radius:99px;display:flex;align-items:center;justify-content:center}.account-block.open .expand{transform:rotate(45deg)}.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}.preset{all:unset;display:block;cursor:pointer;border:1px solid var(--line);border-radius:24px;overflow:hidden}.preset-preview{height:130px;position:relative}.preset-title{padding:16px;font-weight:800}.expert-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.color-box{border:1px solid var(--line);border-radius:22px;padding:18px}.color-row{display:flex;justify-content:space-between;align-items:center;margin:12px 0}.login-row{display:grid;grid-template-columns:1fr .8fr 1.5fr;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}
@media(max-width:1000px){.topbar-inner{grid-template-columns:1fr;justify-items:center}.nav-actions{justify-self:center}.grid.four,.grid.two,.filter-row.main,.filter-row.dates,.filter-row.actions,.expert-grid,.login-row{grid-template-columns:1fr}.container{padding:28px 16px}.chart{height:300px}}
.workspace-bar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:18px 0 24px;flex-wrap:wrap}.workspace-bar form{display:flex;gap:10px;align-items:center}.workspace-bar input{min-width:240px}.saved-views{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);border-radius:999px;padding:10px 14px;color:var(--gold);background:rgba(255,255,255,.03);font-weight:750}.mapbox{min-height:360px;border:1px solid var(--line);border-radius:24px;padding:18px;background:radial-gradient(circle at center,rgba(200,169,107,.10),transparent 60%)}.map-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.map-point{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:14px;background:rgba(255,255,255,.035);display:flex;flex-direction:column;gap:5px}.map-point b{color:var(--heading)}.map-point span,.map-point em{color:var(--muted);font-style:normal}.map-empty{display:grid;place-items:center;min-height:320px;color:var(--muted)}@media(max-width:760px){.workspace-bar form{width:100%;flex-direction:column}.workspace-bar input,.workspace-bar button{width:100%}}


/* V2.2 Enterprise polish */
.filterbar-pro .data-top{grid-template-columns:1fr!important}
.date-info-wide{min-height:68px;align-items:flex-start}
.kpi-grid .widget{min-height:180px;display:flex;flex-direction:column;justify-content:space-between}
.kpi-grid .widget h2{font-size:clamp(22px,2.2vw,34px);line-height:1.08}
.kpi-grid .widget .big{font-size:clamp(26px,3.2vw,54px);line-height:1.05;overflow-wrap:anywhere}
.chart-scroll{width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:10px}
.chart-scroll canvas{display:block}
.table-wrap.compact{max-height:520px;overflow:auto}
.smart-table{table-layout:auto!important}
.smart-table th,.smart-table td{white-space:normal;word-break:normal;overflow-wrap:anywhere}
.smart-table .col-name{width:48%;min-width:220px}
.smart-table th:nth-child(2),.smart-table td:nth-child(2){width:18%}
.smart-table th:nth-child(3),.smart-table td:nth-child(3){width:14%;white-space:nowrap}
.smart-table th:nth-child(4),.smart-table td:nth-child(4){width:20%;white-space:nowrap}
.preset-grid.equal{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch}
.preset-card{height:270px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important}
.preset-preview.rich{height:205px!important;border-radius:22px 22px 0 0;position:relative;padding:18px}
.mini-brand{font-weight:900;letter-spacing:.12em}
.mini-card{position:absolute;left:18px;right:18px;bottom:32px;border:1px solid;border-radius:18px;padding:12px;background:rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:10px}
.mini-card span{font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.mini-line{position:absolute;left:18px;right:18px;bottom:18px;height:4px;border-radius:999px}
.preset-title{text-align:left}
@media(max-width:900px){.smart-table .col-name{min-width:180px}.grid.two{grid-template-columns:1fr!important}}


/* V2.3 - typography, filter, chart, tables */
body{
    font-family: -apple-system, BlinkMacSystemFont, "Inter", "SF Pro Display", "Segoe UI", Arial, sans-serif !important;
    letter-spacing: .012em;
    font-kerning: normal;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* ZSU usability polish 2026-06-22: readable buttons, icons, audit log, dashboard and wide data tables */
.ui-btn-icon,
.dashboard-card-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.ui-btn-icon{
  width:18px;
  height:18px;
  margin-right:8px;
}
.ui-btn-icon svg,
.dashboard-card-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
button,
.btn,
input[type="submit"]{
  gap:8px;
  color:var(--accent-text)!important;
  background:var(--gold)!important;
  border-color:color-mix(in srgb,var(--gold) 72%,#000)!important;
  transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease, color .16s ease!important;
  text-decoration:none!important;
}
button:hover,
.btn:hover,
input[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px color-mix(in srgb,var(--gold) 22%,transparent)!important;
  filter:saturate(1.04);
}
button:focus-visible,
.btn:focus-visible,
input[type="submit"]:focus-visible{
  outline:3px solid color-mix(in srgb,var(--gold) 42%,#fff);
  outline-offset:3px;
}
.btn.secondary,
button.secondary,
a.btn.secondary{
  color:var(--text)!important;
  background:color-mix(in srgb,var(--panel) 86%,#fff)!important;
  border-color:color-mix(in srgb,var(--text) 24%,var(--line))!important;
}
.btn.secondary:hover,
button.secondary:hover,
a.btn.secondary:hover{
  color:var(--heading)!important;
  background:color-mix(in srgb,var(--gold) 13%,var(--panel))!important;
  border-color:var(--gold)!important;
}
button.danger,
.btn.danger,
.danger{
  color:#fff!important;
  background:#b40000!important;
  border-color:#8f0000!important;
}
button.danger:hover,
.btn.danger:hover,
.danger:hover{
  background:#cf1010!important;
  color:#fff!important;
}
.table-export-btn,
.widget-download-btn,
.widget-data-download{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  color:var(--accent-text)!important;
  background:var(--gold)!important;
  border:1px solid color-mix(in srgb,var(--gold) 68%,#000)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.12)!important;
}
.table-export-btn svg,
.widget-download-btn svg,
.widget-data-download svg{
  width:18px!important;
  height:18px!important;
  stroke:currentColor!important;
}
input,
select,
textarea{
  color:var(--text)!important;
  background:color-mix(in srgb,var(--panel) 84%,#fff)!important;
  border-color:color-mix(in srgb,var(--text) 22%,var(--line))!important;
}
textarea{min-height:110px}
input::placeholder,
textarea::placeholder{color:color-mix(in srgb,var(--text) 58%,transparent)!important}
body.zsu-theme-dark input,
body.zsu-theme-dark select,
body.zsu-theme-dark textarea,
body.zsu-theme-dark_gold input,
body.zsu-theme-dark_gold select,
body.zsu-theme-dark_gold textarea{
  color:#f8fafc!important;
  background:rgba(15,23,42,.86)!important;
  border-color:rgba(226,232,240,.28)!important;
  color-scheme:dark;
}
body.zsu-theme-dark input[type="date"]::-webkit-calendar-picker-indicator,
body.zsu-theme-dark_gold input[type="date"]::-webkit-calendar-picker-indicator{
  filter:invert(1) brightness(1.8);
}
.dashboard-card{
  position:relative;
  overflow:hidden;
  justify-content:flex-start!important;
  align-items:flex-start;
  gap:14px;
}
.dashboard-card-icon{
  width:46px;
  height:46px;
  border-radius:14px;
  color:var(--accent-text);
  background:var(--gold);
  box-shadow:0 16px 35px color-mix(in srgb,var(--gold) 20%,transparent);
}
.dashboard-card h2{margin-top:2px}
.dashboard-card p{max-width:42rem}
.dashboard-hero h1{font-size:clamp(34px,4.8vw,62px)}
.admin-presence-widget{
  overflow:hidden;
}
.presence-head,
.presence-kpis,
.presence-areas{
  display:flex;
  gap:14px;
  align-items:center;
  flex-wrap:wrap;
}
.presence-head{
  justify-content:space-between;
  margin-bottom:18px;
}
.presence-head h2{margin:4px 0 0}
.presence-updated{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.presence-kpis{
  margin-bottom:18px;
}
.presence-kpis div{
  min-width:190px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:color-mix(in srgb,var(--panel) 90%,#fff);
}
.presence-kpis span{
  display:block;
  color:var(--muted);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.presence-kpis strong{
  display:block;
  color:var(--heading);
  font-size:34px;
  line-height:1.1;
  margin-top:6px;
}
.presence-area{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:color-mix(in srgb,var(--panel) 88%,#fff);
  color:var(--text);
}
.presence-area em{
  min-width:28px;
  height:24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-style:normal;
  color:var(--accent-text);
  background:var(--gold);
  font-weight:900;
}
.upload-list-table{
  table-layout:auto!important;
  min-width:1120px;
}
.upload-list-table th,
.upload-list-table td{
  vertical-align:middle;
  white-space:nowrap;
}
.upload-list-table .upload-file-name{
  min-width:260px;
  max-width:420px;
  white-space:normal;
  overflow-wrap:anywhere;
  font-weight:750;
}
.upload-list-table th:last-child,
.upload-list-table td:last-child{
  min-width:360px;
}
.upload-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.upload-actions form{
  display:inline-flex!important;
  margin:0!important;
}
.upload-actions .btn,
.upload-actions button{
  min-height:38px!important;
  height:38px!important;
  padding:0 13px!important;
  white-space:nowrap;
}
.complaint-data-wide-panel{
  width:min(1880px, calc(100vw - 48px));
  max-width:none!important;
  margin-left:calc(50% - min(1880px, calc(100vw - 48px))/2)!important;
}
.complaint-raw-wide-scroll{
  max-height:760px;
  overflow:auto;
  border:1px solid var(--line);
  border-radius:18px;
}
.complaint-table.full-raw-table{
  table-layout:auto!important;
  min-width:1680px;
}
.complaint-table.full-raw-table th,
.complaint-table.full-raw-table td{
  white-space:nowrap;
}
.complaint-table.full-raw-table td{
  max-width:280px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.audit-log-wrap{
  max-height:740px;
}
.audit-human-table{
  table-layout:auto!important;
  min-width:1180px;
}
.audit-human-table th,
.audit-human-table td{
  vertical-align:top;
}
.audit-main-action{
  color:var(--heading);
  font-size:15px;
}
.audit-area-pill{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  color:var(--accent-text);
  background:var(--gold);
  font-weight:900;
  font-size:12px;
}
.audit-technical-details{
  margin-top:8px;
}
.audit-technical-details summary{
  cursor:pointer;
  color:var(--muted);
  font-weight:800;
}
.audit-json{
  white-space:pre-wrap;
  overflow:auto;
  max-width:560px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  color:var(--text);
  background:color-mix(in srgb,var(--panel) 88%,#fff);
}
@media(max-width:900px){
  .complaint-data-wide-panel{
    width:100%;
    margin-left:0!important;
  }
  .presence-kpis div{
    flex:1 1 150px;
    min-width:0;
  }
  .dashboard-card-icon{
    width:42px;
    height:42px;
  }
}

h1,h2,h3,.brand strong{
    letter-spacing: .028em;
    font-weight: 650 !important;
}

.big{
    font-weight: 430 !important;
    letter-spacing: .005em;
}

.data-stock-line{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:18px;
    padding:0 2px 8px;
    border-bottom:1px solid color-mix(in srgb,var(--gold) 22%,transparent);
    color:var(--text);
}

.data-stock-line span{
    color:var(--muted);
    text-transform:uppercase;
    font-size:11px;
    letter-spacing:.18em;
    font-weight:650;
}

.data-stock-line b{
    font-weight:500;
    color:var(--text);
}

.filterbar-pro{
    gap:18px;
}

.filterbar-pro .data-top{
    grid-template-columns:1fr!important;
}

.chart-scroll{
    width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:12px;
    scrollbar-width:thin;
}

.chart-scroll canvas{
    display:block;
}

.smart-table{
    table-layout:auto!important;
}

.smart-table th,
.smart-table td{
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
    vertical-align:top;
}

.smart-table .col-name{
    width:52%;
    min-width:240px;
}

.smart-table th:nth-child(2),.smart-table td:nth-child(2){
    width:18%;
}

.smart-table th:nth-child(3),.smart-table td:nth-child(3){
    width:12%;
    white-space:nowrap!important;
}

.smart-table th:nth-child(4),.smart-table td:nth-child(4){
    width:18%;
    white-space:nowrap!important;
}

.kpi-grid .widget h2{
    font-size:clamp(20px,2vw,31px);
}

.kpi-grid .widget .big{
    font-size:clamp(25px,3vw,48px);
}

@media(max-width:760px){
    .data-stock-line{
        flex-direction:column;
        align-items:flex-start;
        gap:6px;
    }

    .smart-table .col-name{
        min-width:180px;
    }
}

/* Einsatzplaner landscape fix: breite, aber niedrige Handy-Displays */
@media(orientation:landscape) and (max-width:980px), (max-height:520px) and (max-width:1100px){
    html,
    body{
        overflow-x:hidden!important;
    }

    .topbar{
        position:relative!important;
    }

    .deployment-container{
        width:100%!important;
        max-width:100%!important;
        padding:8px!important;
        overflow:visible!important;
    }

    .deployment-hero-compact{
        display:none!important;
    }

    .deployment-toolbar{
        width:100%!important;
        max-width:100%!important;
        margin:0 0 8px!important;
        padding:8px!important;
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        align-items:start!important;
        overflow:visible!important;
    }

    .deployment-toolbar-left,
    .deployment-toolbar-center,
    .deployment-toolbar-right{
        width:100%!important;
        display:flex!important;
        flex-wrap:wrap!important;
        gap:6px!important;
    }

    .deployment-toolbar-center{
        grid-column:1 / -1!important;
        display:grid!important;
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    .deployment-toolbar .btn,
    .deployment-toolbar button,
    .deployment-toolbar a.btn{
        width:auto!important;
        min-height:30px!important;
        height:30px!important;
        padding:5px 8px!important;
        font-size:12px!important;
    }

    .deployment-toolbar label{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        gap:2px!important;
        font-size:9px!important;
    }

    .deployment-toolbar input,
    .deployment-toolbar select,
    .deployment-toolbar input[type="search"]{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:30px!important;
        min-height:30px!important;
        padding:4px 7px!important;
    }

    .deployment-live-status{
        width:100%!important;
        margin:0 0 8px!important;
    }

    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
        max-width:100%!important;
        overflow:visible!important;
    }

    .deployment-clean-sidebar{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
    }

    .deployment-filter-form{
        gap:6px!important;
    }

    .deployment-filter-groups{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
    }

    .state-filter-card,
    #driverFilterBody{
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        padding:8px!important;
        overflow:visible!important;
    }

    .state-filter-card .driver-list,
    #driverFilterBody .driver-list{
        height:auto!important;
        max-height:135px!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
    }

    .driver-chip,
    .driver-chip.compact,
    .driver-availability-chip{
        min-height:34px!important;
        height:auto!important;
        max-height:none!important;
        padding:5px 7px!important;
    }

    .deployment-calendar{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        overflow:visible!important;
    }

    .deployment-calendar-head{
        padding:9px 10px!important;
    }

    .deployment-grid,
    .deployment-grid.month-grid,
    .deployment-grid.linear-grid,
    .deployment-grid.year-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        gap:7px!important;
        overflow:visible!important;
    }

    .deployment-weekday{
        display:none!important;
    }

    .deployment-cell,
    .deployment-cell.year-cell{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        min-height:72px!important;
        height:auto!important;
        padding:8px!important;
        overflow:visible!important;
    }

    .day-event-list,
    .deployment-view-week .day-event-list,
    .deployment-view-day .day-event-list{
        max-height:none!important;
        height:auto!important;
        overflow:visible!important;
        padding-right:0!important;
    }

    .event-card,
    .event-pill,
    .availability-driver-card{
        width:100%!important;
        max-width:100%!important;
        min-height:36px!important;
        max-height:none!important;
        height:auto!important;
    }

    .event-card div,
    .event-card small{
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
    }

    .deployment-modal-card,
    .deployment-modal-card.wide{
        width:calc(100vw - 16px)!important;
        max-width:calc(100vw - 16px)!important;
        max-height:calc(100dvh - 16px)!important;
        overflow:auto!important;
    }
}

/* Production polish: mobile navigation and form resilience */
.center-nav,
.nav-actions{
    min-width:0;
}

.nav-actions{
    align-items:center;
}

textarea{
    min-height:110px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:16px;
    background:rgba(255,255,255,.035);
    color:var(--text);
    padding:14px;
    resize:vertical;
    font:inherit;
}

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

@media(max-width:1000px){
    .topbar{
        position:sticky;
    }

    .topbar-inner{
        gap:12px;
        padding:12px 14px;
    }

    .center-nav{
        width:100%;
        max-width:100vw;
        justify-content:flex-start;
        overflow-x:auto;
        padding:4px 2px 10px;
        gap:10px;
        scrollbar-width:thin;
    }

    .center-nav a,
    .nav-actions a{
        flex:0 0 auto;
        padding:9px 12px;
        border:1px solid var(--line);
        border-radius:999px;
        background:rgba(255,255,255,.025);
    }

    .nav-actions{
        width:100%;
        justify-content:center;
        flex-wrap:wrap;
        gap:8px;
    }

    .brand-logo{
        max-width:min(260px,78vw);
    }
}

@media(max-width:560px){
    .container{
        padding:22px 12px;
    }

    .card,
    .panel,
    .widget,
    .filterbar{
        border-radius:18px;
        padding:18px;
    }

    .hero h1{
        font-size:34px;
        line-height:1.1;
    }

    button,
    .btn{
        width:100%;
    }

    .table-wrap{
        border-radius:16px;
    }
}


/* V2.4 final UX */
:root{
    --chart-axis: var(--text);
    --chart-grid: color-mix(in srgb,var(--text) 18%,transparent);
}

body{
    letter-spacing:.018em;
}

.date-info,
.date-info-wide{
    background:transparent!important;
    border:none!important;
    box-shadow:none!important;
}

.chart{
    height:300px!important;
}

.chart-scroll{
    max-height:330px;
}

.preset-grid.equal{
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
}

.preset-card{
    height:245px!important;
    min-height:245px!important;
    border-radius:28px!important;
}

.preset-preview.rich{
    height:178px!important;
    border-radius:28px 28px 0 0!important;
    overflow:hidden;
}

.mini-card{
    left:16px!important;
    right:16px!important;
    bottom:28px!important;
    min-height:58px;
    align-items:center;
}

.mini-line{
    bottom:15px!important;
}

html:has(style) body{
    color:var(--text);
}

/* Light/statistics readability */
body:has(.topbar){
    --chart-axis: var(--text);
}

.smart-table th:nth-child(5),.smart-table td:nth-child(5){
    white-space:nowrap!important;
}


/* V2.5 requested polish */
.kpi-grid .widget{
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    min-height:190px;
}

.kpi-grid .widget h2{
    width:100%;
    text-align:center;
    margin-bottom:18px;
}

.kpi-grid .widget .big{
    width:100%;
    text-align:center;
}

.hero p strong,
.widget p strong,
.panel p strong{
    color:var(--text);
    font-weight:720;
}

.filterbar-pro{
    padding:22px;
    gap:16px;
}

.filterbar-pro .main{
    grid-template-columns:repeat(4,minmax(160px,1fr))!important;
}

.filterbar-pro .dates{
    grid-template-columns:repeat(4,minmax(160px,1fr))!important;
}

.filterbar-pro .actions{
    grid-template-columns:min-content min-content min-content!important;
    justify-content:end;
    align-items:end;
}

.filterbar-pro button,
.filterbar-pro .btn{
    width:auto!important;
    min-width:max-content;
    padding-left:20px!important;
    padding-right:20px!important;
}

.data-stock-line{
    justify-content:center!important;
    text-align:center;
    gap:14px;
}

.data-stock-line b{
    text-align:center;
}

.saved-chip{
    display:inline-flex!important;
    align-items:center;
    gap:8px;
    padding:0!important;
    overflow:hidden;
}

.saved-chip a{
    padding:10px 0 10px 14px;
}

.saved-chip form{
    margin:0;
}

.chip-x{
    all:unset;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:34px;
    cursor:pointer;
    color:var(--muted);
    font-size:18px;
    border-left:1px solid var(--line);
}

.chip-x:hover{
    color:var(--gold);
    background:rgba(255,255,255,.04);
}

@media(max-width:900px){
    .filterbar-pro .main,
    .filterbar-pro .dates,
    .filterbar-pro .actions{
        grid-template-columns:1fr!important;
        justify-content:stretch;
    }

    .filterbar-pro button,
    .filterbar-pro .btn{
        width:100%!important;
    }
}


/* V2.6 users + password */
.password-form{
    max-width:520px;
    display:grid;
    gap:16px;
}

.admin-links{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.inline-form{
    margin:0;
}

.inline-form select{
    min-width:110px;
}

.user-actions summary{
    cursor:pointer;
    color:var(--gold);
    font-weight:700;
}

.mini-form{
    display:grid;
    gap:8px;
    margin-top:12px;
    max-width:280px;
}

.mini-form input{
    width:100%;
}

.danger-btn{
    background:#7f1d1d!important;
    color:#fff!important;
    border-color:#991b1b!important;
}

.danger-btn:disabled{
    opacity:.45;
    cursor:not-allowed;
}

.user-table td{
    vertical-align:top;
}


/* V2.7 Mobile UX overhaul */

/* Base mobile readability */
html{
    -webkit-text-size-adjust:100%;
}

body{
    overflow-x:hidden;
}

.container,
.account-page{
    width:100%;
    max-width:1500px;
}

/* Prevent form controls from causing iOS zoom */
input,
select,
textarea,
button,
.btn{
    font-size:16px;
}

/* Header becomes premium mobile app header */
@media(max-width:820px){

    .topbar{
        position:sticky;
        top:0;
        z-index:1000;
    }

    .topbar-inner{
        grid-template-columns:1fr!important;
        gap:12px!important;
        padding:12px 14px!important;
    }

    .brand{
        justify-content:center;
        font-size:15px;
        letter-spacing:.14em;
    }

    .brand-mark{
        font-size:28px!important;
    }

    .center-nav{
        width:100%;
        justify-content:center;
        gap:8px!important;
        overflow-x:auto;
        padding:4px 0 6px;
        scrollbar-width:none;
        -webkit-overflow-scrolling:touch;
    }

    .center-nav::-webkit-scrollbar{
        display:none;
    }

    .center-nav a{
        flex:0 0 auto;
        padding:10px 14px;
        border-radius:999px;
        background:rgba(255,255,255,.045);
        border:1px solid rgba(255,255,255,.055);
        font-size:14px;
    }

    .center-nav a.active{
        background:color-mix(in srgb,var(--gold) 20%,transparent);
        border-color:color-mix(in srgb,var(--gold) 35%,transparent);
    }

    .nav-actions{
        width:100%;
        justify-content:center!important;
        gap:10px!important;
    }

    .nav-actions a{
        padding:9px 14px;
        border-radius:999px;
        background:rgba(255,255,255,.035);
        font-size:13px;
    }
}

/* Hero mobile */
@media(max-width:760px){

    .container{
        padding:22px 14px!important;
    }

    .account-page{
        margin:18px auto 48px!important;
        padding:0 14px!important;
    }

    .hero{
        padding:20px 0 16px!important;
    }

    .hero h1{
        font-size:clamp(32px,10vw,46px)!important;
        line-height:1.02;
        letter-spacing:.015em;
    }

    .hero p{
        font-size:15px!important;
        line-height:1.58!important;
        max-width:100%;
    }

    .eyebrow{
        font-size:10px!important;
        letter-spacing:.18em!important;
    }
}

/* Mobile filter as calm stacked control surface */
@media(max-width:900px){

    .filterbar,
    .filterbar-pro{
        margin:16px 0 18px!important;
        padding:14px!important;
        border-radius:24px!important;
        gap:14px!important;
    }

    .filterbar-pro .main,
    .filterbar-pro .dates,
    .filterbar-pro .actions,
    .filter-row.main,
    .filter-row.dates,
    .filter-row.actions{
        grid-template-columns:1fr!important;
        gap:12px!important;
        justify-content:stretch!important;
    }

    label{
        font-size:10px!important;
        letter-spacing:.12em!important;
        gap:7px!important;
    }

    input,
    select{
        width:100%!important;
        min-width:0!important;
        height:48px!important;
        border-radius:16px!important;
    }

    .filterbar-pro button,
    .filterbar-pro .btn,
    button,
    .btn{
        width:100%!important;
        min-width:0!important;
        height:48px!important;
        border-radius:999px!important;
        justify-content:center!important;
        white-space:nowrap;
    }

    .data-stock-line{
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:5px!important;
        padding:0 0 12px!important;
        text-align:center!important;
    }

    .data-stock-line b{
        font-size:14px;
    }
}

/* KPI cards mobile */
@media(max-width:900px){

    .grid.four,
    .kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:12px!important;
    }

    .widget,
    .panel,
    .card{
        border-radius:24px!important;
        padding:18px!important;
    }

    .kpi-grid .widget{
        min-height:150px!important;
    }

    .kpi-grid .widget h2{
        font-size:clamp(16px,5vw,23px)!important;
        margin-bottom:10px!important;
    }

    .kpi-grid .widget .big{
        font-size:clamp(22px,7vw,34px)!important;
        line-height:1.08!important;
    }
}

@media(max-width:520px){

    .grid.four,
    .kpi-grid{
        grid-template-columns:1fr!important;
    }

    .kpi-grid .widget{
        min-height:126px!important;
    }
}

/* Charts on mobile: readable, not squeezed */
@media(max-width:760px){

    .panel:has(.chart-scroll){
        padding:16px!important;
    }

    .chart-scroll{
        margin-left:-2px;
        margin-right:-2px;
        padding-bottom:14px!important;
        overflow-x:auto!important;
        -webkit-overflow-scrolling:touch;
    }

    .chart{
        height:280px!important;
    }
}

/* Tables: mobile card-table behavior */
@media(max-width:760px){

    .table-wrap{
        border-radius:20px!important;
        max-height:560px!important;
        overflow:auto!important;
        -webkit-overflow-scrolling:touch;
    }

    table.smart-table{
        min-width:720px!important;
    }

    .smart-table th,
    .smart-table td{
        padding:11px 10px!important;
        font-size:13px!important;
    }

    .smart-table .col-name{
        min-width:240px!important;
        width:42%!important;
    }

    .grid.two{
        grid-template-columns:1fr!important;
        gap:16px!important;
    }
}

/* Workspace / saved views mobile */
@media(max-width:760px){

    .workspace-bar{
        align-items:stretch!important;
        gap:12px!important;
    }

    .workspace-bar form{
        width:100%!important;
        flex-direction:column!important;
        align-items:stretch!important;
    }

    .workspace-bar input{
        width:100%!important;
        min-width:0!important;
    }

    .saved-views{
        width:100%;
        display:flex!important;
        flex-wrap:nowrap!important;
        overflow-x:auto;
        gap:8px!important;
        padding-bottom:4px;
        -webkit-overflow-scrolling:touch;
    }

    .chip,
    .saved-chip{
        flex:0 0 auto;
        white-space:nowrap;
    }
}

/* Account page mobile */
@media(max-width:760px){

    .account-block{
        border-radius:24px!important;
        margin-bottom:14px!important;
    }

    .block-head{
        padding:18px!important;
        gap:12px;
    }

    .block-head h2{
        font-size:18px;
        margin:0 0 4px;
    }

    .block-head p{
        font-size:13px;
        line-height:1.45;
        margin:0;
    }

    .block-body{
        padding:0 18px 18px!important;
    }

    .expand{
        min-width:40px;
        width:40px!important;
        height:40px!important;
    }

    .login-row{
        grid-template-columns:1fr!important;
        gap:5px!important;
        font-size:13px;
        padding:12px 0!important;
    }

    .preset-grid.equal,
    .preset-grid{
        grid-template-columns:1fr!important;
    }

    .preset-card{
        height:auto!important;
        min-height:0!important;
    }

    .preset-preview.rich{
        height:150px!important;
    }

    .password-form{
        max-width:100%!important;
    }
}

/* Admin users mobile */
@media(max-width:760px){

    .admin-links{
        flex-direction:column;
        align-items:stretch;
    }

    .admin-links .btn{
        width:100%!important;
    }

    .user-table{
        min-width:760px!important;
    }

    .mini-form{
        max-width:100%!important;
    }

    details.user-actions{
        min-width:220px;
    }
}

/* Touch polish */
@media(hover:none){

    a,
    button,
    .btn,
    select,
    input,
    .block-head{
        touch-action:manipulation;
    }

    .widget:hover td,
    tr:hover td{
        background:transparent!important;
    }
}


/* V2.7.1 Mobile alignment refinement
   Ziel: keine abgehackten Widgets, alle Karten bündig auf maximale Breite.
*/

@media(max-width:900px){

    html,
    body{
        width:100%;
        max-width:100%;
        overflow-x:hidden;
    }

    .container,
    .account-page{
        width:100%!important;
        max-width:100%!important;
        padding-left:14px!important;
        padding-right:14px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    .hero,
    .filterbar,
    .filterbar-pro,
    .workspace-bar,
    .grid,
    .grid.two,
    .grid.four,
    .kpi-grid,
    .panel,
    .widget,
    .card,
    .account-block{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
    }

    .grid,
    .grid.two,
    .grid.four,
    .kpi-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        align-items:stretch!important;
        justify-items:stretch!important;
    }

    .widget,
    .panel,
    .card{
        align-self:stretch!important;
        justify-self:stretch!important;
        min-width:0!important;
    }

    .kpi-grid .widget{
        min-height:138px!important;
        height:auto!important;
    }

    .panel + .panel,
    .grid + .panel,
    .panel + .grid{
        margin-top:16px!important;
    }

    .chart-scroll,
    .table-wrap,
    .mapbox{
        width:100%!important;
        max-width:100%!important;
    }

    .chart-scroll{
        border-radius:20px;
    }

    /* Tabellen dürfen intern scrollen, aber die Karten selbst bleiben bündig */
    .table-wrap{
        overflow-x:auto!important;
        overflow-y:auto!important;
    }

    /* Verhindert optisch abgeschnittene Inhalte durch zu große Schatten/Radien */
    .widget,
    .panel,
    .card,
    .filterbar,
    .account-block{
        box-shadow:
            0 16px 42px rgba(0,0,0,.18),
            inset 0 1px 0 rgba(255,255,255,.035)!important;
    }
}

@media(max-width:520px){

    .container,
    .account-page{
        padding-left:12px!important;
        padding-right:12px!important;
    }

    .widget,
    .panel,
    .card,
    .filterbar,
    .account-block{
        border-radius:22px!important;
    }

    .widget,
    .panel,
    .card{
        padding:16px!important;
    }

    .hero h1{
        max-width:100%;
        overflow-wrap:anywhere;
    }
}

/* Mobile full-width utility for any future widget */
@media(max-width:900px){
    [class*="widget"],
    [class*="panel"]{
        box-sizing:border-box;
    }
}


/* V2.8 KPI Config, Comparison & AI Insights */
.kpi-grid-six{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.kpi-grid-six .widget{
    min-height:170px;
}

.delta{
    margin:10px 0 0;
    color:var(--muted);
    font-size:12px;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.ai-panel p{
    font-size:15.5px;
    line-height:1.75;
    max-width:1100px;
}

.ai-panel strong{
    color:var(--text);
    font-weight:800;
}

.action-list{
    margin:10px 0 0;
    padding-left:20px;
    color:var(--muted);
    line-height:1.8;
}

.action-list li{
    margin-bottom:6px;
}

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

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


/* V2.9 Mapping Studio + color presets + online order analytics */
.mapping-form{
    display:grid;
    gap:22px;
}

.mapping-section{
    border:1px solid var(--line);
    border-radius:24px;
    padding:20px;
    background:rgba(255,255,255,.025);
}

.mapping-section h3{
    margin:0 0 14px;
    color:var(--heading);
    font-size:18px;
    letter-spacing:.04em;
}

.mapping-section .muted,
.muted{
    color:var(--muted);
}

.channel-widget{
    grid-column:auto;
}

.channel-split{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}

.channel-split span{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px 10px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    background:rgba(255,255,255,.025);
}

.channel-split b{
    font-size:clamp(24px,3vw,42px);
    font-weight:460;
}

.channel-split em{
    font-style:normal;
    color:var(--muted);
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.expert-theme{
    margin-top:24px;
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(255,255,255,.025);
}

.expert-theme summary{
    cursor:pointer;
    color:var(--gold);
    font-weight:750;
}

.preset-card .preset-title{
    min-height:48px;
}

@media(max-width:760px){
    .mapping-section{
        padding:16px;
        border-radius:20px;
    }

    .channel-split{
        grid-template-columns:1fr;
    }
}


/* V3.0 contrast + order/payment polish */
.topbar,
.topbar a,
.brand,
.center-nav a,
.nav-actions a{
    color:var(--header-text)!important;
}

.brand{
    color:var(--gold)!important;
}

input,select,textarea{
    color:var(--text)!important;
}

button,.btn{
    color:#111827;
}

.channel-widget{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
}

.mapping-section select,
.mapping-section input{
    min-width:0;
}

.payment-table td,
.payment-table th{
    white-space:normal;
}

.preset-preview.rich{
    border-bottom:1px solid rgba(0,0,0,.08);
}

/* readable table/header in light themes */
th{
    color:var(--gold)!important;
}

.panel,.widget,.card,.filterbar{
    color:var(--text);
}


/* V3.1 Bestellart chart + Zahlungsart table fix */
.payment-table th:nth-child(2),
.payment-table td:nth-child(2),
.payment-table th:nth-child(3),
.payment-table td:nth-child(3){
    white-space:nowrap!important;
    width:20%;
}

.panel .muted{
    margin-top:-6px;
    margin-bottom:16px;
    color:var(--muted);
    font-size:13px;
}

#channelChart{
    min-height:320px;
}


/* V3.3 server-side Bestellart chart + Widget Designer cleanup */
.server-chart-wrap{
    width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:8px;
}

.server-chart{
    display:block;
    width:100%;
    min-width:720px;
    height:320px;
}

@media(max-width:760px){
    .server-chart{
        min-width:760px;
    }
}

.designer-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:18px;
}

.designer-card{
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(255,255,255,.025);
}

.designer-card h3{
    margin:0 0 12px;
    color:var(--heading);
}

.designer-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    align-items:center;
    border-top:1px solid rgba(255,255,255,.06);
    padding:12px 0;
}

.designer-row:first-of-type{
    border-top:none;
}

.designer-row small{
    display:block;
    color:var(--muted);
    margin-top:4px;
}


/* V3.4 theme expert + preset preview fixes */
.expert-theme{
    margin-top:24px;
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(255,255,255,.035);
}

.expert-theme summary{
    cursor:pointer;
    color:var(--gold);
    font-weight:800;
    letter-spacing:.03em;
}

.expert-theme-form{
    margin-top:18px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:16px;
}

.expert-theme-form input[type="color"]{
    width:100%!important;
    height:54px!important;
    padding:4px!important;
    border-radius:16px!important;
}

.preset-card,
.preset-preview.rich{
    overflow:hidden!important;
}

.mini-card{
    overflow:hidden!important;
    gap:6px!important;
}

.mini-card b{
    max-width:70px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    text-align:right;
}

.mini-brand{
    color:inherit;
    opacity:.98;
}


/* V3.5 contrast fixes + integration UI */
.topbar{
    background:var(--header)!important;
}

.topbar a,
.center-nav a,
.nav-actions a{
    color:var(--header-text)!important;
    opacity:.98!important;
}

.center-nav a.active,
.center-nav a:hover,
.nav-actions a:hover{
    color:var(--header-text)!important;
    font-weight:800;
    background:rgba(255,255,255,.10);
}

.brand strong{
    color:var(--gold)!important;
}

.filterbar,
.filterbar-pro{
    background:var(--filter-bg)!important;
    color:var(--filter-text)!important;
}

.filterbar label,
.filterbar-pro label,
.filterbar .data-stock-line,
.filterbar .data-stock-line span,
.filterbar .data-stock-line b{
    color:var(--filter-text)!important;
    opacity:1!important;
}

.filterbar input,
.filterbar select,
.filterbar textarea,
.filterbar-pro input,
.filterbar-pro select,
.filterbar-pro textarea{
    background:rgba(255,255,255,.12)!important;
    color:var(--filter-text)!important;
    border-color:rgba(255,255,255,.20)!important;
}

.filterbar input::placeholder,
.filterbar-pro input::placeholder{
    color:color-mix(in srgb,var(--filter-text) 62%,transparent)!important;
}

.filterbar button,
.filterbar .btn,
.filterbar-pro button,
.filterbar-pro .btn{
    font-weight:800;
}

.integration-form .full{
    grid-column:1/-1;
}

.integration-form textarea{
    width:100%;
    border-radius:18px;
    padding:14px;
    background:rgba(255,255,255,.06);
    color:var(--text);
    border:1px solid var(--line);
}

@media(max-width:900px){
    .integration-form .full{
        grid-column:auto;
    }
}


/* V3.6 Designsystem preview + expert mode refinement */
.preset-grid.equal,
.preset-grid{
    row-gap:34px!important;
}

.preset-card{
    width:170px!important;
    max-width:170px!important;
    height:248px!important;
    min-height:248px!important;
    overflow:hidden!important;
}

.preset-preview.rich{
    height:178px!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
}

.mini-brand{
    height:48px!important;
    line-height:48px!important;
    padding:0 16px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

.mini-card{
    position:static!important;
    margin:32px 16px 10px!important;
    min-height:68px!important;
    width:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:8px!important;
    box-sizing:border-box!important;
}

.mini-card span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

.mini-card b{
    max-width:54px!important;
    min-width:54px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    text-align:right!important;
    font-size:14px!important;
}

.mini-line{
    position:static!important;
    margin:0 16px!important;
    height:4px!important;
    width:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
}

.preset-title{
    padding:14px 16px!important;
}

/* expert mode placed lower, clearer button */
.expert-theme-shell{
    margin-top:44px!important;
    border-top:1px solid var(--line);
    padding-top:24px;
}

.expert-toggle{
    width:100%!important;
    min-height:64px!important;
    border-radius:22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:14px!important;
    background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 14%,transparent),rgba(255,255,255,.03))!important;
    border:1px solid color-mix(in srgb,var(--gold) 32%,transparent)!important;
    color:var(--text)!important;
    text-align:left!important;
    padding:14px 18px!important;
}

.expert-toggle .toggle-icon{
    width:38px;
    height:38px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--gold);
    color:#111827;
    font-size:22px;
    font-weight:800;
    flex:0 0 auto;
}

.expert-toggle strong{
    display:block;
    font-size:16px;
    color:var(--heading);
}

.expert-toggle em{
    display:block;
    font-style:normal;
    color:var(--muted);
    font-size:13px;
    margin-top:3px;
}

.expert-theme-panel{
    display:none;
    margin-top:18px;
    border:1px solid var(--line);
    border-radius:26px;
    padding:20px;
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
}

.expert-theme-shell.open .expert-theme-panel{
    display:block;
}

.expert-theme-shell.open .toggle-icon{
    transform:rotate(45deg);
}

.expert-theme-form{
    display:grid!important;
    grid-template-columns:260px 1fr!important;
    gap:22px!important;
    align-items:start;
}

.expert-preview{
    border:1px solid var(--line);
    border-radius:24px;
    overflow:hidden;
    min-height:220px;
    background:var(--bg);
}

.expert-preview-header{
    height:54px;
    display:flex;
    align-items:center;
    padding:0 18px;
    background:var(--header);
    color:var(--header-text);
    font-weight:900;
    letter-spacing:.16em;
}

.expert-preview-body{
    padding:22px;
}

.expert-preview-card{
    border:1px solid var(--gold);
    border-radius:18px;
    padding:14px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:var(--text);
}

.expert-preview-card span{
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:12px;
}

.expert-preview-card b{
    font-weight:700;
}

.expert-preview-line{
    margin-top:14px;
    height:4px;
    border-radius:999px;
    background:var(--gold);
}

.expert-controls{
    display:grid;
    grid-template-columns:repeat(2,minmax(180px,1fr));
    gap:16px;
}

.expert-controls input[type="color"]{
    width:100%!important;
    height:54px!important;
    padding:4px!important;
    border-radius:16px!important;
}

.expert-gradient-note{
    grid-column:2;
    color:var(--muted);
    line-height:1.6;
    padding:14px 16px;
    border:1px solid var(--line);
    border-radius:18px;
    background:rgba(255,255,255,.025);
}

.expert-actions{
    grid-column:2;
}

@media(max-width:820px){
    .expert-theme-form{
        grid-template-columns:1fr!important;
    }

    .expert-gradient-note,
    .expert-actions{
        grid-column:auto!important;
    }

    .expert-controls{
        grid-template-columns:1fr!important;
    }

    .preset-card{
        width:100%!important;
        max-width:100%!important;
    }
}


/* V3.7 Expert-Modus layout + PDF header update */
.expert-theme-shell{
    margin-top:52px!important;
    border-top:1px solid var(--line);
    padding-top:26px;
}

.expert-toggle{
    width:auto!important;
    min-width:230px!important;
    min-height:58px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:13px!important;
    padding:12px 20px!important;
    background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 18%,transparent),rgba(255,255,255,.04))!important;
    border:1px solid color-mix(in srgb,var(--gold) 42%,transparent)!important;
    color:var(--text)!important;
    text-align:left!important;
}

.expert-toggle .toggle-icon{
    width:34px;
    height:34px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--gold);
    color:#111827;
    font-size:17px;
    font-weight:900;
    flex:0 0 auto;
}

.expert-toggle strong{
    display:block;
    font-size:16px;
    color:var(--heading);
}

.expert-toggle em{
    display:block;
    font-style:normal;
    color:var(--muted);
    font-size:12px;
    margin-top:2px;
}

.expert-theme-panel{
    display:none!important;
    margin-top:22px;
    border:1px solid var(--line);
    border-radius:28px;
    padding:22px;
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
}

.expert-theme-shell.open .expert-theme-panel{
    display:block!important;
}

.expert-theme-form{
    display:grid!important;
    grid-template-columns:1fr 1fr 320px!important;
    gap:22px!important;
    align-items:start!important;
}

.expert-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(255,255,255,.025);
}

.expert-controls h3{
    margin:0 0 4px;
    color:var(--heading);
}

.expert-controls input[type="color"]{
    width:100%!important;
    height:54px!important;
    padding:4px!important;
    border-radius:16px!important;
}

.gradient-switch{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px 16px;
    margin-top:8px;
    letter-spacing:.02em!important;
    text-transform:none!important;
    font-size:14px!important;
}

.gradient-switch input{
    width:22px!important;
    height:22px!important;
}

.expert-actions button{
    width:100%!important;
}

.expert-preview{
    border:1px solid var(--line);
    border-radius:26px;
    overflow:hidden;
    min-height:310px;
    background:var(--bg);
}

.expert-preview-header{
    height:58px;
    display:flex;
    align-items:center;
    padding:0 20px;
    background:var(--header);
    color:var(--header-text);
    font-weight:900;
    letter-spacing:.16em;
}

.expert-preview-body{
    padding:22px;
    color:var(--text);
}

.expert-preview-body h4{
    margin:0 0 10px;
    color:var(--heading);
    font-size:22px;
}

.expert-preview-body p{
    margin:0 0 18px;
    color:inherit;
    opacity:.74;
}

.expert-preview-card{
    border:1px solid var(--gold);
    border-radius:18px;
    padding:14px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.expert-preview-card span{
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:12px;
}

.expert-preview-card b{
    font-weight:700;
}

.expert-preview-line{
    margin-top:14px;
    height:4px;
    border-radius:999px;
    background:var(--gold);
}

@media(max-width:1050px){
    .expert-theme-form{
        grid-template-columns:1fr 1fr!important;
    }
    .expert-preview{
        grid-column:1/-1;
    }
}

@media(max-width:720px){
    .expert-theme-form{
        grid-template-columns:1fr!important;
    }
    .expert-preview{
        grid-column:auto;
    }
    .expert-toggle{
        width:100%!important;
    }
}


/* V3.8 Designsystem cleanup */
.design-system-block .block-body{
    padding-top:18px!important;
}

.design-system-block .preset-grid.equal{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(170px,170px))!important;
    gap:26px 34px!important;
    align-items:start!important;
}

.design-system-block .preset-card{
    width:170px!important;
    max-width:170px!important;
    height:248px!important;
    min-height:248px!important;
    border-radius:24px!important;
    overflow:hidden!important;
    padding:0!important;
    background:var(--bg)!important;
    border:1px solid var(--line)!important;
    box-shadow:0 16px 36px rgba(0,0,0,.10)!important;
}

.design-system-block .preset-preview.rich{
    height:178px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:24px 24px 0 0!important;
}

.design-system-block .mini-brand{
    height:48px!important;
    line-height:48px!important;
    padding:0 16px!important;
    font-size:15px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
    white-space:nowrap!important;
}

.design-system-block .mini-card{
    position:static!important;
    margin:30px 16px 10px!important;
    min-height:66px!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:6px!important;
    padding:12px!important;
    border-radius:18px!important;
}

.design-system-block .mini-card span{
    font-size:11px!important;
    letter-spacing:.12em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
}

.design-system-block .mini-card b{
    font-size:13px!important;
    max-width:54px!important;
    min-width:54px!important;
    text-align:right!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
}

.design-system-block .mini-line{
    position:static!important;
    height:4px!important;
    margin:0 16px!important;
    border-radius:999px!important;
}

.design-system-block .preset-title{
    padding:14px 16px!important;
    font-weight:800!important;
    color:var(--text)!important;
}

/* Expert mode is closed by default */
.expert-theme-shell{
    margin-top:46px!important;
    padding-top:26px!important;
    border-top:1px solid var(--line)!important;
}

.expert-theme-shell .expert-theme-panel{
    display:none!important;
}

.expert-theme-shell.open .expert-theme-panel{
    display:block!important;
}

.expert-toggle{
    width:auto!important;
    min-width:0!important;
    max-width:260px!important;
    min-height:52px!important;
    border-radius:999px!important;
    padding:11px 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:12px!important;
    background:var(--gold)!important;
    border:1px solid var(--gold)!important;
    color:#111827!important;
    text-align:left!important;
}

.expert-toggle .toggle-icon{
    width:30px!important;
    height:30px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(0,0,0,.12)!important;
    color:#111827!important;
    font-size:16px!important;
    flex:0 0 auto!important;
}

.expert-toggle strong{
    color:#111827!important;
    font-size:15px!important;
    line-height:1.1!important;
}

.expert-toggle em{
    color:rgba(17,24,39,.72)!important;
    font-size:12px!important;
    font-style:normal!important;
    display:block!important;
}

.expert-theme-panel{
    margin-top:22px!important;
    border:1px solid var(--line)!important;
    border-radius:28px!important;
    padding:22px!important;
    background:rgba(255,255,255,.035)!important;
}

.expert-theme-form{
    display:grid!important;
    grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(360px,1.4fr)!important;
    gap:22px!important;
    align-items:stretch!important;
}

.expert-column{
    border:1px solid var(--line)!important;
    border-radius:24px!important;
    padding:18px!important;
    background:rgba(255,255,255,.025)!important;
    display:grid!important;
    gap:14px!important;
    align-content:start!important;
}

.expert-column h3{
    margin:0 0 6px!important;
    color:var(--heading)!important;
}

.expert-column input[type="color"]{
    width:100%!important;
    height:54px!important;
    border-radius:16px!important;
    padding:4px!important;
}

.gradient-switch{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    border:1px solid var(--line)!important;
    border-radius:18px!important;
    padding:14px!important;
    text-transform:none!important;
    letter-spacing:.02em!important;
    font-size:14px!important;
}

.gradient-switch input{
    width:22px!important;
    height:22px!important;
}

.expert-actions button{
    width:100%!important;
}

/* Website preview beside controls, styled like a dashboard/top-list */
.expert-live-preview{
    border:1px solid var(--line)!important;
    border-radius:26px!important;
    overflow:hidden!important;
    background:var(--bg)!important;
    min-height:360px!important;
    box-shadow:0 20px 50px rgba(0,0,0,.12)!important;
}

.preview-web-header{
    height:54px;
    display:flex;
    align-items:center;
    gap:18px;
    padding:0 18px;
    background:var(--header);
    color:var(--header-text);
    font-size:12px;
    font-weight:800;
}

.preview-logo{
    color:var(--gold);
    letter-spacing:.14em;
    font-weight:900;
    margin-right:auto;
}

.preview-web-body{
    padding:20px;
    color:var(--text);
}

.preview-web-body h3{
    margin:0 0 14px;
    color:var(--heading);
    font-size:26px;
}

.preview-filter{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-bottom:16px;
}

.preview-filter span{
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px;
    font-size:11px;
    color:var(--muted);
}

.preview-toplist{
    border:1px solid var(--line);
    border-radius:20px;
    overflow:hidden;
    background:rgba(255,255,255,.035);
}

.toplist-head,
.toplist-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    padding:12px 14px;
    border-bottom:1px solid var(--line);
}

.toplist-head{
    color:var(--gold);
    text-transform:uppercase;
    font-size:11px;
    letter-spacing:.12em;
}

.toplist-row:last-child{
    border-bottom:none;
}

.toplist-row b{
    color:var(--heading);
}

@media(max-width:1080px){
    .expert-theme-form{
        grid-template-columns:1fr 1fr!important;
    }
    .expert-live-preview{
        grid-column:1/-1;
    }
}

@media(max-width:760px){
    .expert-theme-form{
        grid-template-columns:1fr!important;
    }
    .expert-live-preview{
        grid-column:auto;
    }
    .expert-toggle{
        max-width:none!important;
        width:100%!important;
    }
}


/* V3.9 final Designsystem correction */
.design-system-block .block-body{
    padding-top:18px!important;
}

.design-system-block .preset-grid.equal{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(170px,170px))!important;
    gap:30px 42px!important;
    align-items:start!important;
}

.design-system-block .preset-card{
    width:170px!important;
    max-width:170px!important;
    height:248px!important;
    min-height:248px!important;
    border-radius:24px!important;
    overflow:hidden!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    box-shadow:0 16px 36px rgba(0,0,0,.10)!important;
}

.design-system-block .preset-preview.rich{
    height:178px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:24px 24px 0 0!important;
}

.design-system-block .mini-brand{
    height:48px!important;
    line-height:48px!important;
    padding:0 16px!important;
    font-size:15px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
    overflow:hidden!important;
    white-space:nowrap!important;
}

.design-system-block .mini-card{
    position:static!important;
    margin:30px 16px 10px!important;
    min-height:66px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 52px!important;
    align-items:center!important;
    gap:6px!important;
    padding:12px!important;
    border-radius:18px!important;
    box-sizing:border-box!important;
    width:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
}

.design-system-block .mini-card span{
    font-size:11px!important;
    letter-spacing:.12em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

.design-system-block .mini-card b{
    font-size:13px!important;
    max-width:52px!important;
    min-width:52px!important;
    text-align:right!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    font-weight:800!important;
}

.design-system-block .mini-line{
    position:static!important;
    height:4px!important;
    margin:0 16px!important;
    border-radius:999px!important;
    width:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
}

.design-system-block .preset-title{
    padding:14px 16px!important;
    font-weight:800!important;
    color:var(--text)!important;
}

/* Expert mode: closed by default and Apple-like simple card */
#expertThemeShell.expert-theme-shell{
    margin-top:48px!important;
    padding-top:26px!important;
    border-top:1px solid var(--line)!important;
}

#expertThemeShell .expert-theme-panel{
    display:none!important;
}

#expertThemeShell.open .expert-theme-panel{
    display:block!important;
}

#expertThemeShell .expert-toggle{
    width:auto!important;
    max-width:220px!important;
    min-height:50px!important;
    border-radius:999px!important;
    padding:10px 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:12px!important;
    background:var(--gold)!important;
    border:1px solid var(--gold)!important;
    color:#111827!important;
    text-align:left!important;
}

#expertThemeShell .toggle-icon{
    width:30px!important;
    height:30px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(0,0,0,.12)!important;
    color:#111827!important;
    font-size:16px!important;
}

#expertThemeShell .toggle-text strong{
    color:#111827!important;
    font-size:15px!important;
    line-height:1.1!important;
    display:block!important;
}

#expertThemeShell .toggle-text em{
    color:rgba(17,24,39,.72)!important;
    font-size:12px!important;
    font-style:normal!important;
    display:block!important;
}

#expertThemeShell .expert-theme-panel{
    margin-top:22px!important;
    border:1px solid var(--line)!important;
    border-radius:28px!important;
    padding:22px!important;
    background:rgba(255,255,255,.04)!important;
}

#expertThemeShell .expert-theme-form{
    display:grid!important;
    grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(360px,1.4fr)!important;
    gap:22px!important;
    align-items:stretch!important;
}

#expertThemeShell .expert-column{
    border:1px solid var(--line)!important;
    border-radius:24px!important;
    padding:18px!important;
    background:rgba(255,255,255,.025)!important;
    display:grid!important;
    gap:14px!important;
    align-content:start!important;
}

#expertThemeShell .expert-column h3{
    margin:0 0 6px!important;
    color:var(--heading)!important;
}

#expertThemeShell .expert-column input[type="color"]{
    width:100%!important;
    height:54px!important;
    border-radius:16px!important;
    padding:4px!important;
}

#expertThemeShell .gradient-switch{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    border:1px solid var(--line)!important;
    border-radius:18px!important;
    padding:14px!important;
    text-transform:none!important;
    letter-spacing:.02em!important;
    font-size:14px!important;
}

#expertThemeShell .gradient-switch input{
    width:22px!important;
    height:22px!important;
}

#expertThemeShell .expert-actions button{
    width:100%!important;
}

#expertThemeShell .expert-live-preview{
    border:1px solid var(--line)!important;
    border-radius:26px!important;
    overflow:hidden!important;
    background:var(--bg)!important;
    min-height:360px!important;
    box-shadow:0 20px 50px rgba(0,0,0,.12)!important;
}

.preview-web-header{
    height:54px!important;
    display:flex!important;
    align-items:center!important;
    gap:18px!important;
    padding:0 18px!important;
    background:var(--header)!important;
    color:var(--header-text)!important;
    font-size:12px!important;
    font-weight:800!important;
}

.preview-logo{
    color:var(--gold)!important;
    letter-spacing:.14em!important;
    font-weight:900!important;
    margin-right:auto!important;
}

.preview-web-body{
    padding:20px!important;
    color:var(--text)!important;
}

.preview-web-body h3{
    margin:0 0 14px!important;
    color:var(--heading)!important;
    font-size:26px!important;
}

.preview-filter{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:8px!important;
    margin-bottom:16px!important;
}

.preview-filter span{
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    padding:10px!important;
    font-size:11px!important;
    color:var(--muted)!important;
}

.preview-toplist{
    border:1px solid var(--line)!important;
    border-radius:20px!important;
    overflow:hidden!important;
    background:rgba(255,255,255,.035)!important;
}

.toplist-head,
.toplist-row{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:12px!important;
    padding:12px 14px!important;
    border-bottom:1px solid var(--line)!important;
}

.toplist-head{
    color:var(--gold)!important;
    text-transform:uppercase!important;
    font-size:11px!important;
    letter-spacing:.12em!important;
}

.toplist-row:last-child{
    border-bottom:none!important;
}

.toplist-row b{
    color:var(--heading)!important;
}

@media(max-width:1080px){
    #expertThemeShell .expert-theme-form{
        grid-template-columns:1fr 1fr!important;
    }
    #expertThemeShell .expert-live-preview{
        grid-column:1/-1!important;
    }
}

@media(max-width:760px){
    #expertThemeShell .expert-theme-form{
        grid-template-columns:1fr!important;
    }
    #expertThemeShell .expert-live-preview{
        grid-column:auto!important;
    }
    #expertThemeShell .expert-toggle{
        max-width:none!important;
        width:100%!important;
    }
}


/* V4.0 rebuilt Designsystem - clean, controlled, no inherited broken layout */
.ds-clean *{
    box-sizing:border-box;
}

.ds-clean .block-body{
    padding:24px!important;
}

.ds-subtitle{
    margin:0 0 24px!important;
}

.ds-preset-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit, minmax(170px, 170px))!important;
    gap:30px 42px!important;
    align-items:start!important;
}

.ds-preset-grid form{
    margin:0!important;
}

.ds-preset-card{
    all:unset;
    display:block!important;
    width:170px!important;
    height:248px!important;
    border-radius:24px!important;
    overflow:hidden!important;
    border:1px solid var(--line)!important;
    background:var(--bg)!important;
    box-shadow:0 16px 36px rgba(0,0,0,.10)!important;
    cursor:pointer!important;
    font-family:inherit!important;
}

.ds-card-preview{
    height:178px!important;
    display:flex!important;
    flex-direction:column!important;
    background:linear-gradient(180deg,var(--p-header) 0 30%,var(--p-bg) 30% 100%)!important;
    color:var(--p-text)!important;
    overflow:hidden!important;
}

.ds-card-header{
    height:48px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 16px!important;
    font-weight:900!important;
    font-size:15px!important;
    letter-spacing:.14em!important;
    color:inherit!important;
    white-space:nowrap!important;
    overflow:hidden!important;
}

.ds-card-body{
    padding:30px 16px 0!important;
}

.ds-mini-kpi{
    border:1px solid var(--p-accent)!important;
    border-radius:18px!important;
    min-height:66px!important;
    padding:12px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 52px!important;
    gap:6px!important;
    align-items:center!important;
}

.ds-mini-kpi span{
    color:var(--p-accent)!important;
    font-size:11px!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

.ds-mini-kpi b{
    color:var(--p-text)!important;
    max-width:52px!important;
    min-width:52px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    text-align:right!important;
    font-size:13px!important;
    font-weight:800!important;
}

.ds-mini-line{
    height:4px!important;
    margin-top:10px!important;
    border-radius:999px!important;
    background:var(--p-accent)!important;
}

.ds-card-title{
    height:70px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 16px!important;
    font-weight:800!important;
    color:var(--text)!important;
}

/* Expert button and panel */
.ds-expert{
    margin-top:48px!important;
    padding-top:26px!important;
    border-top:1px solid var(--line)!important;
}

.ds-expert-button{
    all:unset;
    display:inline-flex!important;
    align-items:center!important;
    gap:10px!important;
    padding:12px 18px!important;
    border-radius:999px!important;
    background:var(--gold)!important;
    color:#111827!important;
    font-weight:900!important;
    cursor:pointer!important;
    box-shadow:0 10px 26px rgba(0,0,0,.10)!important;
}

.ds-expert-button span{
    width:28px!important;
    height:28px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(0,0,0,.12)!important;
}

.ds-expert-panel{
    display:none!important;
    margin-top:22px!important;
    border:1px solid var(--line)!important;
    border-radius:28px!important;
    padding:22px!important;
    background:rgba(255,255,255,.04)!important;
}

.ds-expert.open .ds-expert-panel{
    display:block!important;
}

.ds-expert-form{
    display:grid!important;
    grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(380px,1.35fr)!important;
    gap:22px!important;
    align-items:stretch!important;
}

.ds-color-panel{
    border:1px solid var(--line)!important;
    border-radius:24px!important;
    padding:18px!important;
    background:rgba(255,255,255,.025)!important;
    display:grid!important;
    gap:14px!important;
    align-content:start!important;
}

.ds-color-panel h3{
    margin:0 0 8px!important;
    color:var(--heading)!important;
    font-size:18px!important;
}

.ds-color-panel label{
    display:grid!important;
    gap:8px!important;
    color:var(--muted)!important;
    font-size:11px!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
}

.ds-color-panel input[type="color"]{
    width:100%!important;
    height:56px!important;
    border-radius:18px!important;
    padding:5px!important;
    border:1px solid var(--line)!important;
    background:rgba(255,255,255,.06)!important;
}

.ds-switch{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    border:1px solid var(--line)!important;
    border-radius:18px!important;
    padding:14px!important;
    text-transform:none!important;
    letter-spacing:.02em!important;
    font-size:14px!important;
}

.ds-switch input{
    width:22px!important;
    height:22px!important;
}

.ds-save{
    width:100%!important;
    height:48px!important;
}

/* Website / Top-list preview */
.ds-live-preview{
    border:1px solid var(--line)!important;
    border-radius:26px!important;
    overflow:hidden!important;
    background:var(--bg)!important;
    min-height:360px!important;
    box-shadow:0 20px 50px rgba(0,0,0,.12)!important;
}

.ds-live-header{
    height:54px!important;
    display:flex!important;
    align-items:center!important;
    gap:18px!important;
    padding:0 18px!important;
    background:var(--header)!important;
    color:var(--header-text)!important;
    font-size:12px!important;
    font-weight:800!important;
}

.ds-live-header strong{
    color:var(--gold)!important;
    letter-spacing:.14em!important;
    margin-right:auto!important;
}

.ds-live-content{
    padding:20px!important;
    color:var(--text)!important;
}

.ds-live-content h3{
    margin:0 0 14px!important;
    color:var(--heading)!important;
    font-size:26px!important;
}

.ds-live-filters{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:8px!important;
    margin-bottom:16px!important;
}

.ds-live-filters span{
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    padding:10px!important;
    font-size:11px!important;
    color:var(--muted)!important;
}

.ds-live-table{
    border:1px solid var(--line)!important;
    border-radius:20px!important;
    overflow:hidden!important;
    background:rgba(255,255,255,.035)!important;
}

.ds-live-table-head,
.ds-live-row{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:12px!important;
    padding:12px 14px!important;
    border-bottom:1px solid var(--line)!important;
}

.ds-live-table-head{
    color:var(--gold)!important;
    text-transform:uppercase!important;
    font-size:11px!important;
    letter-spacing:.12em!important;
}

.ds-live-row:last-child{
    border-bottom:none!important;
}

.ds-live-row b{
    color:var(--heading)!important;
}

@media(max-width:1080px){
    .ds-expert-form{
        grid-template-columns:1fr 1fr!important;
    }
    .ds-live-preview{
        grid-column:1/-1!important;
    }
}

@media(max-width:760px){
    .ds-preset-grid{
        grid-template-columns:repeat(auto-fit, minmax(150px,1fr))!important;
    }
    .ds-preset-card{
        width:100%!important;
    }
    .ds-expert-form{
        grid-template-columns:1fr!important;
    }
    .ds-live-preview{
        grid-column:auto!important;
    }
    .ds-expert-button{
        width:100%!important;
        justify-content:center!important;
    }
}


/* V4.2 dropdown readability + Dienstleistung analytics */
select option{
    background:#f8fafc!important;
    color:#111827!important;
}

.filterbar select option,
.filterbar-pro select option{
    background:#ffffff!important;
    color:#111827!important;
}

.bubble-map{
    min-height:340px;
    border:1px solid var(--line);
    border-radius:24px;
    background:
        radial-gradient(circle at 20% 35%, color-mix(in srgb,var(--gold) 10%,transparent), transparent 24%),
        radial-gradient(circle at 70% 55%, color-mix(in srgb,var(--gold) 8%,transparent), transparent 22%),
        rgba(255,255,255,.025);
    display:flex;
    flex-wrap:wrap;
    align-content:center;
    justify-content:center;
    gap:14px;
    padding:22px;
    overflow:auto;
}

.bubble-map span{
    width:var(--s);
    min-width:var(--s);
    height:var(--s);
    border-radius:999px;
    border:1px solid color-mix(in srgb,var(--gold) 70%,transparent);
    background:color-mix(in srgb,var(--gold) 18%,transparent);
    color:var(--text);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size:10px;
    line-height:1.15;
    padding:5px;
    overflow:hidden;
}

.bubble-map span b{
    color:var(--heading);
    font-size:12px;
    margin-top:2px;
}

.map-switch{
    display:flex;
    gap:10px;
    margin-bottom:14px;
}

.map-switch button{
    width:auto!important;
    min-width:130px;
}

.donut-list{
    display:grid;
    gap:10px;
}

.donut-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    border:1px solid var(--line);
    border-radius:16px;
    padding:12px 14px;
    background:rgba(255,255,255,.025);
}

.donut-row b{
    color:var(--heading);
}

.bar-chart{
    min-width:720px;
}

@media(max-width:760px){
    .map-switch{
        flex-direction:column;
    }

    .map-switch button{
        width:100%!important;
    }
}


/* V4.4 Dienstleistung rebuild */
.unit-switch{
    display:flex;
    justify-content:center;
    gap:10px;
    margin:22px auto 18px;
}

.unit-switch a{
    min-width:150px;
    text-align:center;
    padding:13px 22px;
    border-radius:999px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.04);
    color:var(--text);
    text-decoration:none;
    font-weight:800;
    letter-spacing:.03em;
}

.unit-switch a.active{
    background:var(--gold);
    border-color:var(--gold);
    color:#111827;
}

.service-panel h2{
    font-size:clamp(26px,2.3vw,36px)!important;
    line-height:1.08;
    margin-bottom:18px!important;
    color:var(--heading);
}

.service-panel .eyebrow{
    display:none!important;
}

select option,
.filterbar select option,
.filterbar-pro select option{
    background:#ffffff!important;
    color:#111827!important;
}

.world-map-wrap{
    width:100%;
    overflow:auto;
    border:1px solid var(--line);
    border-radius:26px;
    background:
        radial-gradient(circle at 20% 20%, color-mix(in srgb,var(--gold) 10%,transparent), transparent 24%),
        rgba(255,255,255,.025);
}

.world-map-svg{
    display:block;
    width:100%;
    min-width:760px;
    height:auto;
}

.map-switch{
    display:flex;
    gap:10px;
    margin-bottom:14px;
    justify-content:center;
}

.map-switch button{
    width:auto!important;
    min-width:130px;
}

.donut-list{
    display:grid;
    gap:10px;
}

.donut-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    border:1px solid var(--line);
    border-radius:16px;
    padding:12px 14px;
    background:rgba(255,255,255,.025);
}

.donut-row b{
    color:var(--heading);
}

.bar-chart{
    min-width:720px;
}

.service-only{
    border-color:color-mix(in srgb,var(--gold) 42%,var(--line))!important;
}

@media(max-width:760px){
    .unit-switch{
        flex-direction:column;
    }

    .unit-switch a{
        width:100%;
    }

    .map-switch{
        flex-direction:column;
    }

    .map-switch button{
        width:100%!important;
    }
}


/* V4.5 period logic + service polish */
.unit-switch,
.map-switch{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:12px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

.unit-switch a,
.map-switch button{
    background:rgba(255,255,255,.04)!important;
    border:1px solid color-mix(in srgb,var(--gold) 60%,transparent)!important;
    color:var(--text)!important;
    border-radius:999px!important;
    font-weight:850!important;
}

.unit-switch a.active,
.map-switch button:hover,
.map-switch button:focus{
    background:var(--gold)!important;
    color:#111827!important;
    border-color:var(--gold)!important;
}

.service-stacked-chart{
    min-width:760px;
}

.driver-period-table{
    overflow:auto;
}

.driver-period-table table{
    table-layout:auto!important;
    min-width:760px;
}

.driver-period-table th:first-child,
.driver-period-table td:first-child{
    min-width:190px!important;
    max-width:260px!important;
    white-space:normal!important;
}

.driver-period-table th:not(:first-child),
.driver-period-table td:not(:first-child){
    min-width:88px!important;
    text-align:right!important;
    white-space:nowrap!important;
}

.service-panel h2{
    font-size:clamp(29px,2.6vw,40px)!important;
}


/* V4.6 Upload progress */
.upload-progress-overlay{
    position:fixed;
    inset:0;
    z-index:99999;
    background:rgba(0,0,0,.52);
    backdrop-filter:blur(10px);
    align-items:center;
    justify-content:center;
    padding:24px;
}

.upload-progress-card{
    width:min(520px,100%);
    border:1px solid var(--line);
    border-radius:28px;
    background:var(--bg);
    color:var(--text);
    padding:28px;
    box-shadow:0 30px 90px rgba(0,0,0,.35);
    text-align:center;
}

.upload-progress-card h2{
    margin:0 0 10px;
    color:var(--heading);
    font-size:28px;
}

.upload-progress-card p{
    font-size:34px;
    margin:10px 0 18px;
    color:var(--gold);
    font-weight:800;
}

.upload-progress-bar{
    width:100%;
    height:16px;
    border-radius:999px;
    border:1px solid var(--line);
    overflow:hidden;
    background:rgba(255,255,255,.08);
    margin:0 0 16px;
}

.upload-progress-bar span{
    display:block;
    height:100%;
    width:0;
    background:var(--gold);
    border-radius:999px;
    transition:width .18s ease;
}

.upload-progress-card small{
    color:var(--muted);
    line-height:1.5;
}


/* V4.7 dynamic upload/mapping */
.mapping-handel[style*="display: none"],
.service-only[style*="display: none"]{
    display:none!important;
}

.compact-for-service .grid.two label:nth-child(n+5){
    display:none!important;
}

.mapping-null-note{
    border:1px solid color-mix(in srgb,var(--gold) 35%,var(--line));
    border-radius:16px;
    padding:12px 14px;
    background:rgba(255,255,255,.025);
}

.process-progress-form button[name],
.process-progress-form > button{
    position:relative;
}

.upload-progress-overlay{
    position:fixed;
    inset:0;
    z-index:99999;
    background:rgba(0,0,0,.52);
    backdrop-filter:blur(10px);
    align-items:center;
    justify-content:center;
    padding:24px;
}

.upload-progress-card{
    width:min(520px,100%);
    border:1px solid var(--line);
    border-radius:28px;
    background:var(--bg);
    color:var(--text);
    padding:28px;
    box-shadow:0 30px 90px rgba(0,0,0,.35);
    text-align:center;
}

.upload-progress-card h2{
    margin:0 0 10px;
    color:var(--heading);
    font-size:28px;
}

.upload-progress-card p{
    font-size:30px;
    margin:10px 0 18px;
    color:var(--gold);
    font-weight:800;
}

.upload-progress-bar{
    width:100%;
    height:16px;
    border-radius:999px;
    border:1px solid var(--line);
    overflow:hidden;
    background:rgba(255,255,255,.08);
    margin:0 0 16px;
}

.upload-progress-bar span{
    display:block;
    height:100%;
    width:0;
    background:var(--gold);
    border-radius:999px;
    transition:width .18s ease;
}

.upload-progress-card small{
    color:var(--muted);
    line-height:1.5;
}


/* V4.9 Service layout + real maps */
.service-wide{
    width:100%;
}

.service-age-chart .bar-chart{
    min-width:1080px!important;
}

.service-state-chart .bar-chart{
    min-width:980px!important;
}

.service-map-panel{
    min-height:720px;
}

.real-map-card{
    position:relative;
    width:100%;
    min-height:620px;
    border:1px solid var(--line);
    border-radius:26px;
    overflow:hidden;
    background:rgba(255,255,255,.025);
}

.leaflet-service-map{
    width:100%;
    height:620px;
    min-height:620px;
    z-index:1;
}

.map-empty{
    position:absolute;
    inset:auto 24px 24px 24px;
    z-index:2;
    background:rgba(0,0,0,.55);
    color:#fff;
    border-radius:18px;
    padding:14px 16px;
    text-align:center;
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip{
    color:#111827;
}

.service-driver-panel{
    min-height:520px;
}

.service-driver-panel .driver-period-table{
    max-height:640px;
    overflow:auto;
}

.service-driver-panel .driver-period-table table{
    width:100%;
    min-width:980px!important;
}

.service-driver-panel .driver-period-table th,
.service-driver-panel .driver-period-table td{
    padding:12px 14px!important;
}

.service-driver-panel .driver-period-table th:first-child,
.service-driver-panel .driver-period-table td:first-child{
    min-width:240px!important;
    width:280px!important;
}

.service-panel h2{
    margin-bottom:24px!important;
}

@media(max-width:900px){
    .real-map-card,
    .leaflet-service-map{
        min-height:520px;
        height:520px;
    }
}


/* V6.0 FINAL RESCUE — keep V4.9 structure, only controlled visual/layout changes */

/* KPI Privat/Mitglieder: no heading, compact table, left aligned */
.kpi-split-widget.no-kpi-title{
    padding:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}

.kpi-split-widget.no-kpi-title .mini-split-table{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    width:100%;
}

.kpi-split-widget.no-kpi-title .mini-split-table div{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px 12px;
    background:rgba(255,255,255,.035);
}

.kpi-split-widget.no-kpi-title .mini-split-table span{
    justify-self:start;
    text-align:left;
    color:var(--muted);
    font-size:12px;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.kpi-split-widget.no-kpi-title .mini-split-table b{
    justify-self:end;
    color:var(--heading);
    font-size:18px;
    font-weight:850;
}

/* Age chart: readable, same design language as Fallverlauf */
.html-bar-list{
    display:grid;
    gap:12px;
    width:100%;
    padding:8px 10px 6px;
    font-family:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Arial,sans-serif;
}

.html-bar-row{
    display:grid;
    grid-template-columns:92px minmax(0,1fr) 76px;
    gap:16px;
    align-items:center;
}

.html-bar-label{
    font-size:14px;
    font-weight:800;
    color:var(--text);
    letter-spacing:.01em;
}

.html-bar-track{
    height:22px;
    border-radius:999px;
    background:rgba(148,163,184,.13);
    overflow:hidden;
}

.html-bar-track span{
    display:block;
    height:100%;
    min-width:4px;
    border-radius:999px;
    background:var(--gold);
}

.html-bar-value{
    font-size:14px;
    font-weight:900;
    color:var(--heading);
    text-align:left;
}

/* balanced two-column widgets */
.service-balanced-row > .panel{
    min-height:360px!important;
}

.service-balanced-row .table-wrap{
    max-height:292px!important;
    overflow:auto!important;
}

.service-balanced-row .smart-table{
    table-layout:auto!important;
    width:100%;
}

.service-balanced-row .smart-table th:first-child,
.service-balanced-row .smart-table td:first-child{
    width:auto!important;
    max-width:none!important;
    white-space:normal!important;
}

.service-balanced-row .smart-table th:last-child,
.service-balanced-row .smart-table td:last-child{
    width:112px!important;
    text-align:right!important;
}

/* Donut */
.donut-chart-wrap{
    width:100%;
    min-height:360px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.donut-chart{
    width:100%;
    height:360px;
    display:block;
}

/* Service panels */
.service-panel h2{
    font-size:clamp(28px,2.45vw,40px)!important;
    margin-bottom:24px!important;
    color:var(--heading);
}

.service-panel{
    overflow:hidden;
}

.service-panel .table-wrap{
    border-radius:20px;
}

.service-state-chart .bar-chart{
    min-width:1100px!important;
}

/* Real maps stay one under another and large */
.service-map-panel{
    min-height:720px;
}

.real-map-card{
    min-height:650px!important;
    width:100%;
}

.leaflet-service-map{
    height:650px!important;
    min-height:650px!important;
}

.leaflet-service-map .leaflet-popup-content{
    color:#111827;
}

/* Fahrer */
.service-driver-panel{
    min-height:520px;
}

.service-driver-panel .driver-period-table{
    max-height:640px;
    overflow:auto;
}

.service-driver-panel .driver-period-table table{
    min-width:900px!important;
    width:100%;
}

.service-driver-panel .driver-period-table th:first-child,
.service-driver-panel .driver-period-table td:first-child{
    min-width:210px!important;
    width:230px!important;
}

.service-driver-panel .driver-period-table th:not(:first-child),
.service-driver-panel .driver-period-table td:not(:first-child){
    min-width:74px!important;
    padding-left:10px!important;
    padding-right:10px!important;
    text-align:right!important;
}

@media(max-width:900px){
    .html-bar-row{
        grid-template-columns:70px minmax(0,1fr) 54px;
        gap:10px;
    }

    .html-bar-label,
    .html-bar-value{
        font-size:12px;
    }

    .service-balanced-row{
        grid-template-columns:1fr!important;
    }

    .real-map-card,
    .leaflet-service-map{
        min-height:540px!important;
        height:540px!important;
    }
}


/* V6.1 final polish */

/* Privat/Mitglieder KPI wording bold like other widgets, values sized like KPI numbers */
.kpi-split-widget.no-kpi-title .mini-split-table div{
    min-height:58px;
    padding:12px 14px;
}

.kpi-split-widget.no-kpi-title .mini-split-table span{
    font-weight:900!important;
    color:var(--heading)!important;
    font-size:13px!important;
    letter-spacing:.08em!important;
}

.kpi-split-widget.no-kpi-title .mini-split-table b{
    font-size:30px!important;
    line-height:1!important;
    font-weight:500!important;
    color:var(--heading)!important;
}

/* Bundesländer uses the same readable design as Altersstruktur */
.service-state-chart .html-bar-list{
    padding:8px 10px 6px!important;
}

.service-state-chart .html-bar-row{
    grid-template-columns:190px minmax(0,1fr) 76px!important;
}

.service-state-chart .html-bar-label{
    font-size:14px!important;
    font-weight:800!important;
}

/* Leaflet bubbles with visible count labels */
.city-bubble-marker{
    background:transparent!important;
    border:none!important;
}

.city-bubble-marker .bubble-count{
    width:var(--bubble-size,34px);
    height:var(--bubble-size,34px);
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(245,158,11,.78);
    border:2px solid #fff;
    color:#111827;
    font-weight:900;
    font-size:12px;
    box-shadow:0 8px 22px rgba(0,0,0,.22);
}

.city-bubble-marker .bubble-label{
    position:absolute;
    left:50%;
    top:calc(var(--bubble-size,34px) + 2px);
    transform:translateX(-50%);
    white-space:nowrap;
    color:#111827;
    font-weight:800;
    font-size:10px;
    text-shadow:0 1px 2px #fff, 0 -1px 2px #fff, 1px 0 2px #fff, -1px 0 2px #fff;
}

/* Fahrer: uniform gaps + total row */
.service-driver-panel .driver-period-table{
    max-height:680px!important;
}

.service-driver-panel .driver-table{
    table-layout:fixed!important;
    min-width:980px!important;
    width:100%!important;
}

.service-driver-panel .driver-table th:first-child,
.service-driver-panel .driver-table td:first-child{
    width:240px!important;
    min-width:240px!important;
    max-width:240px!important;
    text-align:left!important;
    white-space:normal!important;
}

.service-driver-panel .driver-table th:not(:first-child),
.service-driver-panel .driver-table td:not(:first-child){
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    text-align:right!important;
    padding-left:12px!important;
    padding-right:12px!important;
}

.driver-total-row td{
    position:sticky;
    bottom:0;
    background:color-mix(in srgb,var(--bg) 92%,var(--gold) 8%)!important;
    border-top:2px solid var(--gold)!important;
    font-weight:900!important;
    z-index:2;
}

.driver-total-row strong{
    color:var(--heading)!important;
}


/* V6.2 final map/state corrections */
.service-state-chart .html-bar-row{
    grid-template-columns:180px minmax(0,1fr) 76px!important;
}

.service-state-chart .html-bar-label{
    white-space:normal!important;
    line-height:1.25!important;
}

/* Zielort/Zielflughafen switch exactly like ZSU switch */
.map-switch{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:10px!important;
    margin:0 auto 18px!important;
}

.map-switch button{
    min-width:150px!important;
    text-align:center!important;
    padding:13px 22px!important;
    border-radius:999px!important;
    border:1px solid var(--line)!important;
    background:rgba(255,255,255,.04)!important;
    color:var(--text)!important;
    font-weight:800!important;
    letter-spacing:.03em!important;
    box-shadow:none!important;
}

.map-switch button:hover,
.map-switch button:focus{
    background:var(--gold)!important;
    border-color:var(--gold)!important;
    color:#111827!important;
}

.city-bubble-marker .bubble-count{
    background:rgba(245,158,11,.78)!important;
    border:2px solid #fff!important;
    color:#111827!important;
}

.city-bubble-marker .bubble-label{
    color:#111827!important;
    text-shadow:0 1px 2px #fff,0 -1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff!important;
}


/* V6.4 analyst fix: matrix table for Bestattungsfirma + Fahrer */
.matrix-period-table,
.driver-period-table{
    max-height:680px!important;
    overflow:auto!important;
}

.matrix-table,
.driver-table{
    table-layout:fixed!important;
    min-width:980px!important;
    width:100%!important;
}

.matrix-table th:first-child,
.matrix-table td:first-child,
.driver-table th:first-child,
.driver-table td:first-child{
    width:260px!important;
    min-width:260px!important;
    max-width:260px!important;
    text-align:left!important;
    white-space:normal!important;
}

.matrix-table th:not(:first-child),
.matrix-table td:not(:first-child),
.driver-table th:not(:first-child),
.driver-table td:not(:first-child){
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    text-align:right!important;
    padding-left:12px!important;
    padding-right:12px!important;
}

.matrix-total-row td,
.driver-total-row td{
    position:sticky;
    bottom:0;
    background:color-mix(in srgb,var(--bg) 92%,var(--gold) 8%)!important;
    border-top:2px solid var(--gold)!important;
    font-weight:900!important;
    z-index:2;
}

.matrix-total-row strong,
.driver-total-row strong{
    color:var(--heading)!important;
}


/* V6.5 table layout polish */

/* Bestattungsfirma gets its own full-width row like Fahrer */
.service-funeral-panel{
    min-height:520px;
}

.service-funeral-panel .matrix-period-table{
    max-height:640px!important;
    overflow:auto!important;
}

.service-funeral-panel .matrix-table{
    table-layout:fixed!important;
    min-width:980px!important;
    width:100%!important;
}

.service-funeral-panel .matrix-table th:first-child,
.service-funeral-panel .matrix-table td:first-child{
    width:260px!important;
    min-width:260px!important;
    max-width:260px!important;
    text-align:left!important;
    white-space:normal!important;
}

.service-funeral-panel .matrix-table th:not(:first-child),
.service-funeral-panel .matrix-table td:not(:first-child){
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    text-align:right!important;
    padding-left:12px!important;
    padding-right:12px!important;
}

/* Ziel Land table under Bundesländer, same clean table style */
.service-country-panel{
    min-height:360px;
}

.service-country-panel .table-wrap{
    max-height:420px!important;
    overflow:auto!important;
    border-radius:20px!important;
}

.service-country-panel .smart-table{
    width:100%!important;
    table-layout:auto!important;
}

.service-country-panel .smart-table th:first-child,
.service-country-panel .smart-table td:first-child{
    width:auto!important;
    text-align:left!important;
    white-space:normal!important;
}

.service-country-panel .smart-table th:last-child,
.service-country-panel .smart-table td:last-child{
    width:140px!important;
    text-align:right!important;
}


/* V6.6 Ziel Land matrix table */
.service-country-panel{
    min-height:520px!important;
}

.service-country-panel .matrix-period-table{
    max-height:640px!important;
    overflow:auto!important;
}

.service-country-panel .matrix-table{
    table-layout:fixed!important;
    min-width:980px!important;
    width:100%!important;
}

.service-country-panel .matrix-table th:first-child,
.service-country-panel .matrix-table td:first-child{
    width:260px!important;
    min-width:260px!important;
    max-width:260px!important;
    text-align:left!important;
    white-space:normal!important;
}

.service-country-panel .matrix-table th:not(:first-child),
.service-country-panel .matrix-table td:not(:first-child){
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    text-align:right!important;
    padding-left:12px!important;
    padding-right:12px!important;
}

.service-country-panel .matrix-total-row td{
    position:sticky;
    bottom:0;
    background:color-mix(in srgb,var(--bg) 92%,var(--gold) 8%)!important;
    border-top:2px solid var(--gold)!important;
    font-weight:900!important;
    z-index:2;
}


/* V6.8 Zeitraum-Tabellen ohne horizontales Schieben
   Betrifft Fahrer, Bestattungsfirma und Ziel Land Matrix-Tabellen.
   Ziel: volle Breite nutzen, keine horizontale Scrollbar. */
.driver-period-table,
.matrix-period-table,
.service-driver-panel .driver-period-table,
.service-funeral-panel .matrix-period-table,
.service-country-panel .matrix-period-table{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
}

.driver-period-table table,
.matrix-period-table table,
.service-driver-panel .driver-table,
.service-funeral-panel .matrix-table,
.service-country-panel .matrix-table{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
}

/* Erste Spalte kompakt, aber lesbar. Rest verteilt sich automatisch gleichmäßig. */
.driver-period-table th:first-child,
.driver-period-table td:first-child,
.matrix-period-table th:first-child,
.matrix-period-table td:first-child,
.service-driver-panel .driver-table th:first-child,
.service-driver-panel .driver-table td:first-child,
.service-funeral-panel .matrix-table th:first-child,
.service-funeral-panel .matrix-table td:first-child,
.service-country-panel .matrix-table th:first-child,
.service-country-panel .matrix-table td:first-child{
    width:22%!important;
    min-width:0!important;
    max-width:none!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
    padding-left:10px!important;
    padding-right:10px!important;
}

/* Zeitraumsspalten werden bewusst schmaler, damit alles auf die Karte passt. */
.driver-period-table th:not(:first-child),
.driver-period-table td:not(:first-child),
.matrix-period-table th:not(:first-child),
.matrix-period-table td:not(:first-child),
.service-driver-panel .driver-table th:not(:first-child),
.service-driver-panel .driver-table td:not(:first-child),
.service-funeral-panel .matrix-table th:not(:first-child),
.service-funeral-panel .matrix-table td:not(:first-child),
.service-country-panel .matrix-table th:not(:first-child),
.service-country-panel .matrix-table td:not(:first-child){
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    text-align:center!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    padding-left:5px!important;
    padding-right:5px!important;
}

/* Schrift bewusst kompakter für Zeitraumstabellen. */
.driver-period-table th,
.driver-period-table td,
.matrix-period-table th,
.matrix-period-table td{
    font-size:clamp(9px, .72vw, 12px)!important;
    line-height:1.2!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
}

/* Kopfzeile darf umbrechen, z.B. 2026-Q1 oder lange Monatslabels. */
.driver-period-table th,
.matrix-period-table th{
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
}

/* Gesamtspalte visuell stabil, aber ohne feste Breite. */
.driver-period-table th:last-child,
.driver-period-table td:last-child,
.matrix-period-table th:last-child,
.matrix-period-table td:last-child{
    font-weight:850!important;
    color:var(--heading)!important;
}

/* Gesamtzeile bleibt sichtbar und passt in die Breite. */
.driver-total-row td,
.matrix-total-row td{
    position:sticky;
    bottom:0;
    background:color-mix(in srgb,var(--bg) 92%,var(--gold) 8%)!important;
    border-top:2px solid var(--gold)!important;
    z-index:2;
}

/* Bei sehr schmalen Displays noch kompakter, trotzdem ohne horizontales Schieben. */
@media(max-width:900px){
    .driver-period-table th:first-child,
    .driver-period-table td:first-child,
    .matrix-period-table th:first-child,
    .matrix-period-table td:first-child{
        width:26%!important;
    }

    .driver-period-table th,
    .driver-period-table td,
    .matrix-period-table th,
    .matrix-period-table td{
        font-size:9px!important;
        padding-left:3px!important;
        padding-right:3px!important;
    }
}


/* V7.0 Handel Kundengruppe + Lieferort map + Dienstleistung AI */
.service-ai-panel p{
    line-height:1.7;
    margin-bottom:14px;
}

.service-ai-panel strong{
    color:var(--heading);
}

.service-ai-panel h3{
    color:var(--heading);
    margin-top:18px;
}

.service-map-panel .real-map-card{
    min-height:620px;
}

.service-map-panel .leaflet-service-map{
    min-height:620px;
    height:620px;
}


/* V7.3.1 stable admin cleanup */
.grid.one{
    display:grid;
    grid-template-columns:1fr;
}
.admin-control-card{
    min-height:180px!important;
}
.admin-control-grid .card{
    min-height:180px!important;
}

.auth-logo{display:block;max-width:320px;width:100%;height:auto;margin:0 auto 18px auto}.login-panel{text-align:center}.login-panel form{text-align:left}


/* V733_FINAL_UX_PERFORMANCE */
.table-widget-grid .panel,
.top-list-sized{
    min-height:420px;
}
.table-widget-grid .table-wrap,
.top-list-sized .table-wrap{
    max-height:340px;
    overflow:auto;
}
.chart-scroll{
    width:100%;
    max-width:100%;
    overflow-x:auto!important;
    overflow-y:hidden;
    padding-bottom:12px;
}
.chart-scroll canvas{
    display:block;
    min-height:300px;
}
.chart-point-tip{
    position:fixed;
    z-index:99999;
    max-width:260px;
    padding:12px 14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:color-mix(in srgb,var(--header) 92%,#000 8%);
    color:var(--text);
    box-shadow:0 18px 50px rgba(0,0,0,.35);
    font-size:13px;
    pointer-events:none;
}
.admin-stat-grid .widget{
    min-height:150px;
}
@media(max-width:760px){
    .container{padding-left:12px!important;padding-right:12px!important;}
    .hero{padding:20px!important;}
    .filterbar-pro .filter-row,
    .grid.two,
    .grid.three,
    .grid.four,
    .table-widget-grid{
        grid-template-columns:1fr!important;
    }
    .topbar-inner{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }
    .center-nav,.nav-actions{
        overflow-x:auto;
        justify-content:flex-start!important;
        width:100%;
        gap:14px!important;
        padding-bottom:4px;
    }
    .widget,.panel,.card{border-radius:20px!important;}
    .smart-table{font-size:13px;}
    .table-wrap{overflow:auto;}
}


/* V733_ABMAHNUNG2_RECOVERY */
.widget-heading-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:0 0 10px;
}
.widget-heading-row h2{
    margin:0!important;
}
.mini-switch-form.inline{
    margin:0!important;
    justify-content:flex-end;
}
.mini-switch-form.inline label{
    flex-direction:row!important;
    align-items:center!important;
    white-space:nowrap;
}
.mini-switch-form.inline select{
    min-width:160px;
    height:38px;
}
.state-funeral-breakdown{
    max-height:560px;
    overflow:auto;
}
.state-funeral-breakdown .smart-table{
    min-width:980px;
}
@media(max-width:760px){
    .widget-heading-row{
        flex-direction:column;
        align-items:flex-start;
    }
    .mini-switch-form.inline,
    .mini-switch-form.inline label,
    .mini-switch-form.inline select{
        width:100%;
    }
}


/* FINAL_CHAPTER_CSS */
.sarimont-logo{display:inline-flex;align-items:center;gap:14px;color:var(--gold,#c8a96b);font-weight:900;letter-spacing:.08em;text-decoration:none;line-height:1}
.sarimont-logo svg{width:72px;height:48px;display:block;overflow:visible}.sarimont-logo .logo-mountain{fill:none;stroke:currentColor;stroke-width:5.5;stroke-linejoin:round;stroke-linecap:round}.sarimont-logo .logo-snow{fill:currentColor;opacity:.88}.sarimont-logo .logo-word{font-size:20px;color:currentColor}.nav-logo svg{width:58px;height:38px}.nav-logo .logo-word{font-size:16px}.auth-logo-inline{justify-content:center;display:flex;margin:0 auto 24px;color:var(--gold,#c8a96b)}.auth-logo-inline svg{width:110px;height:70px}.auth-logo-inline .logo-word{font-size:32px}
.login-body{min-height:100vh;background:radial-gradient(circle at top,#ffffff 0,#f5efe4 38%,#e9ddc7 100%);display:flex;align-items:center}.login-card-final{background:rgba(255,255,255,.86)!important;border:1px solid rgba(200,169,107,.45)!important;box-shadow:0 30px 90px rgba(17,24,39,.14);backdrop-filter:blur(18px);color:#111827}.login-card-final label{color:#111827}.login-card-final input{background:#fff!important;color:#111827!important;border-color:#d8c7a3!important}.login-card-final button{width:100%;justify-content:center}.login-subtitle{text-align:center;color:#6b5b3e;margin:-8px 0 22px}.dashboard-card-grid{align-items:stretch}.dashboard-card-grid .card{min-height:210px;height:100%;display:flex;flex-direction:column;justify-content:center}.table-export-btn{float:right;margin:0 0 8px 8px;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--header);color:var(--text);font-size:12px;font-weight:800;cursor:pointer}.table-export-btn:hover{border-color:var(--gold);color:var(--gold)}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:10px 0}.permission-grid label{display:flex;align-items:center;gap:8px;min-height:auto}.report-deck .slide{min-height:720px;page-break-after:always;break-after:page;display:flex;flex-direction:column}.report-deck .slide.compact{min-height:520px}.report-cover{min-height:760px!important;justify-content:center;position:relative;overflow:hidden}.report-cover:before{content:"";position:absolute;inset:-120px -80px auto auto;width:420px;height:420px;border-radius:50%;background:color-mix(in srgb,var(--gold) 30%,transparent);filter:blur(10px)}.report-section-number{font-size:52px;font-weight:200;color:var(--gold);opacity:.7}.toc-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.toc-list div{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fff}.report-narrative{font-size:17px;line-height:1.75}.report-footer{margin-top:auto;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}@media(max-width:900px){.permission-grid,.toc-list,.dashboard-card-grid{grid-template-columns:1fr!important}.auth-logo-inline .logo-word{font-size:26px}.auth-logo-inline svg{width:92px}}


/* FINAL_POLISH_EXPORT_LOGO_LOGIN_REPORT */
.export-host{
    position:relative!important;
}
.table-export-btn{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    z-index:20!important;
    float:none!important;
    width:34px!important;
    height:34px!important;
    padding:0!important;
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    border:1px solid color-mix(in srgb,var(--gold) 42%,var(--line))!important;
    background:color-mix(in srgb,var(--header) 88%,transparent)!important;
    color:var(--gold)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.08)!important;
    opacity:.66!important;
    backdrop-filter:blur(10px);
    transition:.18s ease;
}
.table-export-btn:hover{
    opacity:1!important;
    transform:translateY(-1px);
    border-color:var(--gold)!important;
    box-shadow:0 14px 32px rgba(0,0,0,.14)!important;
}
.table-export-btn svg{
    width:17px;
    height:17px;
}
.table-export-btn::after{
    content:none!important;
}

/* filigranes SARIMONT Logo */
.sarimont-logo{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:var(--gold);
}
.sarimont-logo svg{
    width:104px;
    height:auto;
    overflow:visible;
}
.sarimont-logo .logo-mountain-line,
.sarimont-logo .logo-mountain-base,
.sarimont-logo .logo-snow-line{
    fill:none;
    stroke:var(--gold);
    stroke-linecap:round;
    stroke-linejoin:round;
}
.sarimont-logo .logo-mountain-line{stroke-width:2.6}
.sarimont-logo .logo-mountain-base{stroke-width:1.4;opacity:.55}
.sarimont-logo .logo-snow-line{stroke-width:1.7;opacity:.82}
.sarimont-logo .logo-dot{fill:var(--gold);opacity:.92}
.sarimont-logo .logo-word{
    color:var(--gold);
    font-weight:500!important;
    letter-spacing:.22em!important;
    font-size:19px!important;
    line-height:1;
}
.nav-logo svg{width:88px}
.nav-logo .logo-word{font-size:15px!important;letter-spacing:.2em!important}

/* Login: symmetrisch, hell, hochwertig */
.login-body{
    min-height:100vh!important;
    display:grid!important;
    place-items:center!important;
    background:
        radial-gradient(circle at 20% 15%, color-mix(in srgb,var(--gold) 18%,transparent) 0 18%, transparent 34%),
        radial-gradient(circle at 84% 78%, rgba(15,23,42,.08) 0 20%, transparent 42%),
        linear-gradient(135deg,#fffaf1 0%,#f6efe3 44%,#ece0cc 100%)!important;
    padding:24px;
}
.login-body .container{
    width:100%;
    max-width:620px!important;
    padding:0!important;
}
.login-card-final{
    max-width:560px!important;
    margin:0 auto!important;
    padding:44px 46px!important;
    background:rgba(255,255,255,.9)!important;
    border:1px solid rgba(200,169,107,.38)!important;
    box-shadow:0 34px 100px rgba(17,24,39,.16)!important;
    border-radius:34px!important;
}
.login-card-final .auth-logo-inline{
    width:100%;
    justify-content:center;
    flex-direction:column;
    gap:8px;
    margin-bottom:14px;
}
.login-card-final .auth-logo-inline svg{
    width:132px!important;
}
.login-card-final .auth-logo-inline .logo-word{
    font-size:25px!important;
    letter-spacing:.24em!important;
}
.login-subtitle{
    text-align:center!important;
    color:#756443!important;
    margin:0 0 28px!important;
    font-size:14px;
    letter-spacing:.08em;
}
.login-card-final form{
    display:grid;
    gap:14px;
}
.login-card-final label{
    color:#263241!important;
    font-weight:650;
}
.login-card-final input{
    height:48px;
    border-radius:16px!important;
}
.login-card-final button{
    height:50px;
    border-radius:16px!important;
    margin-top:4px;
}

/* PDF/Print report polish support */
.report-deck .slide{
    color:#111827!important;
}
.report-deck .card,
.report-deck .kpi,
.report-deck .toc div{
    background:rgba(255,255,255,.96)!important;
}
.report-deck .footer{
    color:#64748b!important;
}

@media(max-width:760px){
    .table-export-btn{top:10px!important;right:10px!important}
    .login-card-final{padding:34px 24px!important;border-radius:28px!important}
    .login-card-final .auth-logo-inline svg{width:112px!important}
}


/* FINAL_DOWNLOAD_POLISH_V2 */
.export-host{position:relative!important}
.widget-download-btn{
    right:14px!important;
}
.widget-data-download{
    right:54px!important;
}
.widget-download-btn,
.widget-data-download{
    top:14px!important;
    position:absolute!important;
    width:34px!important;
    height:34px!important;
}
.widget-data-download{
    color:color-mix(in srgb,var(--gold) 72%,var(--text))!important;
    opacity:.58!important;
}
.widget-data-download:hover{
    opacity:1!important;
}
.real-map-card > .table-export-btn:not(.widget-download-btn):not(.widget-data-download),
.chart-scroll > .table-export-btn:not(.widget-download-btn):not(.widget-data-download){
    display:none!important;
}


/* FUNCTION_REPAIR_DOWNLOAD_BUTTONS */
.panel.export-host > .widget-download-btn,
.card.export-host > .widget-download-btn,
section.export-host > .widget-download-btn,
article.export-host > .widget-download-btn{
    display:inline-flex!important;
    top:14px!important;
    right:14px!important;
}
.panel.export-host > .widget-data-download,
.card.export-host > .widget-data-download,
section.export-host > .widget-data-download,
article.export-host > .widget-data-download{
    display:inline-flex!important;
    top:14px!important;
    right:54px!important;
}


/* COMPLAINT_STANDALONE_V1 */
.grid.six{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.complaint-kpi-grid .widget{min-height:112px}
.status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-weight:800;font-size:12px;background:rgba(148,163,184,.16)}
.status-pill.critical,.complaint-row-critical{background:rgba(239,68,68,.18)!important}
.status-pill.serious,.complaint-row-serious{background:rgba(249,115,22,.18)!important}
.status-pill.complaint,.complaint-row-complaint{background:rgba(234,179,8,.18)!important}
.status-pill.closed,.complaint-row-closed{background:rgba(34,197,94,.18)!important}
.status-pill.praise,.complaint-row-praise{background:rgba(59,130,246,.18)!important}
.status-pill.not_reached,.complaint-row-not_reached{background:rgba(168,85,247,.18)!important}
.status-critical{border-color:rgba(239,68,68,.35)!important}
.status-serious{border-color:rgba(249,115,22,.35)!important}
.status-complaint{border-color:rgba(234,179,8,.35)!important}
.status-closed{border-color:rgba(34,197,94,.35)!important}
.status-praise{border-color:rgba(59,130,246,.35)!important}
.complaint-table tbody tr[data-toggle-row]{cursor:pointer}
.complaint-details-row{display:none}
.complaint-details-row.open{display:table-row}
.complaint-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px}
.btn.small{padding:7px 11px;font-size:12px;border-radius:12px}
.complaint-case-grid{align-items:start}
.raw-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.raw-field-grid div{border:1px solid var(--line);border-radius:14px;padding:10px;background:rgba(148,163,184,.06)}
.raw-field-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-bottom:5px}
.raw-field-grid b{font-size:13px;font-weight:650;word-break:break-word;color:var(--text)}
.case-form{display:grid;gap:12px}
.case-form textarea{min-height:70px}
.case-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.attachment-list,.event-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.attachment-list li,.event-list li{border:1px solid var(--line);border-radius:14px;padding:10px;background:rgba(148,163,184,.06)}
.attachment-list span,.event-list span{color:var(--muted);font-size:12px}
@media(max-width:980px){.grid.six{grid-template-columns:repeat(2,minmax(0,1fr))}.raw-field-grid{grid-template-columns:1fr}}
@media(max-width:640px){.grid.six{grid-template-columns:1fr}}


/* COMPLAINT_STANDALONE_V4_DESIGN */
.complaint-page .hero{margin-bottom:18px}
.complaint-view-switch{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:18px auto 18px!important;
    width:max-content!important;
    max-width:100%;
    padding:6px!important;
    border-radius:999px!important;
}
.complaint-view-switch a{
    min-width:116px;
    text-align:center;
    justify-content:center;
}
.complaint-filterbar{
    margin-top:0!important;
}
.complaint-filterbar .data-stock-line{
    width:100%;
}
.complaint-filterbar .filter-row.main{
    align-items:end;
}
.complaint-kpi-grid.kpi-grid{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
}
.complaint-kpi-grid.kpi-grid .widget{
    min-height:176px;
}
.complaint-kpi-grid.kpi-grid .widget h2{
    font-size:clamp(30px,3.2vw,56px);
    line-height:1;
    margin:8px 0;
}
.complaint-kpi-grid.kpi-grid .widget p{
    color:var(--muted);
    margin:0;
}
.complaint-kpi-panels .panel{
    min-height:260px;
}
.complaint-data-panel{
    overflow:hidden;
}
.complaint-table-scroll{
    width:100%;
    overflow:auto;
    max-height:72vh;
    border:1px solid var(--line);
    border-radius:18px;
    background:rgba(255,255,255,.02);
}
.full-raw-table{
    table-layout:auto!important;
    min-width:1900px;
    border-collapse:separate;
    border-spacing:0;
}
.full-raw-table th,
.full-raw-table td{
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    max-width:260px;
    overflow:hidden;
    text-overflow:ellipsis;
    vertical-align:middle;
    font-size:12px;
}
.full-raw-table th{
    position:sticky;
    top:0;
    z-index:3;
    background:var(--panel);
    border-bottom:1px solid var(--line);
}
.full-raw-table .action-col{
    position:sticky;
    left:0;
    z-index:4;
    background:var(--panel);
    min-width:124px;
    max-width:142px;
}
.full-raw-table td.action-col{
    background:color-mix(in srgb,var(--panel) 92%,var(--gold) 8%);
}
.full-raw-table th:nth-child(2),
.full-raw-table td:nth-child(2){min-width:150px}
.full-raw-table th:nth-child(3),
.full-raw-table td:nth-child(3){min-width:130px}
.full-raw-table th:nth-child(4),
.full-raw-table td:nth-child(4){min-width:120px}
.full-raw-table th:nth-child(5),
.full-raw-table td:nth-child(5){min-width:140px}
.full-raw-table th:nth-child(6),
.full-raw-table td:nth-child(6){min-width:150px}
.full-raw-table th:nth-child(7),
.full-raw-table td:nth-child(7){min-width:105px;text-align:center}
.full-raw-table th:nth-child(8),
.full-raw-table td:nth-child(8){min-width:110px}
.full-raw-table th:nth-child(n+15),
.full-raw-table td:nth-child(n+15){min-width:150px}
.full-raw-table tr:hover td{
    background:rgba(148,163,184,.08);
}
.full-raw-table tr:hover td.action-col{
    background:color-mix(in srgb,var(--panel) 84%,var(--gold) 16%);
}
.complaint-table .status-pill{
    white-space:nowrap;
}
@media(max-width:760px){
    .complaint-view-switch{width:100%!important}
    .complaint-view-switch a{flex:1;min-width:0}
    .full-raw-table{min-width:1500px}
}


/* COMPLAINT_STANDALONE_V5_FIX */
.full-raw-table th{
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
    line-height:1.15;
    vertical-align:bottom;
    max-width:180px;
    min-height:52px;
    padding-top:10px;
    padding-bottom:10px;
}
.full-raw-table td{
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    max-width:220px;
    overflow:hidden;
    text-overflow:ellipsis;
}
.full-raw-table th:nth-child(n+15){
    min-width:132px;
    max-width:170px;
}
.full-raw-table td:nth-child(n+15){
    min-width:132px;
    max-width:220px;
}
.full-raw-table .action-col{
    min-width:118px!important;
    max-width:128px!important;
}
.full-raw-table th.action-col{
    white-space:normal!important;
}
.full-raw-table td.action-col{
    white-space:nowrap!important;
}
.complaint-filterbar .filter-actions a[href*="complaint_export_standalone"]{
    display:none!important;
}
.case-actions button[name="action"][value="reset_case"]{
    border-color:rgba(239,68,68,.45);
    color:var(--heading);
}


/* COMPLAINT_STANDALONE_V8_PERF */
.bmt-case-info{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin:0 0 14px;
}
.bmt-case-info div{
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px;
    background:rgba(148,163,184,.06);
}
.bmt-case-info span{
    display:block;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--muted);
    font-weight:800;
    margin-bottom:5px;
}
.bmt-case-info b{
    font-size:13px;
    font-weight:700;
    color:var(--text);
    word-break:break-word;
}
.complaint-table-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
    margin-bottom:12px;
}
.complaint-table-head h2{
    margin:0;
}
.pagination-line{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    color:var(--muted);
    font-size:13px;
}
@media(max-width:720px){
    .bmt-case-info{grid-template-columns:1fr}
    .complaint-table-head{align-items:flex-start}
}


/* COMPLAINT_STANDALONE_V11_UI */
.case-form input,
.case-form select,
.case-form textarea{
    border-radius:16px!important;
    background:#fff!important;
    color:#0f172a!important;
    border:1px solid rgba(148,163,184,.45)!important;
}
.case-form input:disabled,
.case-form select:disabled,
.case-form textarea:disabled{
    background:#f8fafc!important;
    color:#64748b!important;
}
.case-form input:focus,
.case-form select:focus,
.case-form textarea:focus{
    outline:none!important;
    border-color:var(--gold)!important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 22%,transparent)!important;
}
.case-actions-v11{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:stretch!important;
    margin-top:6px;
}
.case-actions-v11 .case-action-row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
}
.case-actions-v11 .case-action-row > button,
.case-actions-v11 .case-action-row > .btn{
    min-height:42px;
    border-radius:14px!important;
    justify-content:center;
    text-align:center;
}
.case-actions-v11 .row-not-reached > button{
    width:100%;
}
.case-actions-v11 .row-main > .btn,
.case-actions-v11 .row-main > button{
    flex:1 1 180px;
}
.case-actions-v11 .row-export > .btn{
    width:100%;
}
.case-actions-v11 .row-admin{
    padding-top:8px;
    border-top:1px solid var(--line);
}
.case-actions-v11 .row-admin > button{
    flex:1 1 190px;
}
.case-actions-v11 button[name="action"][value="reset_case"]{
    border-color:rgba(239,68,68,.45)!important;
}
@media(max-width:640px){
    .case-actions-v11 .row-main > .btn,
    .case-actions-v11 .row-main > button,
    .case-actions-v11 .row-admin > button{
        flex-basis:100%;
    }
}


/* COMPLAINT_STANDALONE_V13_ATTACHMENTS_UI */
.attachment-upload-field{
    display:grid;
    gap:8px;
    padding:12px;
    border:1px solid var(--line);
    border-radius:16px;
    background:rgba(148,163,184,.06);
}
.attachment-upload-field > span{
    font-weight:800;
    color:var(--heading);
}
.hidden-file-input{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}
.file-upload-button{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-height:42px;
    width:max-content;
    padding:10px 16px!important;
    border-radius:14px!important;
    border:1px solid var(--line)!important;
    background:color-mix(in srgb,var(--gold) 16%,var(--panel))!important;
    color:var(--heading)!important;
    font-weight:800!important;
    cursor:pointer;
    box-shadow:var(--shadow-sm, none);
}
.file-upload-button:hover{
    background:color-mix(in srgb,var(--gold) 26%,var(--panel))!important;
}
.attachment-upload-field small{
    color:var(--muted);
    font-size:12px;
}
.case-actions-v11 .case-action-link{
    background:buttonface!important;
    color:buttontext!important;
    border:1px solid rgba(148,163,184,.55)!important;
    font:inherit!important;
    font-weight:800!important;
    text-decoration:none!important;
    box-shadow:none!important;
}
.case-actions-v11 .case-action-link:hover{
    filter:brightness(.98);
}
.case-actions-v11 .row-export .case-action-link{
    width:100%;
}
.attachment-list-v13 li{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
}
.attachment-info{
    min-width:0;
    display:grid;
    gap:3px;
}
.attachment-info a{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.attachment-delete-form{
    margin:0;
    flex:0 0 auto;
}
.attachment-delete-btn{
    border-color:rgba(239,68,68,.45)!important;
    color:var(--heading)!important;
    min-height:34px;
}
@media(max-width:620px){
    .file-upload-button{width:100%}
    .attachment-list-v13 li{
        align-items:stretch;
        flex-direction:column;
    }
    .attachment-delete-form button{
        width:100%;
    }
}


/* COMPLAINT_STANDALONE_V14_KPI_FILTERS */
.period-matrix-wrap{
    width:100%;
    overflow:auto;
    max-height:360px;
}
.period-matrix{
    min-width:720px;
}
.period-matrix th{
    white-space:normal!important;
    line-height:1.15;
}
.period-matrix td{
    white-space:nowrap!important;
}
.period-matrix th:first-child,
.period-matrix td:first-child{
    position:sticky;
    left:0;
    z-index:2;
    background:var(--panel);
    min-width:220px;
    max-width:320px;
}
.complaint-filterbar .filter-actions{
    gap:10px;
}
.complaint-filterbar .filter-actions .btn{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    font-weight:800;
}


/* COMPLAINT_STANDALONE_V15_STATUS_KPI */
.status-pill.complaint_closed,
.complaint-row-complaint_closed{
    background:rgba(34,197,94,.18)!important;
}
.status-pill.praise_closed,
.complaint-row-praise_closed{
    background:rgba(20,184,166,.20)!important;
}
.status-kpi-grid.kpi-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr));
}
.complaint-kpi-pairs{
    display:grid;
    gap:18px;
}
.kpi-pair{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
    gap:18px;
    align-items:stretch;
}
.kpi-pair .panel{
    min-height:280px;
}
.kpi-visual-panel{
    overflow:hidden;
}
.kpi-visual-bars{
    display:grid;
    gap:12px;
}
.kpi-vbar{
    display:grid;
    gap:6px;
}
.kpi-vbar-head{
    display:flex;
    justify-content:space-between;
    gap:12px;
    font-size:13px;
    color:var(--text);
}
.kpi-vbar-head span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.kpi-vbar-head b{
    flex:0 0 auto;
}
.kpi-vbar-track{
    height:10px;
    border-radius:999px;
    background:rgba(148,163,184,.18);
    overflow:hidden;
}
.kpi-vbar-track i{
    display:block;
    height:100%;
    border-radius:999px;
    background:var(--gold);
}
.period-matrix th,
.period-matrix td{
    padding-left:10px!important;
    padding-right:10px!important;
}
.period-matrix th:first-child,
.period-matrix td:first-child{
    min-width:180px!important;
    max-width:260px!important;
}
.full-raw-table th,
.full-raw-table td{
    max-width:190px!important;
}
.full-raw-table th:nth-child(n+15),
.full-raw-table td:nth-child(n+15){
    min-width:118px!important;
    max-width:180px!important;
}
@media(max-width:1100px){
    .kpi-pair{
        grid-template-columns:1fr;
    }
    .status-kpi-grid.kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:680px){
    .status-kpi-grid.kpi-grid{
        grid-template-columns:1fr;
    }
}


/* COMPLAINT_STANDALONE_V16_LINECHARTS */
.status-pill.very_unhappy,
.complaint-row-very_unhappy{
    background:rgba(234,179,8,.20)!important;
}
.status-pill.unhappy,
.complaint-row-unhappy{
    background:rgba(250,204,21,.16)!important;
}
.status-pill.praise,
.complaint-row-praise{
    background:rgba(59,130,246,.18)!important;
}
.status-kpi-grid.kpi-grid{
    grid-template-columns:repeat(3,minmax(190px,1fr));
}
.status-kpi-grid .widget{
    min-height:150px!important;
}
.line-chart-wrap{
    width:100%;
    overflow:auto;
}
.line-chart-wrap svg{
    width:100%;
    min-width:560px;
    height:auto;
}
.line-chart-wrap .axis{
    stroke:rgba(148,163,184,.7);
    stroke-width:1.25;
}
.line-chart-wrap .gridline{
    stroke:rgba(148,163,184,.18);
    stroke-width:1;
}
.line-chart-wrap .axis-label{
    fill:var(--muted);
    font-size:11px;
}
.line-chart-legend{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-top:10px;
    font-size:12px;
    color:var(--text);
}
.line-chart-legend span{
    display:inline-flex;
    align-items:center;
    gap:6px;
    max-width:180px;
}
.line-chart-legend i{
    width:10px;
    height:10px;
    border-radius:999px;
    flex:0 0 auto;
}
.period-matrix th,
.period-matrix td{
    font-size:12px!important;
    padding:7px 8px!important;
}
.period-matrix th:first-child,
.period-matrix td:first-child{
    min-width:150px!important;
    max-width:220px!important;
}
.period-matrix td:first-child{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
@media(max-width:1120px){
    .status-kpi-grid.kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:680px){
    .status-kpi-grid.kpi-grid{
        grid-template-columns:1fr;
    }
}


/* COMPLAINT_STANDALONE_V18_KPI_LAYOUT */
.complaint-kpi-board{
    display:grid;
    gap:12px;
}
.complaint-kpi-board .kpi-row-label{
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--muted);
    margin-top:6px;
}
.complaint-kpi-board .kpi-row{
    display:grid;
    gap:14px;
}
.complaint-kpi-board .kpi-row.four{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.complaint-kpi-board .praise-row{
    grid-template-columns:repeat(2,minmax(240px,420px));
    justify-content:center;
}
.complaint-kpi-board .widget{
    min-height:128px!important;
    padding:18px!important;
}
.complaint-kpi-board .widget h2{
    font-size:clamp(28px,2.4vw,42px)!important;
    line-height:1;
    margin:6px 0!important;
}
.complaint-kpi-board .widget p{
    font-size:12px!important;
    margin:0!important;
}
.kpi-status-row{
    display:grid;
    grid-template-columns:1fr;
}
.kpi-status-row .panel{
    min-height:auto!important;
}
.complaint-kpi-pairs{
    display:grid;
    gap:18px;
}
.kpi-pair{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:18px;
    align-items:stretch;
}
.kpi-pair .panel{
    min-height:300px;
    width:100%;
}
.kpi-pair .panel h2,
.kpi-status-row .panel h2{
    padding-right:78px;
}
.period-matrix-wrap{
    max-height:340px!important;
    overflow:auto!important;
}
.period-matrix{
    min-width:620px!important;
    width:100%;
}
.period-matrix th,
.period-matrix td{
    font-size:11.5px!important;
    padding:6px 7px!important;
    text-align:right;
    vertical-align:middle;
}
.period-matrix th:first-child,
.period-matrix td:first-child{
    text-align:left!important;
    min-width:142px!important;
    max-width:210px!important;
    position:sticky;
    left:0;
    z-index:2;
    background:var(--panel);
}
.period-matrix thead th{
    position:sticky;
    top:0;
    z-index:3;
    background:var(--panel);
}
.period-matrix tfoot td{
    position:sticky;
    bottom:0;
    z-index:3;
    background:color-mix(in srgb,var(--panel) 88%,var(--gold) 12%);
    border-top:1px solid var(--line);
}
.period-matrix tfoot td:first-child{
    z-index:4;
}
.line-chart-wrap{
    width:100%;
    overflow:auto;
}
.line-chart-wrap svg{
    width:100%;
    min-width:520px;
    max-height:320px;
}
.kpi-visual-panel{
    overflow:hidden;
}
.kpi-visual-panel .line-chart-legend{
    max-height:78px;
    overflow:auto;
}
.kpi-status-row .service-panel .smart-table{
    width:100%;
}
.kpi-status-row .service-panel td:first-child{
    text-align:left;
}
.kpi-status-row .service-panel td:last-child{
    text-align:right;
    width:120px;
}
@media(max-width:1180px){
    .complaint-kpi-board .kpi-row.four{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .kpi-pair{
        grid-template-columns:1fr!important;
    }
}
@media(max-width:680px){
    .complaint-kpi-board .kpi-row.four,
    .complaint-kpi-board .praise-row{
        grid-template-columns:1fr;
    }
}


/* COMPLAINT_STANDALONE_V19_EMAIL_SYSTEM */
.case-email-panel{
    position:relative;
}
.case-email-form{
    display:grid;
    gap:12px;
}
.case-email-form input,
.case-email-form textarea{
    border-radius:16px!important;
    background:#fff!important;
    color:#0f172a!important;
    border:1px solid rgba(148,163,184,.45)!important;
}
.case-email-form textarea{
    min-height:260px;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
    line-height:1.45;
}
.case-email-form input:focus,
.case-email-form textarea:focus{
    outline:none!important;
    border-color:var(--gold)!important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 22%,transparent)!important;
}
.case-email-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}
.case-email-actions button,
.case-email-actions .btn{
    min-height:44px;
    border-radius:14px!important;
    justify-content:center;
    text-align:center;
    font-weight:800;
}
.alert.success{
    border-color:rgba(34,197,94,.45)!important;
    background:rgba(34,197,94,.12)!important;
}
@media(max-width:720px){
    .case-email-actions{
        grid-template-columns:1fr;
    }
}


/* COMPLAINT_STANDALONE_V20_EMAIL_POPUP */
.case-email-open-btn{
    width:100%;
    min-height:44px;
    border-radius:14px!important;
    font-weight:800!important;
}
.case-email-modal{
    position:fixed;
    inset:0;
    z-index:9999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:22px;
}
.case-email-modal.open{
    display:flex;
}
.case-email-backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.56);
    backdrop-filter:blur(8px);
}
.case-email-dialog{
    position:relative;
    width:min(980px,100%);
    max-height:92vh;
    overflow:auto;
    border:1px solid color-mix(in srgb,var(--gold) 30%,var(--line));
    border-radius:28px;
    background:var(--panel);
    box-shadow:0 30px 90px rgba(0,0,0,.35);
    padding:22px;
}
.case-email-dialog-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:10px;
}
.case-email-dialog-head h2{
    margin:0;
}
.case-email-close{
    width:42px;
    height:42px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    line-height:1;
    padding:0;
}
.case-email-form{
    display:grid;
    gap:12px;
    margin-top:14px;
}
.case-email-form input,
.case-email-form textarea{
    border-radius:16px!important;
    background:#fff!important;
    color:#0f172a!important;
    border:1px solid rgba(148,163,184,.45)!important;
}
.case-email-form textarea{
    min-height:310px;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
    line-height:1.45;
}
.case-email-form input:focus,
.case-email-form textarea:focus{
    outline:none!important;
    border-color:var(--gold)!important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 22%,transparent)!important;
}
.case-email-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}
.case-email-actions button,
.case-email-actions .btn{
    min-height:44px;
    border-radius:14px!important;
    justify-content:center;
    text-align:center;
    font-weight:800;
}
.alert.success{
    border-color:rgba(34,197,94,.45)!important;
    background:rgba(34,197,94,.12)!important;
}
@media(max-width:720px){
    .case-email-modal{padding:10px}
    .case-email-dialog{border-radius:20px;padding:16px}
    .case-email-actions{grid-template-columns:1fr}
}


/* PROCUREMENT_V1_SYSTEM */
.procurement-page .hero{margin-bottom:12px}
.procurement-dashboard-grid .card,
.procurement-admin-grid .card{
    min-height:185px;
    display:grid;
    align-content:start;
}
.procurement-dashboard-grid .card h2,
.procurement-admin-grid .card h2{
    font-size:clamp(22px,2vw,32px);
}
.procurement-admin-hero{
    padding-top:34px;
    padding-bottom:10px;
}
.procurement-kpis .widget{
    min-height:142px;
}
.procurement-kpis .widget h2{
    font-size:clamp(28px,3vw,46px);
    margin:6px 0;
}
.procurement-request-form{
    display:grid;
    gap:22px;
}
.proc-step{
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(148,163,184,.05);
}
.proc-step h2{
    margin-top:0;
}
.proc-product-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
    gap:14px;
    max-height:560px;
    overflow:auto;
    padding-right:4px;
}
.proc-product-card{
    border:1px solid var(--line);
    border-radius:22px;
    padding:16px;
    display:grid;
    gap:8px;
    background:rgba(255,255,255,.035);
}
.proc-product-card h3{
    margin:0;
    color:var(--heading);
}
.proc-product-card p{
    margin:0;
    color:var(--muted);
    font-size:12px;
}
.proc-product-card b{
    font-size:18px;
}
.proc-other-row{
    margin-bottom:12px;
}
.procurement-detail-grid{
    align-items:start;
}
.status-pill{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:6px 10px;
    background:rgba(148,163,184,.18);
    font-weight:800;
    font-size:12px;
}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-form input,.case-form select,.case-form textarea,
.procurement-request-form input,.procurement-request-form select,.procurement-request-form textarea{
    border-radius:16px!important;
}
@media(max-width:980px){
    .grid.four,.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
    .grid.four,.grid.three,.procurement-dashboard-grid,.procurement-admin-grid{grid-template-columns:1fr!important}
}


/* PROCUREMENT_V2_WIZARD_SHOP */
.procurement-wizard{display:grid;gap:20px}
.wizard-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:6px}
.wizard-steps button{border-radius:999px;padding:12px 10px;background:rgba(148,163,184,.12);border:1px solid var(--line);font-weight:850}
.wizard-steps button.active{background:color-mix(in srgb,var(--gold) 24%,var(--panel));border-color:color-mix(in srgb,var(--gold) 70%,var(--line));color:var(--heading)}
.wizard-step{display:none;border:1px solid var(--line);border-radius:28px;padding:22px;background:rgba(148,163,184,.045)}
.wizard-step.active{display:grid;gap:18px}
.wizard-actions{display:flex;gap:12px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:8px}
.wizard-actions .btn,.wizard-actions button{min-width:150px;justify-content:center}
.other-supplier-box,.cart-box{border:1px solid var(--line);border-radius:22px;padding:16px;background:rgba(255,255,255,.035)}
.proc-shop-grid{display:grid;gap:10px;max-height:560px;overflow:auto;padding-right:4px}
.proc-shop-row{display:grid;grid-template-columns:1fr auto 130px auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:20px;padding:14px;background:rgba(255,255,255,.035)}
.proc-shop-row h3{margin:0;color:var(--heading)}
.proc-shop-row p{margin:3px 0 0;color:var(--muted);font-size:12px}
.proc-shop-row b{font-size:16px;white-space:nowrap}
.cart-box ul{margin:0;padding-left:20px}
.wizard-summary{display:grid;gap:16px}.wizard-summary .grid div{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(148,163,184,.06)}.wizard-summary span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;font-weight:900}.wizard-summary b{display:block;margin-top:4px;color:var(--heading)}
@media(max-width:980px){.wizard-steps{grid-template-columns:1fr 1fr}.proc-shop-row{grid-template-columns:1fr}.wizard-actions{justify-content:stretch}.wizard-actions .btn,.wizard-actions button{flex:1 1 160px}}


/* PROCUREMENT_V3_CARGLASS_WIZARD */
.procurement-wizard{
    position:relative;
    display:grid;
    gap:22px;
    max-width:1180px;
    margin:auto;
}
.wizard-steps{
    position:sticky;
    top:82px;
    z-index:30;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    padding:12px;
    border:1px solid var(--line);
    border-radius:999px;
    background:color-mix(in srgb,var(--header) 94%,transparent);
    backdrop-filter:blur(12px);
}
.wizard-steps button{
    border-radius:999px!important;
    min-height:48px;
    padding:10px 12px!important;
    background:rgba(148,163,184,.10)!important;
    border:1px solid transparent!important;
    color:var(--muted)!important;
    font-weight:900!important;
    box-shadow:none!important;
}
.wizard-steps button.active{
    background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 35%,var(--panel)),color-mix(in srgb,var(--gold) 12%,var(--panel)))!important;
    border-color:color-mix(in srgb,var(--gold) 70%,var(--line))!important;
    color:var(--heading)!important;
}
.wizard-step{
    display:none;
    min-height:520px;
    border:1px solid var(--line);
    border-radius:34px;
    padding:30px;
    background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
    box-shadow:0 22px 70px rgba(0,0,0,.18);
}
.wizard-step.active{
    display:grid;
    gap:22px;
    animation:wizardIn .18s ease-out;
}
@keyframes wizardIn{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
.wizard-step h2{
    font-size:clamp(26px,3vw,42px);
    margin:0;
}
.wizard-global-actions{
    position:sticky;
    bottom:18px;
    z-index:40;
    display:grid;
    grid-template-columns:1fr auto auto auto;
    gap:12px;
    align-items:center;
    padding:14px;
    border:1px solid var(--line);
    border-radius:24px;
    background:color-mix(in srgb,var(--header) 92%,transparent);
    backdrop-filter:blur(12px);
    box-shadow:0 20px 60px rgba(0,0,0,.22);
}
.wizard-global-actions .btn,
.wizard-global-actions button{
    min-width:150px;
    min-height:46px;
    border-radius:16px!important;
    justify-content:center;
    font-weight:900!important;
}
.wizard-global-actions #wizardCancel{
    justify-self:start;
}
.proc-shop-grid{
    display:grid;
    gap:12px;
    max-height:620px;
    overflow:auto;
    padding-right:6px;
}
.proc-shop-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 120px 120px 150px;
    gap:14px;
    align-items:center;
    border:1px solid var(--line);
    border-radius:22px;
    padding:16px;
    background:rgba(255,255,255,.04);
}
.proc-shop-row h3{margin:0;color:var(--heading);font-size:17px}
.proc-shop-row p{margin:4px 0 0;color:var(--muted);font-size:12px}
.proc-shop-row b{text-align:right;white-space:nowrap}
.proc-shop-row input{text-align:center}
.cart-box{
    border:1px solid color-mix(in srgb,var(--gold) 24%,var(--line));
    border-radius:24px;
    padding:18px;
    background:color-mix(in srgb,var(--gold) 8%,transparent);
}
.cart-box li,.cart-summary li{
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:8px 0;
    border-bottom:1px solid rgba(148,163,184,.16);
}
.wizard-summary-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.wizard-summary-grid div{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:rgba(148,163,184,.06);
}
.wizard-summary-grid span{
    display:block;
    color:var(--muted);
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:900;
}
.wizard-summary-grid b{
    display:block;
    margin-top:5px;
    color:var(--heading);
}
.other-supplier-box{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:rgba(148,163,184,.06);
}
@media(max-width:980px){
    .wizard-steps{grid-template-columns:1fr;border-radius:26px;position:relative;top:auto}
    .wizard-global-actions{grid-template-columns:1fr}
    .wizard-global-actions #wizardCancel{justify-self:stretch}
    .proc-shop-row{grid-template-columns:1fr}
    .proc-shop-row b{text-align:left}
    .wizard-summary-grid{grid-template-columns:1fr}
}


/* PROCUREMENT_V4_REAL_WIZARD */
.procurement-wizard-hero{
    text-align:left;
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
}
.real-wizard{
    max-width:1180px;
    margin:0 auto;
    display:grid;
    gap:24px;
    padding:26px!important;
}
.wizard-progress{
    position:relative;
    height:58px;
    border-radius:999px;
    background:linear-gradient(90deg,rgba(148,163,184,.22),rgba(148,163,184,.16));
    border:1px solid var(--line);
    overflow:hidden;
}
.wizard-progress-fill{
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:0;
    background:linear-gradient(90deg,#9ca3af 0%,#f2c94c 48%,#22c55e 100%);
    transition:width .28s ease;
}
.wizard-progress-nodes{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    height:100%;
}
.wizard-progress-nodes span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:var(--muted);
    font-weight:900;
    font-size:12px;
    text-align:center;
}
.wizard-progress-nodes b{
    width:28px;
    height:28px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(148,163,184,.28);
    color:var(--text);
}
.wizard-progress-nodes span.done,
.wizard-progress-nodes span.active{
    color:var(--heading);
}
.wizard-progress-nodes span.done b{
    background:#22c55e;
    color:#fff;
    border-color:#22c55e;
}
.wizard-progress-nodes span.active b{
    background:#f2c94c;
    color:#111827;
    border-color:#f2c94c;
}
.wizard-step{
    display:none!important;
}
.wizard-step.active{
    display:grid!important;
}
.wizard-question-card{
    min-height:560px;
    display:grid;
    align-content:start;
    gap:22px;
    border:1px solid var(--line);
    border-radius:36px;
    padding:34px;
    background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
    box-shadow:0 24px 80px rgba(0,0,0,.18);
}
.wizard-question-card h2{
    font-size:clamp(30px,4vw,54px);
    line-height:1.05;
    margin:0;
    color:var(--heading);
}
.wizard-question-card .muted{
    max-width:760px;
    font-size:16px;
    line-height:1.6;
}
.wizard-field-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.wizard-field-grid label,
.wizard-question-card label{
    text-transform:none;
    letter-spacing:0;
    font-size:13px;
}
.wizard-field-grid input,
.wizard-field-grid select,
.wizard-field-grid textarea,
.wizard-question-card input,
.wizard-question-card select,
.wizard-question-card textarea{
    border-radius:18px!important;
}
.other-supplier-box,
.other-location-box,
.known-location-address{
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(148,163,184,.06);
}
.known-location-address span{
    display:block;
    color:var(--muted);
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.1em;
}
.known-location-address b{
    display:block;
    margin-top:6px;
    color:var(--heading);
    white-space:pre-line;
}
.catalog-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 320px;
    gap:18px;
    align-items:start;
}
.proc-shop-grid{
    display:grid;
    gap:12px;
    max-height:560px;
    overflow:auto;
    padding-right:6px;
}
.proc-shop-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 110px 120px 150px;
    gap:14px;
    align-items:center;
    border:1px solid var(--line);
    border-radius:22px;
    padding:16px;
    background:rgba(255,255,255,.04);
}
.proc-shop-row h3{
    margin:0;
    color:var(--heading);
    font-size:17px;
}
.proc-shop-row p{
    margin:4px 0 0;
    color:var(--muted);
    font-size:12px;
}
.proc-shop-row b{
    text-align:right;
    white-space:nowrap;
}
.proc-shop-row input{
    text-align:center;
}
.cart-box{
    position:sticky;
    top:110px;
    border:1px solid color-mix(in srgb,var(--gold) 28%,var(--line));
    border-radius:24px;
    padding:18px;
    background:color-mix(in srgb,var(--gold) 8%,transparent);
}
.cart-box ul,
.cart-summary{
    margin:0;
    padding:0;
    list-style:none;
}
.cart-box li,
.cart-summary li{
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:10px 0;
    border-bottom:1px solid rgba(148,163,184,.16);
}
.cart-box strong{
    display:block;
    text-align:right;
    font-size:22px;
    margin-top:14px;
    color:var(--heading);
}
.wizard-file-field{
    display:grid!important;
    place-items:center;
    min-height:210px;
    border:2px dashed color-mix(in srgb,var(--gold) 35%,var(--line));
    border-radius:28px;
    background:rgba(148,163,184,.06);
    cursor:pointer;
    text-align:center;
    font-size:18px!important;
    font-weight:900!important;
}
.wizard-file-field input{
    max-width:320px;
}
.file-summary{
    color:var(--muted);
    font-weight:800;
}
.wizard-summary-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.wizard-summary-grid div{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:rgba(148,163,184,.06);
}
.wizard-summary-grid span{
    display:block;
    color:var(--muted);
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:900;
}
.wizard-summary-grid b{
    display:block;
    margin-top:5px;
    color:var(--heading);
}
.wizard-global-actions{
    position:sticky;
    bottom:18px;
    z-index:40;
    display:grid;
    grid-template-columns:1fr auto auto auto;
    gap:12px;
    align-items:center;
    padding:14px;
    border:1px solid var(--line);
    border-radius:24px;
    background:color-mix(in srgb,var(--header) 92%,transparent);
    backdrop-filter:blur(12px);
    box-shadow:0 20px 60px rgba(0,0,0,.22);
}
.wizard-global-actions .btn,
.wizard-global-actions button{
    min-width:150px;
    min-height:46px;
    border-radius:16px!important;
    justify-content:center;
    font-weight:900!important;
}
.wizard-global-actions #wizardCancel{
    justify-self:start;
}
@media(max-width:1080px){
    .catalog-layout{grid-template-columns:1fr}
    .cart-box{position:relative;top:auto}
    .proc-shop-row{grid-template-columns:1fr}
    .proc-shop-row b{text-align:left}
    .wizard-field-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
    .real-wizard{padding:16px!important}
    .wizard-question-card{padding:22px;min-height:520px}
    .wizard-progress{height:auto;border-radius:24px}
    .wizard-progress-nodes{grid-template-columns:1fr;gap:6px;padding:10px}
    .wizard-progress-nodes span{justify-content:flex-start}
    .wizard-global-actions{grid-template-columns:1fr}
    .wizard-global-actions #wizardCancel{justify-self:stretch}
    .wizard-summary-grid{grid-template-columns:1fr}
}

/* PROCUREMENT_V5_APPLE_CHECKOUT_REFINEMENT */
.real-wizard{
    max-width:1240px;
    padding:34px!important;
    border-radius:36px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
}
.wizard-progress{
    height:92px!important;
    border-radius:28px!important;
    background:transparent!important;
    border:0!important;
    overflow:visible!important;
    margin:0 8px 12px!important;
}
.wizard-progress::before{
    content:"";
    position:absolute;
    left:6%;
    right:6%;
    top:31px;
    height:8px;
    border-radius:999px;
    background:rgba(148,163,184,.22);
}
.wizard-progress-fill{
    left:6%!important;
    top:31px!important;
    bottom:auto!important;
    height:8px!important;
    max-width:88%;
    border-radius:999px;
    background:linear-gradient(90deg,#9ca3af 0%,#f2c94c 48%,#22c55e 100%)!important;
}
.wizard-progress-nodes{
    height:92px!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(110px,1fr))!important;
    align-items:start!important;
    column-gap:32px!important;
}
.wizard-progress-nodes span{
    flex-direction:column!important;
    gap:9px!important;
    font-size:12px!important;
    padding-top:16px!important;
    min-width:0;
}
.wizard-progress-nodes b{
    width:38px!important;
    height:38px!important;
    box-shadow:0 10px 30px rgba(0,0,0,.14);
}
.wizard-question-card{
    border-radius:38px!important;
    padding:42px!important;
    background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.028))!important;
    box-shadow:0 28px 90px rgba(0,0,0,.20)!important;
}
.wizard-question-card h2{
    max-width:920px;
    letter-spacing:-.035em;
}
.wizard-field-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr))!important;
    gap:20px!important;
}
.wizard-question-card label{
    font-weight:850!important;
    color:var(--heading)!important;
}
.wizard-question-card input,
.wizard-question-card select,
.wizard-question-card textarea{
    min-height:48px;
    border-radius:18px!important;
    background:color-mix(in srgb,var(--panel) 85%,#fff 15%)!important;
    border:1px solid color-mix(in srgb,var(--line) 70%,var(--gold) 12%)!important;
}
.catalog-layout{
    grid-template-columns:minmax(0,1fr) 360px!important;
    gap:24px!important;
}
.proc-shop-row{
    grid-template-columns:minmax(0,1fr) 120px 130px 160px!important;
    border-radius:24px!important;
    padding:18px!important;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.proc-shop-row:hover{
    transform:translateY(-2px);
    border-color:color-mix(in srgb,var(--gold) 45%,var(--line));
    box-shadow:0 16px 44px rgba(0,0,0,.14);
}
.cart-box{
    border-radius:28px!important;
    box-shadow:0 18px 54px rgba(0,0,0,.13);
}
.service-line-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:16px;
}
.service-line-head h3{margin:0;color:var(--heading);font-size:24px}
.service-rows{
    display:grid;
    gap:14px;
}
.service-row{
    display:grid;
    grid-template-columns:minmax(190px,.8fr) minmax(280px,1.4fr) minmax(140px,.45fr) auto;
    gap:14px;
    align-items:end;
    border:1px solid var(--line);
    border-radius:24px;
    padding:16px;
    background:rgba(148,163,184,.055);
}
.service-row textarea{min-height:76px!important}
.checkout-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    gap:24px;
    align-items:start;
}
.checkout-main{
    display:grid;
    gap:16px;
}
.checkout-card,
.checkout-side{
    border:1px solid var(--line);
    border-radius:28px;
    background:rgba(255,255,255,.045);
    padding:22px;
}
.checkout-card h3,
.checkout-side h3{
    margin:0 0 16px;
    color:var(--heading);
    font-size:22px;
}
.checkout-row{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:16px;
    padding:12px 0;
    border-bottom:1px solid rgba(148,163,184,.16);
}
.checkout-row:last-child{border-bottom:0}
.checkout-row span{
    color:var(--muted);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:900;
}
.checkout-row b{
    color:var(--heading);
    font-weight:800;
    word-break:break-word;
    white-space:pre-line;
}
.checkout-items li{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start;
    gap:12px;
    padding:12px 0!important;
}
.checkout-items li small{
    display:block;
    grid-column:1 / -1;
    color:var(--muted);
    margin-top:3px;
}
.checkout-side{
    position:sticky;
    top:110px;
    background:color-mix(in srgb,var(--gold) 8%,var(--panel));
    border-color:color-mix(in srgb,var(--gold) 30%,var(--line));
}
.checkout-note{
    margin-top:18px;
    padding:14px;
    border-radius:18px;
    background:rgba(34,197,94,.10);
    border:1px solid rgba(34,197,94,.20);
    color:var(--text);
    font-weight:700;
    line-height:1.45;
}
.wizard-global-actions{
    max-width:1240px;
    margin:0 auto;
    grid-template-columns:1fr 160px 160px 190px!important;
}
@media(max-width:1120px){
    .wizard-progress-nodes{column-gap:16px!important;grid-template-columns:repeat(5,1fr)!important}
    .catalog-layout,.checkout-layout{grid-template-columns:1fr!important}
    .checkout-side{position:relative;top:auto}
    .service-row{grid-template-columns:1fr!important}
    .proc-shop-row{grid-template-columns:1fr!important}
    .proc-shop-row b{text-align:left!important}
}
@media(max-width:760px){
    .wizard-progress{height:auto!important}
    .wizard-progress::before,.wizard-progress-fill{display:none!important}
    .wizard-progress-nodes{grid-template-columns:1fr!important;height:auto!important;gap:8px!important}
    .wizard-progress-nodes span{flex-direction:row!important;justify-content:flex-start!important;padding:6px!important}
    .wizard-question-card{padding:24px!important}
    .wizard-field-grid{grid-template-columns:1fr!important}
    .checkout-row{grid-template-columns:1fr!important;gap:4px}
    .wizard-global-actions{grid-template-columns:1fr!important}
}


/* PROCUREMENT_V6_REFINED_CHECKOUT */
.real-wizard{
    max-width:1220px;
    padding:34px!important;
    border-radius:36px!important;
    background:
        radial-gradient(circle at top left, color-mix(in srgb,var(--gold) 10%,transparent), transparent 34%),
        linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025))!important;
}
.wizard-progress-segmented{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:18px;
    align-items:center;
    padding:6px 2px 2px;
    margin:4px auto 0;
    width:min(980px,100%);
}
.wizard-progress-segmented .seg{
    height:10px;
    border-radius:999px;
    background:rgba(148,163,184,.24);
    overflow:hidden;
    box-shadow:inset 0 0 0 1px rgba(148,163,184,.16);
}
.wizard-progress-segmented .seg i{
    display:block;
    width:100%;
    height:100%;
    border-radius:999px;
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .28s ease, background .28s ease;
}
.wizard-progress-segmented .seg.done i{
    transform:scaleX(1);
    background:#22c55e;
}
.wizard-progress-segmented .seg.active i{
    transform:scaleX(1);
    background:#f2c94c;
}
.wizard-current-title{
    text-align:center;
    font-size:clamp(22px,2vw,34px);
    font-weight:950;
    letter-spacing:-.03em;
    color:var(--heading);
    margin:8px 0 6px;
}
.wizard-question-card{
    min-height:590px!important;
    padding:42px!important;
    border-radius:38px!important;
    align-content:start!important;
    gap:28px!important;
}
.wizard-question-card h2{
    max-width:850px;
    letter-spacing:-.045em;
}
.wizard-question-card .muted{
    margin-top:-10px;
}
.wizard-field-grid{
    gap:22px!important;
}
.wizard-question-card label,
.wizard-field-grid label,
.service-row label,
.proc-other-row label{
    font-weight:850!important;
    color:var(--heading)!important;
}
.wizard-question-card input,
.wizard-question-card select,
.wizard-question-card textarea,
.service-row input,
.service-row textarea,
.proc-other-row input{
    min-height:48px!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.92)!important;
    color:#111827!important;
    border:1px solid rgba(148,163,184,.36)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.5) inset;
}
.wizard-question-card textarea,
.service-row textarea{
    min-height:126px!important;
    resize:vertical;
}
.catalog-layout{
    grid-template-columns:minmax(0,1fr) 350px!important;
    gap:24px!important;
}
.proc-shop-grid{
    gap:14px!important;
}
.proc-shop-row{
    grid-template-columns:minmax(0,1fr) 120px 130px 160px!important;
    border-radius:24px!important;
    padding:18px!important;
    background:rgba(255,255,255,.06)!important;
}
.proc-shop-row:hover{
    border-color:color-mix(in srgb,var(--gold) 42%,var(--line));
    transform:translateY(-1px);
    transition:.16s ease;
}
.cart-box{
    border-radius:28px!important;
    padding:22px!important;
}
.cart-box h3{
    font-size:22px;
    margin-top:0;
}
.service-line-head{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:flex-start;
}
.service-rows{
    display:grid;
    gap:16px;
}
.service-row{
    display:grid;
    grid-template-columns:260px minmax(0,1fr) 170px;
    gap:16px;
    align-items:start;
    border:1px solid var(--line);
    border-radius:24px;
    padding:18px;
    background:rgba(255,255,255,.05);
}
.service-add-row{
    display:flex;
    justify-content:flex-start;
    margin-top:-6px;
}
.service-add-row .btn{
    border-radius:16px!important;
    min-height:44px;
}
.other-supplier-box,
.other-location-box,
.known-location-address{
    padding:22px!important;
    border-radius:26px!important;
}
.wizard-file-field{
    min-height:260px!important;
    border-radius:32px!important;
    font-size:20px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03))!important;
}
.checkout-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:22px;
    align-items:start;
}
.checkout-main{
    display:grid;
    gap:16px;
}
.checkout-card,
.checkout-side{
    border:1px solid var(--line);
    border-radius:28px;
    background:rgba(255,255,255,.06);
    box-shadow:0 10px 34px rgba(0,0,0,.10);
}
.checkout-card{
    padding:20px;
}
.checkout-card h3{
    margin:0 0 14px;
    font-size:20px;
    color:var(--heading);
}
.checkout-kv{
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:10px 16px;
}
.checkout-kv span,
.checkout-box span,
.checkout-total span{
    color:var(--muted);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:900;
}
.checkout-kv b{
    color:var(--heading);
    font-weight:800;
    white-space:pre-line;
}
.checkout-items{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:10px;
}
.checkout-items li{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:16px;
    padding:13px 0;
    border-bottom:1px solid rgba(148,163,184,.16);
}
.checkout-items li:last-child{
    border-bottom:0;
}
.checkout-items b{
    display:block;
    color:var(--heading);
}
.checkout-items span{
    display:block;
    color:var(--muted);
    font-size:13px;
    margin-top:3px;
}
.checkout-items strong{
    color:var(--heading);
    white-space:nowrap;
}
.checkout-side{
    position:sticky;
    top:110px;
    padding:20px;
    display:grid;
    gap:14px;
}
.checkout-total{
    padding:18px;
    border-radius:22px;
    background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 24%,transparent),rgba(255,255,255,.04));
}
.checkout-total b{
    display:block;
    margin-top:8px;
    color:var(--heading);
    font-size:30px;
    letter-spacing:-.04em;
}
.checkout-box{
    padding:16px;
    border:1px solid var(--line);
    border-radius:20px;
    background:rgba(148,163,184,.06);
}
.checkout-box b{
    display:block;
    margin-top:6px;
    color:var(--heading);
}
.wizard-global-actions{
    margin-top:2px;
}
@media(max-width:1080px){
    .wizard-progress-segmented{gap:10px}
    .catalog-layout,.checkout-layout{grid-template-columns:1fr!important}
    .checkout-side{position:relative;top:auto}
    .service-row{grid-template-columns:1fr}
    .proc-shop-row{grid-template-columns:1fr!important}
}
@media(max-width:760px){
    .real-wizard{padding:18px!important}
    .wizard-question-card{padding:24px!important}
    .wizard-progress-segmented{gap:7px}
    .checkout-kv{grid-template-columns:1fr}
}


/* PROCUREMENT_V7_RULES_STABLE */
.procurement-rules-page .hero{
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
}
.proc-rules-layout{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
    gap:22px;
    align-items:stretch;
    margin-top:22px;
}
.proc-rule-form-card,
.proc-rule-help{
    border-radius:30px!important;
}
.proc-rule-form-card form{
    display:grid;
    gap:16px;
}
.proc-rule-form-card input,
.proc-rule-form-card select{
    min-height:48px;
    border-radius:16px!important;
}
.proc-rule-help-grid{
    display:grid;
    gap:14px;
}
.proc-rule-help-grid div{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:rgba(148,163,184,.06);
}
.proc-rule-help-grid b{
    display:block;
    color:var(--heading);
    margin-bottom:4px;
}
.proc-rule-help-grid span{
    color:var(--muted);
    font-size:13px;
    line-height:1.45;
}
.proc-rules-table th,
.proc-rules-table td{
    white-space:nowrap;
}
.proc-rules-table td:nth-child(4){
    white-space:normal;
    min-width:260px;
}
.checkline{
    display:flex!important;
    align-items:center;
    gap:10px;
}
.checkline input{
    min-height:auto!important;
}
@media(max-width:900px){
    .proc-rules-layout{
        grid-template-columns:1fr;
    }
}


/* SARIMONT_V8_MULTILANG */
.lang-switch{
    display:inline-flex;
    align-items:center;
    gap:3px;
    padding:3px;
    border:1px solid var(--line);
    border-radius:999px;
    background:rgba(148,163,184,.10);
    margin-right:6px;
}
.lang-switch a{
    font-size:11px!important;
    line-height:1!important;
    padding:6px 8px!important;
    border-radius:999px!important;
    color:var(--header-text)!important;
    opacity:.72;
    text-decoration:none!important;
    font-weight:800!important;
    white-space:nowrap;
}
.lang-switch a.active{
    opacity:1;
    background:color-mix(in srgb,var(--gold) 26%,transparent);
    color:var(--header-text)!important;
}
.lang-switch a:hover{
    opacity:1;
}
.nav-actions{
    gap:8px!important;
}
@media(max-width:760px){
    .lang-switch{
        order:-1;
        width:100%;
        justify-content:center;
        margin:4px 0;
    }
    .lang-switch a{
        font-size:12px!important;
        padding:8px 10px!important;
    }
}


/* SARIMONT_V9_LANG_DROPDOWN */
.lang-switch{display:none!important}
.lang-select-form{
    display:inline-flex;
    align-items:center;
    margin-right:6px;
}
.lang-select{
    height:30px;
    min-height:30px!important;
    max-width:112px;
    padding:4px 24px 4px 9px!important;
    border-radius:999px!important;
    border:1px solid var(--line)!important;
    background:rgba(148,163,184,.12)!important;
    color:var(--header-text)!important;
    font-size:11px!important;
    font-weight:850!important;
    line-height:1!important;
    cursor:pointer;
    outline:none!important;
}
.lang-select option{
    color:#111827;
    background:#ffffff;
}
.lang-select:focus{
    border-color:color-mix(in srgb,var(--gold) 55%,var(--line))!important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 20%,transparent)!important;
}
@media(max-width:760px){
    .lang-select-form{
        order:-1;
        width:100%;
        justify-content:center;
        margin:4px 0;
    }
    .lang-select{
        max-width:170px;
        width:170px;
        height:34px;
        font-size:12px!important;
    }
}


/* SARIMONT_V12_LANG_DROPDOWN_SMALL_RIGHT */
.lang-select-form{
    margin-left:2px!important;
    margin-right:0!important;
}
.lang-select{
    height:24px!important;
    min-height:24px!important;
    max-width:86px!important;
    padding:2px 18px 2px 7px!important;
    font-size:8px!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
}
.nav-actions .lang-select-form{
    order:99;
}
@media(max-width:760px){
    .lang-select-form{
        order:99!important;
        width:auto!important;
        justify-content:flex-end!important;
        margin-left:auto!important;
    }
    .lang-select{
        width:108px!important;
        max-width:108px!important;
        height:28px!important;
        min-height:28px!important;
        font-size:9px!important;
    }
}


/* SARIMONT_V13_NAV_LANG_FINAL */
.topbar .nav-actions{
    justify-self:end!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    line-height:1!important;
}
.topbar .nav-actions > a{
    display:inline-flex!important;
    align-items:center!important;
    height:28px!important;
    line-height:28px!important;
    margin:0!important;
    padding:0!important;
}
.topbar .nav-actions .lang-select-form{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    height:22px!important;
    margin:0 0 0 0!important;
    padding:0!important;
    order:99!important;
    line-height:1!important;
}
.topbar .nav-actions select.lang-select{
    height:22px!important;
    min-height:22px!important;
    width:54px!important;
    max-width:54px!important;
    padding:0 15px 0 6px!important;
    border-radius:999px!important;
    font-size:8px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:.02em!important;
    background:rgba(148,163,184,.10)!important;
    color:var(--header-text)!important;
    border:1px solid color-mix(in srgb,var(--line) 82%,transparent)!important;
    box-shadow:none!important;
}
.topbar .nav-actions select.lang-select option{
    font-size:11px!important;
    color:#111827!important;
    background:#fff!important;
}
@media(max-width:760px){
    .topbar .nav-actions{
        gap:9px!important;
        align-items:center!important;
        justify-content:flex-end!important;
    }
    .topbar .nav-actions .lang-select-form{
        order:99!important;
        width:auto!important;
        margin:0!important;
    }
    .topbar .nav-actions select.lang-select{
        width:56px!important;
        max-width:56px!important;
        height:24px!important;
        min-height:24px!important;
        font-size:8px!important;
        padding:0 15px 0 6px!important;
    }
}


/* COMPLAINTS_V25_TABLE_HEADER_SOLID */
.complaint-table-scroll{
    position:relative;
}
.complaint-table.full-raw-table thead,
.complaint-table.full-raw-table thead tr,
.complaint-table.full-raw-table thead th{
    background:var(--panel)!important;
    background-color:var(--panel)!important;
    opacity:1!important;
    backdrop-filter:none!important;
}
.complaint-table.full-raw-table thead th{
    position:sticky;
    top:0;
    z-index:20;
    box-shadow:0 2px 0 var(--line), 0 8px 18px rgba(0,0,0,.16)!important;
}
.complaint-table.full-raw-table thead th:first-child{
    z-index:22;
}


/* COMPLAINTS_V26_SOLID_TABLE_HEADER_FINAL */
.complaint-data-panel{
    overflow:visible!important;
}
.complaint-table-scroll{
    position:relative!important;
    overflow:auto!important;
    isolation:isolate!important;
}
.complaint-table.full-raw-table{
    border-collapse:separate!important;
    border-spacing:0!important;
}
.complaint-table.full-raw-table thead{
    position:sticky!important;
    top:0!important;
    z-index:100!important;
}
.complaint-table.full-raw-table thead tr{
    background:var(--panel)!important;
    background-color:var(--panel)!important;
}
.complaint-table.full-raw-table thead th{
    position:sticky!important;
    top:0!important;
    z-index:101!important;
    background:var(--panel)!important;
    background-color:var(--panel)!important;
    color:var(--heading)!important;
    opacity:1!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    background-clip:padding-box!important;
    box-shadow:
        inset 0 -1px 0 var(--line),
        0 3px 0 var(--panel),
        0 8px 18px rgba(0,0,0,.22)!important;
}
.complaint-table.full-raw-table thead th::before{
    content:"";
    position:absolute;
    inset:0;
    background:var(--panel)!important;
    z-index:-1;
}
.complaint-table.full-raw-table thead th.action-col,
.complaint-table.full-raw-table tbody td.action-col{
    position:sticky!important;
    left:0!important;
}
.complaint-table.full-raw-table thead th.action-col{
    z-index:110!important;
    background:var(--panel)!important;
}
.complaint-summary-line{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    flex-wrap:wrap!important;
}
.complaint-summary-line span{
    font-weight:850!important;
    color:var(--heading)!important;
}


/* COMPLAINTS_V27_OPAQUE_HEADER_AND_SNAPSHOT */
.complaint-table-scroll{
    position:relative!important;
    overflow:auto!important;
    isolation:isolate!important;
}
.complaint-table.full-raw-table{
    border-collapse:separate!important;
    border-spacing:0!important;
}
.complaint-table.full-raw-table thead,
.complaint-table.full-raw-table thead tr{
    background:#0f172a!important;
    background-color:#0f172a!important;
    opacity:1!important;
}
body[data-theme="light"] .complaint-table.full-raw-table thead,
body[data-theme="light"] .complaint-table.full-raw-table thead tr,
html[data-theme="light"] .complaint-table.full-raw-table thead,
html[data-theme="light"] .complaint-table.full-raw-table thead tr{
    background:#ffffff!important;
    background-color:#ffffff!important;
}
.complaint-table.full-raw-table thead th{
    position:sticky!important;
    top:0!important;
    z-index:999!important;
    background:#0f172a!important;
    background-color:#0f172a!important;
    color:#f8fafc!important;
    opacity:1!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    background-image:none!important;
    background-clip:border-box!important;
    box-shadow:0 2px 0 rgba(148,163,184,.45), 0 10px 22px rgba(0,0,0,.35)!important;
}
body[data-theme="light"] .complaint-table.full-raw-table thead th,
html[data-theme="light"] .complaint-table.full-raw-table thead th{
    background:#ffffff!important;
    background-color:#ffffff!important;
    color:#0f172a!important;
    box-shadow:0 2px 0 rgba(15,23,42,.16), 0 10px 22px rgba(15,23,42,.12)!important;
}
.complaint-table.full-raw-table thead th::before{
    content:"";
    position:absolute;
    inset:-2px;
    background:inherit!important;
    z-index:-1!important;
}
.complaint-table.full-raw-table th.action-col{
    z-index:1001!important;
}
.raw-field-grid div span,
.raw-field-grid div b{
    overflow-wrap:anywhere;
}


/* COMPLAINTS_V28_HEADER_STYLE_COMPACT_TABLE */
.complaint-table-scroll{
    max-height:72vh;
    overflow:auto!important;
    border-radius:22px;
    border:1px solid var(--line);
    background:var(--panel);
}

/* Tabellenkopf im Design des Haupt-Headers / Topbar */
.complaint-table.full-raw-table thead,
.complaint-table.full-raw-table thead tr{
    background:var(--header-bg, #111827)!important;
    background-color:var(--header-bg, #111827)!important;
    opacity:1!important;
}
.complaint-table.full-raw-table thead th{
    position:sticky!important;
    top:0!important;
    z-index:120!important;
    background:var(--header-bg, #111827)!important;
    background-color:var(--header-bg, #111827)!important;
    color:var(--header-text, #ffffff)!important;
    border-bottom:1px solid color-mix(in srgb, var(--gold) 32%, transparent)!important;
    box-shadow:0 2px 0 rgba(0,0,0,.16), 0 10px 18px rgba(0,0,0,.24)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    opacity:1!important;
}
.complaint-table.full-raw-table thead th::before{
    content:"";
    position:absolute;
    inset:-2px;
    background:var(--header-bg, #111827)!important;
    z-index:-1!important;
}

/* kompaktere, aber leserliche Tabelle */
.complaint-table.full-raw-table{
    font-size:12px!important;
    line-height:1.25!important;
}
.complaint-table.full-raw-table th{
    font-size:11px!important;
    line-height:1.15!important;
    padding:9px 9px!important;
    white-space:normal!important;
    max-width:150px;
}
.complaint-table.full-raw-table td{
    font-size:12px!important;
    line-height:1.25!important;
    padding:7px 9px!important;
    white-space:nowrap!important;
    vertical-align:middle!important;
}
.complaint-table.full-raw-table td:not(.action-col){
    max-width:180px;
    overflow:hidden;
    text-overflow:ellipsis;
}
.complaint-table.full-raw-table tbody tr{
    height:34px;
}
.complaint-table.full-raw-table .btn.small{
    padding:5px 9px!important;
    font-size:11px!important;
    border-radius:999px!important;
}
.complaint-table.full-raw-table .status-pill{
    padding:4px 7px!important;
    font-size:10.5px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
}
.complaint-table.full-raw-table .action-col{
    min-width:98px!important;
    max-width:118px!important;
}
.complaint-table.full-raw-table .date-col{
    min-width:82px!important;
    max-width:92px!important;
}
.complaint-table.full-raw-table .death-key-col{
    min-width:86px!important;
    max-width:108px!important;
    font-weight:800;
}
.complaint-table.full-raw-table .source-col{
    min-width:96px!important;
    max-width:122px!important;
}
.complaint-table.full-raw-table .assignee-col{
    min-width:96px!important;
    max-width:130px!important;
}
.complaint-table.full-raw-table .nr-col{
    min-width:62px!important;
    max-width:78px!important;
    text-align:center;
}

/* zusätzliche Rohdatenspalten schmal halten, bei Hover vollständig lesbar machen */
.complaint-table.full-raw-table td:hover{
    overflow:visible!important;
    white-space:normal!important;
    position:relative;
    z-index:10;
    background:var(--panel)!important;
    box-shadow:0 8px 20px rgba(0,0,0,.18);
    border-radius:10px;
}


/* COMPLAINTS_V29_NO_HOVER_POPUP_COMPACT */
/* Tabellenkopf exakt im Header-Farbsystem, ohne Transparenz */
.complaint-table.full-raw-table thead,
.complaint-table.full-raw-table thead tr,
.complaint-table.full-raw-table thead th{
    background:var(--header)!important;
    background-color:var(--header)!important;
    color:var(--text)!important;
    opacity:1!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    background-image:none!important;
}
.complaint-table.full-raw-table thead th{
    border-bottom:1px solid var(--line)!important;
    box-shadow:0 2px 0 var(--line), 0 8px 16px rgba(0,0,0,.28)!important;
}
.complaint-table.full-raw-table thead th::before{
    background:var(--header)!important;
}

/* Keine Hover-Aufklappanimation in dieser Tabelle */
.complaint-table.full-raw-table td:hover{
    overflow:hidden!important;
    white-space:nowrap!important;
    position:static!important;
    z-index:auto!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
}
.complaint-table.full-raw-table tbody tr{
    cursor:pointer;
}
.complaint-table.full-raw-table tbody tr:hover{
    background:color-mix(in srgb,var(--gold) 7%,transparent)!important;
}

/* Weitere Breitenoptimierung */
.complaint-table.full-raw-table{
    table-layout:auto!important;
    font-size:11.5px!important;
}
.complaint-table.full-raw-table th{
    padding:7px 6px!important;
    font-size:10.5px!important;
    max-width:118px!important;
}
.complaint-table.full-raw-table td{
    padding:5px 6px!important;
    font-size:11.5px!important;
    max-width:132px!important;
}
.complaint-table.full-raw-table .status-pill{
    padding:3px 6px!important;
    font-size:10px!important;
}
.complaint-table.full-raw-table .btn.small{
    padding:4px 7px!important;
    font-size:10.5px!important;
}
.complaint-table.full-raw-table .action-col{min-width:84px!important;max-width:100px!important}
.complaint-table.full-raw-table .date-col{min-width:74px!important;max-width:82px!important}
.complaint-table.full-raw-table .death-key-col{min-width:76px!important;max-width:92px!important}
.complaint-table.full-raw-table .source-col{min-width:78px!important;max-width:98px!important}
.complaint-table.full-raw-table .assignee-col{min-width:78px!important;max-width:104px!important}
.complaint-table.full-raw-table .nr-col{min-width:46px!important;max-width:60px!important}

/* Schnellansicht Pop-up */
body.modal-open{overflow:hidden}
.complaint-modal[hidden]{display:none!important}
.complaint-modal{
    position:fixed;
    inset:0;
    z-index:5000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
}
.complaint-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.58);
}
.complaint-modal-card{
    position:relative;
    width:min(1180px,96vw);
    max-height:88vh;
    overflow:auto;
    background:var(--panel);
    color:var(--text);
    border:1px solid var(--line);
    border-radius:28px;
    box-shadow:0 30px 90px rgba(0,0,0,.45);
    padding:22px;
}
.complaint-modal-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
    border-bottom:1px solid var(--line);
    padding-bottom:14px;
    margin-bottom:14px;
}
.complaint-modal-head h2{
    margin:2px 0 0;
    color:var(--heading);
}
.complaint-modal-close{
    width:36px;
    height:36px;
    border-radius:999px;
    border:1px solid var(--line);
    background:transparent;
    color:var(--text);
    font-size:24px;
    line-height:1;
    cursor:pointer;
}
.complaint-modal-actions{
    display:flex;
    gap:10px;
    margin:0 0 14px;
}
.complaint-modal-grid{
    display:grid;
    grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);
    gap:18px;
}
.complaint-modal-grid h3{
    margin:0 0 10px;
    color:var(--heading);
}
.complaint-detail-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
}
.complaint-detail-grid div{
    border:1px solid var(--line);
    border-radius:14px;
    padding:9px 10px;
    background:color-mix(in srgb,var(--panel) 82%,var(--bg));
}
.complaint-detail-grid span{
    display:block;
    color:var(--muted);
    font-size:10px;
    font-weight:800;
    letter-spacing:.04em;
    margin-bottom:4px;
}
.complaint-detail-grid b{
    display:block;
    color:var(--text);
    font-size:12px;
    line-height:1.35;
    overflow-wrap:anywhere;
}
.empty-note{
    color:var(--muted);
    border:1px dashed var(--line)!important;
}
@media(max-width:900px){
    .complaint-modal-grid{grid-template-columns:1fr}
    .complaint-detail-grid{grid-template-columns:1fr}
}


/* COMPLAINTS_V30_BRIGHT_POPUP_TRUE_HEADER_COMPACT */
/* Headerfarbe wirklich wie Hauptheader: --header / --text. Diese Regeln stehen ganz am Ende und überschreiben alte Blöcke. */
.complaint-table.full-raw-table thead,
.complaint-table.full-raw-table thead tr,
.complaint-table.full-raw-table thead th{
    background:var(--header)!important;
    background-color:var(--header)!important;
    color:var(--text)!important;
    opacity:1!important;
    background-image:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
}
.complaint-table.full-raw-table thead th{
    border-bottom:1px solid var(--line)!important;
    box-shadow:0 2px 0 var(--line), 0 7px 14px rgba(0,0,0,.22)!important;
}
.complaint-table.full-raw-table thead th::before{
    background:var(--header)!important;
    background-color:var(--header)!important;
}

/* Keine Zell-Hover-Aufklappung/Animation */
.complaint-table.full-raw-table td:hover{
    overflow:hidden!important;
    white-space:nowrap!important;
    position:static!important;
    z-index:auto!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
}
.complaint-table.full-raw-table tbody tr{
    cursor:pointer;
    transition:none!important;
}

/* Breiten weiter optimiert: Inhalt bekommt Breite nach Datentyp, nicht nach gleichmäßiger Verteilung */
.complaint-table.full-raw-table{
    font-size:11px!important;
    line-height:1.18!important;
}
.complaint-table.full-raw-table th{
    padding:6px 5px!important;
    font-size:10px!important;
    line-height:1.05!important;
    max-width:108px!important;
}
.complaint-table.full-raw-table td{
    padding:4px 5px!important;
    font-size:11px!important;
    line-height:1.16!important;
    max-width:118px!important;
}
.complaint-table.full-raw-table tbody tr{
    height:30px!important;
}
.complaint-table.full-raw-table .btn.small{
    padding:3px 6px!important;
    font-size:10px!important;
    line-height:1.1!important;
}
.complaint-table.full-raw-table .status-pill{
    padding:2px 5px!important;
    font-size:9.5px!important;
    line-height:1.05!important;
}

/* Feste Kernspalten */
.complaint-table.full-raw-table .action-col{
    min-width:76px!important;
    width:82px!important;
    max-width:90px!important;
}
.complaint-table.full-raw-table .date-col{
    min-width:66px!important;
    width:72px!important;
    max-width:76px!important;
}
.complaint-table.full-raw-table .death-key-col{
    min-width:62px!important;
    width:70px!important;
    max-width:78px!important;
    font-weight:850;
}
.complaint-table.full-raw-table .source-col{
    min-width:70px!important;
    width:88px!important;
    max-width:104px!important;
}
.complaint-table.full-raw-table .assignee-col{
    min-width:70px!important;
    width:86px!important;
    max-width:104px!important;
}
.complaint-table.full-raw-table .nr-col{
    min-width:38px!important;
    width:46px!important;
    max-width:54px!important;
    text-align:center;
}

/* Pop-up: Seite dahinter abdunkeln, Pop-up selbst hell/lesbar im Sarimont-Stil */
.complaint-modal-backdrop{
    background:rgba(0,0,0,.36)!important;
    backdrop-filter:blur(2px)!important;
}
.complaint-modal-card{
    background:#fbf7ef!important;
    color:#1f2937!important;
    border:1px solid rgba(200,169,107,.55)!important;
    box-shadow:0 28px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.complaint-modal-head{
    border-bottom:1px solid rgba(200,169,107,.38)!important;
}
.complaint-modal-head h2,
.complaint-modal-grid h3{
    color:#8a6a32!important;
}
.complaint-modal .eyebrow{
    color:#9b7a3f!important;
}
.complaint-modal-close{
    background:#ffffff!important;
    color:#1f2937!important;
    border:1px solid rgba(200,169,107,.45)!important;
}
.complaint-detail-grid div{
    background:#ffffff!important;
    color:#1f2937!important;
    border:1px solid rgba(200,169,107,.25)!important;
    box-shadow:0 6px 16px rgba(31,41,55,.06)!important;
}
.complaint-detail-grid span{
    color:#7c6a52!important;
}
.complaint-detail-grid b{
    color:#111827!important;
}
.complaint-modal-actions .btn{
    background:#111827!important;
    color:#f8fafc!important;
    border-color:#111827!important;
}


/* COMPLAINTS_V31_RAW_STATUS_AND_PDF_TEMPLATES */
.complaint-table.full-raw-table th:nth-child(5),
.complaint-table.full-raw-table td:nth-child(5){
    min-width:62px!important;
    width:74px!important;
    max-width:86px!important;
}
.filter-actions a[href*="complaint_pdf_report.php"]{
    background:var(--header)!important;
    color:var(--text)!important;
    border-color:var(--line)!important;
}


/* PDF_TEMPLATE_DESIGNER_V32 */
.pdf-template-preview-thumb{
    max-width:100%;
    max-height:120px;
    border:1px solid var(--line);
    border-radius:16px;
    object-fit:contain;
    background:#fff;
    padding:8px;
}


/* PDF_GLOBAL_SYSTEM_AND_SORTABLE_TABLE_V33 */
.pdf-template-designer .pdf-template-tabbar{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:12px 0 14px;
}
.pdf-template-designer textarea{
    width:100%;
    border-radius:18px;
    border:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 88%,var(--bg));
    color:var(--text);
    padding:14px;
}
.sortable-table thead th.sortable-th{
    cursor:pointer;
    user-select:none;
    position:sticky!important;
}
.sortable-table thead th.sortable-th::after{
    content:" ⇅";
    opacity:.38;
    font-size:10px;
}
.sortable-table thead th.sortable-th.sort-asc::after{
    content:" ↑";
    opacity:1;
    color:var(--gold);
}
.sortable-table thead th.sortable-th.sort-desc::after{
    content:" ↓";
    opacity:1;
    color:var(--gold);
}


/* PDF_MASTER_V34_AND_SORTABLE */
.pdf-template-designer .pdf-template-tabbar{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:12px 0 14px;
}
.pdf-template-designer textarea{
    width:100%;
    border-radius:18px;
    border:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 88%,var(--bg));
    color:var(--text);
    padding:14px;
}
.pdf-template-designer input[type="color"]{
    min-height:44px;
    padding:4px;
}
.sortable-table thead th.sortable-th{
    cursor:pointer;
    user-select:none;
    position:sticky!important;
}
.sortable-table thead th.sortable-th::after{
    content:" ⇅";
    opacity:.38;
    font-size:10px;
}
.sortable-table thead th.sortable-th.sort-asc::after{
    content:" ↑";
    opacity:1;
    color:var(--gold);
}
.sortable-table thead th.sortable-th.sort-desc::after{
    content:" ↓";
    opacity:1;
    color:var(--gold);
}


/* PDF_PRESENTATION_WIDGETS_V35 */
.pdf-template-designer .pdf-template-tabbar{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:12px 0 14px;
}
.pdf-template-designer textarea{
    width:100%;
    border-radius:18px;
    border:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 88%,var(--bg));
    color:var(--text);
    padding:14px;
}
.pdf-template-designer input[type="color"]{
    min-height:44px;
    padding:4px;
}
.sortable-table thead th.sortable-th{
    cursor:pointer;
    user-select:none;
    position:sticky!important;
}
.sortable-table thead th.sortable-th::after{
    content:" ⇅";
    opacity:.38;
    font-size:10px;
}
.sortable-table thead th.sortable-th.sort-asc::after{
    content:" ↑";
    opacity:1;
    color:var(--gold);
}
.sortable-table thead th.sortable-th.sort-desc::after{
    content:" ↓";
    opacity:1;
    color:var(--gold);
}


/* V36_SYMMETRIC_CHECKBOXES_AND_PDF_MASTER */
/* Symmetrische Checkboxen systemweit: keine Überlappung mit Text */
.permission-grid,
.pdf-widget-config-table,
.designer-grid{
    overflow:visible!important;
}
.permission-grid label,
.check-row,
.pdf-widget-config-table label.check-row,
.designer-card label,
.panel label:has(input[type="checkbox"]){
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:34px!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow:visible!important;
}
.permission-grid input[type="checkbox"],
.check-row input[type="checkbox"],
.pdf-widget-config-table input[type="checkbox"],
.panel label input[type="checkbox"]{
    flex:0 0 auto!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    margin:0!important;
    position:static!important;
    transform:none!important;
    accent-color:var(--gold);
}
.check-row.compact{
    justify-content:center!important;
    gap:0!important;
}
.pdf-widget-config-table th,
.pdf-widget-config-table td{
    vertical-align:middle!important;
}
.pdf-widget-config-table input,
.pdf-widget-config-table select{
    min-height:34px!important;
    padding:6px 9px!important;
}
.zsu-gmbh-logo{
    display:inline-flex;
    align-items:center;
    color:var(--heading);
}
.zsu-gmbh-logo svg{
    height:34px;
    width:auto;
}
.pdf-logo-svg svg{
    height:82px!important;
    width:auto!important;
    color:inherit;
}
.pdf-template-designer .muted{
    color:var(--muted);
    font-size:13px;
}


/* V37_FULLSTACK_FIXES */
.permission-grid,
.pdf-widget-config-table,
.designer-grid{
    overflow:visible!important;
}
.permission-grid label,
.check-row,
.pdf-widget-config-table label.check-row,
.designer-card label,
.panel label:has(input[type="checkbox"]){
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:34px!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow:visible!important;
}
.permission-grid input[type="checkbox"],
.check-row input[type="checkbox"],
.pdf-widget-config-table input[type="checkbox"],
.panel label input[type="checkbox"]{
    flex:0 0 auto!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    margin:0!important;
    position:static!important;
    transform:none!important;
    accent-color:var(--gold);
}
.check-row.compact{
    justify-content:center!important;
    gap:0!important;
}
select[multiple]{
    min-height:130px!important;
    padding:8px!important;
}
.filterbar small{
    display:block;
    margin-top:5px;
    color:var(--muted);
    font-size:11px;
}
.zsu-gmbh-logo{
    display:inline-flex;
    align-items:center;
    color:var(--heading);
}
.zsu-gmbh-logo svg{
    height:34px;
    width:auto;
}
.report-logo .zsu-gmbh-logo svg,
.zsu-gmbh-logo.pdf-logo-svg svg{
    height:82px!important;
    width:auto!important;
}


/* V38_PRO_FILTERS_TABLE_CLEANUP */
/* Einheitliche, elegante Filterflächen für Sarimont */
.filterbar,
.filter-panel,
form:has(.filter-row){
    border:1px solid var(--line);
    border-radius:24px;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg));
    box-shadow:0 14px 34px rgba(0,0,0,.08);
}
.filterbar .filter-grid,
.filterbar .filter-row,
.filter-row{
    gap:12px!important;
    align-items:end!important;
}
.filterbar label,
.filter-row label{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    font-weight:850!important;
    color:var(--heading)!important;
}
.filterbar input,
.filterbar select,
.filter-row input,
.filter-row select{
    border-radius:14px!important;
    border:1px solid var(--line)!important;
    background:var(--panel)!important;
    color:var(--text)!important;
    min-height:42px!important;
    padding:9px 11px!important;
}
.filterbar small,
.filter-row small{
    display:block;
    font-size:11px!important;
    color:var(--muted)!important;
    font-weight:650!important;
}
.filter-actions{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    flex-wrap:wrap!important;
    margin-top:2px!important;
}
.filter-actions .btn,
.filter-actions button{
    min-height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
}

/* Statusfilter als Chips statt unübersichtlicher Mehrfach-Select */
.filter-chip-group-label{
    min-width:260px!important;
}
.filter-chip-group{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    max-width:620px;
}
.filter-chip{
    display:inline-flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:0!important;
    cursor:pointer;
}
.filter-chip input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
    width:1px!important;
    height:1px!important;
}
.filter-chip span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 82%,var(--bg));
    color:var(--text);
    font-size:11px;
    font-weight:850;
    white-space:nowrap;
}
.filter-chip input:checked + span{
    background:var(--header);
    color:var(--text);
    border-color:var(--gold);
    box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 16%,transparent);
}

/* Beschwerdemanagement Tabelle: Spaltenüberschrift ist Sortierfläche, kein Button */
.complaint-table.full-raw-table thead th,
.sortable-table thead th.sortable-th{
    white-space:nowrap!important;
    min-width:max-content!important;
    cursor:pointer!important;
}
.complaint-table.full-raw-table th{
    max-width:none!important;
}
.complaint-table.full-raw-table td{
    max-width:140px!important;
}
.complaint-table.full-raw-table .action-col{min-width:86px!important;width:90px!important}
.complaint-table.full-raw-table .date-col{min-width:92px!important;width:96px!important}
.complaint-table.full-raw-table .death-key-col{min-width:94px!important;width:104px!important}
.complaint-table.full-raw-table .source-col{min-width:94px!important;width:112px!important}
.complaint-table.full-raw-table .assignee-col{min-width:108px!important;width:124px!important}
.complaint-table.full-raw-table .nr-col{min-width:92px!important;width:98px!important}
.complaint-table.full-raw-table tr.closed,
.complaint-table.full-raw-table tr.closed td{
    background:color-mix(in srgb,#22c55e 10%,transparent)!important;
}
.status-pill.closed{
    background:#16a34a!important;
    color:#ffffff!important;
    border-color:#15803d!important;
}


/* V39_DROPDOWN_FILTER_ACTIONS */
/* Statusfilter als Dropdown mit Haken */
.filter-multiselect-label{
    min-width:230px!important;
}
.filter-multiselect{
    position:relative;
    min-width:230px;
}
.filter-multiselect-btn{
    width:100%;
    min-height:42px;
    border-radius:14px!important;
    border:1px solid var(--line)!important;
    background:var(--panel)!important;
    color:var(--text)!important;
    padding:9px 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    font-weight:800!important;
    cursor:pointer;
}
.filter-multiselect-caret{
    color:var(--muted);
    font-weight:900;
}
.filter-multiselect-menu{
    display:none;
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    min-width:100%;
    width:max-content;
    max-width:360px;
    max-height:320px;
    overflow:auto;
    z-index:3000;
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:18px;
    box-shadow:0 22px 60px rgba(0,0,0,.22);
    padding:8px;
}
.filter-multiselect.open .filter-multiselect-menu{
    display:block;
}
.filter-multiselect-menu label{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:10px!important;
    min-height:36px!important;
    padding:8px 10px!important;
    border-radius:12px!important;
    cursor:pointer;
    white-space:nowrap!important;
    font-weight:750!important;
}
.filter-multiselect-menu label:hover{
    background:color-mix(in srgb,var(--gold) 9%,transparent);
}
.filter-multiselect-menu input[type="checkbox"]{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    margin:0!important;
    accent-color:var(--gold);
}
.filter-multiselect-menu input[type="checkbox"]:checked + span{
    color:var(--heading);
    font-weight:900;
}

/* Beschwerdemanagement Filterbuttons wie Handel/Dienstleistung: sauber in einer Aktionsleiste */
.complaint-filter-actions{
    align-self:end!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:10px!important;
    min-height:42px!important;
}
.complaint-filter-actions button,
.complaint-filter-actions .btn{
    min-height:42px!important;
    padding:9px 16px!important;
    border-radius:999px!important;
    white-space:nowrap!important;
}

/* Veraltete Chip-Optik neutralisieren, falls Browser alte CSS-Regeln cached */
.filter-chip-group{
    display:none;
}


/* V40_KPI_STATUS_DROPDOWN_FIX */
/* Status Dropdown: komplett deckend, nicht transparent */
.filter-multiselect-menu{
    background:#ffffff!important;
    background-color:#ffffff!important;
    opacity:1!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    color:#111827!important;
    border:1px solid rgba(17,24,39,.16)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.30)!important;
}
.filter-multiselect-menu::before{
    content:"";
    position:absolute;
    inset:0;
    background:#ffffff!important;
    border-radius:18px;
    z-index:-1;
}
.filter-multiselect-menu label{
    background:#ffffff!important;
    color:#111827!important;
}
.filter-multiselect-menu label:hover{
    background:#f7f1e5!important;
}
.filter-multiselect-menu input[type="checkbox"]:checked + span{
    color:#111827!important;
}

/* KPI Aufbau: Gesamt / Beschwerde / Belobigung symmetrisch */
.complaint-kpi-board .kpi-row{
    display:grid!important;
    gap:14px!important;
    margin-bottom:18px!important;
}
.complaint-kpi-board .kpi-row-total,
.complaint-kpi-board .kpi-row-praise{
    grid-template-columns:repeat(2,minmax(220px,1fr))!important;
}
.complaint-kpi-board .kpi-row-complaints{
    grid-template-columns:repeat(3,minmax(180px,1fr))!important;
}
.complaint-kpi-board .widget{
    min-height:132px!important;
}
@media(max-width:1100px){
    .complaint-kpi-board .kpi-row-complaints{grid-template-columns:repeat(2,minmax(180px,1fr))!important}
}
@media(max-width:720px){
    .complaint-kpi-board .kpi-row-total,
    .complaint-kpi-board .kpi-row-praise,
    .complaint-kpi-board .kpi-row-complaints{grid-template-columns:1fr!important}
}


/* V42_PROCUREMENT_INVENTORY_WITHDRAWAL */
.procurement-shop-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:12px;
}
.product-card{
    border:1px solid var(--line);
    border-radius:20px;
    background:color-mix(in srgb,var(--panel) 90%,var(--bg));
    padding:14px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:12px;
}
.product-card h3{
    margin:4px 0 8px;
    color:var(--heading);
}
.product-add-row{
    display:flex;
    gap:8px;
    align-items:center;
}
.product-add-row input{
    max-width:90px;
}
.cart-lines{
    display:flex;
    flex-direction:column;
    gap:12px;
}
.cart-line{
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--panel);
    padding:12px;
    display:grid;
    gap:9px;
}
.cart-line small{
    display:block;
    color:var(--muted);
    margin-top:3px;
}
.cart-line label{
    display:grid;
    gap:5px;
}
.inline-form{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    align-items:center;
}
.inline-form input{
    min-height:34px;
    border-radius:10px;
    border:1px solid var(--line);
    padding:6px 8px;
}
.procurement-inventory-page .status-pill,
.procurement-withdrawal-page .status-pill{
    white-space:nowrap;
}


/* V43_PROCUREMENT_INVENTORY_FIX */
.used-products-table .link-cell{
    border:0;
    background:transparent;
    color:var(--gold);
    font-weight:900;
    cursor:pointer;
    text-decoration:underline;
    padding:0;
}
.used-products-table .inline-form input{
    max-width:130px;
}
.cart-line select,
.cart-line input,
.inline-form input{
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--panel);
    color:var(--text);
    padding:8px 10px;
}
.cart-line select{
    min-height:40px;
}
.product-card .eyebrow{
    display:block;
    font-size:10px;
}


/* V44_PROCUREMENT_500_FIX */
.bar-list{display:flex;flex-direction:column;gap:10px}
.bar-top{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:800}
.bar-track{height:9px;border-radius:999px;background:color-mix(in srgb,var(--line) 75%,transparent);overflow:hidden}
.bar-track i{display:block;height:100%;border-radius:999px;background:var(--gold)}


/* V45_PROCUREMENT_FLOW_REFINEMENT */
.procurement-wizard.real-wizard{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
}
.procurement-wizard .wizard-step{
    min-height:520px;
}
.procurement-wizard .wizard-question-card{
    min-height:100%;
}
.wizard-global-actions{
    position:sticky;
    bottom:14px;
    z-index:40;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:10px!important;
    padding:14px!important;
    border:1px solid var(--line);
    border-radius:22px;
    background:var(--panel)!important;
    box-shadow:0 18px 46px rgba(0,0,0,.18);
    margin-top:auto!important;
}
.wizard-global-actions .btn,
.wizard-global-actions button{
    min-width:112px;
    min-height:42px;
    border-radius:999px!important;
}
.proc-shop-row{
    grid-template-columns:minmax(220px,1fr) minmax(86px,max-content) minmax(88px,120px)!important;
    align-items:center!important;
}
.cart-box li,
.wizard-summary .summary-position,
#wizardSummary li{
    display:grid;
    grid-template-columns:minmax(160px,1fr) max-content max-content;
    gap:10px!important;
    align-items:center;
}
.procurement-position-edit input{
    max-width:120px;
}
.receipt-complete{
    opacity:.62;
    background:color-mix(in srgb,#22c55e 8%,transparent);
    border-radius:16px;
    padding:10px;
}
.table-actions{
    display:flex;
    gap:8px;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
}
.procurement-detail-actions{
    display:flex;
    justify-content:flex-start;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.procurement-detail-grid .smart-table small{
    color:var(--muted);
}
button.danger,
.btn.danger{
    background:#991b1b!important;
    color:#fff!important;
}


/* V46_WITHDRAWAL_PDF_EMAIL_REWORK */
.procurement-withdrawal-wizard{
    display:flex!important;
    flex-direction:column;
    gap:16px;
}
.withdraw-step{display:none}
.withdraw-step.active{display:block}
.withdraw-product-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.withdraw-product-row{
    display:grid;
    grid-template-columns:minmax(260px,1fr) 150px 150px;
    gap:12px;
    align-items:center;
    border:1px solid var(--line);
    border-radius:18px;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg));
    padding:12px;
}
.withdraw-product-name b{
    display:block;
    color:var(--heading);
    font-size:15px;
}
.withdraw-product-name small{
    display:block;
    color:var(--muted);
    margin-top:3px;
}
.withdraw-qty{
    height:42px;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--panel)!important;
    padding:9px 11px!important;
}
.withdraw-qty.field-error{
    border-color:#dc2626!important;
    box-shadow:0 0 0 3px rgba(220,38,38,.16);
}
.cart-line{
    grid-template-columns:1fr!important;
}
.cart-line label{
    display:grid!important;
    gap:6px!important;
}
.cart-line select,
.cart-line input{
    min-height:40px!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    background:var(--panel)!important;
    color:var(--text)!important;
    padding:8px 10px!important;
}
@media(max-width:780px){
    .withdraw-product-row{grid-template-columns:1fr}
}


/* V47_PROCUREMENT_REPORTING_WITHDRAWAL_POLISH */
.procurement-report-filter{
    align-items:end!important;
}
.withdraw-product-row.added{
    background:color-mix(in srgb,#22c55e 14%,var(--panel))!important;
    border-color:#22c55e!important;
    box-shadow:0 0 0 2px rgba(34,197,94,.12);
}
.cart-qty-badge{
    display:inline-flex!important;
    align-items:center;
    width:max-content;
    margin-top:6px!important;
    padding:5px 10px;
    border-radius:999px;
    background:color-mix(in srgb,var(--gold) 16%,transparent);
    color:var(--heading)!important;
    font-weight:900!important;
}
.smart-table th,
.smart-table td,
.table-wrap table th,
.table-wrap table td{
    white-space:nowrap!important;
}
.filter-multiselect-menu{
    background:#fff!important;
    opacity:1!important;
}
.procurement-withdrawal-wizard .wizard-global-actions{
    position:sticky;
    bottom:14px;
}
#circModal .case-form label{
    display:grid!important;
    gap:6px;
}


/* V48_CART_CIRCULATION_USED_POPUP_FIX */
.withdraw-product-row.added{
    background:color-mix(in srgb,#22c55e 20%,var(--panel))!important;
    border-color:#16a34a!important;
    box-shadow:0 0 0 3px rgba(22,163,74,.16)!important;
}
.added-feedback{
    display:inline-flex!important;
    width:max-content;
    margin-top:6px;
    padding:5px 9px;
    border-radius:999px;
    background:#16a34a;
    color:#fff!important;
    font-size:11px;
    font-weight:900;
}
.cart-line .death-field[style*="none"],
.cart-line .vehicle-field[style*="none"]{
    display:none!important;
}
.circ-actions,
.table-actions{
    flex-direction:row!important;
    display:flex!important;
    gap:8px!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
}
.smart-table th,
.smart-table td{
    white-space:nowrap!important;
}
#circModal input[readonly]{
    background:color-mix(in srgb,var(--line) 30%,var(--panel))!important;
    cursor:not-allowed;
}
.edit-death-btn{
    white-space:nowrap!important;
}


/* V49_CART_STOCK_DYNAMIC_FIX */
.withdraw-product-row.added{
    background:#dcfce7!important;
    border:2px solid #16a34a!important;
    box-shadow:0 0 0 4px rgba(22,163,74,.18)!important;
}
.withdraw-product-row.just-added{
    animation:cartAddedPulse .7s ease-in-out;
}
@keyframes cartAddedPulse{
    0%{transform:scale(1)}
    35%{transform:scale(1.018)}
    100%{transform:scale(1)}
}
.withdraw-product-row.added .withdraw-product-name b{
    color:#166534!important;
}
.added-feedback{
    display:inline-flex!important;
    width:max-content;
    margin-top:8px;
    padding:7px 12px;
    border-radius:999px;
    background:#16a34a!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:950!important;
    box-shadow:0 8px 20px rgba(22,163,74,.25);
}
.withdraw-product-row.added .add-to-cart{
    background:#16a34a!important;
    color:#fff!important;
}
.cart-line .death-field,
.cart-line .vehicle-field{
    display:none!important;
}
.cart-line .death-field.visible,
.cart-line .vehicle-field.visible{
    display:grid!important;
}
.cart-line input:focus,
.cart-line select:focus,
.withdraw-qty:focus{
    outline:0!important;
    border-color:#16a34a!important;
    box-shadow:0 0 0 3px rgba(22,163,74,.16)!important;
}


/* V50_CART_CIRCULATION_TABLE_FIX */
.withdraw-product-row{
    grid-template-columns:minmax(260px,1fr) 150px 150px 170px!important;
}
.withdraw-feedback-slot{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
}
.withdraw-feedback-slot .added-feedback{
    margin:0!important;
    min-width:126px;
    justify-content:center;
    text-align:center;
    font-size:13px!important;
    padding:9px 12px!important;
}
.withdraw-product-row.added{
    background:#bbf7d0!important;
    border:3px solid #15803d!important;
    box-shadow:0 0 0 5px rgba(21,128,61,.18)!important;
}
.withdraw-product-row.added .withdraw-feedback-slot{
    background:rgba(21,128,61,.08);
    border-radius:14px;
}
@media(max-width:880px){
    .withdraw-product-row{grid-template-columns:1fr!important}
    .withdraw-feedback-slot{justify-content:flex-start!important}
}

/* Umlauf-Liste: Werte kompakt, max. 20 Zeichen bevor Umbruch */
.circulation-table{
    table-layout:auto!important;
    width:100%!important;
}
.circulation-table th,
.circulation-table td{
    max-width:20ch!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    vertical-align:middle!important;
}
.circulation-table .circulation-actions,
.circulation-actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
    min-width:300px!important;
    white-space:nowrap!important;
}
.circulation-actions .btn,
.circulation-actions button{
    white-space:nowrap!important;
    flex:0 0 auto!important;
}
.circulation-table td:last-child,
.circulation-table th:last-child{
    max-width:none!important;
    min-width:320px!important;
    white-space:nowrap!important;
}


/* V51_USED_DAMAGE_RECOVERY */
.death-raw-btn.death-found{
    color:#16a34a!important;
    font-weight:950!important;
}
.death-raw-btn.death-missing{
    color:#dc2626!important;
    font-weight:950!important;
}
.danger,
.btn.danger,
button.danger{
    background:#991b1b!important;
    color:#fff!important;
}
.supplier-field{
    display:none!important;
}
.supplier-field.visible{
    display:grid!important;
}
.withdraw-product-row.added{
    background:#86efac!important;
    border:4px solid #15803d!important;
    box-shadow:0 0 0 6px rgba(21,128,61,.20)!important;
}
.withdraw-feedback-slot{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}
.withdraw-feedback-slot .added-feedback{
    margin:0!important;
    min-width:120px!important;
    text-align:center!important;
}
.used-products-table .table-actions,
.damaged-products-table .table-actions{
    display:flex!important;
    flex-direction:row!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
}
#deleteUsedVehicleWrap,
#deleteUsedLocationWrap,
#damageDeathWrap,
#damageVehicleWrap,
#damageLocationWrap{
    display:none;
}
.damaged-products-table th,
.damaged-products-table td,
.used-products-table th,
.used-products-table td{
    max-width:20ch!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}


/* V52_RECEIPT_WITHDRAWAL_UI_FIX */
.receipt-panel .receipt-lines{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-bottom:22px;
}
.receipt-item-card{
    display:grid;
    grid-template-columns:minmax(220px,1fr) 150px minmax(180px,260px);
    gap:12px;
    align-items:center;
    border:1px solid var(--line);
    border-radius:18px;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg));
    padding:14px;
}
.receipt-item-main b{
    color:var(--heading);
    display:block;
}
.receipt-item-main small{
    color:var(--muted);
    display:block;
    margin-top:4px;
}
.receipt-qty-input,
.receipt-note-input{
    min-height:42px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--panel)!important;
    color:var(--text)!important;
    padding:9px 11px!important;
    width:100%;
}
.receipt-extra-data{
    border-top:1px solid var(--line);
    padding-top:18px;
    display:grid;
    gap:12px;
}
@media(max-width:800px){
    .receipt-item-card{grid-template-columns:1fr}
}
.circulation-table th,
.circulation-table td{
    max-width:18ch!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    vertical-align:middle!important;
}
.circulation-table th:nth-child(4),
.circulation-table td:nth-child(4){
    max-width:10ch!important;
    width:10ch!important;
}
.circulation-table td:last-child,
.circulation-table th:last-child{
    max-width:24ch!important;
    min-width:240px!important;
}
.circulation-actions{
    min-width:230px!important;
}
.circulation-actions .btn,
.circulation-actions button{
    padding:7px 10px!important;
    font-size:11px!important;
    min-height:34px!important;
}


/* V55_USAGE_DAMAGE_PHOTO_UI */
/* Verwendungsliste kompakter */
.used-products-table{
    table-layout:auto!important;
    width:100%!important;
}
.used-products-table th,
.used-products-table td{
    font-size:12px!important;
    padding:6px 8px!important;
    line-height:1.18!important;
    vertical-align:middle!important;
}
.used-products-table .btn.small,
.used-products-table button.small,
.used-products-table .table-actions .btn{
    min-height:26px!important;
    padding:4px 7px!important;
    font-size:10.5px!important;
    line-height:1!important;
    border-radius:9px!important;
}
.used-products-table .table-actions{
    gap:5px!important;
    flex-wrap:nowrap!important;
}
.used-products-table .wrap-cell,
.used-products-table td:nth-child(3){
    max-width:24ch!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
}
.used-products-table .qty-cell,
.used-products-table td:nth-child(4){
    max-width:8ch!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}

/* Warenentnahme: Menge-Placeholder besser sichtbar, Fortschritt symmetrisch */
.withdraw-qty::placeholder{
    font-size:11px!important;
}
.procurement-withdrawal-wizard .wizard-progress-segmented{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    align-items:center!important;
    margin:2px 0 8px!important;
}
.procurement-withdrawal-wizard .wizard-progress-segmented .seg{
    min-height:8px!important;
    border-radius:999px!important;
}
.procurement-withdrawal-wizard .wizard-current-title{
    text-align:center!important;
    font-weight:900!important;
    letter-spacing:.01em!important;
}
.damage-photo-field{
    display:none!important;
}
.damage-photo-field.visible{
    display:grid!important;
}

/* Umlauf-Liste: kompaktere Buttons und bessere Spaltennutzung */
.circulation-table{
    table-layout:auto!important;
    width:100%!important;
}
.circulation-table th,
.circulation-table td{
    font-size:12px!important;
    padding:7px 8px!important;
    line-height:1.2!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
}
.circulation-table th:nth-child(4),
.circulation-table td:nth-child(4){
    max-width:9ch!important;
    width:9ch!important;
}
.circulation-table td:last-child,
.circulation-table th:last-child{
    min-width:230px!important;
    max-width:260px!important;
}
.circulation-actions{
    min-width:220px!important;
    gap:6px!important;
}
.circulation-actions .btn,
.circulation-actions button{
    min-height:28px!important;
    padding:5px 8px!important;
    font-size:10.5px!important;
    border-radius:9px!important;
    line-height:1!important;
}
.damaged-products-table th,
.damaged-products-table td{
    font-size:12px!important;
    padding:7px 8px!important;
}


/* V56_CIRCULATION_CART_ACTIONS */
/* Warenkorb: Lieferant/Foto wirklich nur bei Beschädigt/Entsorgt */
.cart-line .supplier-field,
.cart-line .damage-photo-field{
    display:none!important;
}
.cart-line.use-damaged .supplier-field.visible,
.cart-line.use-damaged .damage-photo-field.visible{
    display:grid!important;
}

/* Verwendete Produkte: Buttontext vollständig, aber kompakte Höhe/Breite */
.used-products-table .table-actions{
    display:flex!important;
    flex-direction:row!important;
    gap:6px!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
}
.used-products-table .table-actions .btn{
    min-height:28px!important;
    height:28px!important;
    padding:4px 8px!important;
    font-size:11px!important;
    line-height:1!important;
    border-radius:9px!important;
    width:auto!important;
    min-width:54px!important;
}
.used-products-table th,
.used-products-table td{
    padding:6px 7px!important;
}
.used-products-table td:nth-child(4),
.used-products-table th:nth-child(4){
    width:7ch!important;
    max-width:7ch!important;
    text-align:center!important;
}
.used-products-table td:nth-child(5),
.used-products-table th:nth-child(5){
    width:14ch!important;
    max-width:14ch!important;
}
.used-products-table td:nth-child(3),
.used-products-table th:nth-child(3){
    max-width:30ch!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}
.used-products-table td:nth-child(9),
.used-products-table th:nth-child(9){
    width:128px!important;
    max-width:128px!important;
    white-space:nowrap!important;
}

/* Umlauf-Pop-up: Bei Todesfall nur Todesfall-Nr., bei Rückgabe nur Ziel/Lager/Zwischenlager */
#circReturnTargetWrap,
#circVehicleWrap{
    display:none;
}
#circModal .case-form label{
    margin-bottom:8px!important;
}

/* Umlauf-Liste: Buttons kompakt, Tabelle nutzt Breite */
.circulation-table{
    table-layout:fixed!important;
}
.circulation-table th,
.circulation-table td{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    padding:6px 7px!important;
    font-size:12px!important;
}
.circulation-table th:nth-child(4),
.circulation-table td:nth-child(4){
    width:8ch!important;
}
.circulation-table td:last-child,
.circulation-table th:last-child{
    width:230px!important;
    max-width:230px!important;
    min-width:230px!important;
}
.circulation-actions{
    min-width:0!important;
    width:100%!important;
    gap:5px!important;
    justify-content:flex-start!important;
}
.circulation-actions .btn{
    min-height:28px!important;
    height:28px!important;
    padding:4px 7px!important;
    font-size:10.5px!important;
    border-radius:9px!important;
    line-height:1!important;
}


/* V57_CIRCULATION_PDF_USAGE_FIX */
/* Umlauf-Bestand: Pop-up nur relevante Felder */
#circQtyWrap,
#circReturnTargetWrap,
#circLocationWrap,
#circVehicleWrap{
    display:none;
}
#circModal .case-form label{
    gap:6px!important;
}

/* Umlauf-Liste: Spaltenbreite sauberer, weniger Lücken, Umbruch erlaubt */
.circulation-table{
    width:100%!important;
    table-layout:fixed!important;
}
.circulation-table th,
.circulation-table td{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    padding:6px 7px!important;
    line-height:1.18!important;
    vertical-align:middle!important;
}
.circulation-table th:nth-child(1), .circulation-table td:nth-child(1){width:13%}
.circulation-table th:nth-child(2), .circulation-table td:nth-child(2){width:12%}
.circulation-table th:nth-child(3), .circulation-table td:nth-child(3){width:13%}
.circulation-table th:nth-child(4), .circulation-table td:nth-child(4){width:8%}
.circulation-table th:nth-child(5), .circulation-table td:nth-child(5){width:10%}
.circulation-table th:nth-child(6), .circulation-table td:nth-child(6){width:18%}
.circulation-table th:nth-child(7), .circulation-table td:nth-child(7){width:7%;text-align:right}
.circulation-table th:nth-child(8), .circulation-table td:nth-child(8){width:19%;min-width:210px!important;max-width:none!important}
.circulation-actions{
    width:100%!important;
    min-width:0!important;
    gap:5px!important;
    flex-wrap:nowrap!important;
}
.circulation-actions .btn{
    min-height:28px!important;
    padding:4px 7px!important;
    font-size:10.5px!important;
    white-space:normal!important;
    line-height:1.05!important;
}

/* Verwendungsliste: Todesfall-Nr. gleiche Schriftgröße wie Tabelleninhalt */
.used-products-table .death-raw-btn{
    font-size:12px!important;
    line-height:1.18!important;
    font-weight:850!important;
}
.used-products-table .death-found,
.used-products-table .death-missing{
    font-size:12px!important;
}


/* V59_PDF_EMAIL_CIRCULATION_FINAL */
/* Zahlen in Tabellen mittig */
.smart-table td.num,
.smart-table th.num,
.smart-table td.qty-cell,
.smart-table td:nth-child(4):has(+ td),
.smart-table td[data-type="number"],
table td.num,
table th.num{
    text-align:center!important;
}

/* Datei-Upload optisch wie Fallbearbeitung: klare Box statt nacktes Textfeld */
.case-form input[type="file"],
.wizard-file-field input[type="file"],
.damage-photo-field input[type="file"],
.receipt-extra-data input[type="file"]{
    width:100%!important;
    border:1.5px dashed var(--line)!important;
    border-radius:16px!important;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
    padding:14px!important;
    min-height:48px!important;
    cursor:pointer!important;
}
.wizard-file-field,
.damage-photo-field,
.receipt-extra-data label:has(input[type="file"]){
    border:1px solid var(--line)!important;
    border-radius:18px!important;
    background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
    padding:14px!important;
    display:grid!important;
    gap:8px!important;
}

/* Umlauf Pop-up: Felder strikt nach Aktion */
#circQtyWrap,
#circReturnTargetWrap,
#circLocationWrap,
#circVehicleWrap{
    display:none;
}
#circModal .case-form label{
    gap:6px!important;
}
#circModal select,
#circModal input{
    min-height:42px!important;
}

/* PDF-Preview im Browser: A4 sichtbar, aber nicht verzerrt */
@media screen{
    .pdf-page-preview .page,
    body .page{
        max-width:210mm;
    }
}

/* Outlook-Hinweis kann nicht per CSS entfernt werden, aber SPF/DKIM/DMARC mindert ihn. */


/* V62_DEPLOYMENT_PLANNER */
.deployment-container{max-width:1540px}
.deployment-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:14px;
    flex-wrap:wrap;
    margin:18px 0;
    padding:14px;
    border:1px solid var(--line);
    border-radius:22px;
    background:var(--panel);
}
.deployment-toolbar-left,.deployment-toolbar-center,.deployment-toolbar-right{
    display:flex;
    gap:10px;
    align-items:end;
    flex-wrap:wrap;
}
.deployment-toolbar label{
    display:grid;
    gap:6px;
    font-size:12px;
    font-weight:800;
    color:var(--muted);
}
.deployment-toolbar select,.deployment-toolbar input{
    min-height:38px;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--panel);
    color:var(--text);
    padding:8px 10px;
}
.deployment-layout{
    display:grid;
    grid-template-columns:220px 1fr;
    gap:18px;
    align-items:start;
}
.deployment-drivers{
    position:sticky;
    top:90px;
    border:1px solid var(--line);
    border-radius:22px;
    background:var(--panel);
    padding:12px;
}
.driver-all-btn{
    width:100%;
    border:0;
    border-radius:16px;
    background:var(--gold);
    color:#111;
    font-weight:950;
    min-height:42px;
    cursor:pointer;
}
.driver-list{
    display:none;
    margin-top:10px;
    max-height:58vh;
    overflow:auto;
    gap:7px;
}
.driver-list.open{display:grid}
.driver-chip{
    display:flex;
    align-items:center;
    gap:8px;
    border:1px solid var(--line);
    border-radius:13px;
    padding:8px;
    cursor:pointer;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg));
    font-size:12px;
    font-weight:800;
}
.driver-chip input{accent-color:var(--gold)}
.apply-drivers{width:100%;margin-top:10px}
.deployment-calendar{
    border:1px solid var(--line);
    border-radius:24px;
    background:var(--panel);
    padding:14px;
    overflow:hidden;
}
.deployment-calendar-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:12px;
}
.deployment-calendar-head h2{margin:0;font-size:22px}
.deployment-calendar-head span{
    color:var(--muted);
    font-weight:800;
}
.deployment-grid{
    display:grid;
    gap:8px;
}
.month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
.linear-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.year-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.deployment-weekday{
    text-align:center;
    font-size:12px;
    font-weight:950;
    color:var(--muted);
    padding:8px 0;
}
.deployment-cell{
    min-height:128px;
    border:1px solid var(--line);
    border-radius:16px;
    background:color-mix(in srgb,var(--panel) 93%,var(--bg));
    padding:8px;
    overflow:hidden;
}
.deployment-view-day .deployment-cell,
.deployment-view-week .deployment-cell{min-height:420px}
.year-cell{min-height:180px}
.muted-cell{opacity:.42}
.deployment-cell header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:8px;
    margin-bottom:7px;
}
.deployment-cell header b{font-size:13px}
.deployment-cell header span{
    min-width:22px;
    height:22px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:11px;
    background:color-mix(in srgb,var(--gold) 22%,transparent);
    font-weight:900;
}
.event-card,.event-pill{
    border-radius:12px;
    padding:7px 8px;
    margin-bottom:6px;
    background:color-mix(in srgb,var(--gold) 12%,var(--panel));
    border:1px solid color-mix(in srgb,var(--gold) 32%,var(--line));
    font-size:11px;
    line-height:1.25;
}
.event-card.manual,.event-pill.manual{
    background:color-mix(in srgb,#60a5fa 14%,var(--panel));
    border-color:color-mix(in srgb,#60a5fa 35%,var(--line));
}
.event-card small{display:block;color:var(--muted);margin-top:3px}
.deployment-raw-preview{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:10px;
}
.deployment-raw-preview div{
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px;
}
.deployment-raw-preview span{
    display:block;
    color:var(--muted);
    font-size:11px;
    font-weight:900;
}
.deployment-raw-preview b{
    display:block;
    margin-top:4px;
    word-break:break-word;
}
@media(max-width:900px){
    .deployment-layout{grid-template-columns:1fr}
    .deployment-drivers{position:static}
    .month-grid{grid-template-columns:1fr}
    .year-grid{grid-template-columns:1fr}
    .deployment-weekday{display:none}
}


/* V63_DEPLOYMENT_POPUP_CSV_UPLOAD */
.event-card,
.event-pill{
    display:block;
    width:100%;
    text-align:left;
    border:1px solid color-mix(in srgb,var(--gold) 32%,var(--line));
    cursor:pointer;
}
.event-card:hover,
.event-pill:hover{
    transform:translateY(-1px);
    box-shadow:0 10px 24px rgba(0,0,0,.10);
}
.deployment-modal[hidden]{display:none!important}
.deployment-modal{
    position:fixed;
    inset:0;
    z-index:9999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
}
.deployment-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.48);
    backdrop-filter:blur(4px);
}
.deployment-modal-card{
    position:relative;
    z-index:1;
    width:min(760px,96vw);
    max-height:88vh;
    overflow:auto;
    border:1px solid var(--line);
    border-radius:26px;
    background:var(--panel);
    box-shadow:0 30px 90px rgba(0,0,0,.32);
    padding:20px;
}
.deployment-modal-card.wide{
    width:min(1040px,96vw);
}
.deployment-modal-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    border-bottom:1px solid var(--line);
    padding-bottom:14px;
    margin-bottom:16px;
}
.deployment-modal-head h2{margin:0}
.deployment-modal-close{
    border:0;
    width:38px;
    height:38px;
    border-radius:999px;
    background:color-mix(in srgb,var(--line) 50%,transparent);
    color:var(--text);
    font-size:22px;
    cursor:pointer;
}
.deployment-upload-box{
    display:grid!important;
    gap:8px!important;
    border:1.5px dashed var(--line)!important;
    border-radius:20px!important;
    padding:16px!important;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
}
.deployment-upload-box.dragover{
    border-color:var(--gold)!important;
    background:color-mix(in srgb,var(--gold) 12%,var(--panel))!important;
}
.deployment-upload-box input[type=file]{
    border:0!important;
    padding:0!important;
    min-height:0!important;
    background:transparent!important;
}
.deployment-upload-box span{
    color:var(--muted);
    font-size:12px;
    font-weight:800;
}
.deployment-detail-summary{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:14px;
}
.deployment-detail-summary>*{
    border:1px solid var(--line);
    border-radius:999px;
    padding:7px 11px;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg));
}
.deployment-raw-table th{
    width:230px;
    color:var(--muted);
}
.deployment-raw-table td{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}
.deployment-attachments{
    display:grid;
    gap:8px;
    padding-left:0;
    list-style:none;
}
.deployment-attachments li{
    display:flex;
    justify-content:space-between;
    gap:10px;
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px;
}
body.modal-open{overflow:hidden}


/* V64_DEPLOYMENT_STATE_MAPPING */
.deployment-layout{
    grid-template-columns:300px 1fr!important;
}
.deployment-filters{
    position:sticky;
    top:90px;
    display:grid;
    gap:10px;
}
.deployment-filter-card{
    border:1px solid var(--line);
    border-radius:20px;
    background:var(--panel);
    padding:10px;
}
.deployment-filter-card h3{
    margin:0 0 8px;
    font-size:13px;
}
.driver-list.always-open{
    display:grid!important;
    margin-top:8px;
    max-height:32vh;
    overflow:auto;
    gap:5px;
}
.driver-list.compact-list{
    gap:4px!important;
}
.driver-chip.compact,
.driver-chip{
    min-height:30px;
    padding:5px 7px!important;
    border-radius:10px!important;
    font-size:11px!important;
    line-height:1.1;
}
.driver-chip{
    display:grid!important;
    grid-template-columns:auto 1fr auto;
}
.driver-chip span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.driver-chip em{
    font-style:normal;
    min-width:24px;
    height:22px;
    border-radius:999px;
    background:color-mix(in srgb,var(--gold) 18%,transparent);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    font-weight:950;
}
.icon-btn.subtle{
    min-width:auto!important;
    padding:8px 10px!important;
    border-radius:999px!important;
    font-size:12px!important;
}
.event-card,
.event-pill{
    cursor:pointer!important;
    appearance:none;
    font-family:inherit;
    color:inherit;
}
@media(max-width:900px){
    .deployment-layout{grid-template-columns:1fr!important}
    .deployment-filters{position:static}
}


/* V65_DEPLOYMENT_INDEPENDENT_MAPPING */
.deployment-layout{
    grid-template-columns:430px 1fr!important;
}
.deployment-filters-split form{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    align-items:start;
}
.deployment-filters-split .apply-drivers{
    grid-column:1 / -1!important;
}
.deployment-filter-card{
    min-width:0!important;
}
.driver-list.always-open{
    max-height:372px!important; /* ca. 10 kompakte Fahrer */
    overflow-y:auto!important;
}
.state-filter-card .driver-list.always-open{
    max-height:372px!important;
}
.driver-chip{
    min-height:27px!important;
    padding:4px 6px!important;
}
.driver-chip span{
    font-size:10.5px!important;
}
.driver-chip em{
    height:19px!important;
    min-width:21px!important;
    font-size:9.5px!important;
}
.deployment-modal-close{
    position:sticky!important;
    top:0!important;
    margin-left:auto!important;
    z-index:4!important;
}
.deployment-modal-card.wide{
    width:min(1120px,96vw)!important;
}
.deployment-detail-box{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:color-mix(in srgb,var(--panel) 94%,var(--bg));
    margin-top:14px;
}
.deployment-raw-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:10px;
}
.deployment-raw-kv{
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px;
    background:var(--panel);
    min-width:0;
}
.deployment-raw-kv span{
    display:block;
    color:var(--muted);
    font-size:11px;
    font-weight:950;
    margin-bottom:5px;
}
.deployment-raw-kv b{
    display:block;
    font-size:12px;
    line-height:1.25;
    overflow-wrap:anywhere;
    word-break:break-word;
    color:var(--heading);
}
@media(max-width:1100px){
    .deployment-layout{grid-template-columns:1fr!important}
    .deployment-filters-split form{grid-template-columns:1fr!important}
}


/* V66_DEPLOYMENT_MAPPING_COLUMNS_WIDTH */
.deployment-container{
    max-width:none!important;
    width:calc(100vw - 28px)!important;
}
.deployment-layout{
    grid-template-columns:620px minmax(0,1fr)!important;
    gap:14px!important;
}
.deployment-filters-split form{
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
}
.driver-list.always-open{
    max-height:744px!important; /* +100% zur vorherigen Höhe */
}
.state-filter-card .driver-list.always-open{
    max-height:744px!important;
}
.deployment-calendar{
    min-width:0!important;
}
.deployment-grid.month-grid{
    grid-template-columns:repeat(7,minmax(130px,1fr))!important;
}
.deployment-cell{
    min-width:0!important;
}
.deployment_admin_mapping select,
.case-form select[name$="_field"],
.case-form select[name="dataset_id"]{
    width:100%!important;
}
.deployment-raw-preview{
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
}
@media(max-width:1250px){
    .deployment-layout{grid-template-columns:1fr!important}
    .deployment-container{width:auto!important}
}


/* V68_DEPLOYMENT_POPUP_COMPACT */
/* Einsatzplaner Pop-up: hell, nicht transparent/dunkel; angelehnt an Beschwerdemanagement-Zeilen-Pop-up */
.deployment-modal-backdrop{
    background:rgba(15,23,42,.28)!important;
    backdrop-filter:blur(2px)!important;
}
.deployment-modal-card{
    background:var(--panel)!important;
    color:var(--text)!important;
    border:1px solid var(--line)!important;
    box-shadow:0 24px 70px rgba(15,23,42,.24)!important;
}
.deployment-modal-head{
    background:var(--panel)!important;
    color:var(--heading)!important;
    position:sticky!important;
    top:0!important;
    z-index:5!important;
}
.deployment-modal-head .eyebrow,
.deployment-modal-head h2{
    color:var(--heading)!important;
}
.deployment-modal-close{
    position:sticky!important;
    top:0!important;
    background:color-mix(in srgb,var(--panel) 78%,var(--line))!important;
    color:var(--heading)!important;
    border:1px solid var(--line)!important;
}

/* Filter links: Bundesland/Fahrer noch kompakter */
.deployment-filter-card{
    padding:8px!important;
    border-radius:16px!important;
}
.deployment-filter-card h3{
    font-size:12px!important;
    margin-bottom:6px!important;
}
.driver-chip{
    min-height:24px!important;
    padding:3px 5px!important;
    gap:5px!important;
    border-radius:8px!important;
}
.driver-chip span{
    font-size:10px!important;
}
.driver-chip em{
    height:17px!important;
    min-width:19px!important;
    font-size:9px!important;
}

/* Kalender-Kacheln: passen sich dem Inhalt besser an, weniger Zwangsumbruch */
.deployment-grid.month-grid{
    grid-template-columns:repeat(7,minmax(150px,1fr))!important;
}
.deployment-cell{
    padding:6px!important;
}
.event-card,
.event-pill{
    width:auto!important;
    min-width:min(100%, 145px)!important;
    max-width:100%!important;
    display:block!important;
    padding:5px 7px!important;
    border-radius:10px!important;
    font-size:10.5px!important;
    line-height:1.18!important;
}
.event-card div,
.event-card small,
.event-pill{
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
}
.event-card small{
    font-size:10px!important;
}

/* Rohdaten im Pop-up: nur Rohdatei-Header, helles Kachel-Design */
.deployment-raw-grid{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
}
.deployment-raw-kv{
    background:color-mix(in srgb,var(--panel) 96%,var(--bg))!important;
    border:1px solid var(--line)!important;
}
.deployment-raw-kv span{
    color:var(--muted)!important;
    font-size:10.5px!important;
}
.deployment-raw-kv b{
    color:var(--text)!important;
    font-size:12px!important;
}
@media(max-width:1250px){
    .deployment-grid.month-grid{grid-template-columns:repeat(7,minmax(120px,1fr))!important}
}


/* V69_DEPLOYMENT_POPUP_VISIBILITY_CARDS */
/* Pop-up wirklich deckend und lesbar */
.deployment-modal{
    background:rgba(15,23,42,.42)!important;
}
.deployment-modal-backdrop{
    background:rgba(15,23,42,.42)!important;
    backdrop-filter:none!important;
}
.deployment-modal-card,
.deployment-modal-card.wide{
    background:#ffffff!important;
    color:#18212f!important;
    border:1px solid #e5e7eb!important;
    box-shadow:0 35px 90px rgba(15,23,42,.38)!important;
    opacity:1!important;
}
body.dark .deployment-modal-card,
body.dark .deployment-modal-card.wide,
[data-theme="dark"] .deployment-modal-card,
[data-theme="dark"] .deployment-modal-card.wide{
    background:#ffffff!important;
    color:#18212f!important;
}
.deployment-modal-card *,
.deployment-modal-card.wide *{
    color:inherit;
}
.deployment-modal-head{
    background:#ffffff!important;
    color:#18212f!important;
    border-bottom:1px solid #e5e7eb!important;
    opacity:1!important;
}
.deployment-modal-head h2,
.deployment-modal-head .eyebrow{
    color:#18212f!important;
}
.deployment-modal-close{
    background:#f3f4f6!important;
    color:#111827!important;
    border:1px solid #d1d5db!important;
}
.deployment-case-head div,
.deployment-detail-box,
.deployment-raw-kv,
.deployment-attachments li{
    background:#ffffff!important;
    color:#18212f!important;
    border-color:#e5e7eb!important;
}
.deployment-case-head span,
.deployment-raw-kv span{
    color:#64748b!important;
}
.deployment-case-head b,
.deployment-raw-kv b,
.deployment-detail-box h3{
    color:#18212f!important;
}
.deployment-upload-box{
    background:#f8fafc!important;
    color:#18212f!important;
    border-color:#cbd5e1!important;
}
.deployment-upload-box span{
    color:#64748b!important;
}

/* Bundesland-/Fahrer-Kacheln: Breite kompakter, Schriftgröße unverändert lassen */
.deployment-layout{
    grid-template-columns:500px minmax(0,1fr)!important;
}
.deployment-filters-split form{
    grid-template-columns:230px 250px!important;
    gap:8px!important;
}
.deployment-filter-card{
    padding:8px!important;
}
.driver-chip{
    width:100%!important;
    max-width:100%!important;
    min-height:28px!important;
    padding:4px 6px!important;
}
.driver-chip span{
    font-size:inherit!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.driver-chip em{
    flex:0 0 auto!important;
}

/* Terminkalender-Kacheln: Inhalt darf nie außerhalb laufen */
.deployment-cell{
    overflow:hidden!important;
    min-width:0!important;
}
.event-card,
.event-pill{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
}
.event-card div,
.event-card small,
.event-pill{
    display:block!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    overflow:hidden!important;
}
.event-card b,
.event-pill b{
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
}
.month-grid .deployment-cell,
.linear-grid .deployment-cell,
.year-grid .deployment-cell{
    contain:layout paint!important;
}
@media(max-width:1250px){
    .deployment-layout{grid-template-columns:1fr!important}
    .deployment-filters-split form{grid-template-columns:1fr 1fr!important}
}
@media(max-width:760px){
    .deployment-filters-split form{grid-template-columns:1fr!important}
}


/* V70_DEPLOYMENT_POPUP_FILTER_COLLAPSE */
/* Pop-up: endgültig deckend, hell und unabhängig von Theme-Variablen */
.deployment-modal{
    background:rgba(17,24,39,.50)!important;
    backdrop-filter:none!important;
}
.deployment-modal-backdrop{
    background:rgba(17,24,39,.50)!important;
    opacity:1!important;
    backdrop-filter:none!important;
}
.deployment-modal-card,
.deployment-modal-card.wide,
body.dark .deployment-modal-card,
body.dark .deployment-modal-card.wide,
[data-theme="dark"] .deployment-modal-card,
[data-theme="dark"] .deployment-modal-card.wide{
    background-color:#ffffff!important;
    background:#ffffff!important;
    color:#111827!important;
    opacity:1!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    border:1px solid #d1d5db!important;
    box-shadow:0 32px 90px rgba(0,0,0,.42)!important;
}
.deployment-modal-card::before,
.deployment-modal-card::after{
    display:none!important;
}
.deployment-modal-card *,
.deployment-modal-card.wide *{
    text-shadow:none!important;
}
.deployment-modal-head,
.deployment-case-head div,
.deployment-detail-box,
.deployment-raw-kv,
.deployment-attachments li,
.deployment-upload-box{
    background-color:#ffffff!important;
    background:#ffffff!important;
    opacity:1!important;
    color:#111827!important;
    border-color:#d1d5db!important;
}
.deployment-modal-head{
    position:sticky!important;
    top:0!important;
    z-index:20!important;
    padding-right:46px!important;
}
.deployment-modal-head h2,
.deployment-modal-head .eyebrow,
.deployment-detail-box h3,
.deployment-case-head b,
.deployment-raw-kv b{
    color:#111827!important;
}
.deployment-case-head span,
.deployment-raw-kv span,
.deployment-upload-box span{
    color:#475569!important;
}
.deployment-modal-close{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    z-index:30!important;
    background:#f3f4f6!important;
    color:#111827!important;
    border:1px solid #cbd5e1!important;
    opacity:1!important;
}

/* Linke Filter: Breite kompakter, Schriftgröße unverändert */
.deployment-layout{
    grid-template-columns:430px minmax(0,1fr)!important;
    gap:12px!important;
}
.deployment-filters-split form{
    grid-template-columns:205px 215px!important;
    gap:8px!important;
}
.deployment-filter-card{
    padding:6px!important;
}
.driver-chip{
    min-height:28px!important;
    padding:4px 6px!important;
    width:100%!important;
    max-width:100%!important;
}
.driver-chip span{
    font-size:inherit!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

/* Kleine dezente Einklapp-Buttons über Bundesland/Fahrer */
.filter-section-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:6px!important;
    margin:0 0 4px!important;
}
.filter-section-head h3{
    margin:0!important;
    font-size:12px!important;
    color:var(--heading)!important;
}
.filter-collapse-btn{
    width:24px!important;
    height:24px!important;
    min-height:24px!important;
    border-radius:999px!important;
    border:1px solid var(--line)!important;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
    color:var(--muted)!important;
    padding:0!important;
    font-size:13px!important;
    font-weight:900!important;
    cursor:pointer!important;
}
.collapsed-filter{
    display:none!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:260px minmax(0,1fr)!important;
}

/* Kalendertermin-Kacheln: nie außerhalb der Tageskachel sichtbar */
.deployment-cell{
    overflow:hidden!important;
    min-width:0!important;
    max-width:100%!important;
}
.event-card,
.event-pill{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    contain:paint!important;
}
.event-card div,
.event-card small,
.event-card b,
.event-pill,
.event-pill b{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    overflow:hidden!important;
}
.deployment-grid.month-grid{
    grid-template-columns:repeat(7,minmax(135px,1fr))!important;
}
@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-filters-split form{
        grid-template-columns:1fr 1fr!important;
    }
}
@media(max-width:760px){
    .deployment-filters-split form{
        grid-template-columns:1fr!important;
    }
}


/* V71_DEPLOYMENT_THEME_SIDEBAR_COLLAPSE */
/* Pop-up deckend, aber wieder Theme-abhängig statt hart weiß */
.deployment-modal{
    background:rgba(15,23,42,.44)!important;
    backdrop-filter:none!important;
}
.deployment-modal-backdrop{
    background:rgba(15,23,42,.44)!important;
    opacity:1!important;
    backdrop-filter:none!important;
}
.deployment-modal-card,
.deployment-modal-card.wide{
    background:var(--panel)!important;
    color:var(--text)!important;
    border:1px solid var(--line)!important;
    opacity:1!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    box-shadow:0 32px 90px rgba(0,0,0,.38)!important;
}
.deployment-modal-card *,
.deployment-modal-card.wide *{
    text-shadow:none!important;
}
.deployment-modal-head,
.deployment-case-head div,
.deployment-detail-box,
.deployment-raw-kv,
.deployment-attachments li,
.deployment-upload-box{
    background:var(--panel)!important;
    color:var(--text)!important;
    border-color:var(--line)!important;
    opacity:1!important;
}
.deployment-modal-head{
    position:sticky!important;
    top:0!important;
    z-index:20!important;
    padding-right:46px!important;
}
.deployment-modal-head h2,
.deployment-modal-head .eyebrow,
.deployment-detail-box h3,
.deployment-case-head b,
.deployment-raw-kv b{
    color:var(--heading)!important;
}
.deployment-case-head span,
.deployment-raw-kv span,
.deployment-upload-box span{
    color:var(--muted)!important;
}
.deployment-modal-close{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    z-index:30!important;
    background:color-mix(in srgb,var(--panel) 88%,var(--line))!important;
    color:var(--heading)!important;
    border:1px solid var(--line)!important;
    opacity:1!important;
}

/* ChatGPT-artige linke Filterleiste: beide Sektionen bleiben untereinander an Ort und Stelle */
.deployment-layout{
    grid-template-columns:360px minmax(0,1fr)!important;
    gap:12px!important;
    transition:grid-template-columns .18s ease!important;
}
.deployment-layout.one-filter-collapsed{
    grid-template-columns:300px minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:220px minmax(0,1fr)!important;
}
.deployment-sidebar-filters{
    position:sticky!important;
    top:90px!important;
    align-self:start!important;
}
.deployment-sidebar-filters form{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
}
.deployment-filter-section{
    display:block!important;
    min-width:0!important;
}
.filter-section-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:6px!important;
    height:32px!important;
    padding:4px 6px!important;
    margin:0!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
}
.filter-section-head h3{
    margin:0!important;
    font-size:12px!important;
    color:var(--heading)!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
}
.filter-collapse-btn{
    width:22px!important;
    height:22px!important;
    min-height:22px!important;
    flex:0 0 22px!important;
    border-radius:999px!important;
    border:1px solid var(--line)!important;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
    color:var(--muted)!important;
    padding:0!important;
    font-size:13px!important;
    font-weight:900!important;
    cursor:pointer!important;
    line-height:18px!important;
}
.deployment-filter-card{
    margin-top:6px!important;
    padding:6px!important;
    border-radius:12px!important;
    width:100%!important;
}
.collapsed-filter{
    display:none!important;
}
.driver-list.always-open{
    max-height:500px!important;
    overflow-y:auto!important;
}
.driver-chip{
    min-height:28px!important;
    padding:4px 6px!important;
    width:100%!important;
    max-width:100%!important;
}
.driver-chip span{
    font-size:inherit!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

/* Kalendertermin-Kacheln: Inhalt bleibt in Kachel */
.deployment-cell{
    overflow:hidden!important;
    min-width:0!important;
    max-width:100%!important;
}
.event-card,
.event-pill{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    contain:paint!important;
}
.event-card div,
.event-card small,
.event-card b,
.event-pill,
.event-pill b{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    overflow:hidden!important;
}
.deployment-grid.month-grid{
    grid-template-columns:repeat(7,minmax(135px,1fr))!important;
}
@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-sidebar-filters{position:static!important}
}


/* V72_DEPLOYMENT_EXCEL_GROUP_FILTERS */
/* Excel-artige Gruppierung: Bundesland links, Fahrer rechts; eingeklappt bleibt nur schmale + Gruppe sichtbar */
.deployment-layout{
    grid-template-columns:470px minmax(0,1fr)!important;
    gap:12px!important;
    transition:grid-template-columns .18s ease!important;
}
.deployment-layout.one-filter-collapsed{
    grid-template-columns:310px minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:92px minmax(0,1fr)!important;
}
.deployment-sidebar-filters form{
    display:grid!important;
    grid-template-columns:minmax(190px,220px) minmax(215px,240px)!important;
    gap:8px!important;
    align-items:start!important;
}
.deployment-sidebar-filters .apply-drivers{
    grid-column:1 / -1!important;
}
.deployment-filter-section{
    min-width:0!important;
    width:100%!important;
    transition:width .18s ease, max-width .18s ease!important;
}
.deployment-filter-section.section-collapsed{
    width:42px!important;
    max-width:42px!important;
    min-width:42px!important;
}
.deployment-filter-section.section-collapsed .deployment-filter-card{
    display:none!important;
}
.deployment-filter-section.section-collapsed .filter-section-head{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    min-height:128px!important;
    height:128px!important;
    padding:4px!important;
    writing-mode:vertical-rl!important;
    text-orientation:mixed!important;
    justify-content:center!important;
    align-items:center!important;
}
.deployment-filter-section.section-collapsed .filter-section-head h3{
    max-width:100%!important;
    writing-mode:vertical-rl!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:11px!important;
}
.deployment-filter-section.section-collapsed .filter-collapse-btn{
    writing-mode:horizontal-tb!important;
    position:absolute!important;
    top:6px!important;
    right:7px!important;
}
.deployment-filter-section:not(.section-collapsed) .filter-section-head{
    width:100%!important;
}
.deployment-filter-card{
    width:100%!important;
    max-width:100%!important;
}
.driver-chip{
    grid-template-columns:auto minmax(0,1fr) auto!important;
}
.driver-chip span{
    min-width:0!important;
}
@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-sidebar-filters form{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    }
}
@media(max-width:760px){
    .deployment-sidebar-filters form{
        grid-template-columns:1fr!important;
    }
    .deployment-filter-section.section-collapsed{
        width:100%!important;
        max-width:100%!important;
    }
    .deployment-filter-section.section-collapsed .filter-section-head{
        writing-mode:horizontal-tb!important;
        width:100%!important;
        max-width:100%!important;
        min-height:32px!important;
        height:32px!important;
        justify-content:space-between!important;
    }
    .deployment-filter-section.section-collapsed .filter-section-head h3{
        writing-mode:horizontal-tb!important;
    }
    .deployment-filter-section.section-collapsed .filter-collapse-btn{
        position:static!important;
    }
}


/* V73_DEPLOYMENT_OPAQUE_PAGE_POPUP */
/* Einsatzplaner: Seite und Pop-up deckend, aber weiterhin Theme-basiert */
.deployment-container,
.deployment-toolbar,
.deployment-calendar,
.deployment-filters,
.deployment-sidebar-filters,
.deployment-filter-section,
.deployment-filter-card,
.deployment-cell,
.deployment-weekday,
.event-card,
.event-pill{
    opacity:1!important;
    backdrop-filter:none!important;
    mix-blend-mode:normal!important;
}
.deployment-container{
    background:var(--bg)!important;
}
.deployment-toolbar,
.deployment-calendar,
.deployment-filter-card,
.deployment-cell{
    background:var(--panel)!important;
    color:var(--text)!important;
    border-color:var(--line)!important;
}
.deployment-weekday,
.filter-section-head{
    background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
    color:var(--heading)!important;
}
.event-card,
.event-pill{
    background:color-mix(in srgb,var(--gold) 14%,var(--panel))!important;
    color:var(--text)!important;
    border-color:color-mix(in srgb,var(--gold) 36%,var(--line))!important;
}

/* Pop-up wirklich deckend, keine Transparenz im Inhalt */
.deployment-modal{
    background:rgba(15,23,42,.52)!important;
    backdrop-filter:none!important;
}
.deployment-modal-backdrop{
    background:rgba(15,23,42,.52)!important;
    opacity:1!important;
    backdrop-filter:none!important;
}
.deployment-modal-card,
.deployment-modal-card.wide{
    background:var(--panel)!important;
    color:var(--text)!important;
    border:1px solid var(--line)!important;
    opacity:1!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    backdrop-filter:none!important;
    box-shadow:0 34px 95px rgba(0,0,0,.42)!important;
}
.deployment-modal-card::before,
.deployment-modal-card::after,
.deployment-modal-card.wide::before,
.deployment-modal-card.wide::after{
    display:none!important;
    content:none!important;
}
.deployment-modal-head,
.deployment-case-head div,
.deployment-detail-box,
.deployment-raw-kv,
.deployment-attachments li,
.deployment-upload-box{
    background:var(--panel)!important;
    color:var(--text)!important;
    border-color:var(--line)!important;
    opacity:1!important;
    backdrop-filter:none!important;
    mix-blend-mode:normal!important;
}
.deployment-modal-head{
    position:sticky!important;
    top:0!important;
    z-index:20!important;
}
.deployment-modal-head h2,
.deployment-modal-head .eyebrow,
.deployment-detail-box h3,
.deployment-case-head b,
.deployment-raw-kv b{
    color:var(--heading)!important;
}
.deployment-case-head span,
.deployment-raw-kv span,
.deployment-upload-box span{
    color:var(--muted)!important;
}
.deployment-modal-close{
    background:color-mix(in srgb,var(--panel) 88%,var(--line))!important;
    color:var(--heading)!important;
    border:1px solid var(--line)!important;
    opacity:1!important;
}


/* V74_DEPLOYMENT_FILTER_BUTTON_POPUP_FIX */
/* Filter-Anwenden Button sitzt oberhalb von Bundesland/Fahrer und blockiert keine Spalten mehr */
.deployment-sidebar-filters form{
    display:grid!important;
    grid-template-columns:minmax(190px,220px) minmax(215px,240px)!important;
    gap:8px!important;
    align-items:start!important;
}
.deployment-filter-topbar{
    grid-column:1 / -1!important;
    width:100%!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    margin:0 0 2px!important;
}
.deployment-filter-topbar .apply-drivers{
    width:auto!important;
    min-width:128px!important;
    max-width:180px!important;
    height:30px!important;
    min-height:30px!important;
    padding:5px 12px!important;
    font-size:11px!important;
    border-radius:999px!important;
}
.deployment-layout{
    grid-template-columns:470px minmax(0,1fr)!important;
}
.deployment-layout.one-filter-collapsed{
    grid-template-columns:310px minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:92px minmax(0,1fr)!important;
}
.deployment-filter-section{
    min-width:0!important;
}
.deployment-filter-section.section-collapsed{
    width:42px!important;
    max-width:42px!important;
    min-width:42px!important;
}
.deployment-calendar{
    min-width:0!important;
    overflow:hidden!important;
}

/* Pop-up: keine Transparenz mehr. Theme-ähnlich, aber mit festen deckenden Farben */
.deployment-modal,
body .deployment-modal{
    background:rgba(15,23,42,.58)!important;
    backdrop-filter:none!important;
    opacity:1!important;
}
.deployment-modal-backdrop,
body .deployment-modal-backdrop{
    background:rgba(15,23,42,.58)!important;
    backdrop-filter:none!important;
    opacity:1!important;
}

/* Standard/hell */
.deployment-modal-card,
.deployment-modal-card.wide,
.deployment-modal-head,
.deployment-case-head div,
.deployment-detail-box,
.deployment-raw-kv,
.deployment-attachments li,
.deployment-upload-box{
    background:#ffffff!important;
    background-color:#ffffff!important;
    color:#111827!important;
    border-color:#d1d5db!important;
    opacity:1!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    backdrop-filter:none!important;
}

/* Dunkle Themes: feste deckende dunkle Fläche, nicht transparent */
body.dark .deployment-modal-card,
body.dark .deployment-modal-card.wide,
body.dark .deployment-modal-head,
body.dark .deployment-case-head div,
body.dark .deployment-detail-box,
body.dark .deployment-raw-kv,
body.dark .deployment-attachments li,
body.dark .deployment-upload-box,
[data-theme="dark"] .deployment-modal-card,
[data-theme="dark"] .deployment-modal-card.wide,
[data-theme="dark"] .deployment-modal-head,
[data-theme="dark"] .deployment-case-head div,
[data-theme="dark"] .deployment-detail-box,
[data-theme="dark"] .deployment-raw-kv,
[data-theme="dark"] .deployment-attachments li,
[data-theme="dark"] .deployment-upload-box{
    background:#111827!important;
    background-color:#111827!important;
    color:#f9fafb!important;
    border-color:#374151!important;
    opacity:1!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    backdrop-filter:none!important;
}

/* Falls Sarimont Dark nicht body.dark nutzt, auch über CSS-Variablen nicht arbeiten: garantiert deckend */
.deployment-modal-card,
.deployment-modal-card.wide{
    box-shadow:0 34px 95px rgba(0,0,0,.55)!important;
}
.deployment-modal-card::before,
.deployment-modal-card::after,
.deployment-modal-card.wide::before,
.deployment-modal-card.wide::after{
    display:none!important;
    content:none!important;
    background:none!important;
}
.deployment-modal-head{
    position:sticky!important;
    top:0!important;
    z-index:30!important;
}
.deployment-modal-close{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    z-index:40!important;
    background:#f3f4f6!important;
    color:#111827!important;
    border:1px solid #cbd5e1!important;
    opacity:1!important;
}
body.dark .deployment-modal-close,
[data-theme="dark"] .deployment-modal-close{
    background:#1f2937!important;
    color:#f9fafb!important;
    border-color:#4b5563!important;
}
.deployment-modal-head h2,
.deployment-modal-head .eyebrow,
.deployment-detail-box h3,
.deployment-case-head b,
.deployment-raw-kv b{
    color:inherit!important;
}
.deployment-case-head span,
.deployment-raw-kv span,
.deployment-upload-box span{
    color:#64748b!important;
}
body.dark .deployment-case-head span,
body.dark .deployment-raw-kv span,
body.dark .deployment-upload-box span,
[data-theme="dark"] .deployment-case-head span,
[data-theme="dark"] .deployment-raw-kv span,
[data-theme="dark"] .deployment-upload-box span{
    color:#cbd5e1!important;
}

/* Terminkacheln weiter absichern */
.deployment-cell,
.event-card,
.event-pill{
    overflow:hidden!important;
}
.event-card div,
.event-card small,
.event-card b,
.event-pill,
.event-pill b{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    overflow:hidden!important;
}

@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-sidebar-filters form{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    }
}
@media(max-width:760px){
    .deployment-sidebar-filters form{
        grid-template-columns:1fr!important;
    }
    .deployment-filter-topbar{
        justify-content:stretch!important;
    }
    .deployment-filter-topbar .apply-drivers{
        width:100%!important;
        max-width:none!important;
    }
}


/* V75_DEPLOYMENT_CLEAN_FILTER_LAYOUT */
/*
  Saubere Lösung gegen Überlappung:
  - Filter anwenden ist eine eigene Top-Zeile
  - Bundesland/Fahrer sind eine eigene Grid-Zeile darunter
  - Beim Einklappen wird nur die jeweilige Gruppe zur schmalen Excel-Leiste
  - Kalenderbreite hängt nur an der echten linken Gesamtbreite, nicht am Button
*/
.deployment-layout{
    display:grid!important;
    grid-template-columns:470px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
}
.deployment-layout.one-filter-collapsed{
    grid-template-columns:300px minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:116px minmax(0,1fr)!important;
}
.deployment-clean-sidebar,
.deployment-filter-form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
}
.deployment-filter-form{
    display:block!important;
}
.deployment-filter-topbar{
    width:100%!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    margin:0 0 8px!important;
    padding:0!important;
    position:static!important;
}
.deployment-filter-topbar .apply-drivers{
    width:auto!important;
    min-width:132px!important;
    max-width:180px!important;
    height:30px!important;
    min-height:30px!important;
    padding:5px 12px!important;
    border-radius:999px!important;
    font-size:11px!important;
    white-space:nowrap!important;
}
.deployment-filter-groups{
    display:grid!important;
    grid-template-columns:220px 240px!important;
    gap:8px!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}
.deployment-filter-groups.state-collapsed{
    grid-template-columns:44px minmax(0,240px)!important;
}
.deployment-filter-groups.driver-collapsed{
    grid-template-columns:minmax(0,220px) 44px!important;
}
.deployment-filter-groups.both-collapsed{
    grid-template-columns:44px 44px!important;
}
.deployment-filter-section{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
}
.deployment-filter-section .deployment-filter-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    margin-top:6px!important;
}
.deployment-filter-section.section-collapsed .deployment-filter-card{
    display:none!important;
}
.filter-section-head{
    width:100%!important;
    height:32px!important;
    min-height:32px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:6px!important;
    padding:4px 6px!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
    overflow:hidden!important;
}
.filter-section-head h3{
    margin:0!important;
    font-size:12px!important;
    line-height:1!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.filter-collapse-btn{
    flex:0 0 22px!important;
    width:22px!important;
    height:22px!important;
    min-height:22px!important;
    border-radius:999px!important;
    border:1px solid var(--line)!important;
    background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
    color:var(--muted)!important;
    padding:0!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:18px!important;
    cursor:pointer!important;
}
.deployment-filter-section.section-collapsed .filter-section-head{
    width:44px!important;
    height:124px!important;
    min-height:124px!important;
    max-width:44px!important;
    padding:4px!important;
    writing-mode:vertical-rl!important;
    text-orientation:mixed!important;
    justify-content:center!important;
    align-items:center!important;
    position:relative!important;
}
.deployment-filter-section.section-collapsed .filter-section-head h3{
    writing-mode:vertical-rl!important;
    font-size:11px!important;
    max-height:86px!important;
}
.deployment-filter-section.section-collapsed .filter-collapse-btn{
    position:absolute!important;
    top:5px!important;
    right:10px!important;
    writing-mode:horizontal-tb!important;
}
.deployment-calendar{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
}
.deployment-cell,
.event-card,
.event-pill{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
}
.event-card div,
.event-card small,
.event-card b,
.event-pill,
.event-pill b{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    overflow:hidden!important;
}

/* Pop-up bleibt deckend wie in V74 */
.deployment-modal-card,
.deployment-modal-card.wide{
    opacity:1!important;
    backdrop-filter:none!important;
    mix-blend-mode:normal!important;
}
@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-filter-groups,
    .deployment-filter-groups.state-collapsed,
    .deployment-filter-groups.driver-collapsed,
    .deployment-filter-groups.both-collapsed{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    }
}
@media(max-width:760px){
    .deployment-filter-groups,
    .deployment-filter-groups.state-collapsed,
    .deployment-filter-groups.driver-collapsed,
    .deployment-filter-groups.both-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-filter-section.section-collapsed .filter-section-head{
        width:100%!important;
        max-width:100%!important;
        height:32px!important;
        min-height:32px!important;
        writing-mode:horizontal-tb!important;
        justify-content:space-between!important;
    }
    .deployment-filter-section.section-collapsed .filter-section-head h3{
        writing-mode:horizontal-tb!important;
    }
    .deployment-filter-section.section-collapsed .filter-collapse-btn{
        position:static!important;
    }
}


/* V76_DEPLOYMENT_AVAILABILITY_DEDUPE */
.availability-driver-card{
    border:1px solid var(--line);
    border-radius:12px;
    padding:7px 8px;
    margin-bottom:6px;
    background:color-mix(in srgb,#22c55e 9%,var(--panel));
    overflow:hidden;
}
.availability-driver-card b{
    display:block;
    color:var(--heading);
    font-size:12px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.availability-driver-card small{
    display:block;
    margin-top:3px;
    color:var(--muted);
    font-size:10.5px;
    overflow-wrap:anywhere;
}
.availability-driver-card.vacation{
    background:color-mix(in srgb,#f59e0b 13%,var(--panel));
    border-color:color-mix(in srgb,#f59e0b 42%,var(--line));
}
.availability-driver-card.sick{
    background:color-mix(in srgb,#ef4444 12%,var(--panel));
    border-color:color-mix(in srgb,#ef4444 42%,var(--line));
}
.availability-badge{
    display:block!important;
    margin-top:4px!important;
    padding:3px 6px!important;
    border-radius:999px!important;
    font-size:10px!important;
    line-height:1.1!important;
    background:color-mix(in srgb,#f59e0b 16%,var(--panel))!important;
    color:var(--text)!important;
}
.availability-badge.sick{
    background:color-mix(in srgb,#ef4444 16%,var(--panel))!important;
}
.deployment-toolbar-right .btn:not(.secondary){
    background:var(--gold)!important;
    color:#111!important;
}


/* V77_DEPLOYMENT_ROOT_SOURCE_FIX */
.deployment-source-warning,
.alert{
    opacity:1!important;
}


/* V78_DEPLOYMENT_HEADERS_AVAILABILITY_FIX */
.availability-badge,
.availability-driver-card small{
    font-weight:800!important;
}
.event-card small:first-of-type{
    font-weight:800!important;
}


/* V79_DEPLOYMENT_FILTER_ABSENCE_MARKING */
/* Urlaub/Krankheit in der linken Fahrer-Filterleiste markieren */
.driver-availability-chip{
    align-items:center!important;
}
.driver-availability-chip span{
    display:grid!important;
    gap:2px!important;
    min-width:0!important;
}
.driver-availability-chip span b{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:inherit!important;
    font-weight:850!important;
}
.driver-availability-chip span small{
    display:block!important;
    font-size:10px!important;
    line-height:1.05!important;
    font-weight:850!important;
    opacity:.95!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.driver-availability-chip.vacation{
    background:color-mix(in srgb,#f59e0b 22%,var(--panel))!important;
    border-color:color-mix(in srgb,#f59e0b 55%,var(--line))!important;
}
.driver-availability-chip.sick{
    background:color-mix(in srgb,#ef4444 20%,var(--panel))!important;
    border-color:color-mix(in srgb,#ef4444 55%,var(--line))!important;
}
.driver-availability-chip.vacation em{
    background:color-mix(in srgb,#f59e0b 32%,transparent)!important;
}
.driver-availability-chip.sick em{
    background:color-mix(in srgb,#ef4444 28%,transparent)!important;
}


/* V80_DEPLOYMENT_MANUAL_QUEUE */
.deployment-queue-catcher{
    grid-column:1 / -1!important;
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:10px!important;
    border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line))!important;
    border-radius:14px!important;
    background:color-mix(in srgb,var(--gold) 10%,var(--panel))!important;
    padding:9px 10px!important;
    margin-bottom:2px!important;
}
.deployment-queue-catcher b{
    color:var(--heading)!important;
}
.deployment-queue-catcher span{
    color:var(--muted)!important;
    font-size:11px!important;
    font-weight:850!important;
}
.queue-btn{
    border-color:color-mix(in srgb,var(--gold) 45%,var(--line))!important;
}
.event-card.queue-event{
    background:color-mix(in srgb,var(--gold) 20%,var(--panel))!important;
    border-color:color-mix(in srgb,var(--gold) 55%,var(--line))!important;
}
.event-card.queue-event small:first-of-type::before{
    content:'Warteschlange · ';
    font-weight:950;
}


/* V81_DEPLOYMENT_ORDER_OPTIONAL_DELETE */
.deployment-delete-form{
    margin-top:12px!important;
    border-top:1px solid var(--line)!important;
    padding-top:12px!important;
}
.inline-delete-form{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    padding:8px!important;
    margin:6px 0!important;
    background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
}
.inline-delete-form span{
    font-size:12px!important;
    font-weight:800!important;
    overflow-wrap:anywhere!important;
}
.btn.danger,
button.danger{
    background:#dc2626!important;
    color:#fff!important;
    border-color:#dc2626!important;
}
.deployment-availability-delete-list{
    margin-top:14px!important;
    border-top:1px solid var(--line)!important;
    padding-top:12px!important;
}
.deployment-availability-delete-list h3{
    margin:0 0 8px!important;
}


/* V82_DEPLOYMENT_MANUAL_DEFAULT_RAW_TOGGLE */
.availability-driver-card{
    width:100%!important;
    text-align:left!important;
    cursor:pointer!important;
}
.availability-driver-card:hover{
    transform:translateY(-1px);
    box-shadow:0 10px 22px rgba(0,0,0,.12);
}
#availabilityDeleteModal .case-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
}
@media(max-width:760px){
    #availabilityDeleteModal .case-actions{
        grid-template-columns:1fr!important;
    }
}


/* V83_DEPLOYMENT_MANAGER_FINAL */
.deployment-layout{
    grid-template-columns:470px minmax(260px,360px) minmax(0,1fr)!important;
}
.deployment-layout.one-filter-collapsed{
    grid-template-columns:310px minmax(260px,360px) minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:116px minmax(260px,360px) minmax(0,1fr)!important;
}
.deployment-queue-board{
    border:1px solid var(--line);
    border-radius:22px;
    background:var(--panel);
    padding:12px;
    min-width:0;
    max-height:78vh;
    overflow:auto;
}
.deployment-queue-board header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:10px;
}
.deployment-queue-board h2{
    margin:0;
    font-size:16px;
}
.deployment-queue-list{
    display:grid;
    gap:8px;
}
.queue-case-card{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    grid-template-areas:"day title" "day sub";
    gap:2px 8px;
    width:100%;
    text-align:left;
    border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));
    border-radius:14px;
    background:color-mix(in srgb,var(--gold) 10%,var(--panel));
    color:var(--text);
    padding:9px;
    cursor:pointer;
}
.queue-case-card span{
    grid-area:day;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:color-mix(in srgb,var(--gold) 20%,transparent);
    font-size:11px;
    font-weight:950;
}
.queue-case-card b{
    grid-area:title;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.queue-case-card small{
    grid-area:sub;
    color:var(--muted);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.queue-case-card.missing-raw,
.event-card.missing-raw{
    border-color:color-mix(in srgb,#ef4444 55%,var(--line))!important;
    background:color-mix(in srgb,#ef4444 12%,var(--panel))!important;
}
.queue-case-card.missing-raw b,
.event-card.missing-raw b{
    color:#ef4444!important;
}
.deployment-update-form{
    border:1px solid var(--line);
    border-radius:18px;
    padding:12px;
    margin:12px 0;
    background:color-mix(in srgb,var(--panel) 94%,var(--bg));
}
.availability-driver-card.vacation,
.driver-availability-chip.vacation{
    background:color-mix(in srgb,#22c55e 18%,var(--panel))!important;
    border-color:color-mix(in srgb,#22c55e 55%,var(--line))!important;
}
.availability-driver-card.halfday,
.driver-availability-chip.halfday{
    background:color-mix(in srgb,#f59e0b 22%,var(--panel))!important;
    border-color:color-mix(in srgb,#f59e0b 55%,var(--line))!important;
}
.availability-driver-card.sick,
.driver-availability-chip.sick{
    background:color-mix(in srgb,#ef4444 20%,var(--panel))!important;
    border-color:color-mix(in srgb,#ef4444 55%,var(--line))!important;
}
.driver-availability-chip.vacation em{background:color-mix(in srgb,#22c55e 32%,transparent)!important}
.driver-availability-chip.halfday em{background:color-mix(in srgb,#f59e0b 32%,transparent)!important}
.driver-availability-chip.sick em{background:color-mix(in srgb,#ef4444 28%,transparent)!important}
@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
}


/* V84_DEPLOYMENT_RAWDB_SYNC */
#updateRawForm{
    border-color:color-mix(in srgb,var(--gold) 42%,var(--line))!important;
}


/* V85_DEPLOYMENT_FAST_STABLE */
.deployment-sync-note{
    opacity:1!important;
}


/* V86_DEPLOYMENT_SPEED_LAYOUT */
.deployment-filter-topbar{
    justify-content:flex-start!important;
    margin:4px 0 6px!important;
}
.deployment-filter-topbar .apply-drivers{
    margin-left:0!important;
}


/* V87_DEPLOYMENT_DRAGDROP_RAW_EDIT */
.event-card[draggable="true"],
.event-pill[draggable="true"],
.queue-case-card[draggable="true"]{
    cursor:grab!important;
}
.event-card.dragging,
.event-pill.dragging,
.queue-case-card.dragging{
    opacity:.55!important;
}
.deployment-cell.drop-target{
    outline:2px dashed color-mix(in srgb,var(--gold) 70%,transparent)!important;
    outline-offset:-6px!important;
    background:color-mix(in srgb,var(--gold) 8%,var(--panel))!important;
}
#updateRawForm{
    border-color:color-mix(in srgb,var(--gold) 44%,var(--line))!important;
}


/* V88_DEPLOYMENT_PERFORMANCE_DRAGFIX */
.event-card.saving,
.event-pill.saving,
.queue-case-card.saving{
    opacity:.45!important;
    pointer-events:none!important;
    position:relative!important;
}
.event-card.saving::after,
.event-pill.saving::after,
.queue-case-card.saving::after{
    content:'speichern...';
    position:absolute;
    right:8px;
    bottom:6px;
    font-size:10px;
    font-weight:900;
    color:var(--muted);
}


/* V89_DEPLOYMENT_REALTIME_UNICODE_SPEED */
.event-card.saved,
.event-pill.saved,
.queue-case-card.saved{
    box-shadow:0 0 0 2px color-mix(in srgb,#22c55e 70%,transparent)!important;
}
.live-update-notice{
    border-color:color-mix(in srgb,#22c55e 55%,var(--line))!important;
    color:#16a34a!important;
}
.deployment-has-updates .live-update-notice{
    animation:deploymentPulse 1.6s ease-in-out infinite;
}
@keyframes deploymentPulse{
    0%,100%{transform:scale(1)}
    50%{transform:scale(1.035)}
}


/* V90_FILTER_SYMMETRY_MAPPING_ONLY */
/* Fahrer kommen fachlich nur aus Bundesland-Mapping; Layout: symmetrische Filterspalten */
.deployment-layout{
    grid-template-columns:500px minmax(0,1fr)!important;
    gap:12px!important;
}
.deployment-layout.one-filter-collapsed{
    grid-template-columns:292px minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:102px minmax(0,1fr)!important;
}
.deployment-filter-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
}
.deployment-queue-catcher{
    order:1!important;
    min-height:38px!important;
    margin:0!important;
}
.deployment-filter-topbar{
    order:2!important;
    justify-content:flex-start!important;
    margin:0!important;
}
.deployment-filter-groups{
    order:3!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
}
.deployment-filter-groups.state-collapsed{
    grid-template-columns:44px minmax(0,1fr)!important;
}
.deployment-filter-groups.driver-collapsed{
    grid-template-columns:minmax(0,1fr) 44px!important;
}
.deployment-filter-groups.both-collapsed{
    grid-template-columns:44px 44px!important;
}
.deployment-filter-card{
    height:430px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
}
.deployment-filter-card .driver-list,
.driver-list.always-open,
.driver-list.compact-list{
    flex:1 1 auto!important;
    max-height:none!important;
    height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}
.state-filter-card,
#driverFilterBody{
    min-height:430px!important;
    max-height:430px!important;
}
.deployment-filter-section.section-collapsed .deployment-filter-card{
    display:none!important;
}
.deployment-filter-section.section-collapsed .filter-section-head{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    justify-content:center!important;
    padding:4px!important;
}
.deployment-filter-section.section-collapsed .filter-section-head h3{
    display:none!important;
}
.deployment-filter-section.section-collapsed .filter-collapse-btn{
    flex:0 0 28px!important;
    width:28px!important;
    height:28px!important;
}

/* Wenn beide Filter eingeklappt sind: Button + Warteschlange ebenfalls schmal */
.deployment-layout.filters-collapsed .deployment-filter-topbar{
    width:94px!important;
    max-width:94px!important;
    overflow:hidden!important;
}
.deployment-layout.filters-collapsed .deployment-filter-topbar .apply-drivers{
    width:94px!important;
    min-width:94px!important;
    max-width:94px!important;
    padding:0!important;
    font-size:0!important;
    border-radius:14px!important;
}
.deployment-layout.filters-collapsed .deployment-filter-topbar .apply-drivers::after{
    content:'✓';
    font-size:15px!important;
    font-weight:950!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher{
    width:94px!important;
    max-width:94px!important;
    min-width:94px!important;
    padding:8px!important;
    justify-content:center!important;
    overflow:hidden!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher b{
    display:none!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher span{
    font-size:0!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher span::before{
    content:attr(data-count);
    font-size:14px!important;
    font-weight:950!important;
    color:var(--heading)!important;
}
@media(max-width:1250px){
    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        grid-template-columns:1fr!important;
    }
    .deployment-layout.filters-collapsed .deployment-filter-topbar,
    .deployment-layout.filters-collapsed .deployment-queue-catcher{
        width:100%!important;
        max-width:100%!important;
    }
}


/* V91_DEPLOYMENT_QUEUE_SEARCH_PERFORMANCE */
/* Browserneutraler Grundaufbau */
.deployment-container,
.deployment-container *{
    box-sizing:border-box!important;
}
.deployment-hero-compact{
    padding:10px 0 6px!important;
    margin:0!important;
    background:transparent!important;
    border:none!important;
}
.deployment-hero-compact h1{
    font-size:clamp(28px,3.2vw,46px)!important;
    line-height:1!important;
    margin:0!important;
    letter-spacing:-.04em!important;
}
.deployment-toolbar{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:end!important;
    gap:8px!important;
    width:100%!important;
    margin:8px 0 10px!important;
    padding:8px!important;
    border-radius:18px!important;
}
.deployment-toolbar-left,
.deployment-toolbar-center,
.deployment-toolbar-right{
    display:flex!important;
    align-items:end!important;
    gap:6px!important;
    flex-wrap:wrap!important;
}
.deployment-toolbar label{
    margin:0!important;
}
.deployment-toolbar input,
.deployment-toolbar select{
    min-height:34px!important;
}
.deployment-toolbar input[type="search"]{
    min-width:220px!important;
}

/* Filterchips korrigieren: Name immer in der Kachel */
.driver-chip,
.driver-chip.compact{
    display:grid!important;
    grid-template-columns:18px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:6px!important;
}
.driver-chip input{
    margin:0!important;
    position:static!important;
}
.driver-chip span{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.driver-chip span b{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}

/* Bundesland ohne unnötige Scrollleiste, Fahrer weiter scrollbar */
.state-filter-card{
    height:auto!important;
    max-height:none!important;
    min-height:auto!important;
}
.state-filter-card .driver-list{
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody{
    height:430px!important;
    max-height:430px!important;
}
#driverFilterBody .driver-list{
    max-height:none!important;
    overflow-y:auto!important;
}

/* Warteschlange als echtes Drop-Feld */
.deployment-queue-board.drop-target,
.deployment-queue-board:hover{
    outline:2px dashed color-mix(in srgb,var(--gold) 70%,transparent)!important;
    outline-offset:-6px!important;
}

/* Deutschland / Zielland Deutschland */
.event-card.germany-event,
.event-pill.germany-event,
.queue-case-card.germany-event{
    background:color-mix(in srgb,#06b6d4 22%,var(--panel))!important;
    border-color:color-mix(in srgb,#06b6d4 60%,var(--line))!important;
}

/* Ab 6 Einträgen im Tagesfeld scrollen, damit die Seite nicht endlos wächst */
.day-event-list{
    max-height:310px!important;
    overflow-y:auto!important;
    padding-right:3px!important;
}
.deployment-view-week .day-event-list,
.deployment-view-day .day-event-list{
    max-height:360px!important;
}

@media(max-width:1200px){
    .deployment-toolbar{
        grid-template-columns:1fr!important;
    }
    .deployment-toolbar-left,
    .deployment-toolbar-center,
    .deployment-toolbar-right{
        width:100%!important;
    }
}


/* V92_EDGE_LAYOUT_QUEUE_DROP */
/* Edge/Chrome stabile Geometrie: gleiche Box-Modelle und keine Browser-Ausreißer */
.deployment-container,
.deployment-container *,
.deployment-toolbar,
.deployment-toolbar *,
.deployment-filter-form,
.deployment-filter-form *{
    box-sizing:border-box!important;
    min-width:0!important;
}
.deployment-hero-compact{
    padding:4px 0 2px!important;
    margin:0 0 4px!important;
    min-height:0!important;
}
.deployment-hero-compact h1{
    font-size:30px!important;
    line-height:1!important;
    margin:0!important;
    padding:0!important;
}

/* Menüband kompakter und auf Kalenderbreite begrenzt */
.deployment-toolbar{
    margin:4px 0 8px 512px!important;
    width:calc(100% - 512px)!important;
    max-width:calc(100% - 512px)!important;
    min-height:46px!important;
    padding:6px 8px!important;
    border-radius:16px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:6px!important;
    align-items:end!important;
}
.deployment-toolbar-left,
.deployment-toolbar-center,
.deployment-toolbar-right{
    gap:5px!important;
    flex-wrap:nowrap!important;
}
.deployment-toolbar .btn,
.deployment-toolbar button,
.deployment-toolbar a.btn{
    min-height:32px!important;
    height:32px!important;
    padding:6px 9px!important;
    border-radius:11px!important;
    white-space:nowrap!important;
}
.deployment-toolbar label{
    gap:2px!important;
    font-size:10px!important;
    line-height:1!important;
}
.deployment-toolbar input,
.deployment-toolbar select{
    min-height:32px!important;
    height:32px!important;
    padding:5px 8px!important;
    border-radius:10px!important;
}
.deployment-toolbar input[type="search"]{
    min-width:170px!important;
    max-width:210px!important;
}

/* Linke Filterzone rückt optisch auf Höhe des Menübands */
.deployment-layout{
    grid-template-columns:500px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
}
.deployment-clean-sidebar{
    margin-top:-54px!important;
}
.deployment-filter-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
}
.deployment-queue-catcher{
    min-height:38px!important;
    padding:7px 9px!important;
    margin:0!important;
    cursor:copy!important;
}
.deployment-queue-catcher.drop-target{
    outline:2px dashed color-mix(in srgb,var(--gold) 75%,transparent)!important;
    outline-offset:-5px!important;
    background:color-mix(in srgb,var(--gold) 16%,var(--panel))!important;
}
.deployment-filter-topbar{
    margin:0!important;
    justify-content:flex-start!important;
}
.deployment-filter-topbar .apply-drivers{
    height:30px!important;
    min-height:30px!important;
    margin:0!important;
}

/* Bundesland/Fahrer: symmetrisch, Edge-stabile Grid-Kacheln */
.deployment-filter-groups{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    align-items:start!important;
}
.deployment-filter-section,
.deployment-filter-card{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}
.deployment-filter-card{
    padding:8px!important;
    border-radius:16px!important;
}
.state-filter-card{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
}
.state-filter-card .driver-list{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
}
#driverFilterBody .driver-list{
    height:100%!important;
    max-height:430px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}

/* Fahrer/Bundesland Kacheln: Name bleibt sauber in der Kachel */
.driver-chip,
.driver-chip.compact,
.driver-availability-chip{
    display:grid!important;
    grid-template-columns:18px minmax(0,1fr) 34px!important;
    align-items:center!important;
    column-gap:7px!important;
    width:100%!important;
    min-height:32px!important;
    padding:5px 7px!important;
    overflow:hidden!important;
    line-height:1.1!important;
}
.driver-chip input{
    grid-column:1!important;
    width:14px!important;
    height:14px!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
}
.driver-chip span{
    grid-column:2!important;
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.driver-chip span b,
.driver-chip span small{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.driver-chip em{
    grid-column:3!important;
    justify-self:end!important;
    width:30px!important;
    min-width:30px!important;
    max-width:30px!important;
    height:22px!important;
    margin:0!important;
    padding:0!important;
}

/* Bei beiden eingeklappt: Button und Warteschlange nur als schmale Symbole/Zahl */
.deployment-layout.filters-collapsed .deployment-clean-sidebar{
    width:102px!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher{
    width:94px!important;
    min-width:94px!important;
    max-width:94px!important;
    justify-content:center!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher b{
    display:none!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher span{
    font-size:0!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher span::before{
    content:attr(data-count);
    font-size:14px!important;
    font-weight:950!important;
}
.deployment-layout.filters-collapsed .deployment-filter-topbar .apply-drivers{
    width:94px!important;
    min-width:94px!important;
    max-width:94px!important;
    font-size:0!important;
    padding:0!important;
}
.deployment-layout.filters-collapsed .deployment-filter-topbar .apply-drivers::after{
    content:'✓';
    font-size:15px!important;
    font-weight:950!important;
}

@media(max-width:1300px){
    .deployment-toolbar{
        margin-left:0!important;
        width:100%!important;
        max-width:100%!important;
        grid-template-columns:1fr!important;
    }
    .deployment-clean-sidebar{
        margin-top:0!important;
    }
    .deployment-toolbar-left,
    .deployment-toolbar-center,
    .deployment-toolbar-right{
        flex-wrap:wrap!important;
    }
}


/* V93_QUEUE_COMPLETION_MAPPING_RESET */
.deployment-queue-catcher[data-queue-drop="1"]{
    cursor:copy!important;
}
.deployment-queue-catcher[data-queue-drop="1"].drop-target{
    outline:2px dashed color-mix(in srgb,var(--gold) 75%,transparent)!important;
    outline-offset:-5px!important;
    background:color-mix(in srgb,var(--gold) 18%,var(--panel))!important;
}
.grid.three{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
}
.danger-zone{
    border-color:color-mix(in srgb,#dc2626 45%,var(--line))!important;
}
@media(max-width:900px){
    .grid.three{grid-template-columns:1fr!important}
}


/* V94_COMPLETION_RESET_DESIGNFIX */
.deployment-reset-db-panel{
    border:1px solid color-mix(in srgb,#dc2626 45%,var(--line))!important;
}
.deployment-reset-db-panel .btn.danger{
    display:inline-flex!important;
}
/* Fahrerfilter exakt gleiche visuelle Höhe wie Bundeslandbereich, aber Bundesland ohne Scroll */
.deployment-filter-card{
    min-height:360px!important;
}
.state-filter-card{
    height:auto!important;
    min-height:360px!important;
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody{
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
    overflow:hidden!important;
}
#driverFilterBody .driver-list{
    max-height:300px!important;
    overflow-y:auto!important;
}
/* Ab 5 Kacheln Scrollbereich im Tagesfeld */
.day-event-list{
    max-height:250px!important;
    overflow-y:auto!important;
}
.deployment-view-week .day-event-list,
.deployment-view-day .day-event-list{
    max-height:300px!important;
}


/* V95_QUEUE_CLEANUP_LAYOUT */
/* Ab 5 Kacheln: Kacheln kompakt, Scrollfeld größer als einzelne Kachel */
.day-event-list{
    display:grid!important;
    gap:5px!important;
    max-height:226px!important; /* ca. 5 kompakte Kacheln */
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:3px!important;
}
.event-card,
.event-pill{
    min-height:38px!important;
    max-height:52px!important;
    padding:6px 8px!important;
    border-radius:12px!important;
    line-height:1.12!important;
}
.event-card div,
.event-card small{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.deployment-cell{
    min-height:132px!important;
}

/* Filterhöhe wird vom Bundesland bestimmt; Kalenderkacheln beeinflussen Filter nie */
.deployment-layout{
    align-items:start!important;
}
.deployment-filter-card{
    height:auto!important;
    min-height:0!important;
}
.state-filter-card{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
}
.state-filter-card .driver-list{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody .driver-list{
    max-height:none!important;
    overflow:visible!important;
}

/* Einklappen der Filter erweitert nur Kalenderbreite, nicht Filterhöhe */
.deployment-layout.one-filter-collapsed{
    grid-template-columns:292px minmax(0,1fr)!important;
}
.deployment-layout.filters-collapsed{
    grid-template-columns:102px minmax(0,1fr)!important;
}


/* V96_FULL_RESET_COMPLETION_FIX */
/* Bundesland gibt die optische Höhe vor: beide Karten identisch, Fahrer scrollt intern */
.deployment-filter-groups{
    align-items:start!important;
}
.state-filter-card,
#driverFilterBody{
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
    padding:8px!important;
    overflow:hidden!important;
}
.state-filter-card .driver-list{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody .driver-list{
    height:300px!important;
    max-height:300px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}
.driver-chip,
.driver-chip.compact,
.driver-availability-chip{
    min-height:31px!important;
    height:31px!important;
    max-height:31px!important;
    padding:4px 7px!important;
}
.driver-chip span,
.driver-chip span b,
.driver-chip span small{
    line-height:1.05!important;
}

/* Kalenderkacheln kompakt und Scrollfeld ab 5 Einträgen */
.day-event-list{
    display:grid!important;
    gap:5px!important;
    max-height:218px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:3px!important;
}
.event-card,
.event-pill{
    min-height:36px!important;
    max-height:48px!important;
    padding:5px 8px!important;
    overflow:hidden!important;
}
.event-card div,
.event-card small{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}


/* V97_COMPLETION_DISPLAY_DEATHDATE_FILTERS */
/* Fahrer/Bundesland-Kacheln größer; Abwesenheit lesbar; beide Filter gleich hoch */
.state-filter-card,
#driverFilterBody{
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
}
.state-filter-card .driver-list{
    overflow:visible!important;
    max-height:none!important;
}
#driverFilterBody .driver-list{
    height:352px!important;
    max-height:352px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}
.driver-chip,
.driver-chip.compact,
.driver-availability-chip{
    min-height:44px!important;
    height:44px!important;
    max-height:44px!important;
    grid-template-columns:18px minmax(0,1fr) 38px!important;
    padding:7px 8px!important;
    align-items:center!important;
}
.driver-availability-chip span{
    display:grid!important;
    gap:3px!important;
}
.driver-availability-chip span b,
.driver-chip span{
    font-size:12px!important;
    line-height:1.1!important;
}
.driver-availability-chip span small{
    display:block!important;
    font-size:10.5px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.driver-chip em{
    min-width:34px!important;
    width:34px!important;
    height:24px!important;
}


/* V98_CUTDATE_QUEUE_DUPLICATE_FIX */
.deployment-queue-board.drop-target,
.deployment-queue-board:hover{
    outline:none!important;
}
.deployment-queue-catcher[data-queue-drop="1"].drop-target{
    outline:2px dashed color-mix(in srgb,var(--gold) 75%,transparent)!important;
    outline-offset:-5px!important;
    background:color-mix(in srgb,var(--gold) 18%,var(--panel))!important;
}
.event-card.completion-duplicate,
.event-pill.completion-duplicate{
    position:relative!important;
}
.event-card.completion-duplicate::after,
.event-pill.completion-duplicate::after{
    content:'★';
    position:absolute;
    top:5px;
    right:7px;
    font-size:13px;
    line-height:1;
    color:var(--gold);
    text-shadow:0 1px 2px rgba(0,0,0,.18);
}


/* V100_LIVE_SSE */
.deployment-live-status{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:26px!important;
    padding:4px 10px!important;
    border:1px solid color-mix(in srgb,#22c55e 45%,var(--line))!important;
    border-radius:999px!important;
    background:color-mix(in srgb,#22c55e 10%,var(--panel))!important;
    color:var(--text)!important;
    font-size:11px!important;
    font-weight:850!important;
    margin:-2px 0 6px 512px!important;
}
.deployment-live-status[data-state="syncing"]{
    border-color:color-mix(in srgb,#f59e0b 55%,var(--line))!important;
    background:color-mix(in srgb,#f59e0b 12%,var(--panel))!important;
}
.deployment-live-status[data-state="fallback"]{
    border-color:color-mix(in srgb,#ef4444 45%,var(--line))!important;
    background:color-mix(in srgb,#ef4444 10%,var(--panel))!important;
}
@media(max-width:1300px){
    .deployment-live-status{margin-left:0!important}
}


/* V102_CHROME_LIVE_FILTER_HEIGHT */
/* Fahrer- und Bundeslandlisten um ca. 50% verlängert */
.state-filter-card,
#driverFilterBody{
    height:645px!important;
    min-height:645px!important;
    max-height:645px!important;
}
.state-filter-card .driver-list{
    max-height:none!important;
    overflow:visible!important;
}
#driverFilterBody .driver-list{
    height:567px!important;
    max-height:567px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}
.deployment-live-status[data-state="ok"]{
    border-color:color-mix(in srgb,#22c55e 58%,var(--line))!important;
}

/* Audit log */
.audit-table td{
    vertical-align:top;
}
.audit-table .chip{
    display:inline-flex;
    padding:7px 10px;
    font-size:12px;
}
.audit-json{
    max-width:520px;
    max-height:260px;
    overflow:auto;
    margin:10px 0 0;
    padding:12px;
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(0,0,0,.18);
    color:var(--text);
    white-space:pre-wrap;
    word-break:break-word;
}

/* Einsatzplaner mobile fix: Kalender vollstaendig statt abgeschnitten */
@media(max-width:760px){
    html,
    body{
        overflow-x:hidden!important;
    }

    .deployment-container{
        width:100%!important;
        max-width:100%!important;
        padding-left:8px!important;
        padding-right:8px!important;
        overflow:visible!important;
    }

    .deployment-hero-compact{
        padding:8px 0 6px!important;
    }

    .deployment-hero-compact h1{
        font-size:26px!important;
    }

    .deployment-toolbar{
        width:100%!important;
        max-width:100%!important;
        margin:0 0 10px!important;
        padding:10px!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        overflow:visible!important;
    }

    .deployment-toolbar-left,
    .deployment-toolbar-center,
    .deployment-toolbar-right{
        width:100%!important;
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
    }

    .deployment-toolbar-center label,
    .deployment-toolbar .btn,
    .deployment-toolbar button,
    .deployment-toolbar a.btn,
    .deployment-toolbar input,
    .deployment-toolbar select{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
    }

    .deployment-toolbar-left .btn:nth-child(3),
    .deployment-toolbar-center label:nth-child(4),
    .deployment-toolbar-right .queue-btn{
        grid-column:1 / -1!important;
    }

    .deployment-live-status{
        width:100%!important;
        margin:0 0 10px!important;
        justify-content:center!important;
    }

    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
        width:100%!important;
        max-width:100%!important;
        overflow:visible!important;
    }

    .deployment-clean-sidebar{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        overflow:visible!important;
    }

    .deployment-filter-groups{
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    .state-filter-card,
    #driverFilterBody{
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
    }

    .state-filter-card .driver-list,
    #driverFilterBody .driver-list{
        height:auto!important;
        max-height:190px!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
    }

    .deployment-calendar{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        overflow:visible!important;
    }

    .deployment-calendar-head{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:4px!important;
        padding:12px!important;
    }

    .deployment-grid,
    .deployment-grid.month-grid,
    .deployment-grid.linear-grid,
    .deployment-grid.year-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        gap:8px!important;
        overflow:visible!important;
    }

    .deployment-weekday{
        display:none!important;
    }

    .deployment-cell,
    .deployment-cell.year-cell{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        min-height:88px!important;
        height:auto!important;
        overflow:visible!important;
        padding:10px!important;
        border-radius:16px!important;
    }

    .deployment-cell header{
        min-width:0!important;
        gap:8px!important;
    }

    .day-event-list,
    .deployment-view-week .day-event-list,
    .deployment-view-day .day-event-list{
        max-height:none!important;
        height:auto!important;
        overflow:visible!important;
        padding-right:0!important;
    }

    .event-card,
    .event-pill,
    .availability-driver-card{
        width:100%!important;
        max-width:100%!important;
        min-height:42px!important;
        max-height:none!important;
        height:auto!important;
        white-space:normal!important;
    }

    .event-card div,
    .event-card small{
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
    }

    .deployment-modal-card,
    .deployment-modal-card.wide{
        width:calc(100vw - 16px)!important;
        max-width:calc(100vw - 16px)!important;
        max-height:calc(100dvh - 20px)!important;
        overflow:auto!important;
        border-radius:18px!important;
    }

    .deployment-queue-board,
    .deployment-queue-list{
        width:100%!important;
        max-width:100%!important;
        overflow:visible!important;
    }
}

/* Einsatzplaner landscape final override: muss nach allen alten Kalenderregeln stehen */
@media(orientation:landscape) and (max-width:980px), (max-height:520px) and (max-width:1100px){
    html,
    body{
        height:auto!important;
        min-height:100%!important;
        max-height:none!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }

    body.modal-open{
        overflow:hidden!important;
    }

    .topbar{
        position:relative!important;
    }

    .deployment-container{
        width:100%!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        padding:6px 8px 24px!important;
        margin:0!important;
        overflow:visible!important;
    }

    .deployment-hero-compact{
        display:none!important;
    }

    .deployment-toolbar{
        width:100%!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0 0 8px!important;
        padding:7px!important;
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:7px!important;
        overflow:visible!important;
    }

    .deployment-toolbar-left,
    .deployment-toolbar-center,
    .deployment-toolbar-right{
        width:100%!important;
        display:flex!important;
        flex-wrap:wrap!important;
        gap:5px!important;
    }

    .deployment-toolbar-center{
        grid-column:1 / -1!important;
        display:grid!important;
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    .deployment-toolbar .btn,
    .deployment-toolbar button,
    .deployment-toolbar a.btn{
        width:auto!important;
        min-height:28px!important;
        height:28px!important;
        padding:4px 8px!important;
        font-size:11px!important;
    }

    .deployment-toolbar label{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        gap:2px!important;
        font-size:9px!important;
    }

    .deployment-toolbar input,
    .deployment-toolbar select,
    .deployment-toolbar input[type="search"]{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:28px!important;
        min-height:28px!important;
        padding:3px 7px!important;
        font-size:12px!important;
    }

    .deployment-live-status{
        width:100%!important;
        margin:0 0 7px!important;
    }

    .deployment-layout,
    .deployment-layout.one-filter-collapsed,
    .deployment-layout.filters-collapsed{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
        width:100%!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
    }

    .deployment-clean-sidebar,
    .deployment-filters,
    .deployment-filter-form{
        width:100%!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        overflow:visible!important;
    }

    .deployment-filter-groups{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:7px!important;
        width:100%!important;
        max-width:100%!important;
    }

    .state-filter-card,
    #driverFilterBody{
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        padding:7px!important;
        overflow:visible!important;
    }

    .state-filter-card .driver-list,
    #driverFilterBody .driver-list{
        height:auto!important;
        max-height:118px!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
    }

    .driver-chip,
    .driver-chip.compact,
    .driver-availability-chip{
        min-height:30px!important;
        height:auto!important;
        max-height:none!important;
        padding:4px 7px!important;
    }

    .deployment-calendar,
    .deployment-grid,
    .deployment-grid.month-grid,
    .deployment-grid.linear-grid,
    .deployment-grid.year-grid{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
    }

    .deployment-calendar-head{
        padding:8px 10px!important;
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:3px!important;
    }

    .deployment-grid,
    .deployment-grid.month-grid,
    .deployment-grid.linear-grid,
    .deployment-grid.year-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:7px!important;
    }

    .deployment-weekday{
        display:none!important;
    }

    .deployment-cell,
    .deployment-cell.year-cell,
    .month-grid .deployment-cell,
    .linear-grid .deployment-cell,
    .year-grid .deployment-cell{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:auto!important;
        min-height:68px!important;
        max-height:none!important;
        padding:8px!important;
        overflow:visible!important;
    }

    .day-event-list,
    .deployment-view-week .day-event-list,
    .deployment-view-day .day-event-list{
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
        padding-right:0!important;
    }

    .event-card,
    .event-pill,
    .availability-driver-card{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:auto!important;
        min-height:34px!important;
        max-height:none!important;
        overflow:visible!important;
        white-space:normal!important;
    }

    .event-card div,
    .event-card small,
    .event-pill{
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:anywhere!important;
    }
}


/* ZSU_CI_SYSTEM_V2 */
:root{--zsu-red:#b40000;--zsu-gray:#686868;--zsu-shop-red:#e30613;--zsu-ev-teal:#19a7b8;--zsu-ev-dark:#173c43;--zsu-surface:#ffffff;--zsu-shadow:0 14px 38px rgba(17,24,39,.08)}
body{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 88%,#fff) 0,var(--bg) 58%,color-mix(in srgb,var(--bg) 88%,#e8edf0) 100%);color:var(--text)}
.topbar{position:sticky;top:0;z-index:1000;background:color-mix(in srgb,var(--header) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(16px);box-shadow:0 10px 28px rgba(17,24,39,.06)}
.topbar-inner{max-width:1480px;min-height:66px;margin:auto;padding:10px 22px;display:grid;grid-template-columns:minmax(132px,220px) minmax(0,1fr) auto;align-items:center;gap:18px}.brand{min-width:0;color:var(--gold);letter-spacing:0}.brand,.zsu-logo,.zsu-gmbh-logo,.sarimont-logo{display:inline-flex;align-items:center}.zsu-logo img,.zsu-gmbh-logo img,.sarimont-logo img{display:block;width:auto;height:auto;object-fit:contain}.nav-logo img{max-height:38px;max-width:154px}.zsu-gmbh-logo.nav-logo img{max-width:168px}.zsu-shop-logo.nav-logo img{max-height:30px;max-width:132px}.zsu-ev-logo.nav-logo{background:var(--zsu-ev-dark);border-radius:10px;padding:7px 10px}.zsu-ev-logo.nav-logo img{max-height:30px;max-width:148px}
.center-nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.7vw,28px);min-width:0}.center-nav a,.nav-actions a{color:var(--text);opacity:.76;font-size:14px;font-weight:750;white-space:nowrap}.center-nav a.active,.nav-actions a.active,.center-nav a:hover,.nav-actions a:hover{opacity:1;color:var(--gold)}.nav-actions{justify-self:end;display:flex;align-items:center;gap:14px}.lang-select-form{margin:0}.lang-select{height:36px;min-width:62px;border-radius:999px;padding:0 10px;background:color-mix(in srgb,var(--header) 92%,#fff);color:var(--text);border:1px solid var(--line);font-weight:800}.mobile-menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--header) 94%,#fff);padding:9px;align-items:center;justify-content:center;gap:4px;flex-direction:column}.mobile-menu-toggle span{display:block;width:19px;height:2px;border-radius:999px;background:var(--gold)}
.card,.panel,.widget,.filterbar,.account-block,.table-wrap,.xcard{background:color-mix(in srgb,var(--header) 92%,#fff);border-color:var(--line);border-radius:16px;box-shadow:var(--zsu-shadow)}.hero{padding:30px 0 24px}.hero h1{color:var(--heading);letter-spacing:0;font-size:clamp(34px,4.8vw,64px)}.hero p{color:var(--muted)}.eyebrow,.chip,th{color:var(--gold)}button,.btn,.xbtn,.xexpert-toggle{background:var(--gold)!important;border-color:var(--gold)!important;color:#fff!important}.btn.secondary,button.secondary{background:transparent!important;color:var(--text)!important;border-color:var(--line)!important}input,select,textarea{border-color:var(--line);background:color-mix(in srgb,var(--header) 88%,#fff);color:var(--text)}
.login-body{min-height:100vh;background:linear-gradient(135deg,#fff 0,#f7f4ef 52%,#ece7df 100%)}.auth-logo-inline{justify-content:center;margin:0 auto 20px}.auth-logo-inline img{max-height:84px;max-width:270px}
@media(max-width:980px){.topbar-inner{grid-template-columns:1fr auto;min-height:60px;padding:9px 14px}.mobile-menu-toggle{display:inline-flex;justify-self:end}.center-nav,.nav-actions{display:none}.nav-open .center-nav,.nav-open .nav-actions{display:flex;grid-column:1/-1;width:100%;background:color-mix(in srgb,var(--header) 96%,#fff);border:1px solid var(--line);border-radius:16px;box-shadow:var(--zsu-shadow)}.nav-open .center-nav{margin-top:8px;padding:10px;flex-direction:column;align-items:stretch;gap:2px}.nav-open .center-nav a{padding:12px 14px;border-radius:12px}.nav-open .center-nav a.active,.nav-open .center-nav a:hover{background:color-mix(in srgb,var(--gold) 12%,transparent)}.nav-open .nav-actions{margin-top:8px;padding:10px;align-items:center;justify-content:space-between;gap:8px}.nav-logo img{max-height:32px;max-width:142px}.zsu-shop-logo.nav-logo img{max-height:27px}.zsu-ev-logo.nav-logo img{max-height:27px}.container{padding:26px 14px}.hero h1{font-size:34px}}


/* ZSU_PDF_CI */
.pdf-logo-svg img,.report-logo img{max-height:58px;max-width:230px;width:auto;object-fit:contain}.pdf-cover .zsu-ev-logo,.pdf-final .zsu-ev-logo{display:inline-flex;background:var(--zsu-ev-dark);border-radius:12px;padding:8px 12px}.pdf-cover .zsu-ev-logo img,.pdf-final .zsu-ev-logo img{max-height:36px}.pdf-cover .zsu-shop-logo img,.pdf-final .zsu-shop-logo img{max-height:38px}.pdf-cover .zsu-gmbh-logo img,.pdf-final .zsu-gmbh-logo img{max-height:64px}



/* ZSU_CI_SYSTEM_V3_FIXES */
.topbar{background:color-mix(in srgb,var(--header) 96%,transparent)!important;color:var(--header-text)!important}.topbar-inner{grid-template-columns:220px minmax(0,1fr) auto!important;min-height:64px!important}.brand{width:220px;height:48px;justify-content:flex-start;overflow:hidden}.nav-logo{width:100%;height:48px;display:flex!important;align-items:center}.nav-logo img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:left center}.zsu-shop-logo.nav-logo img{object-fit:contain!important}.zsu-ev-logo.nav-logo{width:220px;height:48px;background:var(--zsu-ev-dark);border-radius:12px;padding:8px 12px}.zsu-ev-logo.nav-logo img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}.center-nav a,.nav-actions a{color:var(--header-text)!important}.center-nav a.active,.nav-actions a.active,.center-nav a:hover,.nav-actions a:hover{color:var(--gold)!important}
button,.btn,.xbtn,.xexpert-toggle,.deployment-toolbar button,.deployment-toolbar .btn,.deployment-calendar button,.deployment-cell button,.event-action,.queue-btn{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--accent-text)!important}.btn.secondary,button.secondary,.deployment-toolbar .btn.secondary{background:color-mix(in srgb,var(--header) 90%,transparent)!important;color:var(--text)!important;border-color:var(--line)!important}.deployment-cell,.deployment-calendar,.deployment-grid,.deployment-filter-card,.state-filter-card{background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}.deployment-cell header,.deployment-calendar-head{color:var(--heading)!important}.event-card,.event-pill,.availability-driver-card{background:color-mix(in srgb,var(--gold) 9%,var(--panel))!important;color:var(--text)!important;border-color:color-mix(in srgb,var(--gold) 32%,var(--line))!important}.event-card small,.event-pill small{color:var(--muted)!important}.big,.kpi-value,.widget .big,.widget h2{color:var(--heading)!important}
.mobile-menu-toggle{position:relative;color:var(--accent-text)!important;background:var(--gold)!important;border-color:var(--gold)!important}.mobile-menu-toggle span{background:var(--accent-text)!important}.mobile-menu-toggle::after{content:"";position:absolute;right:7px;bottom:7px;width:7px;height:7px;border-right:2px solid var(--accent-text);border-bottom:2px solid var(--accent-text);transform:rotate(45deg)}.nav-open .mobile-menu-toggle::after{transform:rotate(225deg);bottom:5px}.lang-select{color:var(--header-text)!important;background:color-mix(in srgb,var(--header) 92%,#fff)!important}.lang-select:focus,.mobile-menu-toggle:focus-visible,a:focus-visible,button:focus-visible,.btn:focus-visible{outline:3px solid color-mix(in srgb,var(--gold) 45%,#fff)!important;outline-offset:2px}
.zsu-theme-zsu_gmbh.zsu-context-ev{--header:#173c43;--header-text:#ffffff;--heading:#173c43;--gold:#19a7b8;--accent-text:#073238}.zsu-theme-zsu_gmbh.zsu-context-shop{--gold:#e30613;--accent-text:#ffffff}.zsu-theme-zsu_gmbh.zsu-context-gmbh{--gold:#b40000;--accent-text:#ffffff}.zsu-theme-zsu_ev.zsu-context-gmbh{--gold:#b40000;--accent-text:#ffffff;--heading:#5f6062}.zsu-theme-zsu_shop.zsu-context-ev{--header:#173c43;--header-text:#ffffff;--heading:#173c43;--gold:#19a7b8;--accent-text:#073238}
.zsu-context-gmbh::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(247,244,239,.93));pointer-events:none}.zsu-context-ev::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(243,250,251,.94)),url('../img/zsu-ev-bg.jpg?v=20260619ci12') center top/cover no-repeat;pointer-events:none}.zsu-context-shop::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,245,245,.98));pointer-events:none}
@media(max-width:980px){.topbar-inner{grid-template-columns:1fr auto!important;min-height:58px!important}.brand{width:min(220px,calc(100vw - 86px));height:42px}.nav-logo{height:42px}.zsu-ev-logo.nav-logo{width:min(220px,calc(100vw - 86px));height:42px}.nav-open .center-nav,.nav-open .nav-actions{background:var(--header)!important;color:var(--header-text)!important}.nav-open .nav-actions{display:grid!important;grid-template-columns:1fr 1fr auto!important}.lang-select{width:100%}}


/* ZSU_CI_SYSTEM_V4_STABILITY */
body{--muted:color-mix(in srgb,var(--text) 66%,var(--bg));--line:color-mix(in srgb,var(--text) 18%,transparent)}
@media(min-width:981px){
  .topbar-inner{grid-template-columns:240px minmax(0,1fr) 240px!important;max-width:1500px!important;min-height:64px!important}
  .brand{width:240px!important}
  .nav-actions{width:240px!important;justify-self:end!important;justify-content:flex-end!important}
  .center-nav{justify-content:center!important;gap:clamp(10px,1.35vw,24px)!important;overflow-x:auto!important;scrollbar-width:none}
  .center-nav::-webkit-scrollbar{display:none}
  .mobile-menu-toggle{display:none!important}
}
.mobile-menu-toggle{display:none!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-width:78px!important;width:auto!important;height:42px!important;padding:0 13px!important;border-radius:999px!important;box-shadow:0 10px 24px color-mix(in srgb,var(--gold) 24%,transparent)!important}
.mobile-menu-toggle::after{content:none!important}
.mobile-menu-toggle .menu-bars{display:inline-flex!important;flex-direction:column!important;justify-content:center!important;gap:4px!important;width:20px!important;height:16px!important;background:transparent!important;border-radius:0!important}
.mobile-menu-toggle .menu-bars i{display:block!important;width:20px!important;height:2px!important;border-radius:999px!important;background:var(--accent-text)!important}
.mobile-menu-toggle strong{display:inline-block!important;color:var(--accent-text)!important;font-size:11px!important;line-height:1!important;letter-spacing:.02em!important;text-transform:none!important}
body.zsu-theme-zsu_gmbh.zsu-context-gmbh{--gold:#b40000!important;--accent-text:#ffffff!important}
body.zsu-theme-zsu_gmbh.zsu-context-shop{--gold:#e30613!important;--accent-text:#ffffff!important}
body.zsu-theme-zsu_ev{--gold:#19a7b8!important;--accent-text:#073238!important}
body.zsu-theme-zsu_ev.zsu-context-gmbh{--gold:#b40000!important;--accent-text:#ffffff!important;--heading:#5f6062!important}
body.zsu-theme-zsu_shop{--gold:#e30613!important;--accent-text:#ffffff!important}
body.zsu-theme-zsu_shop.zsu-context-ev{--header:#173c43!important;--header-text:#ffffff!important;--heading:#173c43!important;--gold:#19a7b8!important;--accent-text:#073238!important}
body.zsu-theme-light_gold,
body.zsu-theme-dark_gold{--gold:#c8a96b!important;--accent-text:#111827!important}
button,.btn,.xbtn,.xexpert-toggle,.deployment-toolbar button,.deployment-toolbar .btn,.deployment-calendar button,.deployment-cell button,.event-action,.queue-btn{color:var(--accent-text)!important}
.btn.secondary,button.secondary,.deployment-toolbar .btn.secondary{color:var(--text)!important}
.card,.panel,.widget,.filterbar,.table-wrap,.xcard,.deployment-cell,.deployment-calendar,.deployment-grid,.deployment-filter-card,.state-filter-card{color:var(--text)!important}
.card p,.panel p,.widget p,.filterbar p,.xcard p,.small,.muted,.hint,.help-text,.event-card small,.event-pill small{color:var(--muted)!important}
table,.smart-table,.deployment-table{color:var(--text)!important}
th,.smart-table th{color:var(--heading)!important;background:color-mix(in srgb,var(--header) 92%,var(--bg))!important}
td,.smart-table td{color:var(--text)!important}
.deployment-cell header,.deployment-calendar-head,.deployment-calendar-weekdays,.deployment-day-number,.deployment-cell .day-number{color:var(--heading)!important}
.event-card,.event-pill,.availability-driver-card{background:color-mix(in srgb,var(--gold) 10%,var(--panel))!important;color:var(--text)!important}
.deployment-calendar button,.deployment-cell button{min-height:38px!important}
@media(max-width:980px){
  .topbar-inner{grid-template-columns:1fr auto!important;min-height:58px!important}
  .brand{width:min(230px,calc(100vw - 108px))!important;height:42px!important}
  .mobile-menu-toggle{display:inline-flex!important}
  .nav-open .center-nav,.nav-open .nav-actions{background:var(--header)!important;color:var(--header-text)!important}
  .nav-open .center-nav a,.nav-open .nav-actions a{color:var(--header-text)!important}
  .nav-open .center-nav a.active,.nav-open .center-nav a:hover,.nav-open .nav-actions a.active,.nav-open .nav-actions a:hover{color:var(--gold)!important;background:color-mix(in srgb,var(--gold) 12%,transparent)!important}
}
@supports not (color:color-mix(in srgb,#000,#fff)){
  body{background:var(--bg)!important}
  .topbar,.card,.panel,.widget,.filterbar,.table-wrap,.xcard{background:var(--header)!important}
  .zsu-context-gmbh::before,.zsu-context-ev::before,.zsu-context-shop::before{display:none!important}
}


/* ZSU_CI_SYSTEM_V5_RED_PATTERN_READABILITY */
body{isolation:isolate;background:linear-gradient(180deg,#fbfaf8 0%,var(--bg) 100%)!important}
body.zsu-theme-zsu_gmbh.zsu-context-gmbh{--gold:#b40000!important;--accent-text:#ffffff!important;--heading:#5f6062!important}
body.zsu-theme-zsu_gmbh.zsu-context-shop{--gold:#e30613!important;--accent-text:#ffffff!important;--heading:#111111!important}
body.zsu-theme-zsu_shop{--gold:#e30613!important;--accent-text:#ffffff!important;--heading:#111111!important}
body.zsu-theme-zsu_shop.zsu-context-ev{--header:#173c43!important;--header-text:#ffffff!important;--heading:#173c43!important;--gold:#19a7b8!important;--accent-text:#073238!important}
body.zsu-context-gmbh::before,
body.zsu-context-shop::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.82) 36%,rgba(255,255,255,.64) 100%),
    url('../img/zsu-islamic-pattern-bg.webp?v=20260619ci12') center top/cover no-repeat!important;
  pointer-events:none!important;
}
body.zsu-theme-dark::before,
body.zsu-theme-dark_gold::before{
  background:
    linear-gradient(90deg,rgba(5,5,9,.94) 0%,rgba(5,5,9,.86) 42%,rgba(5,5,9,.72) 100%),
    url('../img/zsu-islamic-pattern-bg.webp?v=20260619ci12') center top/cover no-repeat!important;
}
.login-body{
  background:
    linear-gradient(90deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.84) 44%,rgba(255,255,255,.60) 100%),
    url('../img/zsu-islamic-pattern-bg.webp?v=20260619ci12') center top/cover no-repeat!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold){
  --panel:#ffffff;
  --muted:#4b5563;
  --line:rgba(17,24,39,.16);
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .card,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .panel,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .widget,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .filterbar,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .account-block,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .table-wrap,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .xcard,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-cell,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-calendar,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-grid,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-filter-card,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .state-filter-card{
  background:rgba(255,255,255,.94)!important;
  color:#1f2937!important;
  border:1px solid rgba(17,24,39,.14)!important;
  box-shadow:0 16px 42px rgba(17,24,39,.10)!important;
  backdrop-filter:blur(3px);
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .card:hover,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .panel:hover,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .widget:hover{
  border-color:color-mix(in srgb,var(--gold) 40%,rgba(17,24,39,.14))!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .card p,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .panel p,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .widget p,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .filterbar p,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .xcard p,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .small,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .muted,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .hint,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .help-text{
  color:#4b5563!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) input,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) select,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) textarea{
  background:#ffffff!important;
  color:#111827!important;
  border-color:rgba(17,24,39,.18)!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) th,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .smart-table th{
  background:#f8fafc!important;
  color:#111827!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) td,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .smart-table td{
  color:#1f2937!important;
  border-bottom-color:rgba(17,24,39,.10)!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-cell header,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-calendar-head,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-calendar-weekdays,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-day-number,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-cell .day-number{
  color:#111827!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .event-card,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .event-pill,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .availability-driver-card{
  background:color-mix(in srgb,var(--gold) 12%,#ffffff)!important;
  color:#1f2937!important;
  border-color:color-mix(in srgb,var(--gold) 36%,rgba(17,24,39,.14))!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .event-card small,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .event-pill small{
  color:#374151!important;
}
@media(min-width:981px){
  body.zsu-context-ev .topbar-inner{grid-template-columns:300px minmax(0,1fr) 240px!important}
  body.zsu-context-ev .brand{width:300px!important}
  body.zsu-context-ev .zsu-ev-logo.nav-logo{width:300px!important;height:50px!important;padding:5px 8px!important;border-radius:8px!important}
}
body.zsu-context-ev .zsu-ev-logo.nav-logo img{object-fit:contain!important;object-position:left center!important}
@media(max-width:980px){
  body.zsu-context-ev .brand{width:min(270px,calc(100vw - 108px))!important}
  body.zsu-context-ev .zsu-ev-logo.nav-logo{width:min(270px,calc(100vw - 108px))!important;padding:5px 8px!important}
}

/* ZSU_CI_SYSTEM_V6_CONTEXT_BRAND_LOCK */
body.zsu-context-gmbh:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom){
  --bg:#f7f4ef!important;
  --header:#ffffff!important;
  --header-text:#111827!important;
  --text:#242424!important;
  --heading:#5f6062!important;
  --gold:#b40000!important;
  --accent-text:#ffffff!important;
}
body.zsu-context-shop:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom){
  --bg:#ffffff!important;
  --header:#ffffff!important;
  --header-text:#111827!important;
  --text:#232323!important;
  --heading:#111111!important;
  --gold:#e30613!important;
  --accent-text:#ffffff!important;
}
body.zsu-context-ev:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom){
  --bg:#f3fafb!important;
  --header:#173c43!important;
  --header-text:#ffffff!important;
  --text:#17313a!important;
  --heading:#173c43!important;
  --gold:#19a7b8!important;
  --accent-text:#073238!important;
}
body.zsu-context-gmbh .btn,
body.zsu-context-gmbh button[type="submit"],
body.zsu-context-gmbh .button,
body.zsu-context-gmbh .primary-action{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
  color:var(--accent-text)!important;
}
body.zsu-context-shop .btn,
body.zsu-context-shop button[type="submit"],
body.zsu-context-shop .button,
body.zsu-context-shop .primary-action{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
  color:var(--accent-text)!important;
}
body.zsu-context-ev .btn,
body.zsu-context-ev button[type="submit"],
body.zsu-context-ev .button,
body.zsu-context-ev .primary-action{
  color:var(--accent-text)!important;
}
body.zsu-context-gmbh .deployment-calendar .btn,
body.zsu-context-shop .deployment-calendar .btn,
body.zsu-context-gmbh .calendar button,
body.zsu-context-shop .calendar button{
  background:color-mix(in srgb,var(--gold) 10%,#ffffff)!important;
  border-color:color-mix(in srgb,var(--gold) 34%,rgba(17,24,39,.14))!important;
  color:#1f2937!important;
}
body.zsu-context-gmbh .deployment-calendar .btn:hover,
body.zsu-context-shop .deployment-calendar .btn:hover,
body.zsu-context-gmbh .calendar button:hover,
body.zsu-context-shop .calendar button:hover{
  background:var(--gold)!important;
  color:var(--accent-text)!important;
}
@media(max-width:980px){
  .mobile-menu-toggle{
    min-width:92px!important;
    height:44px!important;
    border-radius:999px!important;
    box-shadow:0 12px 28px color-mix(in srgb,var(--gold) 28%,transparent)!important;
  }
  .mobile-menu-toggle strong{font-weight:850!important}
}

/* ZSU_CI_SYSTEM_V7_TRANSPARENT_CANVAS_FAVICON */
html{background:#ffffff!important}
body.zsu-context-gmbh,
body.zsu-context-shop,
body.zsu-context-ev{
  background:transparent!important;
}
body.zsu-context-gmbh:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom),
body.zsu-context-shop:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom){
  --bg:transparent!important;
  --header:#ffffff!important;
  --header-text:#111827!important;
  --text:#242424!important;
  --heading:#5f6062!important;
  --gold:#b40000!important;
  --accent-text:#ffffff!important;
}
body.zsu-context-ev:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom){
  --bg:transparent!important;
  --header:#173c43!important;
  --header-text:#ffffff!important;
  --text:#17313a!important;
  --heading:#173c43!important;
  --gold:#19a7b8!important;
  --accent-text:#073238!important;
}
body.zsu-context-gmbh::before,
body.zsu-context-shop::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.80) 0%,rgba(255,255,255,.58) 38%,rgba(255,255,255,.32) 100%),
    url('../img/zsu-islamic-pattern-bg.webp?v=20260619ci12') center top/cover no-repeat!important;
  pointer-events:none!important;
}
body.zsu-context-ev::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.72) 36%,rgba(255,255,255,.30) 100%),
    url('../img/zsu-ev-bg.webp?v=20260619ci12') center center/cover no-repeat!important;
  pointer-events:none!important;
}
body.zsu-theme-dark::before,
body.zsu-theme-dark_gold::before{
  background:
    linear-gradient(90deg,rgba(5,5,9,.90) 0%,rgba(5,5,9,.78) 42%,rgba(5,5,9,.58) 100%),
    url('../img/zsu-islamic-pattern-bg.webp?v=20260619ci12') center top/cover no-repeat!important;
}
.container,
.deployment-container,
.account-page,
.xkonto-wrap,
main.container,
main.deployment-container{
  background:transparent!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-layout,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-clean-sidebar,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-filters,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-filter-form{
  background:transparent!important;
  box-shadow:none!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .card,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .panel,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .widget,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .filterbar,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .account-block,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .table-wrap,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .xcard,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-cell,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-calendar,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-filter-card,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .state-filter-card,
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-toolbar{
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(4px)!important;
}
body:not(.zsu-theme-dark):not(.zsu-theme-dark_gold) .deployment-grid{
  background:transparent!important;
  box-shadow:none!important;
}
.login-body{
  background:
    linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.66) 44%,rgba(255,255,255,.34) 100%),
    url('../img/zsu-islamic-pattern-bg.webp?v=20260619ci12') center top/cover no-repeat!important;
}
body.zsu-theme-zsu_ev{
  --bg:transparent!important;
  --header:#173c43!important;
  --header-text:#ffffff!important;
  --text:#17313a!important;
  --heading:#173c43!important;
  --gold:#19a7b8!important;
  --accent-text:#073238!important;
}
body.zsu-theme-zsu_ev.zsu-context-gmbh:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom),
body.zsu-theme-zsu_ev.zsu-context-shop:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom),
body.zsu-theme-zsu_ev.zsu-context-ev:not(.zsu-theme-light):not(.zsu-theme-light_gold):not(.zsu-theme-dark):not(.zsu-theme-dark_gold):not(.zsu-theme-custom){
  --bg:transparent!important;
  --header:#173c43!important;
  --header-text:#ffffff!important;
  --text:#17313a!important;
  --heading:#173c43!important;
  --gold:#19a7b8!important;
  --accent-text:#073238!important;
  --panel:rgba(255,255,255,.90)!important;
}
body.zsu-theme-zsu_ev .topbar{
  background:rgba(23,60,67,.96)!important;
  color:#ffffff!important;
}
body.zsu-theme-zsu_ev .center-nav a,
body.zsu-theme-zsu_ev .nav-actions a{
  color:#ffffff!important;
}
body.zsu-theme-zsu_ev .center-nav a.active,
body.zsu-theme-zsu_ev .center-nav a:hover,
body.zsu-theme-zsu_ev .nav-actions a.active,
body.zsu-theme-zsu_ev .nav-actions a:hover{
  color:#19a7b8!important;
}
body.zsu-theme-zsu_ev button,
body.zsu-theme-zsu_ev .btn,
body.zsu-theme-zsu_ev .xbtn,
body.zsu-theme-zsu_ev .xexpert-toggle,
body.zsu-theme-zsu_ev .deployment-toolbar button,
body.zsu-theme-zsu_ev .deployment-toolbar .btn,
body.zsu-theme-zsu_ev .deployment-calendar button,
body.zsu-theme-zsu_ev .deployment-cell button,
body.zsu-theme-zsu_ev .event-action,
body.zsu-theme-zsu_ev .queue-btn{
  background:#19a7b8!important;
  border-color:#19a7b8!important;
  color:#073238!important;
}
body.zsu-theme-zsu_ev.zsu-context-ev::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.72) 36%,rgba(255,255,255,.30) 100%),
    url('../img/zsu-ev-bg.webp?v=20260619ci12') center center/cover no-repeat!important;
  pointer-events:none!important;
}

/* ZSU_CI_SYSTEM_V8_EV_DARK_BACKGROUND */
body.zsu-context-ev.zsu-theme-dark::before,
body.zsu-context-ev.zsu-theme-dark_gold::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(90deg,rgba(5,10,13,.94) 0%,rgba(5,16,20,.84) 42%,rgba(5,16,20,.58) 100%),
    url('../img/zsu-ev-bg.webp?v=20260619ci12') center center/cover no-repeat!important;
  pointer-events:none!important;
}

/* ZSU_ADMIN_PRO_CLEAN_V1 */
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.section-head h2{margin:0}
.section-head .muted{max-width:560px;margin:0}
.admin-user-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 22px}
.admin-user-stats .stat-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:18px;box-shadow:0 10px 26px rgba(15,23,42,.06)}
.admin-user-stats .stat-card span{display:block;color:var(--muted);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.admin-user-stats .stat-card b{display:block;font-size:34px;color:var(--heading);margin-top:6px}
.admin-user-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}
.admin-user-form .admin-permission-grid{grid-column:1/-1}
.admin-user-form .form-actions{grid-column:1/-1}
.admin-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.admin-user-card{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.92);padding:18px;box-shadow:0 14px 34px rgba(15,23,42,.07)}
.admin-user-card.is-inactive{opacity:.72}
.admin-user-card header{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.admin-user-card header h3{margin:0;color:var(--heading);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.admin-user-card header p{margin:3px 0 0;color:var(--muted);font-size:13px;word-break:break-all}
.avatar-badge{width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--gold) 16%,#fff);color:var(--accent-text);display:grid;place-items:center;font-weight:900;border:1px solid color-mix(in srgb,var(--gold) 28%,var(--line))}
.role-pill,.self-pill{margin-left:auto;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;border:1px solid var(--line)}
.role-pill.admin{background:color-mix(in srgb,var(--gold) 16%,#fff);color:var(--accent-text);border-color:color-mix(in srgb,var(--gold) 34%,var(--line))}
.role-pill.user,.self-pill{background:#f8fafc;color:#334155}
.user-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}
.user-meta span{border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;color:var(--muted);font-size:12px}
.user-meta b{display:block;color:var(--text);margin-top:2px}
.permission-summary{border-left:4px solid var(--gold);background:color-mix(in srgb,var(--gold) 7%,#fff);border-radius:12px;padding:12px;color:var(--text);font-weight:700}
.user-card-form,.password-reset-form,.delete-user-form{display:grid;gap:10px;margin-top:12px}
.compact-grid{gap:10px}
.admin-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin:10px 0}
.admin-permission-grid label{border:1px solid var(--line);border-radius:12px;background:#fff;padding:9px 10px;font-weight:750;color:var(--text)}
.user-card-actions{border-top:1px solid var(--line);margin-top:14px;padding-top:14px;display:grid;gap:10px}
.password-reset-form{grid-template-columns:1fr 1fr auto;align-items:end}
.delete-user-form{justify-items:start}
.reset-group{margin-top:22px}
.reset-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.reset-action-card{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.92);padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 10px 28px rgba(15,23,42,.06)}
.reset-action-card h3{margin:0;color:var(--heading)}
.reset-action-card p{margin:0;color:var(--muted);line-height:1.5}
.reset-action-card form{margin-top:auto}
.brand-switch-panel .pdf-template-tabbar{justify-content:flex-start}
@media(max-width:820px){
  .section-head{display:block}
  .admin-user-stats{grid-template-columns:1fr}
  .admin-user-form{grid-template-columns:1fr}
  .admin-user-grid{grid-template-columns:1fr}
  .user-meta{grid-template-columns:1fr}
  .password-reset-form{grid-template-columns:1fr}
}

/* ZSU_DARK_CONTRAST_NAV_V1 */
body.zsu-theme-dark,
body.zsu-theme-dark_gold{
  --text:#f8fafc!important;
  --heading:#ffffff!important;
  --muted:#cbd5e1!important;
  --line:rgba(226,232,240,.26)!important;
  --panel:rgba(15,23,42,.88)!important;
  --header-text:#f8fafc!important;
}
body.zsu-theme-dark .card,
body.zsu-theme-dark .panel,
body.zsu-theme-dark .widget,
body.zsu-theme-dark .filterbar,
body.zsu-theme-dark .table-wrap,
body.zsu-theme-dark .xcard,
body.zsu-theme-dark .deployment-cell,
body.zsu-theme-dark .deployment-calendar,
body.zsu-theme-dark .deployment-grid,
body.zsu-theme-dark .deployment-filter-card,
body.zsu-theme-dark .state-filter-card,
body.zsu-theme-dark_gold .card,
body.zsu-theme-dark_gold .panel,
body.zsu-theme-dark_gold .widget,
body.zsu-theme-dark_gold .filterbar,
body.zsu-theme-dark_gold .table-wrap,
body.zsu-theme-dark_gold .xcard,
body.zsu-theme-dark_gold .deployment-cell,
body.zsu-theme-dark_gold .deployment-calendar,
body.zsu-theme-dark_gold .deployment-grid,
body.zsu-theme-dark_gold .deployment-filter-card,
body.zsu-theme-dark_gold .state-filter-card{
  background:rgba(15,23,42,.88)!important;
  color:#f8fafc!important;
  border-color:rgba(226,232,240,.24)!important;
}
body.zsu-theme-dark .hero p,
body.zsu-theme-dark .muted,
body.zsu-theme-dark .small,
body.zsu-theme-dark .hint,
body.zsu-theme-dark .help-text,
body.zsu-theme-dark .card p,
body.zsu-theme-dark .panel p,
body.zsu-theme-dark .widget p,
body.zsu-theme-dark_gold .hero p,
body.zsu-theme-dark_gold .muted,
body.zsu-theme-dark_gold .small,
body.zsu-theme-dark_gold .hint,
body.zsu-theme-dark_gold .help-text,
body.zsu-theme-dark_gold .card p,
body.zsu-theme-dark_gold .panel p,
body.zsu-theme-dark_gold .widget p{
  color:#cbd5e1!important;
}
body.zsu-theme-dark .btn.secondary,
body.zsu-theme-dark button.secondary,
body.zsu-theme-dark .filter-actions .btn.secondary,
body.zsu-theme-dark .icon-btn.subtle,
body.zsu-theme-dark .table-export-btn,
body.zsu-theme-dark .deployment-toolbar .btn.secondary,
body.zsu-theme-dark .deployment-toolbar button.secondary,
body.zsu-theme-dark_gold .btn.secondary,
body.zsu-theme-dark_gold button.secondary,
body.zsu-theme-dark_gold .filter-actions .btn.secondary,
body.zsu-theme-dark_gold .icon-btn.subtle,
body.zsu-theme-dark_gold .table-export-btn,
body.zsu-theme-dark_gold .deployment-toolbar .btn.secondary,
body.zsu-theme-dark_gold .deployment-toolbar button.secondary{
  background:rgba(248,250,252,.10)!important;
  color:#f8fafc!important;
  border-color:rgba(248,250,252,.34)!important;
  box-shadow:none!important;
}
body.zsu-theme-dark .btn.secondary:hover,
body.zsu-theme-dark button.secondary:hover,
body.zsu-theme-dark .icon-btn.subtle:hover,
body.zsu-theme-dark_gold .btn.secondary:hover,
body.zsu-theme-dark_gold button.secondary:hover,
body.zsu-theme-dark_gold .icon-btn.subtle:hover{
  background:color-mix(in srgb,var(--gold) 24%,rgba(248,250,252,.10))!important;
  border-color:color-mix(in srgb,var(--gold) 70%,rgba(248,250,252,.34))!important;
  color:#ffffff!important;
}
body.zsu-theme-dark .icon-btn,
body.zsu-theme-dark .icon-btn *,
body.zsu-theme-dark .deployment-calendar a,
body.zsu-theme-dark .deployment-calendar button,
body.zsu-theme-dark .deployment-cell button,
body.zsu-theme-dark_gold .icon-btn,
body.zsu-theme-dark_gold .icon-btn *,
body.zsu-theme-dark_gold .deployment-calendar a,
body.zsu-theme-dark_gold .deployment-calendar button,
body.zsu-theme-dark_gold .deployment-cell button{
  color:inherit!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}
body.zsu-theme-dark input,
body.zsu-theme-dark select,
body.zsu-theme-dark textarea,
body.zsu-theme-dark_gold input,
body.zsu-theme-dark_gold select,
body.zsu-theme-dark_gold textarea{
  background:rgba(15,23,42,.92)!important;
  color:#f8fafc!important;
  border-color:rgba(226,232,240,.30)!important;
}
body.zsu-theme-dark input::placeholder,
body.zsu-theme-dark textarea::placeholder,
body.zsu-theme-dark_gold input::placeholder,
body.zsu-theme-dark_gold textarea::placeholder{
  color:#94a3b8!important;
}
body.zsu-theme-dark input[type="date"]::-webkit-calendar-picker-indicator,
body.zsu-theme-dark input[type="datetime-local"]::-webkit-calendar-picker-indicator,
body.zsu-theme-dark input[type="month"]::-webkit-calendar-picker-indicator,
body.zsu-theme-dark_gold input[type="date"]::-webkit-calendar-picker-indicator,
body.zsu-theme-dark_gold input[type="datetime-local"]::-webkit-calendar-picker-indicator,
body.zsu-theme-dark_gold input[type="month"]::-webkit-calendar-picker-indicator{
  filter:invert(1) brightness(1.8)!important;
  opacity:.92!important;
}
body.zsu-theme-dark .smart-table th,
body.zsu-theme-dark th,
body.zsu-theme-dark_gold .smart-table th,
body.zsu-theme-dark_gold th{
  background:rgba(30,41,59,.96)!important;
  color:#ffffff!important;
}
body.zsu-theme-dark .smart-table td,
body.zsu-theme-dark td,
body.zsu-theme-dark_gold .smart-table td,
body.zsu-theme-dark_gold td{
  color:#f8fafc!important;
  border-bottom-color:rgba(226,232,240,.18)!important;
}
@media(min-width:981px){
  body.zsu-context-ev .topbar-inner{grid-template-columns:210px minmax(0,1fr) 240px!important}
  body.zsu-context-ev .brand{width:210px!important;height:48px!important}
  body.zsu-context-ev .zsu-ev-logo.nav-logo{
    width:auto!important;
    max-width:190px!important;
    min-width:0!important;
    height:46px!important;
    padding:6px 10px!important;
    border-radius:8px!important;
    justify-content:center!important;
  }
  body.zsu-context-ev .zsu-ev-logo.nav-logo img{
    width:auto!important;
    max-width:170px!important;
    height:100%!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
}
@media(max-width:980px){
  body.zsu-context-ev .brand{width:min(210px,calc(100vw - 108px))!important}
  body.zsu-context-ev .zsu-ev-logo.nav-logo{
    width:auto!important;
    max-width:min(190px,calc(100vw - 128px))!important;
    height:42px!important;
    padding:5px 9px!important;
  }
  body.zsu-context-ev .zsu-ev-logo.nav-logo img{
    width:auto!important;
    max-width:166px!important;
    height:100%!important;
  }
}

/* ZSU_NAV_EVBUTTON_CONTRAST_V1 */
@media(min-width:981px){
  .center-nav{
    gap:clamp(8px,1vw,18px)!important;
  }
  .center-nav a,
  .nav-actions a{
    font-size:16px!important;
    line-height:1.15!important;
  }
  .topbar-inner{
    min-height:68px!important;
  }
}
@media(max-width:980px){
  .nav-open .center-nav a,
  .nav-open .nav-actions a{
    font-size:16px!important;
    line-height:1.2!important;
  }
  .mobile-menu-toggle strong{
    font-size:13px!important;
  }
}
body.zsu-theme-zsu_ev,
body.zsu-context-ev{
  --accent-text:#ffffff!important;
}
body.zsu-theme-zsu_ev button,
body.zsu-theme-zsu_ev .btn,
body.zsu-theme-zsu_ev .xbtn,
body.zsu-theme-zsu_ev .xexpert-toggle,
body.zsu-theme-zsu_ev .deployment-toolbar button,
body.zsu-theme-zsu_ev .deployment-toolbar .btn,
body.zsu-theme-zsu_ev .deployment-calendar button,
body.zsu-theme-zsu_ev .deployment-cell button,
body.zsu-theme-zsu_ev .event-action,
body.zsu-theme-zsu_ev .queue-btn,
body.zsu-context-ev button,
body.zsu-context-ev .btn,
body.zsu-context-ev .xbtn,
body.zsu-context-ev .xexpert-toggle,
body.zsu-context-ev .deployment-toolbar button,
body.zsu-context-ev .deployment-toolbar .btn,
body.zsu-context-ev .deployment-calendar button,
body.zsu-context-ev .deployment-cell button,
body.zsu-context-ev .event-action,
body.zsu-context-ev .queue-btn{
  color:#ffffff!important;
}
body.zsu-theme-zsu_ev .btn.secondary,
body.zsu-theme-zsu_ev button.secondary,
body.zsu-theme-zsu_ev .table-export-btn,
body.zsu-theme-zsu_ev .icon-btn.subtle,
body.zsu-theme-zsu_ev .deployment-toolbar .btn.secondary,
body.zsu-theme-zsu_ev .deployment-toolbar button.secondary,
body.zsu-context-ev .btn.secondary,
body.zsu-context-ev button.secondary,
body.zsu-context-ev .table-export-btn,
body.zsu-context-ev .icon-btn.subtle,
body.zsu-context-ev .deployment-toolbar .btn.secondary,
body.zsu-context-ev .deployment-toolbar button.secondary{
  background:#173c43!important;
  border-color:rgba(25,167,184,.72)!important;
  color:#ffffff!important;
}
body.zsu-theme-zsu_ev .btn.secondary:hover,
body.zsu-theme-zsu_ev button.secondary:hover,
body.zsu-context-ev .btn.secondary:hover,
body.zsu-context-ev button.secondary:hover{
  background:#0f3036!important;
  border-color:#19a7b8!important;
  color:#ffffff!important;
}

/* ZSU_MOBILE_NAV_ROLLOVER_V1 */
button,
.btn,
.xbtn,
.xexpert-toggle,
.table-export-btn,
.widget-download-btn,
.icon-btn,
.filter-multiselect-btn,
.file-upload-button,
.map-switch button,
.wizard-steps button,
.wizard-global-actions button,
.wizard-global-actions .btn,
.deployment-toolbar button,
.deployment-toolbar .btn,
.deployment-calendar button,
.deployment-cell button,
.queue-btn,
.event-action{
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    filter .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    color .16s ease!important;
}
button:hover,
.btn:hover,
.xbtn:hover,
.xexpert-toggle:hover,
.table-export-btn:hover,
.widget-download-btn:hover,
.icon-btn:hover,
.filter-multiselect-btn:hover,
.file-upload-button:hover,
.map-switch button:hover,
.wizard-steps button:hover,
.wizard-global-actions button:hover,
.wizard-global-actions .btn:hover,
.deployment-toolbar button:hover,
.deployment-toolbar .btn:hover,
.deployment-calendar button:hover,
.deployment-cell button:hover,
.queue-btn:hover,
.event-action:hover{
  transform:translateY(-1px);
  filter:brightness(1.04) saturate(1.05);
  box-shadow:0 12px 26px color-mix(in srgb,var(--gold) 22%,transparent)!important;
}
button:active,
.btn:active,
.xbtn:active,
.table-export-btn:active,
.widget-download-btn:active,
.icon-btn:active,
.filter-multiselect-btn:active,
.file-upload-button:active,
.map-switch button:active,
.deployment-toolbar button:active,
.deployment-toolbar .btn:active,
.queue-btn:active{
  transform:translateY(0);
  filter:brightness(.98);
}
button:disabled,
.btn.disabled,
button[disabled]{
  transform:none!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(min-width:981px){
  body.zsu-context-ev .topbar-inner{
    grid-template-columns:300px minmax(0,1fr) 220px!important;
  }
  body.zsu-context-ev .brand{
    width:300px!important;
    height:52px!important;
    justify-content:center!important;
  }
  body.zsu-context-ev .zsu-ev-logo.nav-logo{
    width:100%!important;
    max-width:none!important;
    height:52px!important;
    padding:5px 8px!important;
    border-radius:10px!important;
    justify-content:center!important;
  }
  body.zsu-context-ev .zsu-ev-logo.nav-logo img{
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  body.zsu-context-ev .center-nav{
    gap:clamp(6px,.85vw,14px)!important;
  }
}
@media(max-width:980px){
  .topbar{
    background:color-mix(in srgb,var(--header) 98%,transparent)!important;
  }
  .topbar-inner{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    align-items:center!important;
    gap:0!important;
    padding:10px 14px 12px!important;
  }
  .brand{
    width:min(310px,calc(100vw - 32px))!important;
    height:52px!important;
    justify-content:center!important;
    justify-self:center!important;
  }
  .nav-logo{
    height:52px!important;
    justify-content:center!important;
  }
  .nav-logo img{
    object-position:center center!important;
  }
  body.zsu-context-ev .brand{
    width:min(310px,calc(100vw - 32px))!important;
    height:52px!important;
  }
  body.zsu-context-ev .zsu-ev-logo.nav-logo{
    width:100%!important;
    max-width:none!important;
    height:52px!important;
    padding:5px 8px!important;
    justify-content:center!important;
  }
  body.zsu-context-ev .zsu-ev-logo.nav-logo img{
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  .mobile-menu-toggle{
    display:inline-flex!important;
    width:min(310px,calc(100vw - 32px))!important;
    min-width:0!important;
    height:38px!important;
    margin-top:-3px!important;
    border-radius:0 0 18px 18px!important;
    justify-self:center!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--gold) 94%,#fff),var(--gold))!important;
    border:1px solid var(--gold)!important;
    border-top:0!important;
    box-shadow:inset 0 2px 0 rgba(255,255,255,.30),0 10px 22px color-mix(in srgb,var(--gold) 22%,transparent)!important;
  }
  .mobile-menu-toggle .menu-bars,
  .mobile-menu-toggle strong{
    transform:translateY(-1px);
  }
  .mobile-menu-toggle:hover{
    transform:translateY(0)!important;
    filter:brightness(1.05) saturate(1.06);
  }
  .nav-open .center-nav,
  .nav-open .nav-actions{
    width:min(310px,calc(100vw - 32px))!important;
    justify-self:center!important;
    background:var(--header)!important;
    color:var(--header-text)!important;
    box-shadow:0 18px 34px rgba(15,23,42,.18)!important;
  }
  .nav-open .center-nav{
    margin-top:10px!important;
    padding:10px!important;
    border-radius:18px 18px 0 0!important;
    border-bottom:0!important;
    align-items:stretch!important;
    text-align:center!important;
  }
  .nav-open .center-nav a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:10px 12px!important;
    text-align:center!important;
  }
  .nav-open .nav-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    margin-top:0!important;
    padding:10px!important;
    border-radius:0 0 18px 18px!important;
    border-top:1px solid color-mix(in srgb,var(--header-text) 14%,transparent)!important;
    gap:8px!important;
    justify-content:stretch!important;
    align-items:stretch!important;
  }
  .nav-open .nav-actions a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    border-radius:12px!important;
    text-align:center!important;
  }
  .nav-open .nav-actions .lang-select-form{
    width:100%!important;
  }
  .nav-open .nav-actions .lang-select{
    width:100%!important;
    height:42px!important;
    text-align:center!important;
    text-align-last:center!important;
    border-radius:12px!important;
  }
  .container,
  .account-page{
    width:100%!important;
    max-width:100%!important;
    padding-left:14px!important;
    padding-right:14px!important;
    box-sizing:border-box!important;
  }
  .grid,
  .grid.two,
  .grid.four,
  .kpi-grid,
  .dashboard-card-grid,
  .table-widget-grid,
  .admin-stat-grid,
  .reset-action-grid{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    justify-items:stretch!important;
    align-items:stretch!important;
    gap:14px!important;
  }
  .card,
  .panel,
  .widget,
  .xcard,
  .table-wrap,
  .account-block{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
    overflow-wrap:anywhere;
  }
  .widget,
  .card{
    display:flex;
    flex-direction:column;
  }
}

/* ZSU_MENU_SWITCH_QUEUE_POLISH_V1 */
.unit-switch a,
.map-switch button,
.gradient-switch,
.ds-switch,
.wizard-progress-segmented .seg,
.pdf-template-tabbar a,
.brand-switch-panel a,
.xpreset-card,
.ds-preset-card,
.preset-card,
.filter-collapse-btn,
.driver-chip{
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    filter .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    color .16s ease!important;
}
.unit-switch a:hover,
.map-switch button:hover,
.gradient-switch:hover,
.ds-switch:hover,
.wizard-progress-segmented .seg:hover,
.pdf-template-tabbar a:hover,
.brand-switch-panel a:hover,
.xpreset-card:hover,
.ds-preset-card:hover,
.preset-card:hover,
.filter-collapse-btn:hover,
.driver-chip:hover{
  transform:translateY(-1px);
  filter:brightness(1.04) saturate(1.05);
  box-shadow:0 10px 22px color-mix(in srgb,var(--gold) 18%,transparent)!important;
}
body.zsu-context-gmbh button:not(.secondary):not(.filter-collapse-btn),
body.zsu-context-gmbh .btn:not(.secondary):not(.icon-btn),
body.zsu-context-gmbh .xbtn,
body.zsu-context-gmbh .xexpert-toggle,
body.zsu-context-gmbh .deployment-toolbar .btn:not(.secondary),
body.zsu-context-gmbh .deployment-toolbar button:not(.secondary),
body.zsu-context-shop button:not(.secondary):not(.filter-collapse-btn),
body.zsu-context-shop .btn:not(.secondary):not(.icon-btn),
body.zsu-context-shop .xbtn,
body.zsu-context-shop .xexpert-toggle,
body.zsu-context-shop .deployment-toolbar .btn:not(.secondary),
body.zsu-context-shop .deployment-toolbar button:not(.secondary),
body.zsu-theme-zsu_gmbh button:not(.secondary):not(.filter-collapse-btn),
body.zsu-theme-zsu_gmbh .btn:not(.secondary):not(.icon-btn),
body.zsu-theme-zsu_gmbh .deployment-toolbar .btn:not(.secondary),
body.zsu-theme-zsu_gmbh .deployment-toolbar button:not(.secondary){
  color:#ffffff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.18);
}
body.zsu-context-gmbh .btn.secondary,
body.zsu-context-gmbh button.secondary,
body.zsu-context-gmbh .deployment-toolbar .btn.secondary,
body.zsu-context-gmbh .deployment-toolbar button.secondary{
  color:#242424!important;
}
body.zsu-theme-dark.zsu-context-gmbh .btn.secondary,
body.zsu-theme-dark.zsu-context-gmbh button.secondary,
body.zsu-theme-dark_gold.zsu-context-gmbh .btn.secondary,
body.zsu-theme-dark_gold.zsu-context-gmbh button.secondary{
  color:#f8fafc!important;
}
.deployment-queue-catcher,
.deployment-queue-catcher:visited{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  text-decoration:none!important;
  cursor:pointer!important;
  color:var(--text)!important;
}
.deployment-queue-catcher b,
.deployment-queue-catcher span{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.deployment-queue-catcher b{
  white-space:nowrap!important;
}
.deployment-queue-catcher span{
  justify-self:end!important;
  text-align:right!important;
  white-space:normal!important;
  line-height:1.2!important;
}
.deployment-queue-catcher:hover{
  transform:translateY(-1px);
  filter:brightness(1.04) saturate(1.04);
  box-shadow:0 12px 24px color-mix(in srgb,var(--gold) 18%,transparent)!important;
}
.deployment-layout.one-filter-collapsed .deployment-queue-catcher{
  grid-template-columns:1fr!important;
  justify-items:center!important;
  text-align:center!important;
}
.deployment-layout.one-filter-collapsed .deployment-queue-catcher span{
  justify-self:center!important;
  text-align:center!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  text-align:center!important;
}
.deployment-layout.filters-collapsed .deployment-queue-catcher span::before{
  color:var(--heading)!important;
}
@media(max-width:980px){
  .topbar-inner > .center-nav,
  .topbar-inner > .nav-actions{
    display:none!important;
    visibility:hidden!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  body.nav-open .topbar-inner > .center-nav{
    display:flex!important;
    visibility:visible!important;
    max-height:none!important;
    overflow:visible!important;
    margin-top:10px!important;
    padding:10px!important;
    border:1px solid var(--line)!important;
    border-bottom:0!important;
  }
  body.nav-open .topbar-inner > .nav-actions{
    display:grid!important;
    visibility:visible!important;
    max-height:none!important;
    overflow:visible!important;
    margin-top:0!important;
    padding:10px!important;
    border:1px solid var(--line)!important;
    border-top:1px solid color-mix(in srgb,var(--header-text) 14%,transparent)!important;
  }
  .mobile-menu-toggle{
    margin-top:5px!important;
    height:34px!important;
    border-radius:999px!important;
    border-top:1px solid var(--gold)!important;
    width:min(286px,calc(100vw - 48px))!important;
    box-shadow:0 8px 18px color-mix(in srgb,var(--gold) 18%,transparent)!important;
  }
  .mobile-menu-toggle::before{
    content:"";
    position:absolute;
    top:-6px;
    left:10%;
    right:10%;
    height:1px;
    background:color-mix(in srgb,var(--gold) 55%,transparent);
    pointer-events:none;
  }
  .nav-open .center-nav,
  .nav-open .nav-actions{
    width:min(310px,calc(100vw - 32px))!important;
  }
  .deployment-toolbar-right .queue-btn{
    display:none!important;
  }
}

/* ZSU_SCROLL_NAV_MENU_V1 */
.topbar,
.topbar-inner,
.brand,
.nav-logo,
.nav-logo img,
.center-nav,
.nav-actions,
.mobile-menu-toggle{
  transition:
    min-height .22s ease,
    height .22s ease,
    padding .22s ease,
    margin .22s ease,
    opacity .18s ease,
    transform .22s ease,
    box-shadow .22s ease,
    background-color .22s ease!important;
}
.deployment-queue-catcher{
  position:relative!important;
  transform:none!important;
  overflow:visible!important;
  border-top-color:var(--line)!important;
}
.deployment-queue-catcher:hover{
  transform:none!important;
  outline:0!important;
  border-top-color:color-mix(in srgb,var(--gold) 44%,var(--line))!important;
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--gold) 30%,transparent),
    0 10px 22px color-mix(in srgb,var(--gold) 16%,transparent)!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar{
  box-shadow:0 8px 22px rgba(15,23,42,.10)!important;
}
@media(min-width:981px){
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .topbar-inner{
    min-height:46px!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand,
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo{
    height:34px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo img{
    max-height:34px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .center-nav,
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-actions{
    opacity:0!important;
    transform:translateY(-8px)!important;
    pointer-events:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .center-nav,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-actions{
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }
}
@media(max-width:980px){
  .mobile-menu-toggle{
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    margin-top:7px!important;
    width:min(286px,calc(100vw - 48px))!important;
    height:36px!important;
    border-radius:999px!important;
    border-top:1px solid var(--gold)!important;
  }
  .mobile-menu-toggle::before{
    content:none!important;
    display:none!important;
  }
  .mobile-menu-toggle .menu-bars{
    display:inline-flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:4px!important;
    width:22px!important;
    height:18px!important;
    transform:none!important;
  }
  .mobile-menu-toggle .menu-bars i{
    display:block!important;
    width:22px!important;
    height:2px!important;
    border-radius:999px!important;
  }
  .mobile-menu-toggle strong{
    display:inline-block!important;
    transform:none!important;
    line-height:1!important;
    font-size:13px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    min-height:48px!important;
    padding-top:5px!important;
    padding-bottom:6px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand,
  body.zsu-nav-compact:not(.nav-open) .nav-logo{
    height:34px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    max-height:34px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle{
    opacity:0!important;
    transform:translateY(-10px)!important;
    height:0!important;
    min-height:0!important;
    margin-top:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    border-width:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }
}

/* ZSU_NOTCH_NAV_QUEUE_STABLE_V1 */
.deployment-queue-catcher,
.deployment-queue-catcher:visited{
  border:1px solid color-mix(in srgb,var(--gold) 22%,var(--line))!important;
  border-top-color:color-mix(in srgb,var(--gold) 22%,var(--line))!important;
  outline:1px solid transparent!important;
  outline-offset:0!important;
  box-shadow:inset 0 1px 0 transparent,0 8px 18px rgba(15,23,42,.04)!important;
}
.deployment-queue-catcher:hover,
.deployment-queue-catcher:focus-visible{
  border:1px solid color-mix(in srgb,var(--gold) 46%,var(--line))!important;
  outline:1px solid transparent!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--gold) 26%,transparent),0 10px 22px color-mix(in srgb,var(--gold) 16%,transparent)!important;
  transform:none!important;
}
.topbar{
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .brand,
body.zsu-nav-compact:not(.nav-open) .nav-logo,
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  height:48px!important;
  max-height:48px!important;
}
@media(min-width:981px){
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .topbar-inner{
    min-height:34px!important;
    padding-top:2px!important;
    padding-bottom:2px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand,
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo,
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo img{
    height:48px!important;
    max-height:48px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand{
    transform:translateY(7px)!important;
    border-radius:0 0 18px 18px!important;
    background:color-mix(in srgb,var(--header) 98%,transparent)!important;
    box-shadow:0 10px 22px rgba(15,23,42,.10)!important;
  }
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    position:relative!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    min-height:38px!important;
    padding:1px 8px 2px!important;
    gap:0!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    grid-column:2!important;
    width:min(230px,calc(100vw - 96px))!important;
    height:52px!important;
    max-height:52px!important;
    justify-self:center!important;
    align-self:start!important;
    transform:translateY(4px)!important;
    border-radius:0 0 18px 18px!important;
    background:color-mix(in srgb,var(--header) 98%,transparent)!important;
    box-shadow:0 10px 22px rgba(15,23,42,.12)!important;
    z-index:2!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo,
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    height:52px!important;
    max-height:52px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle{
    display:inline-flex!important;
    opacity:1!important;
    pointer-events:auto!important;
    overflow:visible!important;
    grid-column:1!important;
    justify-self:start!important;
    align-self:start!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0!important;
    margin:2px 0 0!important;
    border-width:1px!important;
    border-radius:999px!important;
    transform:none!important;
    box-shadow:0 8px 18px color-mix(in srgb,var(--gold) 20%,transparent)!important;
    z-index:3!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle strong{
    opacity:0!important;
    width:0!important;
    max-width:0!important;
    overflow:hidden!important;
    margin:0!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle .menu-bars{
    width:20px!important;
    height:16px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle .menu-bars i{
    width:18px!important;
  }
  body:not(.zsu-nav-compact) .mobile-menu-toggle,
  body.nav-open .mobile-menu-toggle{
    width:min(286px,calc(100vw - 48px))!important;
    min-width:0!important;
  }
}

/* ZSU_THINLINE_NAV_V1 */
body.zsu-nav-compact:not(.nav-open) .topbar{
  min-height:8px!important;
  height:8px!important;
  background:color-mix(in srgb,var(--header) 86%,transparent)!important;
  border-bottom:2px solid color-mix(in srgb,var(--gold) 42%,var(--line))!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar-inner{
  min-height:8px!important;
  height:8px!important;
  max-height:8px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .brand,
body.zsu-nav-compact:not(.nav-open) .center-nav,
body.zsu-nav-compact:not(.nav-open) .nav-actions{
  opacity:0!important;
  transform:translateY(-16px)!important;
  pointer-events:none!important;
  box-shadow:none!important;
  background:transparent!important;
}
body.zsu-nav-compact:not(.nav-open) .brand,
body.zsu-nav-compact:not(.nav-open) .nav-logo,
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  height:0!important;
  max-height:0!important;
  min-height:0!important;
}
@media(min-width:981px){
  body.zsu-nav-compact:not(.nav-open) .topbar:hover{
    height:auto!important;
    min-height:68px!important;
    background:color-mix(in srgb,var(--header) 96%,transparent)!important;
    box-shadow:0 10px 28px rgba(17,24,39,.06)!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .topbar-inner{
    min-height:68px!important;
    height:auto!important;
    max-height:none!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .center-nav,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-actions{
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo img{
    height:48px!important;
    max-height:48px!important;
  }
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar{
    min-height:10px!important;
    height:10px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    min-height:10px!important;
    height:10px!important;
    max-height:10px!important;
    padding:0 8px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    opacity:0!important;
    height:0!important;
    max-height:0!important;
    transform:translateY(-14px)!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle{
    display:inline-flex!important;
    opacity:1!important;
    pointer-events:auto!important;
    grid-column:1!important;
    justify-self:start!important;
    align-self:start!important;
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    margin:3px 0 0!important;
    border-radius:999px!important;
    border:1px solid color-mix(in srgb,var(--gold) 64%,var(--line))!important;
    transform:translateY(-1px)!important;
    box-shadow:0 6px 14px color-mix(in srgb,var(--gold) 16%,transparent)!important;
    overflow:visible!important;
    z-index:4!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle strong{
    opacity:0!important;
    width:0!important;
    max-width:0!important;
    overflow:hidden!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle .menu-bars{
    width:18px!important;
    height:14px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle .menu-bars i{
    width:16px!important;
  }
  body:not(.zsu-nav-compact) .brand,
  body.nav-open .brand{
    opacity:1!important;
    transform:none!important;
  }
}

/* ZSU_HALFISLAND_NAV_V1 */
.topbar,
.topbar-inner,
.brand,
.nav-logo,
.nav-logo img,
.center-nav,
.nav-actions,
.mobile-menu-toggle{
  transition:
    height .34s cubic-bezier(.22,.61,.36,1),
    min-height .34s cubic-bezier(.22,.61,.36,1),
    max-height .34s cubic-bezier(.22,.61,.36,1),
    width .34s cubic-bezier(.22,.61,.36,1),
    opacity .22s ease,
    transform .34s cubic-bezier(.22,.61,.36,1),
    padding .34s cubic-bezier(.22,.61,.36,1),
    margin .34s cubic-bezier(.22,.61,.36,1),
    box-shadow .34s ease,
    background-color .34s ease!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar{
  min-height:14px!important;
  height:14px!important;
  background:color-mix(in srgb,var(--header) 94%,transparent)!important;
  border-bottom:1px solid color-mix(in srgb,var(--gold) 36%,var(--line))!important;
  box-shadow:0 2px 10px rgba(15,23,42,.04)!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar-inner{
  min-height:14px!important;
  height:14px!important;
  max-height:14px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .brand{
  opacity:1!important;
  pointer-events:auto!important;
  height:36px!important;
  max-height:36px!important;
  min-height:36px!important;
  transform:translateY(5px)!important;
  background:color-mix(in srgb,var(--header) 96%,transparent)!important;
  border:1px solid color-mix(in srgb,var(--line) 82%,transparent)!important;
  border-top:0!important;
  border-radius:0 0 14px 14px!important;
  box-shadow:0 5px 14px rgba(15,23,42,.06)!important;
  overflow:hidden!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo,
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  height:36px!important;
  max-height:36px!important;
  min-height:36px!important;
}
body.zsu-nav-compact:not(.nav-open) .center-nav,
body.zsu-nav-compact:not(.nav-open) .nav-actions{
  opacity:0!important;
  transform:translateY(-14px)!important;
  pointer-events:none!important;
}
@media(min-width:981px){
  body.zsu-nav-compact:not(.nav-open) .topbar:hover{
    height:auto!important;
    min-height:68px!important;
    background:color-mix(in srgb,var(--header) 96%,transparent)!important;
    box-shadow:0 10px 28px rgba(17,24,39,.06)!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .topbar-inner{
    min-height:68px!important;
    height:auto!important;
    max-height:none!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand{
    height:48px!important;
    max-height:48px!important;
    transform:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo img{
    height:48px!important;
    max-height:48px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .center-nav,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-actions{
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar{
    min-height:16px!important;
    height:16px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr) 40px!important;
    min-height:16px!important;
    height:16px!important;
    max-height:16px!important;
    padding:0 8px!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    grid-column:2!important;
    justify-self:center!important;
    width:min(220px,calc(100vw - 98px))!important;
    height:36px!important;
    max-height:36px!important;
    min-height:36px!important;
    transform:translateY(3px)!important;
    opacity:1!important;
    box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo,
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    height:36px!important;
    max-height:36px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle{
    display:inline-flex!important;
    opacity:1!important;
    pointer-events:auto!important;
    grid-column:1!important;
    justify-self:start!important;
    align-self:start!important;
    width:32px!important;
    min-width:32px!important;
    height:32px!important;
    min-height:32px!important;
    padding:0!important;
    margin:2px 0 0!important;
    border-radius:999px!important;
    border:1px solid color-mix(in srgb,var(--gold) 58%,var(--line))!important;
    transform:none!important;
    box-shadow:0 5px 12px color-mix(in srgb,var(--gold) 14%,transparent)!important;
    overflow:visible!important;
    z-index:4!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle strong{
    opacity:0!important;
    width:0!important;
    max-width:0!important;
    overflow:hidden!important;
    margin:0!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle .menu-bars{
    width:18px!important;
    height:14px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .mobile-menu-toggle .menu-bars i{
    width:16px!important;
  }
  body:not(.zsu-nav-compact) .topbar,
  body.nav-open .topbar{
    height:auto!important;
  }
  body:not(.zsu-nav-compact) .brand,
  body.nav-open .brand{
    opacity:1!important;
    transform:none!important;
    height:52px!important;
    max-height:52px!important;
  }
}

/* ZSU_FILETAB_NAV_V1 */
body.zsu-nav-compact:not(.nav-open) .topbar{
  position:sticky!important;
  min-height:16px!important;
  height:16px!important;
  background:color-mix(in srgb,var(--header) 92%,transparent)!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:13px;
  height:1px;
  background:color-mix(in srgb,var(--gold) 68%,var(--line));
  z-index:0;
  pointer-events:none;
}
body.zsu-nav-compact:not(.nav-open) .topbar-inner{
  position:relative!important;
  min-height:16px!important;
  height:16px!important;
  max-height:16px!important;
  overflow:visible!important;
  z-index:1;
}
body.zsu-nav-compact:not(.nav-open) .brand{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:0 9px 0 8px!important;
  transform:translateY(2px)!important;
  opacity:1!important;
  pointer-events:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0 0 12px 12px!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:2px;
  height:1px;
  background:color-mix(in srgb,var(--gold) 68%,var(--line));
  z-index:-1;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  width:auto!important;
  max-width:138px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-gmbh-logo.nav-logo img{
  max-width:124px!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
  background:transparent!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
  max-width:150px!important;
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar{
    min-height:17px!important;
    height:17px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar::after{
    top:14px;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    grid-template-columns:40px minmax(0,1fr) 40px!important;
    min-height:17px!important;
    height:17px!important;
    max-height:17px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    grid-column:2!important;
    justify-self:center!important;
    padding:0 8px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    max-width:126px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
    max-width:142px!important;
  }
}

/* ZSU_FILETAB_U_SHAPE_V1 */
body.zsu-nav-compact:not(.nav-open) .topbar{
  --zsu-tab-line-y:13px;
  --zsu-tab-stroke:2px;
  --zsu-tab-color:var(--gold);
  min-height:18px!important;
  height:18px!important;
  background:color-mix(in srgb,var(--header) 94%,transparent)!important;
  border-bottom:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:var(--zsu-tab-line-y)!important;
  height:var(--zsu-tab-stroke)!important;
  background:var(--zsu-tab-color)!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar-inner{
  min-height:18px!important;
  height:18px!important;
  max-height:18px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .brand{
  position:relative!important;
  width:166px!important;
  min-width:166px!important;
  max-width:166px!important;
  height:66px!important;
  min-height:66px!important;
  max-height:66px!important;
  padding:0!important;
  transform:translateY(0)!important;
  opacity:1!important;
  pointer-events:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::before{
  content:""!important;
  position:absolute!important;
  left:2px!important;
  right:2px!important;
  top:calc(var(--zsu-tab-line-y) - 2px)!important;
  height:calc(var(--zsu-tab-stroke) + 4px)!important;
  background:color-mix(in srgb,var(--header) 96%,transparent)!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:var(--zsu-tab-line-y)!important;
  height:50px!important;
  border-left:var(--zsu-tab-stroke) solid var(--zsu-tab-color)!important;
  border-right:var(--zsu-tab-stroke) solid var(--zsu-tab-color)!important;
  border-bottom:var(--zsu-tab-stroke) solid var(--zsu-tab-color)!important;
  border-top:0!important;
  border-radius:0 0 999px 999px!important;
  z-index:2!important;
  pointer-events:none!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo{
  position:relative!important;
  z-index:3!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  margin-top:20px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  justify-content:center!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  width:auto!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  max-width:118px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-gmbh-logo.nav-logo img{
  max-width:112px!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
  width:auto!important;
  min-width:0!important;
  max-width:132px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  margin-top:21px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  max-width:132px!important;
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar{
    --zsu-tab-line-y:14px;
    min-height:19px!important;
    height:19px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    grid-template-columns:40px minmax(0,1fr) 40px!important;
    min-height:19px!important;
    height:19px!important;
    max-height:19px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    grid-column:2!important;
    justify-self:center!important;
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
    height:60px!important;
    min-height:60px!important;
    max-height:60px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand::after{
    height:45px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo{
    margin-top:19px!important;
    height:31px!important;
    min-height:31px!important;
    max-height:31px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    height:29px!important;
    min-height:29px!important;
    max-height:29px!important;
    max-width:104px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
    max-width:120px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
    height:27px!important;
    min-height:27px!important;
    max-height:27px!important;
    max-width:120px!important;
  }
}

/* ZSU_FILETAB_TILE_SHAPE_V1 */
body:not(.zsu-nav-compact) .topbar,
body.nav-open .topbar,
body.zsu-nav-compact:not(.nav-open) .topbar:hover{
  border-bottom:0!important;
  overflow:visible!important;
}
body:not(.zsu-nav-compact) .topbar::after,
body.nav-open .topbar::after,
body.zsu-nav-compact:not(.nav-open) .topbar:hover::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:0!important;
  height:2px!important;
  background:var(--gold)!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar{
  --zsu-tab-line-y:14px;
  --zsu-tab-stroke:2px;
  min-height:18px!important;
  height:18px!important;
  border-bottom:0!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar::after{
  top:var(--zsu-tab-line-y)!important;
  bottom:auto!important;
  height:var(--zsu-tab-stroke)!important;
  background:var(--gold)!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar-inner{
  min-height:18px!important;
  height:18px!important;
  max-height:18px!important;
}
body.zsu-nav-compact:not(.nav-open) .brand{
  width:174px!important;
  min-width:174px!important;
  max-width:174px!important;
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  padding:0!important;
  transform:translateY(0)!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  align-items:flex-start!important;
  justify-content:center!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::before{
  content:""!important;
  position:absolute!important;
  left:2px!important;
  right:2px!important;
  top:calc(var(--zsu-tab-line-y) - 2px)!important;
  height:calc(var(--zsu-tab-stroke) + 4px)!important;
  background:color-mix(in srgb,var(--header) 97%,transparent)!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:var(--zsu-tab-line-y)!important;
  height:40px!important;
  border-left:var(--zsu-tab-stroke) solid var(--gold)!important;
  border-right:var(--zsu-tab-stroke) solid var(--gold)!important;
  border-bottom:var(--zsu-tab-stroke) solid var(--gold)!important;
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
  z-index:2!important;
  pointer-events:none!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo{
  position:relative!important;
  z-index:3!important;
  height:31px!important;
  min-height:31px!important;
  max-height:31px!important;
  margin-top:19px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  max-width:116px!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-gmbh-logo.nav-logo img{
  max-width:112px!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
  max-width:124px!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  margin-top:20px!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
  height:28px!important;
  min-height:28px!important;
  max-height:28px!important;
  max-width:124px!important;
}
body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand::before,
body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand::after{
  content:none!important;
  display:none!important;
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar{
    --zsu-tab-line-y:14px;
    min-height:19px!important;
    height:19px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    grid-template-columns:40px minmax(0,1fr) 40px!important;
    min-height:19px!important;
    height:19px!important;
    max-height:19px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    grid-column:2!important;
    justify-self:center!important;
    width:154px!important;
    min-width:154px!important;
    max-width:154px!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand::after{
    height:36px!important;
    border-radius:0 0 16px 16px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo{
    height:29px!important;
    min-height:29px!important;
    max-height:29px!important;
    margin-top:18px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    height:27px!important;
    min-height:27px!important;
    max-height:27px!important;
    max-width:102px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
    max-width:112px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    margin-top:19px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
    height:25px!important;
    min-height:25px!important;
    max-height:25px!important;
    max-width:112px!important;
  }
}

/* ZSU_FILETAB_LOGO_FIT_V2 */
body.zsu-nav-compact:not(.nav-open) .brand{
  width:fit-content!important;
  min-width:0!important;
  max-width:fit-content!important;
  justify-self:center!important;
  align-self:start!important;
  display:inline-flex!important;
  padding:0!important;
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  transform:none!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::before{
  left:0!important;
  right:0!important;
  top:calc(var(--zsu-tab-line-y) - 2px)!important;
  height:calc(var(--zsu-tab-stroke) + 4px)!important;
  background:color-mix(in srgb,var(--header) 98%,transparent)!important;
}
body.zsu-nav-compact:not(.nav-open) .brand::after{
  left:0!important;
  right:0!important;
  top:var(--zsu-tab-line-y)!important;
  height:42px!important;
  border-left:var(--zsu-tab-stroke) solid var(--gold)!important;
  border-right:var(--zsu-tab-stroke) solid var(--gold)!important;
  border-bottom:var(--zsu-tab-stroke) solid var(--gold)!important;
  border-top:0!important;
  border-radius:0 0 14px 14px!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo{
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  margin-top:20px!important;
  padding:0 7px!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
body.zsu-nav-compact:not(.nav-open) .nav-logo img{
  display:block!important;
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center center!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  margin-top:19px!important;
  padding:3px 8px!important;
  background:var(--zsu-ev-dark)!important;
  border-radius:4px!important;
}
body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
  width:auto!important;
  height:28px!important;
  min-height:28px!important;
  max-height:28px!important;
  max-width:none!important;
  object-position:center center!important;
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .brand{
    width:fit-content!important;
    min-width:0!important;
    max-width:fit-content!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand::after{
    height:38px!important;
    border-radius:0 0 12px 12px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo{
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    margin-top:19px!important;
    padding:0 6px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    margin-top:18px!important;
    padding:3px 7px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
    height:26px!important;
    min-height:26px!important;
    max-height:26px!important;
  }
}

/* ZSU_LOGO_TAB_PRO_V1 */
body:not(.zsu-nav-compact) .topbar,
body.nav-open .topbar{
  border-bottom:0!important;
  overflow:visible!important;
}
body:not(.zsu-nav-compact) .topbar::after,
body.nav-open .topbar::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:0!important;
  height:2px!important;
  background:var(--gold)!important;
  z-index:0!important;
  pointer-events:none!important;
}
@media(min-width:981px){
  body.zsu-nav-compact:not(.nav-open) .topbar:hover{
    border-bottom:0!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:auto!important;
    bottom:0!important;
    height:2px!important;
    background:var(--gold)!important;
    z-index:0!important;
    pointer-events:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand::before,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand::after{
    content:none!important;
    display:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand{
    width:220px!important;
    min-width:0!important;
    max-width:220px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin-left:0!important;
    padding:0!important;
    transform:none!important;
    justify-self:start!important;
    align-self:center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:hover .brand{
    width:210px!important;
    max-width:210px!important;
    justify-self:start!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo{
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin-top:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo img{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:hover .zsu-ev-logo.nav-logo{
    background:var(--zsu-ev-dark)!important;
    border-radius:10px!important;
    padding:5px 8px!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:hover .zsu-ev-logo.nav-logo img{
    object-position:center center!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover){
    --zsu-tab-line-y:22px;
    --zsu-tab-stroke:2px;
    --zsu-tab-pad-x:14px;
    --zsu-tab-bg:color-mix(in srgb,var(--header) 98%,transparent);
    min-height:24px!important;
    height:24px!important;
    border-bottom:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover)::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:var(--zsu-tab-line-y)!important;
    bottom:auto!important;
    height:var(--zsu-tab-stroke)!important;
    background:var(--gold)!important;
    z-index:0!important;
    pointer-events:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .topbar-inner{
    min-height:24px!important;
    height:24px!important;
    max-height:24px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    align-items:start!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand{
    position:relative!important;
    display:inline-flex!important;
    width:fit-content!important;
    min-width:0!important;
    max-width:fit-content!important;
    height:78px!important;
    min-height:78px!important;
    max-height:78px!important;
    margin-left:calc(-1 * var(--zsu-tab-pad-x))!important;
    padding:0!important;
    transform:none!important;
    opacity:1!important;
    pointer-events:auto!important;
    justify-self:start!important;
    align-self:start!important;
    align-items:flex-start!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand{
    justify-self:center!important;
    margin-left:0!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand::before{
    content:none!important;
    display:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:var(--zsu-tab-line-y)!important;
    height:54px!important;
    background:var(--zsu-tab-bg)!important;
    border-left:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-right:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-bottom:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-top:0!important;
    border-radius:0 0 16px 16px!important;
    box-shadow:0 8px 18px rgba(15,23,42,.07)!important;
    z-index:1!important;
    pointer-events:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo{
    position:relative!important;
    z-index:2!important;
    display:inline-flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin-top:28px!important;
    padding:0 var(--zsu-tab-pad-x)!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo img{
    display:block!important;
    width:auto!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:transparent!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .zsu-shop-logo.nav-logo img{
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover){
    --zsu-tab-bg:var(--zsu-ev-dark);
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .zsu-ev-logo.nav-logo{
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    margin-top:29px!important;
    padding:0 var(--zsu-tab-pad-x)!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .zsu-ev-logo.nav-logo img{
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    max-width:none!important;
    object-position:center center!important;
  }
}
@media(max-width:980px){
  body.zsu-nav-compact:not(.nav-open) .topbar{
    --zsu-tab-line-y:19px;
    --zsu-tab-stroke:2px;
    --zsu-tab-pad-x:12px;
    --zsu-tab-bg:color-mix(in srgb,var(--header) 98%,transparent);
    min-height:21px!important;
    height:21px!important;
    border-bottom:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar::after{
    top:var(--zsu-tab-line-y)!important;
    bottom:auto!important;
    height:var(--zsu-tab-stroke)!important;
    background:var(--gold)!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar-inner{
    grid-template-columns:40px minmax(0,1fr) 40px!important;
    min-height:21px!important;
    height:21px!important;
    max-height:21px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    align-items:start!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    grid-column:2!important;
    justify-self:center!important;
    align-self:start!important;
    width:fit-content!important;
    min-width:0!important;
    max-width:fit-content!important;
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    margin-left:0!important;
    padding:0!important;
    transform:none!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand::before{
    content:none!important;
    display:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:var(--zsu-tab-line-y)!important;
    height:46px!important;
    background:var(--zsu-tab-bg)!important;
    border-left:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-right:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-bottom:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-top:0!important;
    border-radius:0 0 14px 14px!important;
    box-shadow:0 7px 16px rgba(15,23,42,.07)!important;
    z-index:1!important;
    pointer-events:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo{
    position:relative!important;
    z-index:2!important;
    display:inline-flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    margin-top:25px!important;
    padding:0 var(--zsu-tab-pad-x)!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .nav-logo img{
    width:auto!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    max-width:none!important;
    object-position:center center!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open){
    --zsu-tab-bg:var(--zsu-ev-dark);
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo{
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    margin-top:26px!important;
    padding:0 var(--zsu-tab-pad-x)!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .zsu-ev-logo.nav-logo img{
    height:31px!important;
    min-height:31px!important;
    max-height:31px!important;
    max-width:none!important;
  }
}

/* ZSU final usability overrides 2026-06-22 */
body .ui-btn-icon{width:18px;height:18px;margin-right:8px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
body .ui-btn-icon svg,body .dashboard-card-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body button,body .btn,body input[type="submit"]{gap:8px;color:var(--accent-text)!important;background:var(--gold)!important;border-color:color-mix(in srgb,var(--gold) 72%,#000)!important;text-decoration:none!important;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease!important}
body button:hover,body .btn:hover,body input[type="submit"]:hover{transform:translateY(-1px);box-shadow:0 12px 28px color-mix(in srgb,var(--gold) 22%,transparent)!important}
body .btn.secondary,body button.secondary,body a.btn.secondary{color:var(--text)!important;background:color-mix(in srgb,var(--panel) 86%,#fff)!important;border-color:color-mix(in srgb,var(--text) 24%,var(--line))!important}
body .btn.secondary:hover,body button.secondary:hover,body a.btn.secondary:hover{color:var(--heading)!important;background:color-mix(in srgb,var(--gold) 13%,var(--panel))!important;border-color:var(--gold)!important}
body button.danger,body .btn.danger,body .danger{color:#fff!important;background:#b40000!important;border-color:#8f0000!important}
body .table-export-btn,body .widget-download-btn,body .widget-data-download{width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;color:var(--accent-text)!important;background:var(--gold)!important;border:1px solid color-mix(in srgb,var(--gold) 68%,#000)!important;box-shadow:0 10px 24px rgba(15,23,42,.12)!important}
body .table-export-btn svg,body .widget-download-btn svg,body .widget-data-download svg{width:18px!important;height:18px!important;stroke:currentColor!important}
body input,body select,body textarea{color:var(--text)!important;background:color-mix(in srgb,var(--panel) 84%,#fff)!important;border-color:color-mix(in srgb,var(--text) 22%,var(--line))!important}
body.zsu-theme-dark input,body.zsu-theme-dark select,body.zsu-theme-dark textarea,body.zsu-theme-dark_gold input,body.zsu-theme-dark_gold select,body.zsu-theme-dark_gold textarea{color:#f8fafc!important;background:rgba(15,23,42,.86)!important;border-color:rgba(226,232,240,.28)!important;color-scheme:dark}
body.zsu-theme-dark input[type="date"]::-webkit-calendar-picker-indicator,body.zsu-theme-dark_gold input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.8)}
body .dashboard-card{position:relative;overflow:hidden;justify-content:flex-start!important;align-items:flex-start;gap:14px}
body .dashboard-card-icon{width:46px;height:46px;border-radius:14px;color:var(--accent-text);background:var(--gold);box-shadow:0 16px 35px color-mix(in srgb,var(--gold) 20%,transparent);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
body .dashboard-hero h1{font-size:clamp(34px,4.8vw,62px)}
body .presence-head,body .presence-kpis,body .presence-areas{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
body .presence-head{justify-content:space-between;margin-bottom:18px}
body .presence-updated{color:var(--muted);font-size:12px;font-weight:800}
body .presence-kpis{margin-bottom:18px}
body .presence-kpis div{min-width:190px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 90%,#fff)}
body .presence-kpis span{display:block;color:var(--muted);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
body .presence-kpis strong{display:block;color:var(--heading);font-size:34px;line-height:1.1;margin-top:6px}
body .presence-area{display:inline-flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 88%,#fff);color:var(--text)}
body .presence-area em{min-width:28px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-style:normal;color:var(--accent-text);background:var(--gold);font-weight:900}
body .upload-list-table{table-layout:auto!important;min-width:1120px}
body .upload-list-table th,body .upload-list-table td{vertical-align:middle;white-space:nowrap}
body .upload-list-table .upload-file-name{min-width:260px;max-width:420px;white-space:normal;overflow-wrap:anywhere;font-weight:750}
body .upload-list-table th:last-child,body .upload-list-table td:last-child{min-width:360px}
body .upload-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body .upload-actions form{display:inline-flex!important;margin:0!important}
body .upload-actions .btn,body .upload-actions button{min-height:38px!important;height:38px!important;padding:0 13px!important;white-space:nowrap}
body .complaint-data-wide-panel{width:min(1880px, calc(100vw - 48px));max-width:none!important;margin-left:calc(50% - min(1880px, calc(100vw - 48px))/2)!important}
body .complaint-raw-wide-scroll{max-height:760px;overflow:auto;border:1px solid var(--line);border-radius:18px}
body .complaint-table.full-raw-table{table-layout:auto!important;min-width:1680px}
body .complaint-table.full-raw-table th,body .complaint-table.full-raw-table td{white-space:nowrap}
body .complaint-table.full-raw-table td{max-width:280px;overflow:hidden;text-overflow:ellipsis}
body .audit-human-table{table-layout:auto!important;min-width:1180px}
body .audit-main-action{color:var(--heading);font-size:15px}
body .audit-area-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;color:var(--accent-text);background:var(--gold);font-weight:900;font-size:12px}
body .audit-technical-details{margin-top:8px}
body .audit-technical-details summary{cursor:pointer;color:var(--muted);font-weight:800}
body .audit-json{white-space:pre-wrap;overflow:auto;max-width:560px;padding:12px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:color-mix(in srgb,var(--panel) 88%,#fff)}
@media(max-width:900px){body .complaint-data-wide-panel{width:100%;margin-left:0!important}body .presence-kpis div{flex:1 1 150px;min-width:0}body .dashboard-card-icon{width:42px;height:42px}}

/* ZSU UX refinement 2026-06-22 v2: professional icons and symmetric controls */
body button,
body .btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-height:44px!important;
  line-height:1.12!important;
  white-space:nowrap!important;
  text-align:center!important;
  vertical-align:middle!important;
}
body .ui-btn-icon{
  width:18px!important;
  height:18px!important;
  margin:0 7px 0 0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 18px!important;
}
body .ui-btn-icon svg,
body .dashboard-card-icon svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  fill:currentColor!important;
  stroke:none!important;
}
body .ui-btn-icon svg path,
body .dashboard-card-icon svg path{
  fill:currentColor!important;
  stroke:none!important;
}
body .ui-icon-only{
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  padding:0!important;
  gap:0!important;
}
body .ui-icon-only .ui-btn-icon{
  margin:0!important;
}
body .table-export-btn,
body .widget-download-btn,
body .widget-data-download{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1!important;
  border-radius:14px!important;
  gap:0!important;
}
body .table-export-btn svg,
body .widget-download-btn svg,
body .widget-data-download svg{
  display:block!important;
  margin:0!important;
  width:19px!important;
  height:19px!important;
  fill:currentColor!important;
  stroke:none!important;
}
body .table-export-btn svg path,
body .widget-download-btn svg path,
body .widget-data-download svg path{
  fill:currentColor!important;
  stroke:none!important;
}
body .complaint-filter-actions{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,220px))!important;
  justify-content:start!important;
  align-items:stretch!important;
  gap:10px!important;
}
body .complaint-filter-actions button,
body .complaint-filter-actions .btn{
  width:100%!important;
  min-width:190px!important;
  height:46px!important;
  padding:0 16px!important;
  border-radius:14px!important;
}
body .upload-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(150px,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
  min-width:510px!important;
}
body .upload-actions form,
body .upload-actions a{
  width:100%!important;
}
body .upload-actions .btn,
body .upload-actions button{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 12px!important;
  border-radius:14px!important;
}
body .upload-list-table th:last-child,
body .upload-list-table td:last-child{
  min-width:540px!important;
}
body .mapping-headline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  margin-bottom:14px!important;
}
body .mapping-headline h2{
  margin:0!important;
}
body .mapping-headline form{
  margin:0!important;
}
body .mapping-headline button{
  min-width:190px!important;
}
body .deployment-cell,
body .month-grid .deployment-cell,
body .linear-grid .deployment-cell{
  min-height:190px!important;
}
body .deployment-view-week .deployment-cell,
body .deployment-view-day .deployment-cell{
  min-height:230px!important;
}
body .deployment-view-month .deployment-cell{
  min-height:205px!important;
}
body .day-event-list,
body .deployment-view-week .day-event-list,
body .deployment-view-day .day-event-list{
  display:grid!important;
  gap:8px!important;
  max-height:380px!important;
  padding-right:4px!important;
}
body .event-card,
body .event-pill{
  min-height:54px!important;
  max-height:none!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  font-size:13px!important;
  line-height:1.24!important;
}
body .event-card div{
  font-size:14px!important;
  line-height:1.2!important;
}
body .event-card small,
body .event-pill{
  font-size:12px!important;
  line-height:1.2!important;
}
@media(max-width:760px){
  body .complaint-filter-actions,
  body .upload-actions{
    grid-template-columns:1fr!important;
    min-width:0!important;
  }
  body .complaint-filter-actions button,
  body .complaint-filter-actions .btn{
    min-width:0!important;
  }
}
body .filter-collapse-btn{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  gap:0!important;
  border-radius:12px!important;
}

/* ZSU UX refinement 2026-06-22 v3: readable cards, hover data and admin/procurement symmetry */
body .admin-control-grid .dashboard-card,
body .procurement-dashboard-grid .dashboard-card{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  align-items:start!important;
  gap:16px!important;
  min-height:150px!important;
}
body .admin-control-grid .dashboard-card h2,
body .admin-control-grid .dashboard-card p,
body .procurement-dashboard-grid .dashboard-card h2,
body .procurement-dashboard-grid .dashboard-card p{
  grid-column:2!important;
  margin-left:0!important;
}
body .admin-control-grid .dashboard-card-icon,
body .procurement-dashboard-grid .dashboard-card-icon{
  grid-row:1 / span 2!important;
  grid-column:1!important;
  width:48px!important;
  height:48px!important;
  border-radius:14px!important;
}
body .upload-list-wrap{
  overflow-x:auto!important;
  padding-bottom:16px!important;
}
body .upload-list-table{
  min-width:1320px!important;
}
body .upload-list-table th:last-child,
body .upload-list-table td:last-child{
  width:620px!important;
  min-width:620px!important;
}
body .upload-actions{
  display:grid!important;
  grid-template-columns:160px 220px 150px!important;
  gap:10px!important;
  align-items:stretch!important;
  justify-content:start!important;
  min-width:550px!important;
}
body .upload-actions .btn,
body .upload-actions button{
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body .mapping-panel{
  padding-top:22px!important;
}
body .mapping-panel > .table-export-btn{
  top:22px!important;
  right:22px!important;
}
body .mapping-panel .mapping-headline{
  min-height:48px!important;
  padding-right:64px!important;
}
body .mapping-panel .mapping-headline button{
  width:200px!important;
}
body .procurement-wizard .wizard-global-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(150px,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
body .procurement-wizard .wizard-global-actions .btn,
body .procurement-wizard .wizard-global-actions button{
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  min-height:46px!important;
}
body .procurement-wizard .wizard-global-actions #wizardSubmit[hidden]{
  display:none!important;
}
body .event-card,
body .event-pill,
body .availability-driver-card,
body .queue-case-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-content:stretch!important;
  align-items:start!important;
  text-align:left!important;
  gap:4px!important;
  overflow:hidden!important;
  white-space:normal!important;
}
body .event-card div,
body .event-card small,
body .event-card b,
body .event-pill div,
body .event-pill small,
body .availability-driver-card b,
body .availability-driver-card small{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body .event-card .availability-badge{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  padding:3px 7px!important;
}
body .event-card div b{
  display:inline!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:inherit!important;
}
body .chart-point-tip{
  pointer-events:none!important;
  max-width:260px!important;
  line-height:1.35!important;
}
body .line-chart-point{
  cursor:pointer!important;
}
@media(max-width:760px){
  body .admin-control-grid .dashboard-card,
  body .procurement-dashboard-grid .dashboard-card{
    grid-template-columns:46px minmax(0,1fr)!important;
    min-height:132px!important;
  }
  body .admin-control-grid .dashboard-card-icon,
  body .procurement-dashboard-grid .dashboard-card-icon{
    width:42px!important;
    height:42px!important;
  }
  body .upload-list-table{
    min-width:1180px!important;
  }
  body .upload-actions{
    grid-template-columns:150px 200px 140px!important;
    min-width:510px!important;
  }
  body .procurement-wizard .wizard-global-actions{
    grid-template-columns:1fr!important;
  }
}

/* ZSU UX refinement 2026-06-22 v4: deployment four-line cards and complaint action buttons */
body .deployment-view-week .deployment-cell,
body .deployment-view-day .deployment-cell{
  min-height:520px!important;
}
body .deployment-view-month .deployment-cell,
body .month-grid .deployment-cell,
body .linear-grid .deployment-cell{
  min-height:500px!important;
}
body .day-event-list,
body .deployment-view-week .day-event-list,
body .deployment-view-day .day-event-list,
body .deployment-view-month .day-event-list{
  max-height:438px!important;
  gap:8px!important;
  align-content:start!important;
}
body .event-card{
  min-height:78px!important;
  height:78px!important;
  padding:8px 10px!important;
  gap:2px!important;
  grid-auto-rows:min-content!important;
}
body .event-card .event-line{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  line-height:1.12!important;
}
body .event-card .event-number{
  color:var(--heading)!important;
  font-size:13px!important;
  font-weight:900!important;
}
body .event-card .event-name{
  color:var(--text)!important;
  font-size:12.5px!important;
  font-weight:760!important;
}
body .event-card .event-driver,
body .event-card .event-registry{
  color:var(--muted)!important;
  font-size:11.5px!important;
  font-weight:720!important;
}
body .event-card .availability-badge{
  position:absolute!important;
  right:8px!important;
  top:7px!important;
  max-width:46%!important;
  height:18px!important;
  min-height:18px!important;
  padding:2px 6px!important;
  font-size:10px!important;
}
body .driver-chip,
body .driver-chip.compact,
body .driver-availability-chip{
  grid-template-columns:18px minmax(0,1fr) auto!important;
  min-height:52px!important;
  height:auto!important;
  align-items:center!important;
}
body .driver-chip span{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body .driver-chip span b{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  line-height:1.12!important;
}
body .driver-availability-chip span small{
  display:block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
  margin-top:2px!important;
}
body .driver-chip em{
  align-self:center!important;
  min-width:34px!important;
  flex:0 0 auto!important;
}
body .complaint-table.full-raw-table{
  min-width:1840px!important;
}
body .complaint-table.full-raw-table th.action-col,
body .complaint-table.full-raw-table td.action-col,
body .full-raw-table .action-col{
  min-width:164px!important;
  width:164px!important;
  max-width:164px!important;
  padding:8px 10px!important;
}
body .complaint-table.full-raw-table td.action-col{
  overflow:visible!important;
}
body .complaint-table.full-raw-table .action-col .btn.small{
  width:136px!important;
  min-width:136px!important;
  max-width:136px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 10px!important;
  border-radius:12px!important;
  font-size:11px!important;
  line-height:1!important;
  gap:6px!important;
  justify-content:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body .complaint-table.full-raw-table .action-col .btn.small .ui-btn-icon{
  width:15px!important;
  height:15px!important;
  flex-basis:15px!important;
  margin-right:4px!important;
}
body .complaint-filter-actions button,
body .complaint-filter-actions .btn{
  min-width:210px!important;
  height:46px!important;
  border-radius:14px!important;
}
@media(max-width:900px){
  body .deployment-view-week .deployment-cell,
  body .deployment-view-day .deployment-cell,
  body .deployment-view-month .deployment-cell,
  body .month-grid .deployment-cell,
  body .linear-grid .deployment-cell{
    min-height:430px!important;
  }
  body .day-event-list{
    max-height:360px!important;
  }
  body .event-card{
    min-height:70px!important;
    height:70px!important;
  }
  body .driver-chip,
  body .driver-chip.compact,
  body .driver-availability-chip{
    min-height:48px!important;
  }
  body .complaint-table.full-raw-table th.action-col,
  body .complaint-table.full-raw-table td.action-col,
  body .full-raw-table .action-col{
    min-width:150px!important;
    width:150px!important;
    max-width:150px!important;
  }
  body .complaint-table.full-raw-table .action-col .btn.small{
    width:122px!important;
    min-width:122px!important;
    max-width:122px!important;
  }
}

/* ZSU UX refinement 2026-06-23 v5: readable Turkish UI, raw complaint table, procurement drill-down and deployment history */
body .complaint-table-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding-right:70px!important;
}
body .complaint-data-panel.export-host>.table-export-btn,
body .complaint-data-wide-panel.export-host>.table-export-btn{
  top:20px!important;
  right:22px!important;
  z-index:8!important;
}
body .complaint-table.full-raw-table thead,
body .complaint-table.full-raw-table thead tr,
body .complaint-table.full-raw-table thead th{
  background:var(--header)!important;
  color:var(--header-text)!important;
  opacity:1!important;
}
body .complaint-table.full-raw-table thead th{
  font-size:12.5px!important;
  line-height:1.18!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
  padding:12px 10px!important;
  border-right:1px solid color-mix(in srgb,var(--header-text) 18%,transparent)!important;
  text-shadow:0 1px 1px rgba(0,0,0,.18)!important;
}
body .complaint-table.full-raw-table thead th::before{
  color:var(--header-text)!important;
  opacity:.82!important;
}
body .complaint-table.full-raw-table td{
  font-size:12.4px!important;
  line-height:1.25!important;
}
body .complaint-table.full-raw-table .status-pill{
  color:#ffffff!important;
  text-align:left!important;
  justify-content:flex-start!important;
}
body .complaint-table.full-raw-table .status-pill.none,
body .complaint-table.full-raw-table .status-pill.missing{
  color:var(--text)!important;
  background:color-mix(in srgb,var(--panel) 86%,var(--bg))!important;
  border-color:var(--line)!important;
}
body .filter-multiselect-btn{
  background:color-mix(in srgb,var(--panel) 96%,var(--bg))!important;
  color:var(--text)!important;
  text-align:left!important;
  justify-content:flex-start!important;
}
body .filter-multiselect-text{
  flex:1 1 auto!important;
  min-width:0!important;
  text-align:left!important;
  color:var(--text)!important;
}
body .filter-multiselect-caret{
  margin-left:auto!important;
  color:var(--text)!important;
  opacity:.78!important;
}
body .filter-multiselect-menu{
  color:#111827!important;
}
body .filter-multiselect-menu label,
body .filter-multiselect-menu span{
  color:#111827!important;
  text-align:left!important;
}
body .procurement-kpis .procurement-kpi-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  grid-template-areas:"icon label" "icon value" "icon copy"!important;
  align-items:center!important;
  gap:2px 14px!important;
  text-decoration:none!important;
  color:var(--text)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease!important;
}
body .procurement-kpis .procurement-kpi-card:hover{
  transform:translateY(-2px)!important;
  border-color:color-mix(in srgb,var(--gold) 52%,var(--line))!important;
  box-shadow:0 18px 36px rgba(15,23,42,.14)!important;
}
body .procurement-kpi-icon{
  grid-area:icon!important;
  width:46px!important;
  height:46px!important;
  border-radius:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:color-mix(in srgb,var(--gold) 18%,transparent)!important;
  color:var(--heading)!important;
}
body .procurement-kpi-icon svg{
  width:22px!important;
  height:22px!important;
  fill:currentColor!important;
}
body .procurement-kpi-card>span:not(.procurement-kpi-icon){grid-area:label!important}
body .procurement-kpi-card>h2{grid-area:value!important}
body .procurement-kpi-card>p{grid-area:copy!important}
body .procurement-active-filter{
  margin:14px 0!important;
  border-radius:14px!important;
}
body .presence-area{
  border:1px solid var(--line)!important;
  background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
  color:var(--text)!important;
  border-radius:14px!important;
  min-height:44px!important;
  padding:9px 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  cursor:pointer!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
}
body .presence-area:hover{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--gold) 48%,var(--line))!important;
  box-shadow:0 12px 22px rgba(15,23,42,.10)!important;
}
body .presence-area b{color:var(--heading)!important}
body .presence-area em{
  min-width:30px!important;
  height:26px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:var(--gold)!important;
  color:var(--accent-text)!important;
  font-style:normal!important;
  font-weight:900!important;
}
body .presence-modal[hidden]{display:none!important}
body .presence-modal{
  position:fixed!important;
  inset:0!important;
  z-index:7000!important;
  display:grid!important;
  place-items:center!important;
  padding:18px!important;
}
body .presence-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(15,23,42,.46)!important;
  backdrop-filter:blur(4px)!important;
}
body .presence-modal-card{
  position:relative!important;
  width:min(620px,100%)!important;
  max-height:min(78vh,720px)!important;
  overflow:auto!important;
  background:var(--panel)!important;
  color:var(--text)!important;
  border:1px solid var(--line)!important;
  border-radius:22px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.28)!important;
  padding:18px!important;
}
body .presence-modal-card header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:14px!important;
}
body .presence-modal-close,
body .deployment-modal-close,
body .complaint-modal-close{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
  color:var(--heading)!important;
  border:1px solid var(--line)!important;
  font-size:24px!important;
  line-height:1!important;
}
body .presence-user-list{
  display:grid!important;
  gap:10px!important;
}
body .presence-user-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:12px!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  padding:10px 12px!important;
  background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;
}
body .presence-user-row strong,
body .presence-user-row span{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body .presence-user-row em{
  font-style:normal!important;
  font-weight:850!important;
  color:var(--heading)!important;
}
body .presence-user-row small{color:var(--muted)!important;font-weight:750!important}
body .event-card{
  position:relative!important;
  overflow:hidden!important;
  border-top:1px solid var(--line)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease!important;
}
body .event-card::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:8px!important;
  bottom:8px!important;
  width:4px!important;
  border-radius:999px!important;
  background:var(--gold)!important;
  opacity:0!important;
  transform:scaleY(.55)!important;
  transform-origin:center!important;
  transition:opacity .18s ease, transform .18s ease!important;
}
body .event-card:hover,
body .event-card:focus-visible{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--gold) 52%,var(--line))!important;
  border-top-color:color-mix(in srgb,var(--gold) 52%,var(--line))!important;
  box-shadow:0 14px 30px rgba(15,23,42,.13)!important;
  background:color-mix(in srgb,var(--panel) 94%,var(--gold) 6%)!important;
}
body .event-card:hover::after,
body .event-card:focus-visible::after{
  opacity:1!important;
  transform:scaleY(1)!important;
}
body .deployment-queue-catcher{
  grid-template-columns:38px minmax(0,1fr)!important;
  justify-content:stretch!important;
}
body .deployment-queue-icon{
  width:34px!important;
  height:34px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:color-mix(in srgb,var(--gold) 18%,transparent)!important;
  color:var(--heading)!important;
}
body .deployment-queue-icon svg{
  width:20px!important;
  height:20px!important;
  fill:currentColor!important;
}
body .deployment-queue-copy{
  min-width:0!important;
  display:grid!important;
  gap:2px!important;
}
body .deployment-layout.filters-collapsed .deployment-queue-catcher{
  grid-template-columns:1fr!important;
  padding:8px!important;
}
body .deployment-layout.filters-collapsed .deployment-queue-copy b{
  display:none!important;
}
body .deployment-layout.filters-collapsed .deployment-queue-icon{
  margin:auto!important;
}
body .deployment-layout.filters-collapsed .deployment-queue-copy span{
  font-size:0!important;
  line-height:1!important;
}
body .deployment-layout.filters-collapsed .deployment-queue-copy span::before{
  content:attr(data-count)!important;
  font-size:12px!important;
  color:var(--heading)!important;
}
body .deployment-history-box{
  border-color:color-mix(in srgb,var(--gold) 22%,var(--line))!important;
}
body .deployment-history-list{
  display:grid!important;
  gap:8px!important;
}
body .deployment-history-item{
  display:grid!important;
  gap:3px!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  padding:9px 11px!important;
  background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
}
body .deployment-history-item b{
  color:var(--heading)!important;
  font-size:13px!important;
}
body .deployment-history-item span,
body .deployment-history-item small{
  color:var(--muted)!important;
  font-size:11.5px!important;
  font-weight:720!important;
}
@media(max-width:760px){
  body .complaint-table-head{
    align-items:flex-start!important;
    padding-right:0!important;
  }
  body .complaint-data-panel.export-host>.table-export-btn,
  body .complaint-data-wide-panel.export-host>.table-export-btn{
    position:static!important;
    margin:10px 0 0 auto!important;
  }
  body .presence-user-row{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body .procurement-kpis .procurement-kpi-card{
    grid-template-columns:46px minmax(0,1fr)!important;
  }
}

/* ZSU UX refinement 2026-06-23 v6 */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

body .presence-kpis{
  align-items:stretch!important;
}
body .presence-kpi-card{
  min-width:190px!important;
  padding:16px 18px!important;
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  background:color-mix(in srgb,var(--panel) 90%,#fff)!important;
  color:var(--text)!important;
  cursor:pointer!important;
  text-align:left!important;
  display:grid!important;
  gap:6px!important;
  box-shadow:0 10px 24px rgba(15,23,42,.06)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
}
body .presence-kpi-card:hover,
body .presence-kpi-card:focus-visible{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--gold) 46%,var(--line))!important;
  box-shadow:0 16px 30px rgba(15,23,42,.12)!important;
}
body .presence-kpi-card span{
  display:block!important;
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body .presence-kpi-card strong{
  display:block!important;
  color:var(--heading)!important;
  font-size:34px!important;
  line-height:1.1!important;
  margin-top:0!important;
}

body .deployment-modal-close,
body .complaint-modal-close,
body .presence-modal-close{
  background:var(--gold)!important;
  color:var(--accent-text)!important;
  border:1px solid color-mix(in srgb,var(--gold) 70%,#000)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.18)!important;
  font-weight:950!important;
  text-shadow:none!important;
}
body .deployment-modal-close:hover,
body .complaint-modal-close:hover,
body .presence-modal-close:hover,
body .deployment-modal-close:focus-visible,
body .complaint-modal-close:focus-visible,
body .presence-modal-close:focus-visible{
  transform:translateY(-1px)!important;
  filter:brightness(.97)!important;
}

body .deployment-history-link svg,
body .icon-btn svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
  fill:currentColor!important;
}
body .deployment-history-link{
  color:var(--heading)!important;
}

body .deployment-cell header{
  margin-bottom:8px!important;
}
body .day-event-list,
body .year-event-list{
  display:grid!important;
  gap:8px!important;
  padding-top:9px!important;
  padding-right:4px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable!important;
}
body .deployment-view-day .day-event-list,
body .deployment-view-week .day-event-list{
  max-height:min(62vh,680px)!important;
}
body .deployment-view-month .day-event-list{
  max-height:430px!important;
}
body .deployment-view-year .year-cell{
  min-height:360px!important;
}
body .deployment-view-year .year-event-list{
  max-height:300px!important;
}
body .deployment-view-year .event-pill{
  white-space:normal!important;
  text-align:left!important;
  line-height:1.28!important;
}
body .event-card{
  margin-top:1px!important;
  overflow:visible!important;
}
body .event-card:hover,
body .event-card:focus-visible{
  transform:none!important;
}
body .event-card::after{
  top:10px!important;
  bottom:10px!important;
  border-radius:999px!important;
}

body .deployment-queue-catcher{
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:center!important;
  text-align:left!important;
  border-width:1.5px!important;
  border-style:solid!important;
  border-color:color-mix(in srgb,var(--gold) 40%,var(--line))!important;
  background:color-mix(in srgb,var(--panel) 84%,var(--gold) 16%)!important;
}
body .deployment-queue-copy{
  justify-items:start!important;
  align-items:center!important;
  text-align:left!important;
}
body .deployment-queue-copy b{
  color:var(--heading)!important;
  font-size:15px!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
body .deployment-queue-copy span{
  color:var(--text)!important;
  font-size:12px!important;
  font-weight:760!important;
  line-height:1.25!important;
}
body .deployment-queue-copy span strong{
  color:var(--heading)!important;
  font-weight:950!important;
}
body .deployment-layout.filters-collapsed .deployment-queue-catcher{
  border-color:color-mix(in srgb,var(--gold) 48%,var(--line))!important;
}

body .deployment-queue-board header{
  margin-bottom:14px!important;
}
body .deployment-queue-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
  gap:12px!important;
}
body .queue-case-card{
  width:100%!important;
  min-height:112px!important;
  display:grid!important;
  gap:8px!important;
  text-align:left!important;
  align-content:start!important;
  border:1px solid color-mix(in srgb,var(--gold) 34%,var(--line))!important;
  border-radius:16px!important;
  padding:13px 14px!important;
  background:color-mix(in srgb,var(--panel) 92%,var(--gold) 8%)!important;
  color:var(--text)!important;
  box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
  transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease!important;
}
body .queue-case-card:hover,
body .queue-case-card:focus-visible{
  transform:none!important;
  border-color:color-mix(in srgb,var(--gold) 58%,var(--line))!important;
  box-shadow:0 18px 34px rgba(15,23,42,.13)!important;
  background:color-mix(in srgb,var(--panel) 88%,var(--gold) 12%)!important;
}
body .queue-case-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
}
body .queue-case-top b{
  color:var(--heading)!important;
  font-size:15px!important;
  font-weight:950!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body .queue-case-top em{
  flex:0 0 auto!important;
  font-style:normal!important;
  font-size:11px!important;
  font-weight:820!important;
  color:var(--muted)!important;
}
body .queue-case-name{
  color:var(--text)!important;
  font-weight:850!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body .queue-case-meta{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
body .queue-case-meta span{
  border:1px solid var(--line)!important;
  border-radius:999px!important;
  padding:4px 8px!important;
  color:var(--muted)!important;
  background:color-mix(in srgb,var(--panel) 88%,var(--bg))!important;
  font-size:11px!important;
  font-weight:780!important;
}

body .deployment-note-field textarea{
  min-height:92px!important;
  resize:vertical!important;
}

body .deployment-audit-page .hero{
  margin-bottom:22px!important;
}
body .deployment-audit-filter-panel .deployment-audit-actions{
  display:flex!important;
  gap:10px!important;
  align-items:end!important;
  align-self:end!important;
  flex-wrap:wrap!important;
}
body .deployment-audit-wrap{
  max-height:70vh!important;
  overflow:auto!important;
}
body .deployment-audit-table th{
  background:var(--header)!important;
  color:var(--header-text)!important;
}
body .deployment-audit-table td{
  vertical-align:top!important;
}
body .deployment-audit-action-pill{
  display:inline-flex!important;
  align-items:center!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  background:color-mix(in srgb,var(--gold) 18%,var(--panel))!important;
  border:1px solid color-mix(in srgb,var(--gold) 34%,var(--line))!important;
  color:var(--heading)!important;
  font-weight:900!important;
  line-height:1.2!important;
}

@media(max-width:900px){
  body .presence-kpi-card{
    flex:1 1 150px!important;
    min-width:0!important;
  }
  body .deployment-toolbar-right{
    width:100%!important;
    justify-content:flex-start!important;
  }
  body .deployment-queue-list{
    grid-template-columns:1fr!important;
  }
  body .deployment-view-month .day-event-list,
  body .deployment-view-year .year-event-list{
    max-height:360px!important;
  }
  body .deployment-audit-filter-panel .deployment-audit-actions,
  body .deployment-audit-filter-panel .deployment-audit-actions .btn{
    width:100%!important;
  }
}

/* ZSU UX refinement 2026-06-23 v7 */
body .admin-presence-widget .presence-kpi-card,
body .admin-presence-widget .presence-area{
  background:color-mix(in srgb,var(--panel) 94%,var(--bg))!important;
  color:var(--text)!important;
  border-color:color-mix(in srgb,var(--text) 20%,var(--line))!important;
}
body .admin-presence-widget .presence-kpi-card span,
body .admin-presence-widget .presence-area span{
  color:color-mix(in srgb,var(--text) 82%,var(--muted))!important;
}
body .admin-presence-widget .presence-kpi-card strong,
body .admin-presence-widget .presence-area b{
  color:var(--heading)!important;
}
body .admin-presence-widget .presence-area em{
  background:var(--gold)!important;
  color:var(--accent-text)!important;
  border:1px solid color-mix(in srgb,var(--gold) 70%,#000)!important;
}
body.zsu-theme-dark .admin-presence-widget .presence-kpi-card,
body.zsu-theme-dark_gold .admin-presence-widget .presence-kpi-card,
body.zsu-theme-dark .admin-presence-widget .presence-area,
body.zsu-theme-dark_gold .admin-presence-widget .presence-area{
  background:color-mix(in srgb,var(--panel) 88%,#000)!important;
  color:#f8fafc!important;
  border-color:rgba(255,255,255,.24)!important;
}
body.zsu-theme-dark .admin-presence-widget .presence-kpi-card span,
body.zsu-theme-dark_gold .admin-presence-widget .presence-kpi-card span,
body.zsu-theme-dark .admin-presence-widget .presence-area span,
body.zsu-theme-dark_gold .admin-presence-widget .presence-area span{
  color:#dbeafe!important;
}
body.zsu-theme-dark .admin-presence-widget .presence-kpi-card strong,
body.zsu-theme-dark_gold .admin-presence-widget .presence-kpi-card strong,
body.zsu-theme-dark .admin-presence-widget .presence-area b,
body.zsu-theme-dark_gold .admin-presence-widget .presence-area b{
  color:#ffffff!important;
}

body .deployment-zip-input{
  min-width:116px!important;
  max-width:150px!important;
  letter-spacing:.08em!important;
  font-weight:850!important;
}
body .deployment-zip-hint{
  margin:8px 0 0!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line))!important;
  border-radius:999px!important;
  padding:7px 12px!important;
  background:color-mix(in srgb,var(--panel) 90%,var(--gold) 10%)!important;
  color:var(--text)!important;
  font-size:12px!important;
  font-weight:820!important;
}
body .deployment-zip-hint b{
  color:var(--heading)!important;
}
body .deployment-zip-hint span{
  color:var(--muted)!important;
}
body .deployment-history-mount{
  margin-top:14px!important;
}
body .deployment-history-mount:empty{
  display:none!important;
}

.topbar,
.topbar-inner,
.brand,
.brand::before,
.brand::after,
.nav-logo,
.nav-logo img,
.center-nav,
.nav-actions{
  transition:
    height .34s cubic-bezier(.2,.8,.2,1),
    min-height .34s cubic-bezier(.2,.8,.2,1),
    max-height .34s cubic-bezier(.2,.8,.2,1),
    width .34s cubic-bezier(.2,.8,.2,1),
    max-width .34s cubic-bezier(.2,.8,.2,1),
    padding .34s cubic-bezier(.2,.8,.2,1),
    margin .34s cubic-bezier(.2,.8,.2,1),
    transform .34s cubic-bezier(.2,.8,.2,1),
    opacity .22s ease,
    border-radius .34s cubic-bezier(.2,.8,.2,1),
    box-shadow .34s ease!important;
}

@media(min-width:981px){
  body:not(.zsu-nav-compact) .topbar-inner,
  body.nav-open .topbar-inner,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .topbar-inner{
    grid-template-columns:minmax(150px,190px) minmax(0,1fr) auto!important;
    gap:clamp(8px,1.1vw,18px)!important;
  }
  body:not(.zsu-nav-compact) .brand,
  body.nav-open .brand,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .brand{
    justify-self:start!important;
    width:auto!important;
    min-width:0!important;
    max-width:190px!important;
    margin-left:10px!important;
    overflow:visible!important;
  }
  body:not(.zsu-nav-compact) .nav-logo,
  body.nav-open .nav-logo,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo{
    width:auto!important;
    max-width:190px!important;
    padding:0!important;
  }
  body:not(.zsu-nav-compact) .nav-logo img,
  body.nav-open .nav-logo img,
  body.zsu-nav-compact:not(.nav-open) .topbar:hover .nav-logo img{
    width:auto!important;
    max-width:176px!important;
    max-height:42px!important;
    object-position:left center!important;
  }
  body:not(.zsu-nav-compact) .zsu-ev-logo.nav-logo,
  body.nav-open .zsu-ev-logo.nav-logo,
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:hover .zsu-ev-logo.nav-logo{
    width:auto!important;
    max-width:max-content!important;
    padding:5px 8px!important;
    border-radius:8px!important;
  }
  body:not(.zsu-nav-compact) .zsu-ev-logo.nav-logo img,
  body.nav-open .zsu-ev-logo.nav-logo img,
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:hover .zsu-ev-logo.nav-logo img{
    max-width:154px!important;
    max-height:30px!important;
  }
  body .center-nav{
    gap:clamp(8px,1vw,18px)!important;
  }
  body .center-nav a,
  body .nav-actions a{
    font-size:13.5px!important;
    letter-spacing:0!important;
  }

  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover){
    --zsu-tab-line-y:20px;
    --zsu-tab-stroke:2px;
    --zsu-tab-pad-x:10px;
    height:23px!important;
    min-height:23px!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover)::after{
    top:var(--zsu-tab-line-y)!important;
    height:var(--zsu-tab-stroke)!important;
    background:var(--gold)!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .topbar-inner{
    grid-template-columns:minmax(138px,176px) minmax(0,1fr) auto!important;
    height:23px!important;
    min-height:23px!important;
    max-height:23px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    align-items:start!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand{
    justify-self:start!important;
    margin-left:14px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:max-content!important;
    height:64px!important;
    min-height:64px!important;
    max-height:64px!important;
    align-items:flex-start!important;
    overflow:visible!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand::before{
    content:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:var(--zsu-tab-line-y)!important;
    height:42px!important;
    background:color-mix(in srgb,var(--header) 98%,transparent)!important;
    border-left:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-right:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-bottom:var(--zsu-tab-stroke) solid var(--gold)!important;
    border-top:0!important;
    border-radius:0 0 14px 14px!important;
    box-shadow:0 7px 18px rgba(15,23,42,.08)!important;
    z-index:1!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo{
    position:relative!important;
    z-index:2!important;
    width:auto!important;
    max-width:max-content!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    margin-top:25px!important;
    padding:0 var(--zsu-tab-pad-x)!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .nav-logo img{
    width:auto!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    max-width:148px!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .brand::after{
    background:var(--zsu-ev-dark)!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .zsu-ev-logo.nav-logo{
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    margin-top:25px!important;
    padding:0 8px!important;
    background:transparent!important;
  }
  body.zsu-context-ev.zsu-nav-compact:not(.nav-open) .topbar:not(:hover) .zsu-ev-logo.nav-logo img{
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    max-width:138px!important;
  }
}

@media(max-width:980px){
  body:not(.zsu-nav-compact) .brand,
  body.nav-open .brand{
    justify-self:start!important;
    max-width:170px!important;
  }
  body:not(.zsu-nav-compact) .nav-logo img,
  body.nav-open .nav-logo img{
    max-width:150px!important;
    max-height:32px!important;
  }
  body.zsu-nav-compact:not(.nav-open) .brand{
    width:max-content!important;
    max-width:max-content!important;
  }
}



/* V104_DEPLOY_SYSTEM */
.dashboard-card[data-dashboard-icon="system"]::before{content:'✓'}
.dashboard-card[data-dashboard-icon="backup"]::before{content:'↺'}
.audit-area-pill{
    display:inline-flex;
    align-items:center;
    padding:3px 8px;
    border:1px solid var(--line);
    border-radius:999px;
    font-size:11px;
    font-weight:850;
}
pre{
    white-space:pre-wrap;
    overflow:auto;
}


/* V105_AUDIT_DIFF_LIVE_CONFLICT */
.event-card.live-updated,
.event-pill.live-updated{
    outline:2px solid color-mix(in srgb,#22c55e 65%,var(--line))!important;
    box-shadow:0 0 0 5px color-mix(in srgb,#22c55e 14%,transparent)!important;
}
.alert.danger{
    border-color:color-mix(in srgb,#ef4444 55%,var(--line))!important;
    background:color-mix(in srgb,#ef4444 10%,var(--panel))!important;
}
.dashboard-card[data-dashboard-icon="audit"]::before{content:'≡'}


/* V107_ERROR_HANDLER_PERMISSION_UI */
.permission-readonly-note{
    border:1px solid color-mix(in srgb,#b8924d 50%,var(--line));
    border-radius:18px;
    padding:12px 14px;
    margin:12px 0;
    background:color-mix(in srgb,#b8924d 10%,var(--panel));
    color:var(--text);
    font-weight:700;
}
.is-permission-locked,
.permission-readonly-card{
    opacity:.58!important;
    cursor:not-allowed!important;
    filter:saturate(.72);
}
button.is-permission-locked,
.btn.is-permission-locked,
a.is-permission-locked{
    pointer-events:none!important;
}
.permission-readonly-card{
    outline:1px dashed color-mix(in srgb,var(--muted) 45%,transparent)!important;
}
.role-profile-panel .widget h3{margin-top:0}


/* V108_API_SQL_PIVOT */
.integration-map-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:12px;
    margin-top:12px;
}
.integration-map-grid label{
    border:1px solid var(--line);
    border-radius:16px;
    padding:10px;
    background:color-mix(in srgb,var(--panel) 92%,transparent);
}
.analytics-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:22px;
}
.analytics-widget{
    min-height:160px;
}
.analytics-widget.analytics-widget-kpi{
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.analytics-bars{
    display:grid;
    gap:10px;
}
.analytics-bar-row{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    padding:10px 0 14px;
    border-bottom:1px solid var(--line);
}
.analytics-bar-row span,
.analytics-bar-row b{
    position:relative;
    z-index:1;
}
.analytics-bar-row i{
    position:absolute;
    left:0;
    bottom:4px;
    height:6px;
    border-radius:999px;
    background:color-mix(in srgb,var(--accent) 70%,#b8924d);
    opacity:.55;
}
.analytics-page-switch{
    margin-top:18px;
}
.analytics-dynamic-links{
    margin-top:18px;
}
.dashboard-card[data-dashboard-icon="analytics"]::before{content:'▦'}
@media(max-width:900px){
    .analytics-grid{grid-template-columns:1fr}
}


/* V109_NEAR_REALTIME_EXTERNAL_SYNC */
.integration-live-status{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin:0 0 14px;
    padding:8px 12px;
    border-radius:999px;
    border:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 92%,transparent);
    color:var(--muted);
    font-size:12px;
    font-weight:800;
}
.integration-live-status::before{
    content:'';
    width:8px;height:8px;border-radius:50%;
    background:#22c55e;
    box-shadow:0 0 0 4px color-mix(in srgb,#22c55e 16%,transparent);
}
.integration-live-status[data-state="syncing"]::before{background:#f59e0b;box-shadow:0 0 0 4px color-mix(in srgb,#f59e0b 18%,transparent)}
.integration-live-status[data-state="fallback"]::before{background:#ef4444;box-shadow:0 0 0 4px color-mix(in srgb,#ef4444 18%,transparent)}
.integration-webhook-box code{
    display:block;
    margin-top:6px;
    padding:8px 10px;
    border-radius:12px;
    background:color-mix(in srgb,#111 8%,var(--panel));
    overflow-wrap:anywhere;
}


/* V110_NO_RELOAD_INCREMENTAL_SYNC */
.integration-live-status[data-state="pending"]::before{
    background:#f59e0b;
    box-shadow:0 0 0 4px color-mix(in srgb,#f59e0b 18%,transparent);
}
.integration-live-status .live-apply-btn{
    border:0;
    border-radius:999px;
    padding:5px 9px;
    margin-left:8px;
    background:var(--accent);
    color:#fff;
    font-size:11px;
    font-weight:900;
    cursor:pointer;
}
.integration-live-status[data-state="syncing"]{
    animation:livePulse 1.1s ease-in-out infinite;
}
@keyframes livePulse{
    0%,100%{opacity:1}
    50%{opacity:.72}
}


/* V111_LIVE_CHART_AUTOREFRESH */
.live-fragment-updated{
    animation:liveFragmentFade .55s ease-out;
}
@keyframes liveFragmentFade{
    from{filter:brightness(1.08); transform:translateY(-1px)}
    to{filter:brightness(1); transform:translateY(0)}
}
.integration-live-status{
    position:sticky;
    top:8px;
    z-index:30;
}


/* V112_BACKGROUND_SYNC_QUEUE */
.integration-live-status[data-state="syncing"] span::after{
    content:'';
    display:inline-block;
    width:10px;height:10px;
    margin-left:8px;
    border:2px solid currentColor;
    border-top-color:transparent;
    border-radius:50%;
    animation:spinLive .8s linear infinite;
}
@keyframes spinLive{to{transform:rotate(360deg)}}


/* V113_FRESHNESS_GUARD */
.integration-freshness-banner{
    position:sticky;
    top:8px;
    z-index:40;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding:14px 16px;
    margin:0 0 18px;
    border-radius:20px;
    border:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 96%,transparent);
    box-shadow:0 12px 40px rgba(0,0,0,.08);
}
.integration-freshness-banner strong{
    display:block;
    font-size:15px;
}
.integration-freshness-banner p{
    margin:4px 0 0;
    color:var(--muted);
}
.integration-freshness-banner.freshness-critical{
    border-color:color-mix(in srgb,#ef4444 55%,var(--line));
    background:color-mix(in srgb,#ef4444 8%,var(--panel));
}
.integration-freshness-banner.freshness-warning{
    border-color:color-mix(in srgb,#f59e0b 55%,var(--line));
    background:color-mix(in srgb,#f59e0b 8%,var(--panel));
}
.integration-freshness-banner.freshness-fresh{
    border-color:color-mix(in srgb,#22c55e 35%,var(--line));
}
.freshness-warning-text{
    font-weight:800;
    color:color-mix(in srgb,#ef4444 80%,var(--text))!important;
}
.freshness-actions{
    display:flex;
    flex-direction:column;
    gap:8px;
    align-items:flex-end;
    white-space:nowrap;
}
.freshness-actions span{
    font-size:12px;
    color:var(--muted);
    font-weight:800;
}
.freshness-actions button{
    border:0;
    border-radius:999px;
    padding:8px 12px;
    background:var(--accent);
    color:#fff;
    font-weight:900;
    cursor:pointer;
}
@media(max-width:760px){
    .integration-freshness-banner{flex-direction:column}
    .freshness-actions{align-items:flex-start;white-space:normal}
}


/* V114_TRUST_STATUS_LIVE_PROBE */
.integration-freshness-banner.freshness-manual{
    border-color:color-mix(in srgb,#64748b 35%,var(--line));
    background:color-mix(in srgb,#64748b 7%,var(--panel));
}
.freshness-manual-text{
    font-weight:800;
    color:var(--muted)!important;
}
.integration-live-status[data-state="manual"]::before{
    background:#64748b;
    box-shadow:0 0 0 4px color-mix(in srgb,#64748b 18%,transparent);
}


/* V115_DATA_LINEAGE_STATUS */
.integration-freshness-banner p{
    line-height:1.45;
}
.integration-freshness-banner .freshness-manual-text{
    margin-top:6px;
}
.data-stock-line span{
    letter-spacing:.08em;
}


/* V116_PIVOT_USER_ADMIN_UX */
.pivot-builder-shell{
  display:grid;
  grid-template-columns:320px minmax(0,1fr);
  gap:20px;
  align-items:start;
  margin-top:22px;
}
.pivot-sidebar{
  position:sticky;
  top:18px;
  max-height:calc(100vh - 36px);
  overflow:auto;
}
.section-head.compact{align-items:center}
.pivot-page-list,.pivot-widget-list{display:grid;gap:10px;margin-top:12px}
.pivot-widget-list{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}
.pivot-page-link{
  display:grid;
  gap:3px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
  text-decoration:none;
  color:var(--text);
}
.pivot-page-link b{color:var(--heading)}
.pivot-page-link span{color:var(--muted);font-size:12px}
.pivot-page-link.active{
  border-color:color-mix(in srgb,var(--accent) 55%,var(--line));
  background:color-mix(in srgb,var(--accent) 9%,var(--panel));
}
.pivot-main{display:grid;gap:18px}
.pivot-step-card.is-disabled{opacity:.72}
.pivot-step-title{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:16px;
}
.pivot-step-title>span{
  width:34px;height:34px;
  border-radius:12px;
  display:grid;place-items:center;
  background:var(--accent);
  color:#fff;
  font-weight:900;
  flex:0 0 auto;
}
.pivot-step-title h2{margin:0}
.pivot-step-title p{margin:3px 0 0;color:var(--muted)}
.pivot-template-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
}
.pivot-template{
  border:1px solid var(--line);
  background:color-mix(in srgb,var(--panel) 96%,transparent);
  border-radius:18px;
  padding:15px;
  text-align:left;
  cursor:pointer;
  color:var(--text);
}
.pivot-template:hover{
  border-color:color-mix(in srgb,var(--accent) 55%,var(--line));
  transform:translateY(-1px);
}
.pivot-template b{display:block;color:var(--heading);margin-bottom:6px}
.pivot-template span{display:block;color:var(--muted);line-height:1.4}
.advanced-details{
  border:1px solid var(--line);
  border-radius:16px;
  padding:11px 13px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
}
.advanced-details>summary{
  cursor:pointer;
  font-weight:900;
  color:var(--heading);
}
.pivot-preview-panel{margin-top:4px}
.admin-collapsible-panel{
  margin-top:18px;
}
.admin-collapsible-panel>summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.admin-collapsible-panel>summary::-webkit-details-marker{display:none}
.admin-collapsible-panel>summary span{display:grid;gap:4px}
.admin-collapsible-panel>summary b{font-size:19px;color:var(--heading)}
.admin-collapsible-panel>summary small{color:var(--muted)}
.admin-collapsible-panel>summary::after{
  content:'⌄';
  width:30px;height:30px;border-radius:999px;
  display:grid;place-items:center;
  border:1px solid var(--line);
  color:var(--muted);
}
.admin-collapsible-panel[open]>summary::after{transform:rotate(180deg)}
.admin-user-manager{
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:18px;
  margin-top:18px;
  align-items:start;
}
.admin-user-directory{
  position:sticky;
  top:18px;
  display:grid;
  gap:12px;
}
.admin-user-search{
  width:100%;
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
}
.admin-user-directory-list{
  display:grid;
  gap:9px;
  max-height:70vh;
  overflow:auto;
  padding-right:4px;
}
.admin-user-select{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  border:1px solid var(--line);
  border-radius:16px;
  padding:10px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.admin-user-select small{
  display:block;
  color:var(--muted);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-user-select i{
  font-style:normal;
  font-size:11px;
  font-weight:900;
  color:var(--muted);
}
.admin-user-select.active{
  border-color:color-mix(in srgb,var(--accent) 55%,var(--line));
  background:color-mix(in srgb,var(--accent) 9%,var(--panel));
}
.admin-user-select.is-inactive{opacity:.65}
.admin-user-detail-stage{
  min-height:420px;
}
.admin-user-detail{
  display:none;
  border:1px solid var(--line);
  border-radius:20px;
  padding:18px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
}
.admin-user-detail.active{
  display:block;
}
.admin-user-detail-header{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}
.admin-user-detail-header h2{margin:0;color:var(--heading)}
.admin-user-detail-header p{margin:3px 0 0;color:var(--muted);word-break:break-all}
.admin-user-create-form{
  margin-top:18px;
}
@media(max-width:980px){
  .pivot-builder-shell,.admin-user-manager{grid-template-columns:1fr}
  .pivot-sidebar,.admin-user-directory{position:relative;top:auto;max-height:none}
}


/* V117_CLEANUP_UX_LOGIC */
.queue-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:4px;
  border-radius:999px;
  padding:4px 8px;
  background:color-mix(in srgb,var(--accent) 10%,var(--panel));
  color:var(--muted);
  font-size:11px;
  font-weight:900;
}
.embedded-analytics-panel{margin-top:18px}
.embedded-analytics-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.embedded-analytics-item{min-width:0}
.embedded-analytics-item .analytics-widget{height:100%}
.admin-user-select-layout{
  display:grid;
  grid-template-columns:330px minmax(0,1fr);
  gap:20px;
  align-items:start;
  margin-top:18px;
}
.admin-user-picker{
  position:sticky;
  top:18px;
  display:grid;
  gap:12px;
}
.admin-user-picker select{
  width:100%;
  min-height:360px;
  border:1px solid var(--line);
  border-radius:16px;
  padding:8px;
  background:var(--panel);
  color:var(--text);
}
.admin-user-picker option{
  padding:9px 8px;
  border-radius:8px;
}
.permission-group-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:12px;
}
.permission-group-grid fieldset{
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
}
.permission-group-grid legend{
  padding:0 6px;
  font-weight:900;
  color:var(--heading);
}
.permission-group-grid label{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:7px 0;
  color:var(--text);
  font-weight:650;
}
.role-profile-editor{
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:18px;
  margin-top:18px;
}
.role-profile-list{
  display:grid;
  gap:10px;
  align-content:start;
  max-height:540px;
  overflow:auto;
}
.role-profile-select{
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
  text-align:left;
  cursor:pointer;
  display:grid;
  gap:4px;
  color:var(--text);
}
.role-profile-select b{color:var(--heading)}
.role-profile-select span,.role-profile-select small{color:var(--muted)}
.role-profile-detail{
  display:grid;
  gap:14px;
}
.pivot-builder-hero p{max-width:980px}
.pivot-step-card .grid.four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
@media(max-width:980px){
  .admin-user-select-layout,.role-profile-editor{grid-template-columns:1fr}
  .admin-user-picker{position:relative;top:auto}
  .embedded-analytics-grid{grid-template-columns:1fr}
  .embedded-analytics-item{grid-column:auto!important}
}


/* V119_SIMPLE_ADMIN_CLEANUP */
.clean-admin-users .panel{
    border-radius:24px;
}
.clean-admin-users .section-head{
    margin-bottom:14px;
}
.clean-admin-stats .card{
    min-height:116px;
}
.clean-admin-stats .card h2{
    font-size:34px;
    margin:0 0 4px;
}
.clean-admin-stats .card p{
    margin:0;
    color:var(--muted);
}
.clean-admin-form{
    display:grid;
    gap:16px;
}
.clean-details{
    border:1px solid var(--line);
    border-radius:18px;
    padding:12px 14px;
    background:color-mix(in srgb,var(--panel) 96%,transparent);
}
.clean-details summary{
    cursor:pointer;
    font-weight:900;
    color:var(--heading);
}
.clean-permission-groups{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:14px;
}
.clean-permission-groups.compact{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.clean-permission-groups fieldset{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px;
    background:color-mix(in srgb,var(--panel) 98%,transparent);
}
.clean-permission-groups legend{
    padding:0 7px;
    color:var(--heading);
    font-weight:900;
}
.clean-permission-groups label{
    display:flex;
    align-items:flex-start;
    gap:8px;
    padding:7px 0;
    line-height:1.35;
    font-size:13px;
}
.clean-role-layout,
.clean-user-layout{
    align-items:start;
    gap:22px!important;
}
.clean-select-table tbody tr{
    cursor:pointer;
}
.clean-select-table tbody tr.active td,
.clean-select-table tbody tr:hover td{
    background:color-mix(in srgb,var(--accent) 10%,transparent);
}
.clean-search{
    display:block;
    margin-bottom:0;
}
.clean-user-panels{
    min-height:480px;
}
.clean-user-panel{
    display:none;
    border:1px solid var(--line);
    border-radius:22px;
    padding:20px;
    background:color-mix(in srgb,var(--panel) 97%,transparent);
}
.clean-user-panel.active{
    display:grid;
    gap:16px;
}
.clean-user-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding-bottom:14px;
    border-bottom:1px solid var(--line);
}
.clean-user-head h2{
    margin:0;
    color:var(--heading);
}
.clean-user-head p{
    margin:4px 0 0;
    color:var(--muted);
}
.clean-meta{
    gap:12px!important;
}
.clean-meta span{
    border:1px solid var(--line);
    border-radius:16px;
    padding:12px;
    background:color-mix(in srgb,var(--panel) 96%,transparent);
    color:var(--muted);
    display:grid;
    gap:4px;
}
.clean-meta b{
    color:var(--heading);
}
.clean-security{
    border:1px solid var(--line);
    border-radius:20px;
    padding:18px;
    background:color-mix(in srgb,var(--panel) 96%,transparent);
}
.clean-security h3{
    margin:0 0 12px;
    color:var(--heading);
}
.clean-security .password-reset-form{
    display:grid;
    grid-template-columns:1fr 1fr auto;
    gap:10px;
    align-items:end;
}
.role-row.active td{
    background:color-mix(in srgb,var(--accent) 10%,transparent)!important;
}
@media(max-width:980px){
    .clean-permission-groups,
    .clean-permission-groups.compact,
    .clean-security .password-reset-form{
        grid-template-columns:1fr;
    }
}


/* V120_COLLAPSIBLE_ADMIN_RESPONSIVE_FIX */
.v120-admin-users,
.v120-admin-users *{
    box-sizing:border-box;
}
.v120-admin-users .grid{
    min-width:0;
}
.v120-admin-users input,
.v120-admin-users select,
.v120-admin-users textarea,
.v120-admin-users button{
    max-width:100%;
}
.v120-fold-panel{
    margin-top:22px;
    overflow:hidden;
}
.v120-fold-panel > summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:0;
}
.v120-fold-panel > summary::-webkit-details-marker{
    display:none;
}
.v120-fold-panel > summary span{
    display:grid;
    gap:4px;
}
.v120-fold-panel > summary b{
    color:var(--heading);
    font-size:20px;
}
.v120-fold-panel > summary small{
    color:var(--muted);
    font-weight:700;
}
.v120-fold-panel > summary::after{
    content:'';
    width:34px;
    height:34px;
    border-radius:999px;
    border:1px solid var(--line);
    background:
      linear-gradient(var(--muted),var(--muted)) center/14px 2px no-repeat,
      linear-gradient(var(--muted),var(--muted)) center/2px 14px no-repeat;
    flex:0 0 auto;
}
.v120-fold-panel[open] > summary::after{
    background:linear-gradient(var(--muted),var(--muted)) center/14px 2px no-repeat;
}
.v120-panel-body{
    margin-top:18px;
}
.v120-left-table,
.v120-detail-panel,
.clean-user-panels,
.clean-user-panel{
    min-width:0;
}
.v120-admin-users .clean-role-layout,
.v120-admin-users .clean-user-layout{
    display:grid;
    grid-template-columns:minmax(320px,.92fr) minmax(0,1.35fr);
    gap:22px!important;
    align-items:start;
}
.v120-admin-users .table-wrap{
    width:100%;
    overflow:auto;
}
.v120-admin-users .smart-table{
    width:100%;
}
.v120-admin-users .clean-select-table tbody tr{
    transition:background .14s ease, box-shadow .14s ease;
}
.v120-admin-users .clean-select-table tbody tr.active td{
    background:color-mix(in srgb,var(--accent) 13%,transparent)!important;
    box-shadow:inset 4px 0 0 var(--accent);
}
.v120-admin-users .clean-select-table tbody tr:hover td{
    background:color-mix(in srgb,var(--accent) 8%,transparent);
}
.v120-permission-folds,
.v120-admin-users .clean-permission-groups{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.permission-fold{
    border:1px solid var(--line);
    border-radius:16px;
    background:color-mix(in srgb,var(--panel) 98%,transparent);
    padding:0;
    overflow:hidden;
}
.permission-fold > summary{
    list-style:none;
    cursor:pointer;
    padding:12px 14px;
    color:var(--heading);
    font-weight:900;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.permission-fold > summary::-webkit-details-marker{
    display:none;
}
.permission-fold > summary::after{
    content:'+';
    width:22px;
    height:22px;
    border-radius:999px;
    border:1px solid var(--line);
    display:grid;
    place-items:center;
    color:var(--muted);
    font-weight:900;
}
.permission-fold[open] > summary::after{
    content:'–';
}
.permission-fold > div{
    border-top:1px solid var(--line);
    padding:8px 14px 12px;
    display:grid;
    gap:2px;
}
.permission-fold label{
    display:flex;
    gap:8px;
    align-items:flex-start;
    padding:7px 0;
    line-height:1.35;
    font-size:13px;
}
.v120-admin-users .clean-user-panel{
    width:100%;
    overflow:hidden;
}
.v120-admin-users .clean-user-head{
    min-width:0;
}
.v120-admin-users .clean-user-head h2,
.v120-admin-users .clean-user-head p{
    overflow-wrap:anywhere;
}
.v120-admin-users .clean-security .password-reset-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
    gap:10px;
    align-items:end;
}
@media(max-width:1250px){
    .v120-admin-users .clean-role-layout,
    .v120-admin-users .clean-user-layout{
        grid-template-columns:1fr;
    }
}
@media(max-width:820px){
    .v120-admin-users .grid.two,
    .v120-admin-users .grid.three,
    .v120-admin-users .clean-meta,
    .v120-admin-users .clean-security .password-reset-form,
    .v120-permission-folds,
    .v120-admin-users .clean-permission-groups{
        grid-template-columns:1fr!important;
    }
    .v120-fold-panel > summary{
        align-items:flex-start;
    }
}
@media(max-width:540px){
    .v120-admin-users .panel{
        padding:16px;
        border-radius:18px;
    }
    .v120-fold-panel > summary b{
        font-size:18px;
    }
}


/* V120_DEPLOYMENT_RESPONSIVE_FIX */
.deployment-layout,
.deployment-layout *{
    box-sizing:border-box;
}
.deployment-layout{
    min-width:0;
}
.deployment-filters,
.deployment-calendar,
.deployment-grid,
.deployment-day,
.deployment-modal-card,
.deployment-update-form,
.deployment-update-form *{
    min-width:0;
}
.deployment-filter-form input,
.deployment-filter-form select,
.deployment-filter-form button,
.deployment-update-form input,
.deployment-update-form select,
.deployment-update-form textarea{
    max-width:100%;
}
.deployment-modal-card{
    width:min(1180px, calc(100vw - 32px));
    max-height:calc(100vh - 32px);
    overflow:auto;
}
.deployment-update-form .grid,
.deployment-modal-card .grid{
    min-width:0;
}
.deployment-event-detail,
.deployment-detail-summary,
.deployment-raw-grid{
    min-width:0;
    overflow-wrap:anywhere;
}
@media(max-width:1180px){
    .deployment-layout{
        grid-template-columns:1fr!important;
    }
    .deployment-filters{
        position:relative!important;
        top:auto!important;
        width:100%!important;
    }
}
@media(max-width:900px){
    .deployment-grid.month-grid,
    .deployment-grid.linear-grid,
    .deployment-grid.year-grid{
        grid-template-columns:1fr!important;
    }
    .deployment-weekday{
        display:none;
    }
    .deployment-modal-card.wide,
    .deployment-modal-card{
        width:calc(100vw - 20px);
        max-height:calc(100vh - 20px);
        border-radius:18px;
    }
    .deployment-modal-head{
        align-items:flex-start;
        gap:10px;
    }
    .deployment-detail-summary{
        grid-template-columns:1fr!important;
    }
}
@media(max-width:640px){
    .deployment-update-form .grid.two,
    .deployment-update-form .grid.three,
    .deployment-update-form .grid.four,
    .deployment-modal-card .grid.two,
    .deployment-modal-card .grid.three,
    .deployment-modal-card .grid.four{
        grid-template-columns:1fr!important;
    }
    .deployment-calendar-head{
        flex-direction:column;
        align-items:flex-start;
    }
}
