/* Layout do painel do operador (só estrutura; componentes vêm do design system) */
.painel { display: grid; grid-template-columns: 236px minmax(0, 1fr); min-height: 100vh; }
.lateral { position: sticky; top: 0; height: 100vh; background: var(--superficie); border-right: 1px solid var(--borda); padding: 20px 14px; display: flex; flex-direction: column; gap: 24px; }
.lateral__marca { display: flex; align-items: center; padding: 4px 8px; }
.lateral__nav { display: flex; flex-direction: column; gap: 2px; }
.nav-item { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: var(--raio-sm); border: 0; background: none; font: inherit; font-size: 14px; font-weight: 500; color: var(--texto-suave); cursor: pointer; text-align: left; width: 100%; transition: background var(--transicao-rapida), color var(--transicao-rapida); }
.nav-item:hover { background: var(--superficie-3); color: var(--texto); }
.nav-item--ativo, .nav-item--ativo:hover { background: var(--destaque-suave); color: var(--link); }
.nav-item__contador { margin-left: auto; font-family: var(--fonte-mono); font-size: 12px; }
.lateral__rodape { margin-top: auto; display: flex; flex-direction: column; gap: 12px; padding: 12px; border-radius: var(--raio); background: var(--superficie-2); border: 1px solid var(--borda); font-size: 13px; color: var(--texto-suave); }
.lateral__rodape strong { color: var(--texto); font-weight: 600; }
.principal { padding: 24px 32px 48px; display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.topo { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.topo__titulo { display: flex; flex-direction: column; gap: 4px; }
.topo__titulo p { font-size: 14px; color: var(--texto-suave); }
.topo__acoes { display: flex; align-items: center; gap: 8px; }
.kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.kpi { display: flex; flex-direction: column; gap: 6px; }
.kpi__valor { font-family: var(--fonte-mono); font-size: 32px; font-weight: 600; letter-spacing: -0.02em; line-height: 1; font-variant-numeric: tabular-nums; }
.kpi__rotulo { font-size: 13px; color: var(--texto-suave); }
.kpi__delta { font-size: 12px; display: inline-flex; align-items: center; gap: 4px; }
.fila__cabecalho { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.fila__lista { display: flex; flex-direction: column; gap: 12px; }
.detalhe { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 24px; align-items: start; }
.detalhe__coluna { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.criterio { display: grid; grid-template-columns: 180px minmax(0, 1fr) 56px; align-items: center; gap: 12px; font-size: 13px; }
.criterio__barra { height: 8px; border-radius: 999px; background: var(--superficie-3); overflow: hidden; }
.criterio__barra > span { display: block; height: 100%; border-radius: 999px; background: var(--marca); }
.criterio__pts { font-family: var(--fonte-mono); text-align: right; font-variant-numeric: tabular-nums; }
.criterio__pts.neg { color: var(--erro-texto); }
.grafico { width: 100%; height: 180px; display: block; }
.zap { background: #E7E0D4; border-radius: var(--raio); padding: 20px 16px 16px; display: flex; flex-direction: column; gap: 8px; position: relative; }
[data-tema="escuro"] .zap { background: #0F1A17; }
.zap__hora { font-size: 11px; color: var(--texto-suave); text-align: center; }
.zap__balao { background: #FFFFFF; color: #111B21; border-radius: 10px; border-top-left-radius: 2px; padding: 8px 10px 20px; font-size: 14px; line-height: 1.45; max-width: 92%; box-shadow: 0 1px 1px rgba(0,0,0,.08); white-space: pre-line; position: relative; font-family: var(--fonte-texto); }
[data-tema="escuro"] .zap__balao { background: #202C33; color: #E9EDEF; }
.zap__balao small { position: absolute; right: 8px; bottom: 4px; font-size: 11px; opacity: .6; }
.zap__balao .link { color: #027EB5; }
.resumo-lista { display: flex; flex-direction: column; gap: 10px; font-size: 14px; }
.resumo-lista > div { display: flex; justify-content: space-between; gap: 12px; }
.resumo-lista .mono { color: var(--texto); }
.resumo-lista .k { color: var(--texto-suave); }
.secao { display: flex; flex-direction: column; gap: 12px; }
.secao__titulo { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.regras { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.regras__grupo { display: flex; flex-direction: column; gap: 16px; }
.pesos { display: flex; flex-direction: column; gap: 14px; }
.peso { display: grid; grid-template-columns: 1fr 120px 44px; gap: 12px; align-items: center; font-size: 14px; }
.peso input[type=range] { accent-color: var(--destaque); width: 100%; }
.peso .mono { text-align: right; }
.vazio { padding: 48px 24px; text-align: center; color: var(--texto-suave); display: flex; flex-direction: column; align-items: center; gap: 12px; }
@media (max-width: 1100px) { .detalhe { grid-template-columns: 1fr; } .kpis { grid-template-columns: repeat(2, 1fr); } .regras { grid-template-columns: 1fr; } }
@media (max-width: 820px) { .painel { grid-template-columns: 1fr; } .lateral { position: static; height: auto; flex-direction: row; align-items: center; flex-wrap: wrap; } .lateral__rodape { display: none; } .principal { padding: 16px; } }
