/* Portal da equipe — tema Ink Mode aprovado (preto, branco e vermelho). Sem fontes externas (CSP 'self'). */
:root{--bg:#0A0A0B;--surface:#141416;--surface-2:#1C1C1F;--fg:#F4F4F5;--muted:#A9A9B0;--line:#2B2B30;--acc:#E5262C;
  --bad:#FF5A5F;--bad-bg:#2C1315;--good-bg:#232327;--font:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --num:ui-monospace,"SF Mono",Menlo,Consolas,monospace;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:15px;line-height:1.5}
h1,h2{margin:0;font-weight:700;letter-spacing:-.01em} h1{font-size:1.6rem} h2{font-size:1.1rem}
table{width:100%;border-collapse:collapse;color:inherit;font-size:.92rem}
th{text-align:left;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
td.n,th.n{text-align:right;font-family:var(--num);font-variant-numeric:tabular-nums;white-space:nowrap}
td small{display:block;color:var(--muted);font-size:.76rem}
a.link{color:var(--fg);text-decoration-color:var(--acc)}
.nota{color:var(--muted);font-size:.85rem;margin:6px 0}
.marca{margin:0 0 4px;font-size:.72rem;letter-spacing:.14em;font-weight:700;color:var(--muted)}
.marca::before{content:"";display:inline-block;width:8px;height:8px;background:var(--acc);margin-right:8px;vertical-align:middle}
.btn{appearance:none;border:1px solid var(--line);background:var(--surface-2);color:var(--fg);border-radius:10px;padding:8px 14px;font:inherit;font-weight:600;cursor:pointer}
.btn.primario{background:var(--acc);border-color:var(--acc);color:#fff} .btn[disabled]{opacity:.45;cursor:not-allowed}
.btn:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
input,select{font:inherit;color:var(--fg);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px}
label{display:grid;gap:4px;font-size:.85rem;color:var(--muted)} label.inline{display:inline-flex;align-items:center;gap:6px}
.aviso{background:var(--surface-2);border-left:3px solid var(--acc);padding:10px 14px;border-radius:10px;margin:10px 0}
.aviso.erro{background:var(--bad-bg);color:var(--bad)}
.caixa{max-width:420px;margin:8vh auto;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:18px;display:grid;gap:12px}
.caixa.larga{max-width:1000px} .caixa form{display:grid;gap:12px} form.inline{display:inline-flex;gap:6px;flex-wrap:wrap}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;align-items:end}
.quebra{word-break:break-all;font-family:var(--num);font-size:.8rem}
.ink{max-width:1180px;margin:0 auto;padding:22px 16px 48px;display:grid;gap:14px}
.ink>*{min-width:0}
.topo{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.quem{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.88rem} .quem form{margin:0}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:760px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:grid;gap:2px}
.kpi .r{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.kpi .v{font-size:1.6rem;font-weight:700;font-family:var(--num)} .kpi .s{font-size:.8rem;color:var(--muted)}
.painel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.painel>summary{cursor:pointer;font-weight:700}
.cab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.filtros{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0}
.tbl{overflow-x:auto}
tr.grp td{background:var(--surface);border-top:1px solid var(--line);padding:0 12px}
tr.grp td:first-child{border-left:3px solid #3A3A41} tr.grp.aberto td{background:var(--surface-2)} tr.grp.aberto td:first-child{border-left-color:var(--acc)}
tr.grp td.n{padding:8px 12px} tr.grp td small{font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font)}
.gb{appearance:none;border:0;background:none;color:var(--fg);cursor:pointer;display:flex;align-items:baseline;gap:10px;width:100%;text-align:left;padding:11px 0;font:inherit}
.gb b{font-size:1rem} .gb .car{color:var(--acc);width:1em} .gb .nota{margin:0}
tr.item td{background:var(--bg)} tr.item td:first-child{padding-left:30px}
.tag{display:inline-block;font-size:.72rem;padding:1px 8px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);margin:2px 4px 0 0}
.tag.atraso{background:var(--bad-bg);color:var(--bad);border-color:#4A1C1F}
.falta{color:var(--muted)} .falta.on{color:var(--fg);font-weight:700}
.acao{display:inline-flex;flex-wrap:nowrap;gap:10px;align-items:center}
.acao input{width:84px;height:38px;text-align:right;background:var(--bg);border-color:#3A3A41}
.acao .btn{height:38px;padding:0 16px;white-space:nowrap;min-width:150px}
.vazio{color:var(--muted);text-align:center;padding:18px}
:root .test-banner { padding: 10px 18px; background: #ffd76a; color: #141414; text-align: center; font: 700 14px/1.4 system-ui, sans-serif; }
