/* TV Bro rendering fixes: round eleven. Loaded after all accumulated layout sheets. */

/* Executive: avoid transformed containing blocks around the score ring. */
html.page-executive.page-executive.page-executive body.page-executive.page-executive.page-executive .score-card .score-ring{
  width:194px!important;
  height:194px!important;
  min-width:194px!important;
  min-height:194px!important;
  max-width:194px!important;
  max-height:194px!important;
  flex:0 0 194px!important;
  transform:none!important;
  position:relative!important;
  overflow:visible!important;
}
html.page-executive.page-executive.page-executive body.page-executive.page-executive.page-executive .score-card .score-ring>svg{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  transform:rotate(-90deg)!important;
  transform-origin:center center!important;
  z-index:1!important;
}
html.page-executive.page-executive.page-executive body.page-executive.page-executive.page-executive .score-card .score-content{
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  transform:none!important;
  z-index:2!important;
}

/* Family: center the risk/archive group in the space below its title. */
html.page-family.page-family.page-family body.page-family.page-family.page-family .family-chart-row>:last-child{
  display:flex!important;
  flex-direction:column!important;
}
html.page-family.page-family.page-family body.page-family.page-family.page-family .family-risk-archive-content{
  flex:0 0 auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  align-content:center!important;
  align-items:center!important;
}
html.page-family.page-family.page-family body.page-family.page-family.page-family .family-risk-archive-stack{
  flex:1 1 auto!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  position:relative!important;
  top:4px!important;
}

/* Individual vitals: explicit sibling spacing for engines that ignore flex gap. */
html.page-individual-vitals.page-individual-vitals.page-individual-vitals body.page-individual-vitals.page-individual-vitals.page-individual-vitals .kpi-grid>div{
  padding:2px 12px!important;
}
html.page-individual-vitals.page-individual-vitals.page-individual-vitals body.page-individual-vitals.page-individual-vitals.page-individual-vitals .kpi-grid>div>:last-child{
  margin-top:8px!important;
  padding-top:2px!important;
}

/* Overview: isolate the donut and replace the map visualMap with a DOM legend. */
html.page-overview.page-overview.page-overview body.page-overview.page-overview.page-overview .overview-status-content{
  display:grid!important;
  grid-template-columns:145px minmax(0,1fr)!important;
  gap:12px!important;
  padding-left:0!important;
  align-items:center!important;
  justify-content:center!important;
}
html.page-overview.page-overview.page-overview body.page-overview.page-overview.page-overview .overview-status-content>#statusChart{
  width:145px!important;
  height:145px!important;
  min-width:145px!important;
  min-height:145px!important;
  max-width:145px!important;
  max-height:145px!important;
  justify-self:start!important;
}
html.page-overview.page-overview.page-overview body.page-overview.page-overview.page-overview .overview-status-legend{
  min-width:0!important;
  width:100%!important;
}
html.page-overview.page-overview.page-overview body.page-overview.page-overview.page-overview .overview-region-card{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
html.page-overview.page-overview.page-overview body.page-overview.page-overview.page-overview .overview-region-card>#mapChart{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  transform:translateY(8px)!important;
}
.page-overview .overview-region-legend{
  box-sizing:border-box;
  width:170px;
  margin:0 0 2px 4px;
  align-self:end;
}
.page-overview .overview-region-legend-labels{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:4px;
  color:var(--dashboard-text-muted);
  font-size:10px;
  line-height:1;
}
.page-overview .overview-region-bicolor-bar{
  display:flex;
  width:100%;
  height:6px;
  overflow:hidden;
  border-radius:9999px;
  background:var(--dashboard-surface);
}
.page-overview .overview-region-bicolor-bar>span{
  display:block;
  width:50%;
  height:100%;
}
.page-overview .overview-region-bicolor-bar>span:first-child{background:var(--dashboard-rose);}
.page-overview .overview-region-bicolor-bar>span:last-child{background:var(--dashboard-green);}

/* Personal service: replace flex-gap dependencies with physical margins. */
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-annual-exam-record,
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-online-consultation,
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .team-item,
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .record-item{
  gap:0!important;
}
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-annual-exam-record>:first-child,
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-online-consultation>:first-child{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
}
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-annual-exam-record>:nth-child(2),
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-online-consultation>:nth-child(2),
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .team-item>.min-w-0.flex-1,
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .record-item>.record-meta{
  margin-left:12px!important;
}
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-service-type-content>#serviceDonut{
  width:210px!important;
  height:210px!important;
  min-width:210px!important;
  min-height:210px!important;
  max-width:210px!important;
  max-height:210px!important;
  justify-self:center!important;
}
html.page-personal-service.page-personal-service.page-personal-service body.page-personal-service.page-personal-service.page-personal-service .personal-service-type-content{
  grid-template-columns:210px minmax(0,1fr)!important;
}

/* Population: match the activity card's 252px track height. */
html.page-population.page-population.page-population body.page-population.page-population.page-population .population-health-indicator-card{
  height:252px!important;
  min-height:252px!important;
  max-height:252px!important;
  align-self:start!important;
}

/* Risk: explicit vertical rhythm without flex-gap or auto margins. */
html.page-risk.page-risk.page-risk body.page-risk.page-risk.page-risk .risk-model-performance-card .space-y-4{
  gap:0!important;
}
html.page-risk.page-risk.page-risk body.page-risk.page-risk.page-risk .risk-model-performance-card .space-y-4>*{
  margin-top:0!important;
  margin-bottom:0!important;
}
html.page-risk.page-risk.page-risk body.page-risk.page-risk.page-risk .risk-model-performance-card .space-y-4>*+*{
  margin-top:8px!important;
}
html.page-risk.page-risk.page-risk body.page-risk.page-risk.page-risk .risk-model-performance-card .risk-performance-metrics{
  margin-top:20px!important;
  margin-bottom:0!important;
}
html.page-risk.page-risk.page-risk body.page-risk.page-risk.page-risk .risk-model-performance-card .risk-performance-metrics+div{
  margin-top:20px!important;
}
