:root{--cor-primaria:#2f5f8a;--cor-primaria-escura:#1f4e68;--cor-fundo:#f5f7fa;--cor-texto:#1f2937;--cor-texto-suave:#6b7280;--cor-borda:#e2e8f0;--cor-sucesso:#d9f2d9;--cor-alerta:#fce4d6;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background-color:var(--cor-fundo);color:var(--cor-texto);margin:0}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--cor-borda);z-index:10;background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1.5rem;display:flex;position:sticky;top:0}.topbar-titulo{align-items:center;gap:.5rem;font-size:1.15rem;font-weight:700;display:flex}.topbar-icone{font-size:1.4rem}.topbar-nav{gap:.5rem;display:flex}.topbar-nav a{color:var(--cor-texto-suave);border-radius:var(--radius);padding:.5rem .9rem;font-size:.95rem;font-weight:600;text-decoration:none}.topbar-nav a.ativo{background:var(--cor-primaria);color:#fff}.banner-demo{text-align:center;background:#fff8e1;border-bottom:1px solid #f0d98c;padding:.6rem 1.5rem;font-size:.9rem}.banner-demo code{background:#0000000f;border-radius:4px;padding:.05rem .35rem}.conteudo{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:1.5rem}.pagina h1{margin-bottom:.3rem;font-size:1.6rem}.subtitulo{color:var(--cor-texto-suave);margin-top:0;margin-bottom:1.5rem}.dropzone{border:2px dashed var(--cor-borda);border-radius:var(--radius);text-align:center;cursor:pointer;background:#fff;padding:3rem 1.5rem;transition:border-color .15s}.dropzone:hover{border-color:var(--cor-primaria)}.dropzone-icone{margin-bottom:.5rem;font-size:2.2rem;display:block}.lista-arquivos{border:1px solid var(--cor-borda);border-radius:var(--radius);background:#fff;margin-top:1.25rem;padding:1.25rem}.lista-arquivos ul{margin:0 0 1rem;padding:0;list-style:none}.lista-arquivos li{border-bottom:1px solid var(--cor-borda);justify-content:space-between;padding:.4rem 0;display:flex}.botao{border-radius:var(--radius);cursor:pointer;border:none;padding:.65rem 1.2rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.botao-primario{background:var(--cor-primaria);color:#fff}.botao-primario:hover{background:var(--cor-primaria-escura)}.botao-secundario{color:var(--cor-primaria);border:1px solid var(--cor-primaria);background:#fff}.botao:disabled{opacity:.6;cursor:not-allowed}.botao-link{color:#b91c1c;cursor:pointer;background:0 0;border:none;font-size:.85rem}.alerta{border-radius:var(--radius);margin-top:1rem;padding:.8rem 1rem}.alerta-erro{color:#991b1b;background:#fde2e2}.alerta-info{color:#075985;background:#e0f2fe}.resultado-upload{border:1px solid var(--cor-borda);border-radius:var(--radius);background:#fff;margin-top:1.5rem;padding:1.25rem}.tabela{border-collapse:collapse;width:100%;margin:.75rem 0}.tabela th,.tabela td{text-align:left;border-bottom:1px solid var(--cor-borda);padding:.55rem .7rem;font-size:.9rem}.tabela th{color:var(--cor-texto-suave);font-weight:600}.badge{border-radius:999px;padding:.2rem .6rem;font-size:.78rem;font-weight:600;display:inline-block}.badge-sucesso{background:var(--cor-sucesso);color:#166534}.badge-alerta{background:var(--cor-alerta);color:#9a3412}.confianca{background:#eef1f5;border-radius:999px;min-width:90px;height:1.3rem;position:relative;overflow:hidden}.confianca-barra{border-radius:999px;height:100%}.confianca-alta{background:#4caf7d}.confianca-media{background:#f0ad4e}.confianca-baixa{background:#e05d5d}.confianca-texto{color:#1f2937;mix-blend-mode:multiply;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex;position:absolute;inset:0}.filtros{flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem;display:flex}.filtros select,.filtros input{border-radius:var(--radius);border:1px solid var(--cor-borda);padding:.5rem .7rem;font-size:.9rem}.estado-vazio{color:var(--cor-texto-suave);border:1px dashed var(--cor-borda);border-radius:var(--radius);text-align:center;background:#fff;padding:2rem}.lista-documentos{flex-direction:column;gap:.75rem;display:flex}.card-documento{border:1px solid var(--cor-borda);border-radius:var(--radius);background:#fff;overflow:hidden}.card-documento.expandido{border-color:var(--cor-primaria)}.card-documento-resumo{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:none;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;display:flex}.card-documento-info{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.expandir-seta{color:var(--cor-texto-suave);margin-left:auto}.card-documento-detalhe{border-top:1px solid var(--cor-borda);padding:0 1.25rem 1.25rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1rem 0;display:grid}.form-grid label{color:var(--cor-texto-suave);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}.form-grid input,.form-grid select{border:1px solid var(--cor-borda);color:var(--cor-texto);border-radius:8px;padding:.5rem .6rem;font-size:.95rem}.campo-baixa-confianca input,.campo-baixa-confianca select{background:#fff6f6;border-color:#e05d5d}.campo-baixa-confianca:after{content:"⚠️ baixa confiança — revisar";color:#b91c1c;font-size:.75rem;font-weight:500}.itens-documento h4{margin-bottom:.3rem}.cartoes-metricas{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.cartao-metrica{border:1px solid var(--cor-borda);border-radius:var(--radius);background:#fff;flex-direction:column;gap:.3rem;padding:1.1rem 1.25rem;display:flex}.cartao-metrica-label{color:var(--cor-texto-suave);font-size:.85rem}.cartao-metrica-valor{font-size:1.7rem;font-weight:700}.exportacoes{flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;display:flex}.graficos{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;margin:1.5rem 0;display:grid}.grafico-card{border:1px solid var(--cor-borda);border-radius:var(--radius);background:#fff;padding:1.1rem 1.25rem}.grafico-card h3{margin-top:0}.tabela-fornecedores{border:1px solid var(--cor-borda);border-radius:var(--radius);background:#fff;padding:1.1rem 1.25rem}@media (width<=720px){.topbar{flex-direction:column;align-items:flex-start}.conteudo{padding:1rem}.card-documento-info{gap:.4rem}}
