:root{--fundo: #f7f7f9;--superficie: #ffffff;--borda: #e4e4ea;--texto: #1c1c24;--texto-suave: #6b6b78;--acento: #5b5bd6;--acento-forte: #4646b8;--acento-suave: #eeeefb;--perigo: #b3261e;--ok: #1a7f4e;--aviso-fundo: #fdf6e3;--aviso-borda: #e8d9a0;--raio: 10px;--sombra: 0 1px 2px rgba(28, 28, 36, .06), 0 4px 16px rgba(28, 28, 36, .05)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh}body{background:var(--fundo);color:var(--texto);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}.logo{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;font-size:1.15rem;letter-spacing:-.02em;color:var(--texto);text-decoration:none}.logo .prisma-marca{width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:15px solid var(--acento);position:relative;filter:drop-shadow(2px 1px 0 rgba(91,91,214,.25))}.logo .sufixo{font-weight:400;color:var(--texto-suave);font-size:.85rem;align-self:flex-end;padding-bottom:.1rem}.header{background:var(--superficie);border-bottom:1px solid var(--borda);padding:0 1.5rem;height:56px;display:flex;align-items:center;gap:1.5rem}.header .espaco{flex:1}.header .email{color:var(--texto-suave);font-size:.85rem}.header nav{display:flex;gap:.25rem}.header nav a{color:var(--texto-suave);text-decoration:none;padding:.35rem .7rem;border-radius:6px;font-size:.9rem}.header nav a:hover{background:var(--acento-suave);color:var(--acento-forte)}.header nav a.ativa{background:var(--acento-suave);color:var(--acento-forte);font-weight:600}.conteudo{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.titulo-pagina{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin:0 0 1.25rem}.cartao{background:var(--superficie);border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra);padding:1.5rem}.cartao+.cartao{margin-top:1rem}.tela-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.tela-login .cartao{width:100%;max-width:380px;text-align:center;padding:2.5rem 2rem}.tela-login .logo{font-size:1.6rem;margin-bottom:.5rem}.tela-login p{color:var(--texto-suave);margin:.25rem 0 1.75rem}.botao{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--acento);color:#fff;border:none;border-radius:8px;padding:.55rem 1.2rem;font-size:.95rem;font-weight:600;cursor:pointer;font-family:inherit}.botao:hover{background:var(--acento-forte)}.botao:disabled{opacity:.55;cursor:default}.botao-secundario{background:transparent;color:var(--texto-suave);border:1px solid var(--borda);font-weight:500}.botao-secundario:hover{background:var(--fundo);color:var(--texto)}select,input[type=text],input[type=email]{font-family:inherit;font-size:.9rem;color:var(--texto);background:var(--superficie);border:1px solid var(--borda);border-radius:8px;padding:.45rem .7rem}select:focus,input:focus{outline:2px solid var(--acento-suave);border-color:var(--acento)}label{font-size:.85rem;color:var(--texto-suave);display:block;margin-bottom:.3rem}.form-linha{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.tabela-envolta{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;color:var(--texto-suave);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding:.5rem .75rem;border-bottom:1px solid var(--borda)}td{padding:.6rem .75rem;border-bottom:1px solid var(--borda)}tr:last-child td{border-bottom:none}.estado-vazio{text-align:center;padding:3rem 1.5rem;color:var(--texto-suave)}.estado-vazio .icone{font-size:2rem;margin-bottom:.5rem}.estado-vazio h2{color:var(--texto);font-size:1.05rem;margin:0 0 .35rem}.estado-vazio p{margin:0;font-size:.9rem}.aviso{background:var(--aviso-fundo);border:1px solid var(--aviso-borda);border-radius:8px;padding:.65rem 1rem;font-size:.88rem;margin-bottom:1rem}.erro{background:#fdecea;border:1px solid #f3c2be;color:var(--perigo);border-radius:8px;padding:.65rem 1rem;font-size:.88rem;margin-bottom:1rem}.carregando{color:var(--texto-suave);padding:2rem 0;text-align:center}.badge{display:inline-block;border-radius:999px;padding:.1rem .6rem;font-size:.78rem;font-weight:600;background:var(--acento-suave);color:var(--acento-forte)}.badge-ok{background:#e5f5ec;color:var(--ok)}.badge-atencao{background:var(--aviso-fundo);color:#8a6d1a}.texto-suave{color:var(--texto-suave)}.mono{font-family:SF Mono,ui-monospace,Menlo,monospace;font-size:.84em}
