:root{
  --ground:#F6F8FB; --surface:#fff; --line:#EAEEF4; --line-soft:#F2F5F9;
  --ink:#0F1B2D; --ink2:#5A6B85; --ink3:#9AA8BD;
  --brand:#1A66FF; --brand-deep:#013F80; --brand-soft:#EDF4FF; --marinho:#04203F;
  --verde:#0FA35F; --ambar:#E39400; --roxo:#6E4CF5; --vermelho:#E0453A;
  --s1:0 1px 2px rgba(16,24,40,.05); --s2:0 4px 14px rgba(16,24,40,.07);
  --s3:0 24px 52px -14px rgba(16,24,40,.22);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--ground);color:var(--ink);font-size:13px;font-weight:400;-webkit-font-smoothing:antialiased}
button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,textarea,select{font-family:inherit;font-size:13px;color:var(--ink);outline:none}
a{color:var(--brand);text-decoration:none}
svg{display:block}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}
.tabnum{font-variant-numeric:tabular-nums}
.hide{display:none!important}

.b{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 15px;border-radius:9px;font-size:12.5px;font-weight:500;transition:.14s;white-space:nowrap}
.b svg{width:15px;height:15px}
.b-pri{background:var(--brand);color:#fff;box-shadow:0 1px 2px rgba(26,102,255,.3)}
.b-pri:hover{background:#0F55E0}
.b-sec{border:1px solid var(--line);color:var(--ink2);background:#fff}
.b-sec:hover{background:var(--ground);color:var(--ink)}
.b-perigo{border:1px solid #F6CFCB;color:var(--vermelho);background:#fff}
.b-perigo:hover{background:#FEF2F1}
.b:disabled{opacity:.45;cursor:not-allowed}

.campo{display:block;margin-bottom:14px}
.campo > span{display:block;font-size:11px;font-weight:500;color:var(--ink2);margin-bottom:6px}
.campo .obrig{color:var(--vermelho);font-weight:600;display:inline}
.campo input,.campo select{width:100%;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;transition:.15s;font-weight:300}
.campo textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:300;line-height:1.55;resize:vertical}
.campo input:focus,.campo textarea:focus,.campo select:focus{border-color:#BFD3F7;box-shadow:0 0 0 3px rgba(26,102,255,.09)}
.dois{display:grid;grid-template-columns:1fr 1fr;gap:14px}

.cartao{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--s1)}
.cartao-h{padding:16px 18px;border-bottom:1px solid var(--line);background:#FCFDFE;display:flex;align-items:center;gap:12px}
.cartao-h h2{font-size:14px;font-weight:600;letter-spacing:-.2px}
.cartao-h p{font-size:11.5px;color:var(--ink3);font-weight:300;margin-top:2px}
.cartao-b{padding:18px}

.pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:20px;font-size:10.5px;font-weight:500;white-space:nowrap}
.pill i{width:5px;height:5px;border-radius:50%;background:currentColor}
.p-tri{background:#FFF6E5;color:#9A6B00}
.p-prod{background:#EAF1FF;color:#0F4FC4}
.p-prova{background:#F1ECFF;color:#5B34E0}
.p-ok{background:#E6F7EE;color:#0B7B3C}
.p-late{background:#FEECEA;color:#B62A20}
.p-neutro{background:var(--ground);color:var(--ink2)}

table{width:100%;border-collapse:collapse}
th{text-align:left;font-size:9.5px;font-weight:500;color:var(--ink3);text-transform:uppercase;letter-spacing:.8px;padding:11px 14px;background:#FCFDFE;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:12px 14px;border-bottom:1px solid var(--line-soft);font-size:12.5px;color:var(--ink2);vertical-align:middle}
tbody tr:last-child td{border-bottom:none}
td .nome{color:var(--ink);font-weight:500}
.rolagem{overflow-x:auto}

.aviso{display:flex;align-items:flex-start;gap:10px;border-radius:11px;padding:12px 14px;font-size:12px;font-weight:300;line-height:1.55;margin-bottom:14px}
.aviso-erro{border:1px solid #F6CFCB;background:#FEF3F2;color:#8C2A21}
.aviso-ok{border:1px solid #BFE3CE;background:#F3FBF6;color:#0B7B3C}
.aviso b{font-weight:600;display:block;margin-bottom:2px}
.vazio{text-align:center;padding:30px 14px;color:var(--ink3);font-size:12px;font-weight:300;line-height:1.7}
