/* Build 007.1 — Executive Dashboard isolated layout stabilization */
.exec-dashboard{
  width:100%;
  min-width:0;
  display:grid;
  gap:16px;
  padding:0;
  overflow:visible;
}
.exec-dashboard *{box-sizing:border-box}
.exec-dashboard .exec-hero{
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  overflow:hidden;
}
.exec-dashboard .exec-hero>div{min-width:0}
.exec-dashboard .exec-hero h2{
  font-size:clamp(22px,2vw,28px);
  line-height:1.15;
  overflow-wrap:anywhere;
}
.exec-dashboard .exec-hero p{
  max-width:760px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.exec-dashboard .exec-controls{
  display:flex;
  align-items:end;
  justify-content:flex-end;
  gap:10px;
  min-width:0;
}
.exec-dashboard .exec-controls label{min-width:130px}
.exec-dashboard .exec-controls select{width:100%;max-width:180px}

.exec-dashboard .exec-kpi-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  min-width:0;
}
.exec-dashboard .exec-kpi{
  width:100%;
  min-width:0;
  min-height:100px;
  height:100%;
  align-items:center;
  overflow:hidden;
}
.exec-dashboard .exec-kpi>div:last-child{min-width:0}
.exec-dashboard .exec-kpi b{
  display:block;
  max-width:100%;
  font-size:clamp(17px,1.5vw,21px);
  line-height:1.2;
  white-space:normal;
  overflow-wrap:anywhere;
}
.exec-dashboard .exec-kpi small{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.3;
}

.exec-dashboard .exec-grid{
  width:100%;
  min-width:0;
  display:grid;
  gap:16px;
  align-items:stretch;
}
.exec-dashboard .exec-grid-two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.exec-dashboard .exec-panel{
  width:100%;
  min-width:0;
  height:100%;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.exec-dashboard .exec-panel .panel-head{
  flex:0 0 auto;
  min-width:0;
  padding:16px 18px 10px;
}
.exec-dashboard .exec-panel .panel-head h3,
.exec-dashboard .exec-panel .panel-head small{
  overflow-wrap:anywhere;
}
.exec-dashboard .exec-svg{
  display:block;
  width:100%;
  height:250px;
  min-height:0;
  max-height:250px;
  padding:0 10px 10px;
  overflow:hidden;
}
.exec-dashboard .exec-bars{
  flex:1 1 auto;
  min-height:0;
  padding:8px 18px 18px;
}

.exec-dashboard .exec-heatmap{
  width:100%;
  min-width:0;
  overflow:hidden;
  padding:6px 16px 18px;
}
.exec-dashboard .exec-heatmap-head,
.exec-dashboard .exec-heatmap-row{
  width:100%;
  min-width:0;
  grid-template-columns:minmax(115px,1.55fr) repeat(var(--heat-cols,6),minmax(28px,.72fr));
  gap:5px;
}
.exec-dashboard .exec-heatmap-head b{
  font-size:8px;
  white-space:nowrap;
}
.exec-dashboard .exec-heatmap-row strong{
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.exec-dashboard .exec-heatmap-row span{
  width:100%;
  min-width:0;
  height:30px;
}

.exec-dashboard .exec-reliability{
  width:100%;
  min-width:0;
  max-height:390px;
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-gutter:stable;
  padding:5px 16px 16px;
}
.exec-dashboard .exec-reliability button{
  width:100%;
  min-width:0;
  grid-template-columns:minmax(105px,.85fr) minmax(90px,1fr) 44px;
  gap:10px;
}
.exec-dashboard .exec-reliability button span,
.exec-dashboard .exec-reliability button i{min-width:0}
.exec-dashboard .exec-notes{min-width:0}
.exec-dashboard .exec-notes p{min-width:0}
.exec-dashboard .overview-footer{width:100%;min-width:0}

/* Use two-column analytics only when enough real content width exists. */
@media(max-width:1380px){
  .exec-dashboard .exec-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1180px){
  .exec-dashboard .exec-grid-two{grid-template-columns:1fr}
  .exec-dashboard .exec-panel{height:auto}
  .exec-dashboard .exec-reliability{max-height:360px}
  .exec-dashboard .exec-heatmap-head,
  .exec-dashboard .exec-heatmap-row{
    grid-template-columns:minmax(130px,1.5fr) repeat(var(--heat-cols,6),minmax(38px,.7fr));
  }
}
@media(max-width:860px){
  .exec-dashboard .exec-hero{grid-template-columns:1fr;align-items:start}
  .exec-dashboard .exec-controls{justify-content:start;width:100%}
  .exec-dashboard .exec-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .exec-dashboard .exec-svg{height:225px;max-height:225px}
}
@media(max-width:620px){
  .exec-dashboard .exec-kpi-grid{grid-template-columns:1fr}
  .exec-dashboard .exec-controls{display:grid;grid-template-columns:minmax(0,1fr) auto}
  .exec-dashboard .exec-controls label{min-width:0}
  .exec-dashboard .exec-controls select{max-width:none}
  .exec-dashboard .exec-heatmap{overflow-x:auto}
  .exec-dashboard .exec-heatmap-head,
  .exec-dashboard .exec-heatmap-row{min-width:520px}
  .exec-dashboard .exec-reliability button{grid-template-columns:minmax(100px,.9fr) minmax(70px,1fr) 40px}
  .exec-dashboard .exec-notes p{grid-template-columns:1fr}
}
