:root{
--bg:#84afee; --card:#041c3a; --line:#0577f8; --text:#e8eef5; --muted:#fafafa;
--accent:#4cc9f0; --ok:#22c55e; --danger:#ef4444; --warn:#f59e0b;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.45 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif}
.container{max-width:1100px;margin:auto;padding:20px}


h1{margin:6px 0 2px}
h2{margin:0 0 10px}
h3{margin:0 0 8px}
.small{font-size:.9rem}
.muted{color:var(--muted)}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin:16px 0}
.grid{display:grid;gap:12px}
.grid.reports{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}


.field{display:flex;flex-direction:column;gap:6px}
input,select,button{font:inherit;color:inherit}
input,select{background:#0e1318;border:1px solid var(--line);border-radius:10px;padding:10px}
input::placeholder{color:#6b7280}


.actions{display:flex;gap:10px;margin-top:10px}
button{border:1px solid var(--line);background:#0f1419;border-radius:10px;padding:10px 14px;cursor:pointer}
button:hover{border-color:var(--accent)}
button.secondary{background:#10161c}
button.ghost{background:transparent}
button.danger{border-color:var(--danger);color:#fecaca}


.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.toolbar-actions{display:flex;gap:10px;align-items:center}


/* Tabela */
table{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;overflow:hidden}
th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left}
thead th{background:#0f1419}
tfoot td{font-weight:bold}
.actions-col{display:flex;gap:8px}


/* Toast */
dialog#toast{position:fixed;right:16px;bottom:16px;background:#0f1419;border:1px solid var(--line);border-radius:12px;padding:12px 14px}


/* Util */
.hidden{display:none}