/* ============================================================
   ESTILO DO SIMULADOR

   Extraido do dashboard/uberaba/style.css do Painel Revo: so os
   blocos cujo seletor menciona .sim-. Nao e CSS novo.

   Se o simulador mudar la, reextrair em vez de editar aqui.
   ============================================================ */

.sim-botao { background: transparent; border: 1px solid #CBD5E1; color: #E2E8F0; padding: 7px 16px; font-size: 13px; }
.sim-botao:hover { border-color: #F97316; color: #F97316; }

.sim-fundo {
    position: fixed; inset: 0; z-index: 1000; display: none;
    background: rgba(2,6,23,.72); align-items: flex-start; justify-content: center;
    padding: 24px 12px; overflow-y: auto;
}
.sim-janela {
    width: 100%; max-width: 1140px; background: #0B1729; border: 1px solid rgba(249,115,22,.35);
    border-radius: 14px; display: flex; flex-direction: column; max-height: calc(100vh - 48px);
}
.sim-topo {
    display: flex; align-items: center; gap: 12px; padding: 14px 18px;
    background: #0747a6; border-radius: 14px 14px 0 0;
}
.sim-titulo { font-size: 17px; font-weight: 800; color: #fff; }
.sim-sub { font-size: 13px; color: #DBEAFE; }
.sim-x { margin-left: auto; background: none; border: none; color: #fff; font-size: 18px; cursor: pointer; padding: 2px 8px; }
.sim-corpo { padding: 14px 16px; overflow-y: auto; flex: 1; }
.sim-pe { padding: 10px 16px; border-top: 1px solid rgba(255,255,255,.08); text-align: right; }
.sim-rodape { font-size: 11px; color: #64748B; text-align: center; margin-top: 6px; }

.sim-card { background: #0F1F3D; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; padding: 12px 14px; margin-bottom: 10px; }
.sim-card h4 { font-size: 14px; color: #60A5FA; margin-bottom: 10px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sim-final { border-color: rgba(96,165,250,.5); }
.sim-alto { height: calc(100% - 10px); }
.sim-clicavel { cursor: pointer; user-select: none; }
.sim-seta { margin-left: auto; font-size: 11px; color: #60A5FA; }
.sim-cab { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; flex-wrap: wrap; margin-bottom: 6px; }
.sim-cab h4 { margin-bottom: 2px; }
.sim-direita { text-align: right; display: flex; flex-direction: column; gap: 2px; }

.sim-duas { display: grid; grid-template-columns: 1fr 2fr; gap: 10px; align-items: stretch; }
.sim-grade { display: grid; gap: 10px; margin-bottom: 8px; }
.sim-g2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sim-g3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sim-g4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sim-g5 { grid-template-columns: 2fr 1fr 1fr 1fr; }
.sim-g6 { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
.sim-centro { text-align: center; }
.sim-meia { max-width: 520px; margin-bottom: 8px; }

.sim-faixa { background: #0B1729; border: 1px solid rgba(255,255,255,.08); border-radius: 9px; padding: 9px 11px; margin-bottom: 8px; }
.sim-kv small { display: block; font-size: 11px; color: #94A3B8; margin-bottom: 2px; }
.sim-kv b { font-size: 14px; color: #F1F5F9; }
.sim-kv.verde b, .verde { color: #34D399 !important; }
.sim-kv.vermelho b, .vermelho { color: #F87171 !important; }
.sim-kv.azul b { color: #60A5FA; }
.sim-kv.grande b { font-size: 17px; }
.sim-laranja { color: #FB923C; }
.sim-cinza { color: #94A3B8; }
.sim-mini { font-size: 12px; font-weight: 400; }

.sim-f { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.sim-f small { font-size: 11px; color: #94A3B8; }
.sim-f small a { color: #94A3B8; margin-left: 6px; }
.sim-f input, .sim-f select, .sim-f textarea {
    background: #0B1729; color: #E2E8F0; border: 1px solid rgba(255,255,255,.15);
    border-radius: 8px; padding: 7px 9px; font-size: 13px; font-family: inherit; width: 100%;
}
.sim-f input:focus, .sim-f select:focus, .sim-f textarea:focus { border-color: #F97316; outline: none; }
.sim-f input:disabled { opacity: .55; }
.sim-f input.invalido { border-color: #F87171; }
.sim-f input[type="date"] { color-scheme: dark; }
.sim-chk { display: flex; align-items: center; gap: 7px; font-size: 13px; margin: 8px 0 4px; cursor: pointer; }
.sim-erro { color: #F87171; font-size: 11.5px; margin-top: 2px; }
.sim-dica { font-size: 12px; color: #94A3B8; align-self: end; padding-bottom: 8px; }

.sim-linha { display: flex; align-items: flex-end; gap: 8px; flex-wrap: wrap; margin: 6px 0; }
.sim-linha .ub-btn { padding: 7px 13px; font-size: 12px; }
.sim-amarelo { background: #F59E0B; color: #1F2937; }
.sim-verde { background: #10B981; }

.sim-tag { display: inline-block; background: #334155; color: #fff; font-size: 10.5px; font-weight: 700; padding: 2px 7px; border-radius: 6px; }
.sim-tag.amarela { background: #FBBF24; color: #1F2937; }
.sim-alerta { background: rgba(251,191,36,.12); border: 1px solid rgba(251,191,36,.45); color: #FDE68A; border-radius: 9px; padding: 8px 11px; font-size: 12.5px; margin-bottom: 10px; }
.sim-obs { font-size: 11.5px; color: #94A3B8; margin-top: 4px; }
.sim-vazio { font-size: 12px; color: #64748B; text-align: center; padding: 8px; background: rgba(255,255,255,.02); border-radius: 8px; }
.sim-aplicado { background: rgba(251,191,36,.1); border: 1px solid rgba(251,191,36,.4); border-radius: 9px; padding: 8px 10px; font-size: 12.5px; margin-top: 8px; color: #FDE68A; }
.sim-form { background: #0B1729; border: 1px dashed rgba(249,115,22,.4); border-radius: 9px; padding: 10px; margin: 6px 0; }

.sim-barra { height: 5px; background: rgba(255,255,255,.08); border-radius: 3px; overflow: hidden; margin-bottom: 8px; }
.sim-barra div { height: 100%; background: #FBBF24; transition: width .3s; }
.sim-barra div.ok { background: #34D399; }

.sim-item { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 5px 0; border-bottom: 1px solid rgba(255,255,255,.05); font-size: 13px; flex-wrap: wrap; }
.sim-item:last-child { border-bottom: none; }
.sim-lixo { background: none; border: none; cursor: pointer; font-size: 14px; margin-left: auto; opacity: .75; }
.sim-lixo:hover { opacity: 1; }

.sim-cond { display: grid; grid-template-columns: 28px repeat(5, minmax(0, 1fr)); gap: 8px; align-items: center;
            border: 1px solid rgba(255,255,255,.08); border-radius: 9px; padding: 8px 10px; margin-top: 8px; cursor: pointer; opacity: .6; }
.sim-cond.on { opacity: 1; border-color: #F87171; }

.sim-resultado { background: rgba(52,211,153,.1); border: 1px solid rgba(52,211,153,.4); border-radius: 9px; text-align: center; padding: 6px; align-self: end; }
.sim-resultado b { display: block; font-size: 18px; color: #34D399; }
.sim-resultado small { font-size: 11px; color: #94A3B8; }

.sim-tabela-rola { max-height: 250px; overflow: auto; border: 1px solid rgba(255,255,255,.08); border-radius: 9px; margin-top: 6px; }
.sim-tabela-rola.alta { max-height: 320px; }
.sim-tabela { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.sim-tabela th { position: sticky; top: 0; background: #172B52; color: #CBD5E1; font-weight: 700; padding: 7px 8px; text-align: center; cursor: pointer; user-select: none; white-space: nowrap; }
.sim-tabela td { padding: 5px 8px; text-align: center; border-top: 1px solid rgba(255,255,255,.05); white-space: nowrap; }
.sim-tabela tr:nth-child(even) td { background: rgba(255,255,255,.02); }
.sim-tabela tr.marcada td { background: rgba(248,113,113,.18); color: #FCA5A5; font-weight: 700; }
.sim-tabela tr.fixa td { background: rgba(52,211,153,.12); color: #6EE7B7; opacity: .75; }

.sim-bloco { margin-bottom: 12px; }
.sim-bloco-tit { font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; background: rgba(255,255,255,.06); color: #CBD5E1; padding: 4px 8px; border-radius: 6px; margin-bottom: 4px; }
.sim-nota { font-size: 12px; color: #94A3B8; border-top: 1px solid rgba(255,255,255,.08); padding-top: 8px; }
.sim-pend { color: #FBBF24; font-size: 17px; cursor: help; }
.sim-pendencias { background: rgba(251,191,36,.08); border: 1px solid rgba(251,191,36,.35); border-radius: 9px; padding: 8px 12px; font-size: 12.5px; color: #FDE68A; margin-bottom: 10px; }
.sim-pendencias ul { margin: 4px 0 0 18px; }
    .sim-duas { grid-template-columns: 1fr; }
    .sim-g4, .sim-g5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sim-g3 { grid-template-columns: 1fr; }
    .sim-cond { grid-template-columns: 28px repeat(2, minmax(0, 1fr)); }
    .sim-alto { height: auto; }
    .sim-fundo { padding: 0; }
    .sim-janela { max-height: 100vh; border-radius: 0; }