.status-panel { padding: 14px; }
.fft { min-height: 310px; }
.fft .panel-title { font-size: 11px; padding: 11px 14px; }
.fft .panel-title small { font-size: 10px; }
.fft .bars {
    height: 266px;
    padding: 30px 24px 30px;
    background: repeating-linear-gradient(to top,#14283a 0,#14283a 59px,#355068 60px);
}
.fft .bar-group { grid-template-columns: 14px 14px; gap: 5px; min-width: 38px; }
.fft .bar-group b {
    top: calc(100% + 9px);
    left: 0;
    width: 100%;
    color: #d4e0e9;
    font-size: 10px;
    font-weight: 700;
    text-align: center;
}
.fft .vbar, .fft .ibar { min-height: 4px; box-shadow: 0 0 5px rgba(72,166,255,.2); }
.status-heading { margin-bottom: 12px; color: #bed0dd; font: 700 10px Consolas,monospace; letter-spacing: .18em; }
.status-heading i { display: inline-block; width: 10px; height: 10px; margin-right: 8px; border-radius: 50%; }
.status-heading i.green { background: #39c97c; }
.status-heading i.yellow { background: #f4b400; }
.status-heading i.red { background: #ef5c64; }
.status-panel .status-row { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; }
.status-panel .standards { margin-top: 10px; }

.sim-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.sim-actions a { padding: 13px 18px; border: 1px solid #587087; color: #c5d2dc; background: #132638; text-decoration: none; font: 700 10px Consolas,monospace; letter-spacing: .14em; }
.sim-actions a.primary { border-color: #ffae19; background: #ffae19; color: #19212a; }
.sim-actions a.advanced { border-color: #2d82ca; color: #5eb1fa; }

.measurements-side { display: block; }
.measurements-side .compliance { margin: 12px 0 16px; padding: 12px 0 5px; border-top: 1px solid #3b566d; }
.measurements-side .compliance div { display: flex; justify-content: space-between; gap: 8px; margin: 7px 0; font: 8px Consolas,monospace; }
.measurements-side .compliance span { color: #9fb4c3; }
.measurements-side .compliance b.ok { color: #51df91; }
.measurements-side .compliance b.bad { color: #ff5e67; }

.measurements-side .phasor,
.measurements-side .comparison,
.measurements-side .system { margin-top: 16px; background: #101f2e; }
.measurements-side .phasor svg { height: 270px; background: #09131e; }
.measurements-side .phasor circle,
.measurements-side .phasor .axis { stroke: #36526b; }
.measurements-side .phasor circle.inner { stroke: #20384e; stroke-dasharray: 3 4; }
.measurements-side .phasor .phasor-va { stroke: #ff4d57; stroke-width: 3; }
.measurements-side .phasor .phasor-vb { stroke: #f5b900; stroke-width: 3; }
.measurements-side .phasor .phasor-vc { stroke: #358cf2; stroke-width: 3; }
.measurements-side .phasor .phasor-i { stroke: #ff6868; stroke-width: 2; stroke-dasharray: 5 3; }
.measurements-side .phasor text { fill: #dce8f1; }
.phasor-legend { display: flex; gap: 8px; padding: 8px 12px 0; font: 8px Consolas,monospace; }
.phasor-legend b:nth-child(1) { color: #ff4d57; }
.phasor-legend b:nth-child(2) { color: #f5b900; }
.phasor-legend b:nth-child(3) { color: #358cf2; }
.phasor-legend b:nth-child(4) { color: #ff6868; }
.measurements-side .phasor p { color: #a9bdcb; }

.measurements-side .comparison table { font-size: 8px; }
.measurements-side .comparison th,
.measurements-side .comparison td { padding: 7px 6px; }
.measurements-side .comparison th { font-size: 7px; }
.measurements-side .comparison td:last-child { color: #ffc02c; font-weight: 700; }
.measurements-side .comparison td.changed:last-child { color: #45dc8b; }
.measurements-side .comparison td.unchanged:last-child { color: #ffc02c; }
.filter-badges { display: flex; flex-wrap: wrap; gap: 7px; padding: 10px; }
.filter-badges span { padding: 5px 8px; font: 700 8px Consolas,monospace; }
.filter-badges .svg-badge { border: 1px solid #29815e; background: #123b30; color: #4ce092; }
.filter-badges .harmonic-badge { border: 1px solid #2a6ca5; background: #122f4c; color: #63b5ff; }
.measurements-side .system > div:last-child { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 10px; padding: 12px; }
.measurements-side .system span { color: #91a9ba; }
.measurements-side .system b { text-align: right; color: #e4edf4; }

@media(max-width:1200px) {
    .measurements-side .phasor,
    .measurements-side .comparison,
    .measurements-side .system { max-width: none; }
}

/* Legibilidade operacional: os dados devem dominar a interface. */
.simulator-shell { padding-bottom: 140px; }
.instrument-grid { grid-template-columns: 320px minmax(560px,1fr) 350px; gap: 18px; }
.site-strip { font-size: 12px; }
.site-strip .simulator-nav { display: flex; gap: 1rem; }
.site-strip .simulator-nav a { color: #75a3cf; font-size: .64rem; }
.site-strip .simulator-nav a:hover { color: #fff; }
@media(max-width:900px){.site-strip .simulator-nav{display:none}}
.brand-line span { font-size: 12px; }
.sim-head p { font-size: 13px; line-height: 1.6; }
.head-actions button { min-height: 44px; padding: 12px 18px; font-size: 11px; }
.head-actions { flex-wrap: wrap; justify-content: flex-end; max-width: 470px; }
.head-actions button.summary-report { border-color: #d89317; color: #ffc24a; background: #322817; }

.controls h2, .measurements > h2 { font-size: 11px; line-height: 1.5; }
.controls label { font-size: 11px; line-height: 1.45; }
.controls select { min-height: 42px; font-size: 15px; }
.range-control { margin: 14px 0; }
.range-control > div { margin-bottom: 8px; font-size: 10px; line-height: 1.45; }
.range-control b { font-size: 11px; }
.range-control input { height: 5px; }
.frequency { grid-template-columns: 1fr 72px 72px; font-size: 10px; }
.frequency button { min-height: 38px; font-size: 11px; }
.toggle { min-height: 42px; align-items: center; font-size: 11px; }
.toggle span::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 9px; border-radius: 50%; background: #587087; }
.toggle.svg-on span::before { background: #34d47e; box-shadow: 0 0 7px rgba(52,212,126,.45); }
.toggle.filter-on span::before { background: #469ff2; box-shadow: 0 0 7px rgba(70,159,242,.45); }
.toggle b { padding: 3px 7px; border: 1px solid currentColor; font-size: 10px; }
.filter-diagnostic { display: grid; gap: 5px; margin: 7px 0 15px; padding: 11px; font: 10px/1.4 Consolas,monospace; }
.filter-diagnostic span { color: #a9bdca; }
.filter-diagnostic b { color: #f1f7fb; }
.filter-diagnostic strong { color: #ffc438; }
.svg-diagnostic { border: 1px solid #277457; background: #12372d; }
.svg-diagnostic span, .svg-diagnostic b { color: #4ee196; }
.svg-diagnostic strong { color: #ffc438; }
.harmonic-diagnostic { border: 1px solid #2b6393; background: #122d47; }
.harmonic-diagnostic span, .harmonic-diagnostic b { color: #64b4ff; }
.harmonic-diagnostic strong { color: #ffc438; }

.panel-title { padding: 11px 14px; font-size: 11px; }
.panel-title small { font-size: 10px; }
.scope canvas { height: 250px; }
.status-heading { font-size: 12px; }
.status-card { min-height: 92px; padding: 14px; }
.status-card span { font-size: 10px; }
.status-card strong { font-size: 24px; }
.status-card small { font-size: 10px; line-height: 1.4; }
.status-panel .standards span { font-size: 10px; }
.sim-actions a { min-height: 46px; display: inline-flex; align-items: center; font-size: 11px; }

.measurements-side .metric-grid article { min-height: 98px; padding: 13px 11px; }
.measurements-side .metric-grid span:not(.metric-dot) { font-size: 9px; line-height: 1.35; }
.measurements-side .metric-grid strong { margin: 9px 0 6px; font-size: 22px; }
.measurements-side .metric-grid small { font-size: 9px; line-height: 1.35; }
.measurements-side .compliance { padding-top: 14px; }
.measurements-side .compliance div { margin: 10px 0; font-size: 10px; line-height: 1.35; }
.measurements-side .phasor svg { height: 330px; }
.phasor-legend { gap: 12px; font-size: 10px; }
.measurements-side .phasor p { padding: 8px 14px 14px; font-size: 10px; }

.measurements-side .comparison table { font-size: 10px; }
.measurements-side .comparison th { font-size: 9px; }
.measurements-side .comparison th,
.measurements-side .comparison td { padding: 10px 8px; line-height: 1.35; }
.measurements-side .system > div:last-child { gap: 11px 14px; padding: 15px; }
.measurements-side .system span { font-size: 10px; }
.measurements-side .system b { font-size: 11px; }

@media(max-width:1350px) {
    .instrument-grid { grid-template-columns: 300px minmax(500px,1fr) 330px; gap: 14px; }
}

@media(max-width:1280px) {
    .instrument-grid { grid-template-columns: 300px 1fr; }
    .measurements-side { grid-column: 1 / -1; }
    .measurements-side .metric-grid { grid-template-columns: repeat(4,1fr); }
}
/* Barra de registro híbrido: teste ou padrão técnico. */
.simulator-record-actions { flex-wrap: wrap; align-items: end; }
.simulator-record-actions label { display: grid; gap: .25rem; color: #79a6c5; font-size: .58rem; letter-spacing: .12em; }
.simulator-record-actions input, .simulator-record-actions select { min-width: 9rem; height: 2rem; padding: .3rem .45rem; border: 1px solid #315873; color: #edf9ff; background: #071521; }
.simulator-record-actions .save-record { border-color: #249f69; color: #72e5ad; }
.sim-save-toast { position: fixed; right: 1rem; bottom: 1rem; z-index: 30; max-width: 32rem; padding: .8rem 1rem; border: 1px solid #249f69; color: #c8ffe3; background: #092a20; box-shadow: 0 .7rem 2rem rgba(0,0,0,.4); font: 700 .75rem/1.4 monospace; }
