:root{--app-bg:#0b1220;--app-card:#0f1a2c;--app-border:rgba(255,255,255,.08);--app-text:#e7eefc;--app-muted:rgba(231,238,252,.65);--app-accent:#4f7cff}
body{background:radial-gradient(1200px 600px at 20% 0%,rgba(79,124,255,.25),transparent 60%),radial-gradient(900px 500px at 90% 10%,rgba(34,211,238,.18),transparent 55%),var(--app-bg);color:var(--app-text)}
.navbar{background:linear-gradient(90deg,#0f1a2c,#111b34)}
.card{background:rgba(15,26,44,.86);border:1px solid var(--app-border);box-shadow:0 12px 30px rgba(0,0,0,.35);backdrop-filter:blur(10px)}
.table{color:var(--app-text)}
.table{--bs-table-color:var(--app-text);--bs-table-bg:transparent;--bs-table-border-color:var(--app-border);--bs-table-striped-bg:rgba(255,255,255,.04);--bs-table-striped-color:var(--app-text);--bs-table-hover-bg:rgba(255,255,255,.06);--bs-table-hover-color:var(--app-text)}
.table thead th{color:var(--app-muted);border-bottom-color:var(--app-border)}
.table td,.table th{border-color:var(--app-border)}
.table-striped>tbody>tr:nth-of-type(odd)>*{color:var(--app-text)}
.btn-primary{background:linear-gradient(180deg,#5b86ff,#3f66ff);border:none}
.btn-outline-secondary{color:var(--app-text);border-color:var(--app-border)}
.btn-outline-secondary:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}
code{color:#a7c1ff}
.text-muted{color:var(--app-muted)!important}
.form-control,.form-select{background:rgba(255,255,255,.04);border:1px solid var(--app-border);color:var(--app-text)}
.form-control::placeholder{color:rgba(231,238,252,.45)}
.form-control:focus,.form-select:focus{background:rgba(255,255,255,.06);border-color:rgba(79,124,255,.55);box-shadow:0 0 0 .2rem rgba(79,124,255,.15);color:var(--app-text)}
.alert{border:1px solid var(--app-border);background:rgba(255,255,255,.04);color:var(--app-text)}
.alert-danger{border-color:rgba(239,68,68,.35)}
.alert-success{border-color:rgba(34,197,94,.35)}
