:root { --app-primary: #1468f5; --app-dark: #0f3d98; --app-ink: #18233d; --app-muted: #69758d; }
body.bg-light { min-height: 100vh; color: var(--app-ink); background: radial-gradient(circle at 8% 5%, #dceaff 0, transparent 31rem), radial-gradient(circle at 95% 18%, #e3f7ff 0, transparent 29rem), #f5f8fc !important; }
.navbar.bg-primary { background: linear-gradient(105deg, #0e5ce9, #1685ed) !important; box-shadow: 0 8px 22px rgba(17,83,185,.22); }
main.container { min-height: calc(100vh - 62px); }
.card, form.card { border: 1px solid rgba(219,227,240,.92); border-radius: 14px; box-shadow: 0 8px 24px rgba(29,52,89,.07); background: rgba(255,255,255,.91); }
.card:hover { box-shadow: 0 12px 28px rgba(29,52,89,.10); }
.table.bg-white { overflow: hidden; border: 1px solid #e4eaf3; border-radius: 14px; box-shadow: 0 8px 24px rgba(29,52,89,.06); }
.table > :not(caption) > * > * { padding: .9rem .7rem; border-color: #edf1f6; }
.table > tbody > tr { transition: background-color .18s ease; }
.table > tbody > tr:hover { background: #f0f6ff; }
.table th { color: #50607a; font-size: .78rem; letter-spacing: .035em; text-transform: uppercase; background: #f8faff; }
.form-control, .form-select { min-height: 42px; border-color: #d7dfed; border-radius: 9px; }
.form-control:focus, .form-select:focus { border-color: #78a8ff; box-shadow: 0 0 0 .22rem rgba(20,104,245,.13); }
.btn { border-radius: 9px; font-weight: 600; transition: transform .18s ease, box-shadow .18s ease; }
.btn-primary { background: linear-gradient(110deg, #1468f5, #197bf0); border: 0; box-shadow: 0 5px 13px rgba(20,104,245,.22); }
.btn:hover { transform: translateY(-1px); }
.alert { border: 0; border-radius: 11px; box-shadow: 0 5px 16px rgba(29,52,89,.06); }
.display-6 { color: #155edb; font-weight: 700; }
@media (max-width: 991px) { .navbar .container { flex-wrap: wrap; } .navbar-nav { width: 100%; margin-top: .45rem; } }
