.mgt-section {
    margin-top: 14px;
}

.mgt-section .section-header {
    align-items: flex-start;
    gap: 16px;
}

.mgt-heading-copy {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.mgt-kicker {
    color: var(--text-muted);
    font-size: 0.68rem;
    font-weight: 400;
}

.mgt-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 24px;
}

.mgt-status {
    border: 1px solid var(--border-color);
    border-radius: 999px;
    color: var(--text-secondary);
    font-size: 0.65rem;
    padding: 4px 9px;
    white-space: nowrap;
}

.mgt-status.ok {
    background: rgba(38, 166, 154, 0.12);
    border-color: rgba(38, 166, 154, 0.45);
    color: var(--bullish);
}

.mgt-status.stale,
.mgt-status.cached {
    background: rgba(255, 183, 77, 0.12);
    border-color: rgba(255, 183, 77, 0.45);
    color: var(--warning);
}

.mgt-status.unavailable,
.mgt-status.unconfigured {
    background: rgba(239, 83, 80, 0.1);
    border-color: rgba(239, 83, 80, 0.35);
    color: var(--bearish);
}

.mgt-refresh {
    align-items: center;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-secondary);
    cursor: pointer;
    display: inline-flex;
    font-size: 0.68rem;
    gap: 5px;
    padding: 4px 8px;
}

.mgt-refresh:hover {
    border-color: var(--accent-blue);
    color: var(--text-primary);
}

.mgt-refresh:disabled {
    cursor: wait;
    opacity: 0.55;
}

.mgt-state {
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    color: var(--text-secondary);
    font-size: 0.75rem;
    margin-bottom: 12px;
    padding: 10px 12px;
}

.mgt-content[hidden],
.mgt-state[hidden] {
    display: none;
}

.mgt-top-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: 1.25fr 1fr 1fr;
    margin-bottom: 12px;
}

.mgt-panel {
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    min-width: 0;
    overflow: hidden;
}

.mgt-panel-header {
    align-items: center;
    border-bottom: 1px solid var(--border-color);
    display: flex;
    justify-content: space-between;
    padding: 9px 11px;
}

.mgt-panel-title {
    color: var(--text-primary);
    font-size: 0.74rem;
    font-weight: 650;
    margin: 0;
}

.mgt-panel-hint {
    color: var(--text-muted);
    font-size: 0.58rem;
}

.mgt-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mgt-row {
    align-items: center;
    border-bottom: 1px solid rgba(42, 46, 57, 0.55);
    display: flex;
    gap: 10px;
    justify-content: space-between;
    min-height: 42px;
    padding: 7px 11px;
}

.mgt-row:last-child {
    border-bottom: 0;
}

.mgt-row-copy {
    min-width: 0;
}

.mgt-row-name {
    color: var(--text-primary);
    display: block;
    font-size: 0.68rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mgt-row-detail {
    color: var(--text-muted);
    display: block;
    font-size: 0.58rem;
    margin-top: 2px;
}

.mgt-row-value {
    flex: 0 0 auto;
    font-size: 0.73rem;
    font-weight: 700;
}

.mgt-positive {
    color: var(--bullish);
}

.mgt-negative {
    color: var(--bearish);
}

.mgt-warning {
    color: var(--warning);
}

.mgt-empty {
    color: var(--text-muted);
    font-size: 0.68rem;
    padding: 14px 11px;
}

.mgt-subheading {
    align-items: baseline;
    display: flex;
    justify-content: space-between;
    margin: 15px 0 8px;
}

.mgt-subheading h3 {
    color: var(--text-primary);
    font-size: 0.75rem;
    font-weight: 650;
    margin: 0;
}

.mgt-subheading span {
    color: var(--text-muted);
    font-size: 0.6rem;
}

.mgt-sector-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.mgt-sector-card {
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    min-width: 0;
    padding: 9px;
}

.mgt-sector-top {
    align-items: baseline;
    display: flex;
    gap: 6px;
    justify-content: space-between;
}

.mgt-sector-name {
    color: var(--text-secondary);
    font-size: 0.64rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mgt-sector-score {
    font-size: 0.82rem;
    font-weight: 700;
}

.mgt-sparkline {
    height: 28px;
    margin-top: 5px;
}

.mgt-sparkline svg {
    display: block;
    height: 100%;
    width: 100%;
}

.mgt-headline-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mgt-headline-card {
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: 9px;
    min-width: 0;
    padding: 10px;
}

.mgt-headline-title-row {
    align-items: flex-start;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.mgt-headline-title {
    color: var(--text-secondary);
    font-size: 0.65rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mgt-lead-lag {
    color: var(--text-muted);
    flex: 0 0 auto;
    font-size: 0.5rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.mgt-lead-lag.leading {
    color: var(--accent-blue);
}

.mgt-headline-value-row {
    align-items: baseline;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    margin-top: 6px;
}

.mgt-headline-value {
    color: var(--text-primary);
    font-size: 1rem;
    font-weight: 700;
}

.mgt-headline-change {
    font-size: 0.62rem;
    font-weight: 650;
}

.mgt-health {
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: 9px;
    margin-top: 12px;
    padding: 0 10px;
}

.mgt-health summary {
    color: var(--text-secondary);
    cursor: pointer;
    font-size: 0.68rem;
    padding: 9px 0;
}

.mgt-health-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0 0 10px;
}

.mgt-health-chip {
    align-items: center;
    background: var(--bg-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-secondary);
    display: inline-flex;
    font-size: 0.58rem;
    gap: 5px;
    padding: 4px 7px;
}

.mgt-health-dot {
    background: var(--text-muted);
    border-radius: 50%;
    height: 6px;
    width: 6px;
}

.mgt-health-chip.success .mgt-health-dot {
    background: var(--bullish);
}

.mgt-health-chip.failed .mgt-health-dot {
    background: var(--bearish);
}

.mgt-health-chip.partial .mgt-health-dot,
.mgt-health-chip.running .mgt-health-dot {
    background: var(--warning);
}

@media (max-width: 1200px) {
    .mgt-sector-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .mgt-headline-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 800px) {
    .mgt-section .section-header {
        align-items: stretch;
        flex-direction: column;
    }

    .mgt-meta {
        justify-content: space-between;
    }

    .mgt-top-grid {
        grid-template-columns: 1fr;
    }

    .mgt-sector-grid,
    .mgt-headline-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .mgt-sector-grid,
    .mgt-headline-grid {
        grid-template-columns: 1fr;
    }
}

.mgt-subtabs {
    display: flex;
    gap: 6px;
    margin: 10px 0;
    flex-wrap: wrap;
}
.mgt-objectives { display:flex; align-items:flex-start; gap:9px; margin:8px 0 10px; padding:10px 12px; border:1px solid var(--border-color); border-radius:8px; background:var(--bg-secondary); }
.mgt-objective-tag { flex:0 0 auto; margin-top:1px; padding:3px 6px; border-radius:4px; background:rgba(79,70,197,.16); color:var(--accent-primary); font-size:.56rem; font-weight:700; letter-spacing:.04em; }
.mgt-objectives strong { display:block; color:var(--text-primary); font-size:.76rem; }
.mgt-objectives p { margin:3px 0 0; color:var(--text-secondary); font-size:.68rem; line-height:1.35; }
.mgt-objective-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:7px; }
.mgt-objective-columns b { color:var(--text-secondary); font-size:.64rem; font-weight:600; }
.mgt-objective-columns .mgt-watch-label { color:var(--warning); }
.mgt-objective-columns ul { margin:4px 0 0; padding-left:15px; color:var(--text-secondary); font-size:.62rem; line-height:1.45; }
.mgt-objective-columns li { margin:2px 0; }
.mgt-subtab {
    border: 1px solid var(--border-color);
    border-radius: 6px;
    padding: 6px 12px;
    background: var(--bg-tertiary);
    color: var(--text-secondary);
    cursor: pointer;
}
.mgt-subtab { min-width:78px; font-size:.72rem; font-weight:600; }
.mgt-subtab.active, .mgt-subtab:hover { background: var(--accent-primary); color: #fff; border-color: var(--accent-primary); box-shadow:0 2px 5px rgba(79,70,197,.22); }
.mgt-subtab-content { margin: 8px 0 12px; }
.mgt-subtab-heading { display:flex; justify-content:space-between; align-items:baseline; margin:8px 0; color:var(--text-secondary); font-size:.72rem; }
.mgt-subtab-heading span { color:var(--text-muted); font-size:.62rem; }
.mgt-subtab-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px; }
.mgt-subtab-card { display: grid; gap: 4px; padding: 10px; border: 1px solid var(--border-color); border-radius: 8px; background: var(--bg-secondary); }
.mgt-subtab-card-head { display:flex; justify-content:space-between; gap:8px; align-items:baseline; }
.mgt-subtab-card strong { color: var(--text-primary); font-size: .82rem; }
.mgt-subtab-card-head span { font-weight: 700; white-space:nowrap; }
.mgt-subtab-card small { color: var(--text-secondary); }
.mgt-score { color: var(--accent-primary); font-size: .62rem; font-weight: 700; }
.mgt-subtab-spark { height: 30px; margin-top: 3px; }
.mgt-source-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mgt-source-panel { overflow:hidden; border:1px solid var(--border-color); border-radius:9px; background:var(--bg-secondary); }
.mgt-source-panel header { display:grid; gap:3px; padding:11px 12px; border-bottom:1px solid var(--border-color); }
.mgt-source-panel header strong { color:var(--text-primary); font-size:.82rem; }
.mgt-source-panel header small { color:var(--text-muted); font-size:.62rem; }
.mgt-ranking-row { display:flex; justify-content:space-between; align-items:center; gap:10px; min-height:42px; padding:7px 12px; border-bottom:1px solid color-mix(in srgb, var(--border-color) 55%, transparent); }
.mgt-ranking-row:last-child { border-bottom:0; }
.mgt-ranking-row strong { display:block; color:var(--text-primary); font-size:.69rem; font-weight:500; }
.mgt-ranking-row small { display:block; color:var(--text-muted); font-size:.57rem; margin-top:2px; }
.mgt-ranking-row > span { flex:0 0 auto; font-size:.76rem; font-weight:700; }
@media (max-width: 800px) { .mgt-source-grid { grid-template-columns:1fr; } }
.mgt-explore-presets { display:flex; flex-wrap:wrap; gap:7px; margin:8px 0; }
.mgt-explore-preset { border:1px solid var(--border-color); border-radius:5px; padding:6px 10px; background:var(--bg-secondary); color:var(--text-primary); cursor:pointer; font-size:.68rem; }
.mgt-explore-preset.active, .mgt-explore-preset:hover { background:var(--accent-primary); border-color:var(--accent-primary); color:#fff; }
.mgt-explore-chart { min-height:220px; padding:8px; border:1px solid var(--border-color); border-radius:8px; background:var(--bg-secondary); }
.mgt-explore-chart svg { display:block; width:100%; height:210px; }
.mgt-chart-axis { stroke:var(--border-color); stroke-width:1; }
.mgt-explore-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; font-size:.62rem; }
.mgt-niche-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mgt-niche-card { padding:12px; border:1px solid var(--border-color); border-radius:9px; background:var(--bg-secondary); }
.mgt-niche-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.mgt-niche-head strong { display:block; color:var(--text-primary); font-size:.86rem; }
.mgt-niche-head small { display:block; margin-top:4px; color:var(--text-muted); font-size:.62rem; }
.mgt-niche-head > span { font-size:1.35rem; font-weight:700; white-space:nowrap; }
.mgt-niche-score { margin-top:6px; color:var(--accent-primary); font-size:.65rem; font-weight:700; }
.mgt-niche-spark { height:44px; margin:8px 0; }
.mgt-niche-card details { color:var(--text-muted); font-size:.65rem; }
.mgt-niche-card ul { list-style:none; margin:6px 0 0; padding:0; display:grid; gap:4px; }
.mgt-niche-card li { display:flex; justify-content:space-between; gap:8px; color:var(--text-secondary); }
.mgt-niche-card code, .mgt-anomaly-table code { color:var(--text-primary); font-size:.61rem; }
.mgt-anomaly-table-wrap { overflow:auto; border:1px solid var(--border-color); border-radius:8px; background:var(--bg-secondary); }
.mgt-anomaly-table { width:100%; border-collapse:collapse; font-size:.68rem; }
.mgt-anomaly-table th, .mgt-anomaly-table td { padding:8px 10px; border-bottom:1px solid color-mix(in srgb, var(--border-color) 60%, transparent); text-align:left; white-space:nowrap; }
.mgt-anomaly-table th { color:var(--text-muted); font-weight:600; }
.mgt-anomaly-table td { color:var(--text-secondary); }
body[data-theme="light"] .mgt-subtab.active, body[data-theme="light"] .mgt-subtab:hover { background:#4f46c5 !important; color:#fff !important; border-color:#4f46c5 !important; }
@media (max-width: 800px) { .mgt-niche-grid { grid-template-columns:1fr; } }
@media (max-width: 650px) { .mgt-objective-columns { grid-template-columns:1fr; gap:7px; } }
