/* V10.34 structural dashboard layout. */
.dashboard-status-grid{
  display:grid;
  grid-template-columns:minmax(300px,.85fr) minmax(540px,1.6fr);
  gap:12px;
  align-items:stretch;
  margin:0 0 16px;
}
.dashboard-status-grid .sync-strip{
  margin:0;
  min-height:68px;
  border-left:4px solid var(--radar-green);
}
.dashboard-status-grid .diagnostics-strip{
  margin:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-content:stretch;
}
.dashboard-status-grid .diagnostics-strip span{
  min-height:68px;
  display:flex;
  justify-content:center;
  text-align:center;
  line-height:1.35;
}
.terminal-grid{display:block!important;margin:0 0 16px}
.terminal-grid .map-card{margin:0}
.map-card{padding:22px}
.map-card #treemap{height:650px;min-height:650px;contain:layout paint}
.map-side-card{display:none!important}
.insight-grid{
  display:grid;
  grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);
  gap:16px;
  margin:0 0 16px;
}
.insight-grid .card{height:100%;margin:0}
.sector-overview-card{display:flex;flex-direction:column}
.sector-overview-card .legend{margin-top:auto}
.chart-card #assetChart{height:310px}
.avatar{object-position:center 58%}
.map-card #treemap .tile{
  align-items:center!important;
  justify-content:center!important;
  padding:10px!important;
  overflow:hidden;
}
.map-card #treemap .tile-copy{
  position:relative!important;
  z-index:3!important;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  max-width:100%;
  max-height:100%;
  text-align:center;
  overflow:hidden;
}
.map-card #treemap .tile-text{width:100%;min-width:0;text-align:center;overflow:hidden}
.map-card #treemap .tile-symbol,
.map-card #treemap .tile-meta{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.map-card #treemap .tile-symbol{font-size:20px;line-height:1.1;font-weight:950}
.map-card #treemap .tile-meta{margin-top:4px;font-size:13px;line-height:1.15;font-weight:900}
.company-logo-card{
  position:relative;
  z-index:4!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:52px;
  height:52px;
  padding:7px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:9px;
  background:#fff;
  box-shadow:0 6px 16px rgba(6,22,40,.2);
  overflow:hidden;
  isolation:isolate;
}
.company-logo-card img{
  display:block!important;
  position:absolute!important;
  inset:7px;
  z-index:2!important;
  width:calc(100% - 14px)!important;
  height:calc(100% - 14px)!important;
  object-fit:contain;
}
.logo-fallback{
  display:none;
  position:absolute;
  inset:0;
  z-index:1;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:var(--radar-ink);
  font-size:12px;
  font-weight:950;
  line-height:1;
  letter-spacing:.02em;
}
.company-logo-card.logo-fallback-active img{display:none}
.company-logo-card.logo-fallback-active .logo-fallback{display:flex;z-index:2}
.tile:after{z-index:0!important}
.map-card #treemap .tile-large .company-logo-card{width:56px;height:56px}
.map-card #treemap .tile-medium .company-logo-card{width:40px;height:40px;padding:5px;border-radius:7px}
.map-card #treemap .tile-medium .tile-copy{gap:5px}
.map-card #treemap .tile-medium .tile-symbol{font-size:16px}
.map-card #treemap .tile-medium .tile-meta{font-size:12px;margin-top:3px}
.map-card #treemap .tile-small{padding:6px!important}
.map-card #treemap .tile-small .company-logo-card{width:28px;height:28px;padding:3px;border-radius:6px}
.map-card #treemap .tile-small .tile-copy{gap:3px}
.map-card #treemap .tile-small .tile-symbol{font-size:13px}
.map-card #treemap .tile-small .tile-meta{font-size:10px;margin-top:2px}
.map-card #treemap .tile-micro{padding:3px!important}
.map-card #treemap .tile-micro .tile-copy{gap:0}
.map-card #treemap .tile-micro .tile-symbol{font-size:10px}
.map-card #treemap .tile-micro .tile-meta{font-size:8px;margin-top:1px}
.map-card #treemap .tile-wide-compact{padding:10px 14px!important}
.map-card #treemap .tile-wide-compact .tile-copy{flex-direction:row;gap:11px;width:100%;max-height:100%;text-align:left}
.map-card #treemap .tile-wide-compact .company-logo-card{width:44px;height:44px;padding:5px;border-radius:8px}
.map-card #treemap .tile-wide-compact .tile-text{flex:1;width:auto;text-align:left}
.map-card #treemap .tile-wide-compact .tile-symbol,
.map-card #treemap .tile-wide-compact .tile-meta{text-align:left}
.map-card #treemap .tile-wide-compact .tile-symbol{font-size:17px}
.map-card #treemap .tile-wide-compact .tile-meta{font-size:11px;margin-top:3px}
@media(max-width:1100px){
  .dashboard-status-grid{grid-template-columns:1fr}
  .dashboard-status-grid .diagnostics-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
  .map-card #treemap{height:580px;min-height:580px}
  .insight-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .dashboard-status-grid{gap:8px;margin-bottom:12px}
  .dashboard-status-grid .sync-strip{min-height:62px;border-left-width:3px}
  .dashboard-status-grid .diagnostics-strip{grid-template-columns:1fr 1fr;gap:6px}
  .dashboard-status-grid .diagnostics-strip span{min-height:36px;font-size:10px}
  .map-card{padding:14px}
  .map-card #treemap{height:auto;min-height:0}
  #treemap.mobile-map{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px}
  #treemap.mobile-map .tile{position:relative;left:auto!important;top:auto!important;width:auto!important;height:116px!important;min-height:116px;padding:8px!important}
  #treemap.mobile-map .tile:only-child,#treemap.mobile-map .tile-dominant{grid-column:1/-1;height:138px!important}
  #treemap.mobile-map .tile-copy{gap:5px}
  #treemap.mobile-map .company-logo-card{display:inline-flex;width:36px;height:36px;padding:4px;border-radius:7px}
  #treemap.mobile-map .tile-symbol{font-size:14px}
  #treemap.mobile-map .tile-meta{font-size:10px;margin-top:2px}
  .insight-grid{gap:12px;margin-bottom:12px}
  .chart-card #assetChart{height:260px}
}
