:root{--pe-verde-urna:#1f5c3f;--pe-verde-escuro:#123c28;--pe-cinza-tela:#cfd6ce;--pe-cinza-escuro:#4a4a4a;--pe-vermelho:#b3261e;--pe-azul:#1b5faa;--pe-amarelo:#d9a441;--pe-branco:#ffffff}.pe-urna-container{max-width:480px;margin:0 auto;font-family:'Segoe UI',Arial,sans-serif;color:#222}.pe-urna-pausada{text-align:center;padding:40px 20px;background:#f5f5f5;border-radius:8px}.pe-etapa-triagem{background:var(--pe-branco);border:1px solid #ddd;border-radius:10px;padding:24px;box-shadow:0 2px 10px rgba(0,0,0,.08)}.pe-triagem-cabecalho{text-align:center;margin-bottom:20px}.pe-triagem-cabecalho h2{margin:0 0 4px;color:var(--pe-verde-escuro)}.pe-regiao-pesquisa{color:#666;font-size:14px;margin:0}.pe-campo{margin-bottom:14px;display:flex;flex-direction:column}.pe-campo label{font-weight:600;margin-bottom:4px;font-size:14px}.pe-campo input,.pe-campo select{padding:10px;border:1px solid #ccc;border-radius:6px;font-size:15px}.pe-campo-linha{display:flex;gap:12px}.pe-campo-linha .pe-campo{flex:1}.pe-erro-campo{color:var(--pe-vermelho);font-size:12px;min-height:16px;display:block}.pe-mensagem-erro{color:var(--pe-vermelho);font-weight:600;text-align:center;min-height:20px}.pe-triagem-acoes{display:flex;flex-direction:column;gap:10px;margin-top:10px}.pe-btn{padding:12px;border:none;border-radius:6px;font-size:15px;font-weight:700;cursor:pointer;transition:opacity 0.15s ease-in-out}.pe-btn:hover{opacity:.9}.pe-btn-primario{background:var(--pe-verde-urna);color:var(--pe-branco)}.pe-btn-abstencao{background:transparent;color:var(--pe-cinza-escuro);border:2px solid var(--pe-cinza-escuro)}.pe-etapa-urna{background:var(--pe-verde-urna);border-radius:14px;padding:18px;box-shadow:0 6px 20px rgba(0,0,0,.35)}.pe-urna-corpo{display:flex;flex-direction:column;gap:16px}.pe-urna-tela{background:#111;border-radius:8px;padding:10px;border:6px solid #000}.pe-tela-cabecalho{background:var(--pe-verde-escuro);color:var(--pe-branco);text-align:center;padding:6px;font-size:13px;font-weight:700;letter-spacing:.5px;border-radius:4px 4px 0 0}.pe-tela-conteudo{background:var(--pe-cinza-tela);min-height:180px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:'Courier New',monospace}.pe-tela-numero{font-size:48px;font-weight:700;letter-spacing:6px;color:#111;min-height:56px}.pe-tela-candidato{display:flex;align-items:center;gap:10px;margin-top:6px}.pe-tela-candidato img{width:60px;height:60px;object-fit:cover;border-radius:4px;border:2px solid #333}.pe-candidato-info{display:flex;flex-direction:column;text-align:left}.pe-tela-instrucao{margin-top:10px;font-size:13px;color:#333}.pe-tela-voto-nulo .pe-tela-numero,.pe-tela-voto-branco .pe-tela-numero{color:var(--pe-vermelho)}.pe-urna-teclado{background:#e8e8e8;border-radius:8px;padding:14px}.pe-teclado-numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.pe-tecla{padding:14px 0;border:none;border-radius:6px;font-size:18px;font-weight:700;cursor:pointer;background:var(--pe-branco);color:#111;box-shadow:0 2px 0 #999}.pe-tecla:active{transform:translateY(2px);box-shadow:none}.pe-teclado-acoes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pe-tecla-branco{background:var(--pe-branco);color:#111}.pe-tecla-corrige{background:var(--pe-amarelo);color:#111}.pe-tecla-confirma{background:var(--pe-verde-escuro);color:var(--pe-branco)}.pe-etapa-fim{text-align:center;padding:60px 20px;background:var(--pe-verde-escuro);border-radius:14px;color:var(--pe-branco)}.pe-fim-titulo{font-size:42px;font-weight:800;display:block;margin-bottom:10px}.pe-admin-wrap .pe-admin-conteudo{margin-top:16px}.pe-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:16px 0 24px}.pe-card{background:var(--pe-branco);border:1px solid #dcdcde;border-left:4px solid #999;border-radius:6px;padding:16px;display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(0,0,0,.04)}.pe-card-label{font-size:12px;text-transform:uppercase;color:#666;margin-bottom:6px}.pe-card-valor{font-size:26px;font-weight:700;color:#1d2327}.pe-card-percentual{font-size:13px;font-weight:600;color:#666;margin-top:2px}.pe-card-valido{border-left-color:var(--pe-verde-urna)}.pe-card-branco{border-left-color:var(--pe-cinza-escuro)}.pe-card-nulo{border-left-color:var(--pe-vermelho)}.pe-card-abstencao{border-left-color:var(--pe-amarelo)}.pe-banner-projecao{padding:16px 20px;border-radius:6px;margin-bottom:24px;font-size:15px;border:1px solid #ddd}.pe-banner-vitoria{background:#e6f4ea;border-color:var(--pe-verde-urna);color:var(--pe-verde-escuro)}.pe-banner-segundo-turno{background:#fdf1e3;border-color:var(--pe-amarelo);color:#7a5410}.pe-banner-neutro{background:#f0f0f1;color:#444}.pe-tabela-candidatos img.pe-foto-mini,.pe-foto-mini{width:40px;height:40px;object-fit:cover;border-radius:4px}.pe-barra-progresso{background:#eee;border-radius:4px;height:8px;margin-top:4px;overflow:hidden;width:100%;max-width:160px}.pe-barra-preenchida{background:var(--pe-cinza-escuro);height:100%}.pe-barra-preenchida.pe-barra-valida{background:var(--pe-verde-urna)}.pe-form-filtro-auditoria{display:flex;gap:8px;align-items:center;margin-bottom:14px}.pe-paginacao{margin-top:12px;display:flex;gap:6px}.pe-paginacao a{padding:4px 10px;border:1px solid #ccc;border-radius:4px;text-decoration:none}.pe-paginacao a.pe-pagina-ativa{background:var(--pe-verde-urna);color:var(--pe-branco);border-color:var(--pe-verde-urna)}.pe-candidatos-layout{display:grid;grid-template-columns:360px 1fr;gap:24px;align-items:start}@media (max-width:900px){.pe-candidatos-layout{grid-template-columns:1fr}}.pe-candidatos-form,.pe-candidatos-lista{background:var(--pe-branco);border:1px solid #dcdcde;border-radius:6px;padding:16px 20px}