/* A home dos paineis (paineis.velox.tools): o mesmo desenho da home do RAG da
   Velox (topo com a marca, titulo, busca e grade de cartoes), com os tokens
   da marca. Escuro por padrao, claro pelo botao do topo. */
@font-face{font-family:"Nunito";font-style:normal;font-weight:200 1000;font-display:swap;
  src:url("/static/fontes/nunito.woff2") format("woff2")}
:root{color-scheme:dark;--ground:#0E0F1A;--surface:#181A28;--surface-2:#202333;--line:#2B2D37;
  --ink:#ECEDF5;--ink-2:#A3A7B8;--ink-3:#8A8EA0;--brand:#636AD9;--brand-ink:#AAAEF3;--brand-wash:#1B1E57;
  --bad:#F07A80;--bad-wash:#2E1519;--good:#4CC38A;--good-wash:#12291F;
  --logo-tinta:#FFFFFF;--logo-risco:#8A90EE;--radius:7px;
  --shadow:0 1px 2px rgba(0,0,0,.35),0 8px 24px rgba(0,0,0,.28);
  --sans:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif}
:root[data-theme="light"]{color-scheme:light;--ground:#F6F7F9;--surface:#FFFFFF;--surface-2:#EDEEF2;
  --line:#DCDEE5;--ink:#111322;--ink-2:#585C6B;--ink-3:#6B7080;--brand:#3F46C8;--brand-ink:#3F46C8;
  --brand-wash:#F0F1FD;--bad:#C8323B;--bad-wash:#FCECEC;--good:#17804F;--good-wash:#E7F6EE;
  --logo-tinta:#000000;--logo-risco:#3F46C8;--shadow:0 1px 2px rgba(17,19,34,.06),0 6px 20px rgba(17,19,34,.08)}
*{box-sizing:border-box}
[hidden]{display:none !important}
html,body{margin:0}
body{min-height:100vh;background:var(--ground);color:var(--ink);font:15px/1.5 var(--sans)}
a{color:inherit}
.ic{width:18px;height:18px;flex:none}
.topo{display:flex;align-items:center;gap:18px;padding:10px max(16px,calc((100% - 1400px) / 2));
  border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:5}
.marca{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:800;letter-spacing:.04em}
.marca svg{width:26px;height:auto}
.eu{margin-left:auto;display:flex;align-items:center;gap:4px}
.quem{font-size:13.5px;font-weight:700;color:var(--ink-2);margin-right:6px;max-width:180px;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.icone-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;
  border:0;background:none;color:var(--ink-2);cursor:pointer}
.icone-btn:hover{background:var(--surface-2);color:var(--ink)}
main{padding:24px max(16px,calc((100% - 1400px) / 2)) 48px}
.cabeca{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.cabeca h1{margin:0;font-size:24px;font-weight:800}
.cabeca p{margin:4px 0 0;color:var(--ink-2)}
.busca{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;padding:0 10px;
  background:var(--surface);color:var(--ink-3)}
.busca input{border:0;background:none;padding:9px 0;outline:none;min-width:0;width:240px;color:var(--ink);font:inherit}
.busca:focus-within{outline:2px solid var(--brand);outline-offset:-1px;border-color:transparent}
.grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.cartao{position:relative;display:flex;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--line);
  border-radius:var(--radius);background:var(--surface);text-decoration:none;color:inherit;min-width:0;
  transition:border-color .15s,transform .15s}
.cartao:hover{border-color:var(--brand);transform:translateY(-1px)}
.cartao-topo{display:flex;align-items:center;gap:14px;min-width:0;padding-right:22px}
.foto{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:top;flex:none;background:var(--surface-2);
  border:1px solid var(--line)}
.foto.vazia{display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--brand-ink);background:var(--brand-wash)}
.nome{display:flex;flex-direction:column;min-width:0}
.nome b{font-size:16px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nome span{font-size:13px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pe{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.pe .link{color:var(--brand-ink);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.abre{position:absolute;top:14px;right:14px;width:16px;height:16px;color:var(--ink-3)}
.selo{position:absolute;right:12px;bottom:40px;font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;
  background:var(--bad-wash);color:var(--bad)}
.vazio{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 16px;text-align:center;color:var(--ink-3);
  border:1px dashed var(--line);border-radius:var(--radius)}
.vazio p{margin:0}
/* entrar */
.entrar{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.caixa{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--line);border-radius:12px;
  padding:28px 24px;box-shadow:var(--shadow)}
.caixa .marca{margin-bottom:18px;font-size:16px}
.caixa h1{margin:0 0 4px;font-size:20px}
.caixa .sub{margin:0 0 18px;color:var(--ink-2);font-size:14px}
.campo{display:block;margin:0 0 14px}
.campo span{display:block;font-weight:700;font-size:13px;margin-bottom:6px}
.campo input{width:100%;height:42px;padding:0 12px;font:inherit;color:var(--ink);background:var(--ground);
  border:1px solid var(--line);border-radius:7px;outline:none}
.campo input:focus{outline:2px solid var(--brand);outline-offset:-1px;border-color:transparent}
.btn{width:100%;height:42px;border:0;border-radius:7px;background:var(--brand);color:#fff;font:inherit;font-weight:800;cursor:pointer}
.erro{background:var(--bad-wash);color:var(--bad);border-radius:7px;padding:9px 12px;margin:0 0 14px;font-size:14px}
@media (max-width:560px){.busca{width:100%}.busca input{width:100%}.quem{display:none}}
