.dashboard-table-panel{
  margin:10px 0 0;
  padding:10px 12px 12px;
  border:1px solid #c9d7e8;
  border-radius:6px;
  background:#fff;
  box-shadow:0 4px 12px rgba(18,54,95,.06);
  width:100%;
  max-width:100%;
  overflow:hidden;
}
.dashboard-table-panel h2{
  display:none;
}
#dashboardTableCount{
  display:block;
  margin:2px 0 8px;
  color:#5f7186;
  font-size:11px;
}
.dashboard-table-panel .tableWrap{
  max-height:clamp(360px,42vh,560px);
  margin-top:6px;
  border:1px solid #d6e3f2;
  border-radius:4px;
  background:#fff;
  width:100%;
  max-width:100%;
  overflow:auto;
}
#biTable.dashboard-data-table{
  min-width:1120px;
  width:100%;
  table-layout:fixed;
  border-collapse:collapse;
  color:#07345e;
  font-size:11px;
}
#biTable.dashboard-data-table th{
  position:sticky;
  top:0;
  z-index:2;
  padding:8px 9px;
  border-bottom:1px solid #bdd3ee;
  background:#d9ecff;
  color:#07345e;
  font-weight:900;
  text-align:left;
  white-space:nowrap;
}
#biTable.dashboard-data-table td{
  padding:7px 9px;
  border-bottom:1px solid #cddceb;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  vertical-align:middle;
}
#biTable.dashboard-data-table th:nth-child(1),
#biTable.dashboard-data-table td:nth-child(1){width:70px;}
#biTable.dashboard-data-table th:nth-child(2),
#biTable.dashboard-data-table td:nth-child(2){width:80px;}
#biTable.dashboard-data-table th:nth-child(3),
#biTable.dashboard-data-table td:nth-child(3){width:70px;}
#biTable.dashboard-data-table th:nth-child(4),
#biTable.dashboard-data-table td:nth-child(4){width:110px;}
#biTable.dashboard-data-table th:nth-child(5),
#biTable.dashboard-data-table td:nth-child(5){width:150px;}
#biTable.dashboard-data-table th:nth-child(6),
#biTable.dashboard-data-table td:nth-child(6){width:150px;}
#biTable.dashboard-data-table th:nth-child(7),
#biTable.dashboard-data-table td:nth-child(7){width:auto;}
#biTable.dashboard-data-table th:nth-child(8),
#biTable.dashboard-data-table td:nth-child(8){width:135px;}
#biTable.dashboard-data-table th:nth-child(9),
#biTable.dashboard-data-table td:nth-child(9){width:130px;}
#biTable.dashboard-data-table th:nth-child(10),
#biTable.dashboard-data-table td:nth-child(10){width:165px;}
#biTable.dashboard-data-table th:nth-child(11),
#biTable.dashboard-data-table td:nth-child(11){width:115px;}
#biTable.dashboard-data-table tbody tr:nth-child(even){background:#eef5ff;}
#biTable.dashboard-data-table tbody tr:hover{background:#dfeeff;}
.table-status{
  display:inline-flex;
  min-width:94px;
  justify-content:center;
  align-items:center;
  padding:4px 9px;
  border-radius:999px;
  color:#fff;
  font-size:10px;
  font-weight:900;
  line-height:1.1;
  text-align:center;
  white-space:nowrap;
}
#biTable.dashboard-data-table td:nth-child(10) .table-status{
  min-width:0;
  max-width:150px;
  padding:3px 7px;
  font-size:9px;
  letter-spacing:0;
}
.table-status.waiting{background:#fbbf24;color:#102a56;}
.table-status.working{background:#1a4c8b;color:#fff;}
.table-status.closed{background:#2f855a;color:#fff;}
.table-status.canceled{background:#e9d5ff;color:#581c87;}
.table-status.neutral,.table-status.sla-neutral{background:#4a90e2;color:#fff;}
.table-status.sla-ok{background:#2f855a;color:#fff;}
.table-status.sla-warn{background:#fbbf24;color:#102a56;}
.table-status.sla-bad{background:#c53030;color:#fff;}
@media (max-width:900px){.dashboard-table-panel{margin:8px;}}

.dashboard-monthly-row{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.monthly-chart-card{
  min-height:250px;
  padding:10px 12px 12px;
  overflow-x:auto;
}
.monthly-chart-card h2{
  margin:0 0 4px;
  color:#0068c9;
  font-size:18px;
  font-weight:800;
  text-align:center;
}
.monthly-chart{
  display:block;
  width:100%;
  max-width:none;
  height:230px;
}
.monthly-click{
  cursor:pointer;
}
.monthly-axis{
  stroke:#b9c3cf;
  stroke-width:1.5;
}
.monthly-axis.muted{
  stroke:#e5ecf4;
}
.monthly-bar{
  fill:#064b86;
}
.monthly-line{
  fill:none;
  stroke:#d71920;
  stroke-width:2.5;
}
.monthly-dot{
  fill:#d71920;
  stroke:#fff;
  stroke-width:1.5;
}
.monthly-area{
  fill:#d71920;
  opacity:.12;
}
.monthly-value{
  fill:#07345e;
  font-size:16px;
  font-weight:900;
  text-anchor:middle;
}
.monthly-value-red{
  fill:#f04423;
}
.monthly-label{
  fill:#064b86;
  font-size:13px;
  font-weight:800;
  text-anchor:middle;
}
.monthly-empty{
  min-height:170px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#5f7186;
  font-weight:700;
}

.dashboard-shell .dashboard-filters{
  grid-template-columns:repeat(auto-fit,minmax(126px,1fr));
}

.dashboard-shell .dashboard-hero{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  min-height:108px;
  padding:16px 18px;
  color:#102a56;
  background:#fff;
  border-bottom:1px solid #e2e8f0;
}

.dashboard-shell .dashboard-hero-mark{
  display:grid;
  grid-template-columns:repeat(3,6px);
  align-items:end;
  justify-content:center;
  gap:5px;
  width:48px;
  height:48px;
  border-radius:8px;
  background:linear-gradient(135deg,#0b5ed7,#063f96);
  box-shadow:0 6px 14px rgba(11,94,215,.18);
}

.dashboard-shell .dashboard-hero-mark span{
  display:block;
  width:6px;
  border-radius:2px 2px 0 0;
  background:#fff;
}

.dashboard-shell .dashboard-hero-mark span:nth-child(1){height:18px;}
.dashboard-shell .dashboard-hero-mark span:nth-child(2){height:28px;}
.dashboard-shell .dashboard-hero-mark span:nth-child(3){height:12px;}

.dashboard-shell .dashboard-hero-copy{
  min-width:0;
}

.dashboard-shell .dashboard-hero .dashboard-hero-unit{
  margin:0;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#52709a;
}

.dashboard-shell .dashboard-hero .dashboard-hero-team{
  margin:2px 0 5px;
  font-size:11px;
  font-weight:600;
  color:#0b5ed7;
}

.dashboard-shell .dashboard-hero h1{
  margin:0 0 4px;
  font-size:26px;
  font-weight:700;
  line-height:1.1;
  color:#102a56;
}

.dashboard-shell .dashboard-hero span{
  margin:0;
  font-size:12px;
  font-weight:500;
  color:#0b5ed7;
}

.dashboard-shell .dashboard-hero button{
  justify-self:end;
  white-space:nowrap;
}

.dashboard-shell .dashboard-hero-compact{
  grid-template-columns:minmax(0,1fr) auto;
  min-height:64px;
  padding:14px 18px;
}

.dashboard-shell .dashboard-hero-compact .dashboard-hero-copy{
  display:flex;
  align-items:center;
  min-width:0;
}

.dashboard-shell .dashboard-hero-compact h1{
  position:relative;
  margin:0;
  padding-left:14px;
  font-size:26px;
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.02em;
  color:#102a56;
}

.dashboard-shell .dashboard-hero-compact h1::before{
  content:"";
  position:absolute;
  left:0;
  top:3px;
  bottom:3px;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,#0b5ed7,#38bdf8);
}

.dashboard-shell .dashboard-filters input[type="date"]{
  height:36px;
  padding:6px 9px;
  border:1px solid #e2e8f0;
  border-radius:8px;
  background:#fff;
  color:#102a56;
  font-size:12px;
  font-weight:700;
}

.dashboard-shell .dashboard-filters input[type="date"]:focus{
  outline:2px solid rgba(11,94,215,.18);
  border-color:#0b5ed7;
}

.dashboard-shell .dashboard-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}

.dashboard-shell .dashboard-kpi-rail{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:8px;
  align-content:stretch;
  align-items:stretch;
  width:100%;
  margin:0;
  position:static;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi{
  width:100%;
  min-height:72px;
  padding:10px 12px;
  justify-content:center;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi strong{
  font-size:28px;
  line-height:1;
}

.dashboard-shell .dashboard-main{
  width:100%;
  min-width:0;
  grid-template-columns:minmax(0,1.32fr) minmax(340px,1fr) minmax(220px,.62fr);
  gap:12px;
}

.dashboard-shell .dashboard-main .dash-card{
  position:relative;
  overflow:visible;
  margin-top:28px;
}

.dashboard-shell .dash-card h2{
  position:absolute;
  left:0;
  right:0;
  top:-25px;
  margin:0;
  font-size:15px;
  line-height:1.2;
  text-align:center;
  pointer-events:none;
}

.dashboard-shell .vbar-chart{
  gap:14px;
  height:148px;
  padding:30px 14px 8px;
  overflow:hidden;
}

.dashboard-shell .vbar{
  min-width:40px;
  grid-template-rows:30px 82px 28px;
}

.dashboard-shell .vbar i{
  width:36%;
  min-width:18px;
  max-width:46px;
  border-radius:4px 4px 0 0;
  background:linear-gradient(180deg,#1A4C8B 0%,#2F80ED 100%) !important;
  box-shadow:0 4px 10px rgba(26,76,139,.12);
}

.dashboard-shell .vbar span{
  font-size:12px;
  align-self:end;
  line-height:1;
  padding-bottom:4px;
  white-space:nowrap;
}

.dashboard-shell .vbar small{
  height:28px;
  font-size:12px;
  line-height:1.15;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(3) .vbar i{
  background:linear-gradient(180deg,#2F80ED 0%,#5EA3F6 100%) !important;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(4) .vbar i{
  background:linear-gradient(180deg,#1A4C8B 0%,#357ABD 100%) !important;
}

.dashboard-shell .hbar span,
.dashboard-shell .hbar strong{
  font-size:12px;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(5) .hbar{
  grid-template-columns:minmax(125px,1.35fr) minmax(80px,1fr) 42px;
  gap:8px;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(5) .hbar span{
  white-space:normal;
  line-height:1.15;
}

@media (max-width:720px){
  .dashboard-shell .dashboard-kpi-rail{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:460px){
  .dashboard-shell .dashboard-kpi-rail{
    grid-template-columns:1fr;
  }
}

/* Dashboard visual stabilization: keep titles, labels and bars inside their cards. */
.dashboard-shell .dashboard-main{
  grid-template-columns:minmax(0,1.5fr) minmax(360px,1.05fr) minmax(260px,.72fr);
  align-items:stretch;
}

.dashboard-shell .dashboard-main .dash-card{
  display:flex;
  flex-direction:column;
  min-height:192px;
  margin-top:0;
  padding:18px 16px 14px;
  overflow:hidden;
}

.dashboard-shell .dash-card h2{
  position:static;
  margin:0 0 14px;
  color:#0057b8;
  font-size:16px;
  line-height:1.2;
  text-align:center;
}

.dashboard-shell .vbar-chart{
  flex:1;
  height:auto;
  min-height:130px;
  gap:18px;
  align-items:end;
  padding:2px 12px 10px;
  overflow:hidden;
}

.dashboard-shell .vbar{
  min-width:46px;
  grid-template-rows:26px minmax(70px,1fr) 30px;
  gap:4px;
}

.dashboard-shell .vbar i{
  width:32%;
  min-width:18px;
  max-width:44px;
  background:linear-gradient(180deg,#1a4c8b 0%,#2f80ed 100%) !important;
}

.dashboard-shell .vbar span{
  font-size:13px;
  line-height:1;
  padding-bottom:3px;
}

.dashboard-shell .vbar small{
  min-height:30px;
  height:auto;
  color:#07345e;
  font-size:13px;
  line-height:1.15;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(3) .vbar-chart,
.dashboard-shell .dashboard-main .dash-card:nth-child(6) .hbar-chart{
  padding-left:20px;
  padding-right:20px;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(4) .vbar i{
  width:28%;
  max-width:40px;
}

.dashboard-shell .hbar-chart{
  flex:1;
  gap:9px;
  padding:4px 10px 10px;
}

.dashboard-shell .hbar{
  grid-template-columns:minmax(180px,1.15fr) minmax(160px,1.45fr) 52px;
  gap:10px;
}

.dashboard-shell .hbar i{
  height:22px;
  border-radius:3px;
}

.dashboard-shell .hbar span,
.dashboard-shell .hbar strong{
  font-size:13px;
  line-height:1.15;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(6) .hbar{
  grid-template-columns:minmax(132px,.95fr) minmax(86px,1fr) 64px;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(6) .hbar-chart{
  padding-left:12px;
  padding-right:8px;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(6) .hbar i{
  min-width:0;
}

.dashboard-shell .dashboard-main .dash-card:nth-child(6) .hbar strong{
  min-width:54px;
  justify-self:end;
  text-align:right;
}

#biTable.dashboard-data-table th:nth-child(10),
#biTable.dashboard-data-table td:nth-child(10){
  width:190px;
}

#biTable.dashboard-data-table td:nth-child(10) .table-status{
  max-width:174px;
  padding:4px 8px;
  font-size:8.5px;
  line-height:1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

@media (max-width:1280px){
  .dashboard-shell .dashboard-main{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .dashboard-shell .dashboard-hero{
    grid-template-columns:44px minmax(0,1fr);
  }
  .dashboard-shell .dashboard-hero button{
    grid-column:1/-1;
    justify-self:start;
  }
  .dashboard-shell .dashboard-main{
    grid-template-columns:1fr;
  }
  .dashboard-shell .dashboard-main .dash-card{
    min-height:180px;
  }
  .dashboard-shell .vbar-chart{
    gap:10px;
    overflow-x:auto;
    justify-content:flex-start;
  }
  .dashboard-shell .hbar{
    grid-template-columns:minmax(125px,1fr) minmax(120px,1fr) 44px;
  }
}

.dashboard-shell .dashboard-kpi-rail{
  grid-template-columns:repeat(auto-fit,minmax(178px,1fr));
  gap:12px;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:12px;
  row-gap:2px;
  align-items:center;
  justify-content:start;
  min-height:96px;
  padding:16px 18px;
  border:1px solid #dbe5f2;
  border-radius:10px;
  color:#06255f;
  text-align:left;
  background:linear-gradient(135deg,#f7fbff 0%,#e8f2ff 100%);
  box-shadow:0 5px 16px rgba(15,43,91,.08);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi:hover{
  transform:translateY(-1px);
  box-shadow:0 7px 18px rgba(15,43,91,.1);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon{
  display:grid;
  place-items:center;
  position:relative;
  grid-column:1;
  grid-row:1/3;
  width:42px;
  height:42px;
  margin:0;
  border-width:2px;
  border-radius:50%;
  color:#0b5ed7;
  background:transparent;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon::before,
.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon::after{
  content:"";
  display:block;
  box-sizing:border-box;
  color:currentColor;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.ticket::before{
  width:18px;
  height:14px;
  border:2px solid currentColor;
  border-radius:4px;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.ticket::after{
  position:absolute;
  right:9px;
  bottom:11px;
  width:9px;
  height:9px;
  border:1.8px solid currentColor;
  border-radius:3px;
  background:inherit;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.hourglass::before{
  width:18px;
  height:24px;
  border-top:2.4px solid currentColor;
  border-bottom:2.4px solid currentColor;
  clip-path:polygon(0 0,100% 0,58% 50%,100% 100%,0 100%,42% 50%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.clock::before,
.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.timer::before,
.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.alert::before{
  width:22px;
  height:22px;
  border:2.4px solid currentColor;
  border-radius:50%;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.clock::after,
.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.timer::after{
  position:absolute;
  left:20px;
  top:14px;
  width:8px;
  height:2.4px;
  border-radius:99px;
  background:currentColor;
  transform:rotate(-45deg);
  transform-origin:left center;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.check::before{
  width:20px;
  height:12px;
  border-left:3px solid currentColor;
  border-bottom:3px solid currentColor;
  transform:rotate(-45deg) translate(2px,-2px);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.x::before,
.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.x::after{
  position:absolute;
  width:20px;
  height:3px;
  border-radius:99px;
  background:currentColor;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.x::before{
  transform:rotate(45deg);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.x::after{
  transform:rotate(-45deg);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi .dash-kpi-icon.alert::after{
  position:absolute;
  width:3px;
  height:11px;
  border-radius:99px;
  background:currentColor;
  box-shadow:0 14px 0 currentColor;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi span:not(.dash-kpi-icon){
  grid-column:2;
  margin:0;
  color:#0b5ed7;
  font-size:12px;
  font-weight:900;
  line-height:1.1;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi strong{
  grid-column:2;
  margin:0;
  color:#06255f;
  font-size:30px;
  font-weight:900;
  line-height:1;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.blue{
  background:linear-gradient(135deg,#eff7ff 0%,#dcecff 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.yellow{
  background:linear-gradient(135deg,#fff7df 0%,#ffb000 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.cyan{
  background:linear-gradient(135deg,#effdff 0%,#d8f7f8 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.green{
  background:linear-gradient(135deg,#f0fff4 0%,#dcf8dc 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.purple{
  background:linear-gradient(135deg,#fbf8ff 0%,#f0e4ff 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.indigo{
  background:linear-gradient(135deg,#f5f7ff 0%,#e8edff 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.red{
  background:linear-gradient(135deg,#fff6f4 0%,#ffe0dc 100%);
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.yellow .dash-kpi-icon,
.dashboard-shell .dashboard-kpi-rail .dash-kpi.yellow span:not(.dash-kpi-icon),
.dashboard-shell .dashboard-kpi-rail .dash-kpi.yellow strong{
  color:#fff;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.cyan .dash-kpi-icon,
.dashboard-shell .dashboard-kpi-rail .dash-kpi.cyan span:not(.dash-kpi-icon),
.dashboard-shell .dashboard-kpi-rail .dash-kpi.cyan strong{
  color:#06a7c3;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.green .dash-kpi-icon,
.dashboard-shell .dashboard-kpi-rail .dash-kpi.green span:not(.dash-kpi-icon),
.dashboard-shell .dashboard-kpi-rail .dash-kpi.green strong{
  color:#16a34a;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.purple .dash-kpi-icon,
.dashboard-shell .dashboard-kpi-rail .dash-kpi.purple span:not(.dash-kpi-icon),
.dashboard-shell .dashboard-kpi-rail .dash-kpi.purple strong{
  color:#7c3aed;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.indigo .dash-kpi-icon,
.dashboard-shell .dashboard-kpi-rail .dash-kpi.indigo span:not(.dash-kpi-icon),
.dashboard-shell .dashboard-kpi-rail .dash-kpi.indigo strong{
  color:#1d4ed8;
}

.dashboard-shell .dashboard-kpi-rail .dash-kpi.red .dash-kpi-icon,
.dashboard-shell .dashboard-kpi-rail .dash-kpi.red span:not(.dash-kpi-icon),
.dashboard-shell .dashboard-kpi-rail .dash-kpi.red strong{
  color:#ef1f1f;
}

@media(max-width:720px){
  .dashboard-shell .dashboard-kpi-rail{
    grid-template-columns:1fr;
  }
}
