:root{
--primary-color:#0077c2;--primary-hover:#00679f;--primary-soft:#def1ff;--secondary-color:#ecf3f8;
--accent-color:#0bc18d;--success-color:#29a259;--warning-color:#efa831;--danger-color:#e7000b;
--background-color:#f8fafd;--foreground-color:#101c28;--muted-color:#eff4f9;--muted-fg:#657383;
--border-color:#e2e8f0;--gradient-brand:linear-gradient(135deg,#0077c2,#009ea7);
--shadow-card:0 1px 2px rgba(16,28,40,.06),0 8px 24px -12px rgba(16,28,40,.18);--radius-card:.85rem;
--bs-primary:#0077c2;--bs-primary-rgb:0,119,194;--bs-success:#29a259;--bs-success-rgb:41,162,89;
--bs-warning:#efa831;--bs-warning-rgb:239,168,49;--bs-danger:#e7000b;--bs-danger-rgb:231,0,11;
--bs-body-bg:#f8fafd;--bs-body-color:#101c28;--bs-border-color:#e2e8f0;--bs-link-color:#0077c2;
--bs-link-hover-color:#00679f;--bs-body-font-family:"Plus Jakarta Sans",ui-sans-serif,system-ui,sans-serif;
--bs-border-radius:.5rem;--bs-border-radius-lg:.7rem}
body{background:var(--background-color);color:var(--foreground-color);font-family:var(--bs-body-font-family);-webkit-font-smoothing:antialiased}
a{text-decoration:none}.btn{font-weight:600}.btn-primary{--bs-btn-bg:#0077c2;--bs-btn-border-color:#0077c2;--bs-btn-hover-bg:#00679f;--bs-btn-hover-border-color:#00679f}
.btn-outline-primary{--bs-btn-color:#0077c2;--bs-btn-border-color:#0077c2;--bs-btn-hover-bg:#0077c2;--bs-btn-hover-border-color:#0077c2}
.btn-success{--bs-btn-bg:#29a259;--bs-btn-border-color:#29a259}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:0;background:transparent;color:#657383}.btn-icon:hover{background:#eff4f9;color:#101c28}
.card{--bs-card-border-color:#e2e8f0;--bs-card-border-radius:.85rem;box-shadow:var(--shadow-card)}
.text-muted-color{color:#657383!important}.text-primary-brand{color:#0077c2!important}.text-success-brand{color:#29a259!important}
.bg-gradient-brand{background:var(--gradient-brand)!important}.text-gradient-brand{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.icon-tile{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.55rem}
.icon-tile-primary{background:#def1ff;color:#0077c2}.icon-tile-success{background:rgba(41,162,89,.12);color:#29a259}.icon-tile-warning{background:rgba(239,168,49,.2);color:#3a2400}.icon-tile-accent{background:rgba(11,193,141,.15);color:#067253}
.avatar-circle{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:50%;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}
.badge-soft-success{background:rgba(41,162,89,.12);color:#29a259}.badge-soft-danger{background:rgba(231,0,11,.1);color:#e7000b}.badge-soft-warning{background:rgba(239,168,49,.2);color:#3a2400}.badge-soft-primary{background:#def1ff;color:#0077c2}.badge-soft-muted{background:#eff4f9;color:#657383}
.form-control:focus,.form-select:focus,.form-check-input:focus{border-color:#0077c2;box-shadow:0 0 0 .2rem rgba(0,119,194,.18)}.form-check-input:checked{background:#0077c2;border-color:#0077c2}.form-label{font-weight:600;font-size:.875rem;margin-bottom:.35rem}
.table>:not(caption)>*>*{padding:.75rem 1rem}.table thead th{background:#eff4f9;color:#657383;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;font-weight:600;white-space:nowrap}.table{--bs-table-hover-bg:rgba(0,119,194,.05)}
.progress{height:.5rem;background:#eff4f9}.progress-bar-brand{background:var(--gradient-brand)}
.app-shell{min-height:100vh;background:#f8fafd}.app-main{width:100%;max-width:1400px;margin:0 auto;padding:1.5rem 1rem}@media(min-width:576px){.app-main{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:992px){.app-main{padding:2rem}}
.app-navbar{background:#eff4f9;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:1020;padding-top:.5rem;padding-bottom:.5rem}
.app-navbar .navbar-toggler{border:0;color:#101c28}.nav-main{align-items:center}.nav-main .nav-link-main{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .55rem;border-radius:.55rem;color:#101c28;font-size:.8rem;font-weight:500;white-space:nowrap}
.nav-main .nav-link-main:hover,.nav-main .nav-link-main:focus-visible{background:#f8fafd;color:#0077c2}.nav-main .nav-link-main.active,.nav-main .nav-dropdown-main.active-child>.nav-link{background:#def1ff;color:#0077c2;font-weight:600}
.nav-main .dropdown-menu{border-color:#e2e8f0;border-radius:.7rem;box-shadow:var(--shadow-card);padding:.45rem}.nav-main .dropdown-item{border-radius:.5rem;font-size:.875rem;padding:.5rem .75rem}.nav-main .dropdown-item:hover,.nav-main .dropdown-item.active{background:#def1ff;color:#0077c2}
.cell-message{max-width:280px}.min-w-0{min-width:0}.tab-underline{border:0;border-bottom:2px solid transparent;background:transparent;padding:.5rem .75rem;font-size:.875rem;color:#657383;margin-bottom:-1px}.tab-underline.active{border-bottom-color:#0077c2;color:#0077c2;font-weight:600}
.auth-split-bg{background:var(--gradient-brand);color:#fff}.auth-split-bg .auth-lead{color:rgba(255,255,255,.9)}.auth-card{background:#fff;border:1px solid #e2e8f0;border-radius:.85rem;box-shadow:var(--shadow-card)}
.page-title{font-weight:700}.small-note{font-size:.75rem}.toast-container{z-index:1080}.stat-number{font-variant-numeric:tabular-nums}.cursor-pointer{cursor:pointer}
@media(max-width:991.98px){.nav-main{flex-direction:column;align-items:stretch;padding-top:.75rem}.nav-main .nav-link-main{padding:.65rem .75rem}.nav-main .dropdown-menu{box-shadow:none;border:0;background:transparent;padding-left:1.5rem}}
