.no-sidebar .main-content{margin-left:0 !important;margin-inline-start:0 !important;max-width:100% !important;flex:0 0 100% !important}.dashboard-welcome{padding-top:2rem;padding-bottom:1rem}.dashboard-empty{padding:3rem 1rem}.dashboard-empty__icon{font-size:3rem;color:var(--bs-secondary);opacity:.65}.module-card{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #2563eb;border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;color:inherit}.module-card:hover:not(.module-card--coming-soon){transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1);color:inherit}.module-card__icon{font-size:2.5rem;display:block}.module-card__badge{font-size:.75rem;font-weight:500;padding:.125rem .625rem;border-radius:9999px;display:inline-block}.module-card--active{border-left-color:#2563eb}.module-card--active .module-card__icon{color:#2563eb}.module-card--active .module-card__badge{background-color:#ecfdf5 !important;color:#10b981 !important}.module-card--expiring{border-left-color:#f59e0b}.module-card--expiring .module-card__icon{color:#f59e0b}.module-card--expiring .module-card__badge{background-color:#fffbeb !important;color:#92400e !important}.module-card--expired{border-left-color:#ef4444}.module-card--expired .module-card__icon{color:#ef4444}.module-card--expired .module-card__badge{background-color:#fef2f2 !important;color:#ef4444 !important}.module-card--unpaid{border-left-style:dashed;border-left-color:#9ca3af}.module-card--unpaid .module-card__icon{color:#9ca3af}.module-card--unpaid .module-card__badge{background-color:#fffbeb !important;color:#92400e !important}.module-card--coming-soon{border-left-style:dashed;border-left-color:#d1d5db;opacity:.6;cursor:default}.module-card--coming-soon:hover{transform:none;box-shadow:0 1px 3px rgba(0,0,0,.06)}.module-card--coming-soon .module-card__icon{color:#d1d5db}.module-card--coming-soon .module-card__badge{background-color:#f3f4f6 !important;color:#374151 !important}.metric-card{background:#fff;border:1px solid #e5e7eb;border-top:2px solid #2563eb;border-radius:.5rem;padding:1.25rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}.metric-card--warning{border-top-color:#f59e0b}.metric-card--success{border-top-color:#10b981}.metric-card--danger{border-top-color:#ef4444}.navbar.bg-dark{background-color:#1e3a5f !important;min-height:56px;padding-top:0;padding-bottom:0;border-bottom:1px solid hsla(0,0%,100%,.08)}.navbar.bg-dark .navbar-brand{font-weight:700;font-size:1.125rem;color:#fff;display:flex;align-items:center;gap:.5rem;padding:0}.navbar.bg-dark .navbar-brand i{color:#2563eb;font-size:1.25rem}.navbar.bg-dark .navbar-brand:hover{color:#fff}.navbar.bg-dark .navbar-toggler{border-color:hsla(0,0%,100%,.15);padding:.375rem .625rem}.navbar.bg-dark .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(37,99,235,.25)}.navbar.bg-dark .btn-dark.dropdown-toggle{background:rgba(0,0,0,0);border:1px solid hsla(0,0%,100%,.1);border-radius:.375rem;font-size:.875rem;color:hsla(0,0%,100%,.8);padding:.375rem .75rem;transition:all .15s ease-in-out}.navbar.bg-dark .btn-dark.dropdown-toggle i.bi-person-circle{font-size:1.125rem;vertical-align:middle}.navbar.bg-dark .btn-dark.dropdown-toggle:hover,.navbar.bg-dark .btn-dark.dropdown-toggle:focus{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.2);color:#fff}.navbar.bg-dark .btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 3px rgba(37,99,235,.25)}.navbar.bg-dark .dropdown-menu{background:#162e4d;border:1px solid hsla(0,0%,100%,.1);border-radius:.5rem;box-shadow:0 8px 24px rgba(0,0,0,.3);padding:.375rem;margin-top:.5rem}.navbar.bg-dark .dropdown-menu .dropdown-header{font-size:.8125rem;font-weight:600;color:#fff;padding:.5rem .75rem}.navbar.bg-dark .dropdown-menu span.dropdown-header,.navbar.bg-dark .dropdown-menu span.dropdown-header.text-muted{font-weight:400;color:hsla(0,0%,100%,.45) !important;font-size:.75rem;padding-top:0}.navbar.bg-dark .dropdown-menu .dropdown-divider{border-color:hsla(0,0%,100%,.08);margin:.25rem 0}.navbar.bg-dark .dropdown-menu .dropdown-item{font-size:.875rem;color:hsla(0,0%,100%,.75);padding:.5rem .75rem;border-radius:.375rem;transition:all .1s}.navbar.bg-dark .dropdown-menu .dropdown-item i{color:hsla(0,0%,100%,.4);font-size:1rem}.navbar.bg-dark .dropdown-menu .dropdown-item:hover{background:hsla(0,0%,100%,.08);color:#fff}.navbar.bg-dark .dropdown-menu .dropdown-item:hover i{color:hsla(0,0%,100%,.7)}.navbar.bg-dark .dropdown-menu .dropdown-item:focus-visible{background:hsla(0,0%,100%,.1);color:#fff;outline:none}.navbar.bg-dark .dropdown-menu .dropdown-item:last-of-type:hover,.navbar.bg-dark .dropdown-menu form:last-child .dropdown-item:hover{color:#fca5a5}.navbar.bg-dark .dropdown-menu .dropdown-item:last-of-type:hover i,.navbar.bg-dark .dropdown-menu form:last-child .dropdown-item:hover i{color:#fca5a5}.navbar.bg-dark .dropdown-menu.p-0{background:#162e4d;border:1px solid hsla(0,0%,100%,.1);border-radius:.5rem;box-shadow:0 8px 24px rgba(0,0,0,.3)}.navbar.bg-dark .dropdown-menu.p-0 .text-muted{color:hsla(0,0%,100%,.4) !important}.navbar.bg-dark .dropdown-menu.p-0 .spinner-border{color:hsla(0,0%,100%,.3) !important}.navbar.bg-dark .dropdown-menu.p-0 h6{color:#fff;font-size:.875rem}.navbar.bg-dark .dropdown-menu.p-0 .btn-link{color:hsla(0,0%,100%,.5) !important;font-size:.75rem}.navbar.bg-dark .dropdown-menu.p-0 .btn-link:hover{color:#fff !important}.navbar.bg-dark .dropdown-menu.p-0 .list-group{border:none}.navbar.bg-dark .dropdown-menu.p-0 .list-group-item{background:rgba(0,0,0,0) !important;border:none;border-bottom:1px solid hsla(0,0%,100%,.06);color:hsla(0,0%,100%,.7);padding:.625rem .625rem;transition:background .1s}.navbar.bg-dark .dropdown-menu.p-0 .list-group-item:hover{background:hsla(0,0%,100%,.06) !important;color:#fff}.navbar.bg-dark .dropdown-menu.p-0 .list-group-item.bg-light{background:hsla(0,0%,100%,.04) !important}.navbar.bg-dark .dropdown-menu.p-0 .list-group-item p{color:hsla(0,0%,100%,.8);font-size:.8125rem}.navbar.bg-dark .dropdown-menu.p-0 .list-group-item small.text-muted{color:hsla(0,0%,100%,.35) !important;font-size:.6875rem}.navbar.bg-dark .dropdown-menu.p-0 .list-group-item .badge.bg-primary{background:#2563eb !important}.navbar.bg-dark .dropdown-menu.p-0 p.text-muted.text-center{color:hsla(0,0%,100%,.35) !important;font-size:.8125rem}.navbar.bg-dark .btn-dark:not(.dropdown-toggle){background:rgba(0,0,0,0);border:none;color:hsla(0,0%,100%,.6);font-size:1.125rem;padding:.375rem .5rem;position:relative;transition:color .15s;border-radius:.375rem}.navbar.bg-dark .btn-dark:not(.dropdown-toggle):hover{color:#fff;background:hsla(0,0%,100%,.06)}.navbar.bg-dark .btn-dark:not(.dropdown-toggle) .badge.bg-danger{font-size:.625rem;font-weight:600;padding:.2rem .375rem;min-width:1.125rem;line-height:1;border:2px solid #1e3a5f}.module-header__back{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;color:hsla(0,0%,100%,.6);font-size:.875rem;text-decoration:none;transition:all .15s ease-in-out;gap:.375rem;padding:0 .75rem}.module-header__back:hover{background-color:hsla(0,0%,100%,.08);color:#fff}.module-header__separator{display:inline-block;width:1px;height:20px;background-color:hsla(0,0%,100%,.12);vertical-align:middle}.module-header__brand{display:inline-flex;align-items:center;color:#fff;font-weight:600;font-size:1rem;white-space:nowrap;gap:.5rem}.module-header__brand .bi{color:#2563eb;font-size:1.125rem}.sidebar{position:fixed;top:56px;bottom:0;left:0;z-index:100;padding:0;background-color:#1e3a5f;width:240px;overflow-y:auto;overflow-x:hidden;border-right:1px solid hsla(0,0%,100%,.06);transition:transform .3s ease-in-out;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.1) rgba(0,0,0,0)}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.sidebar::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.1);border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.2)}@media(max-width: 1023px){.sidebar{transform:translateX(-100%);position:fixed;z-index:1050}.sidebar.show{transform:translateX(0)}}.sidebar .position-sticky{position:static !important;display:flex;flex-direction:column;flex:1;padding-top:0 !important}.sidebar .nav.flex-column{flex:1;padding:.5rem 0}.sidebar .nav-link{color:hsla(0,0%,100%,.8);padding:.5rem 1rem .5rem 1.125rem;font-weight:500;font-size:.875rem;display:flex;align-items:center;gap:.625rem;border-left:3px solid rgba(0,0,0,0);border-radius:0;margin:1px 0;transition:all .15s ease-in-out;position:relative}.sidebar .nav-link:hover{color:#fff;background-color:hsla(0,0%,100%,.06)}.sidebar .nav-link.active{color:#fff;background-color:rgba(37,99,235,.12);border-left-color:#2563eb;font-weight:600}.sidebar .nav-link.active i{color:#2563eb}.sidebar .nav-link i{font-size:1rem;width:1.25rem;text-align:center;flex-shrink:0;transition:color .15s}.sidebar .nav-link .badge{margin-left:auto;font-size:.625rem;font-weight:600;padding:.125rem .4375rem;border-radius:9999px;min-width:1.125rem;text-align:center}.sidebar .sidebar-divider,.sidebar hr{border-color:hsla(0,0%,100%,.08);margin:.375rem 1rem;opacity:1}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1040;transition:opacity .3s ease}@media(max-width: 1023px){.sidebar-overlay.show{display:block}}.module-sidebar__heading{color:hsla(0,0%,100%,.4);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:1rem 1.125rem .375rem}.sidebar-footer{padding:.75rem 1.125rem;border-top:1px solid hsla(0,0%,100%,.06);margin-top:auto;flex-shrink:0}.sidebar-footer__text{font-size:.6875rem;color:hsla(0,0%,100%,.25);line-height:1.4}#toast-container{position:fixed;bottom:1rem;right:1rem;z-index:1080;display:flex;flex-direction:column;gap:.5rem;max-width:420px;pointer-events:none}#toast-container>*{pointer-events:auto}.toast-notification{min-width:320px;max-width:420px;background-color:#fff;border-radius:.5rem;border-left:4px solid;box-shadow:0 4px 12px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;animation:toastSlideIn 300ms ease-out}.toast-notification--success{border-left-color:#10b981}.toast-notification--error{border-left-color:#ef4444}.toast-notification--warning{border-left-color:#f59e0b}.toast-notification--info{border-left-color:#2563eb}.toast-notification--dismissing{animation:toastFadeOut 300ms ease-in forwards}.toast-notification__body{display:flex;align-items:center;flex:1;min-width:0}.toast-notification__body .bi{flex-shrink:0}.toast-notification__message{word-break:break-word}.toast-notification__close{background:none;border:none;font-size:1.25rem;line-height:1;color:#6b7280;cursor:pointer;padding:.5rem;margin-left:.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:color .2s}.toast-notification__close:hover{color:#1f2937}@keyframes toastSlideIn{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes toastFadeOut{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.navbar--impersonating{border-top:3px solid #92004f}.impersonation-pill{display:inline-flex;align-items:center;gap:.375rem;background-color:rgba(146,0,79,.15);border:1px solid rgba(146,0,79,.4);border-radius:9999px;padding:.25rem .25rem .25rem .625rem;margin-left:.75rem;font-size:.8125rem;font-weight:500;color:#c46a97;white-space:nowrap;max-width:280px}.impersonation-pill__icon{font-size:.875rem;flex-shrink:0;color:#d4789f}.impersonation-pill__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.impersonation-pill__exit{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;border:none;border-radius:50%;background-color:rgba(146,0,79,.2);color:#c46a97;font-size:.75rem;cursor:pointer;transition:background-color .15s,color .15s;padding:0;margin-left:.25rem}.impersonation-pill__exit:hover{background-color:rgba(146,0,79,.4);color:#fff}.impersonation-pill__exit:focus-visible{outline:2px solid #92004f;outline-offset:2px}@media(max-width: 767px){.impersonation-pill{padding:.25rem;max-width:none}}@media(prefers-reduced-motion: reduce){.toast-notification{animation:none}.toast-notification--dismissing{animation:none;opacity:0}}@media(max-width: 480px){#toast-container{left:1rem;right:1rem;max-width:none}.toast-notification{min-width:auto;max-width:none}}.main-content:has(.login-page),.no-sidebar .main-content{margin-left:0 !important;margin-inline-start:0 !important;max-width:100% !important;flex:0 0 100% !important;padding:0 !important;min-height:0 !important}.login-page{display:flex;min-height:100vh;background:#f9fafb}.login-page~.container-fluid,.login-page~footer{display:none}body:has(.login-page)>header.navbar{display:none}.login-brand-panel{flex:0 0 420px;background:#1e3a5f;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:3rem 2.5rem;position:relative;overflow:hidden}.login-brand-panel::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#92004f}.login-brand-panel::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%, rgba(37, 99, 235, 0.06) 0%, transparent 50%),radial-gradient(circle at 80% 20%, rgba(146, 0, 79, 0.05) 0%, transparent 50%);pointer-events:none}.brand-content{position:relative;z-index:1;text-align:center}.brand-icon{width:72px;height:72px;border-radius:1rem;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.1);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.brand-icon i{font-size:2rem;color:#fff}.brand-name{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-0.01em;margin-bottom:.5rem}.brand-tagline{font-size:.875rem;color:hsla(0,0%,100%,.5);line-height:1.5;max-width:280px;margin:0 auto}.brand-features{margin-top:3rem;list-style:none;padding:0;width:100%;max-width:260px}.brand-features li{display:flex;align-items:center;gap:.75rem;padding:.625rem 0;font-size:.875rem;color:hsla(0,0%,100%,.6);border-bottom:1px solid hsla(0,0%,100%,.06)}.brand-features li:last-child{border-bottom:none}.brand-features li i{font-size:1rem;color:#2563eb;flex-shrink:0}.login-form-panel{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:3rem 2rem}.login-form-container{width:100%;max-width:400px}.login-form-header{margin-bottom:2rem}.login-form-header h1{font-size:1.5rem;font-weight:700;color:#1e3a5f;margin-bottom:.375rem}.login-form-header p{font-size:.875rem;color:#6b7280;margin:0}.login-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}.login-card label{font-weight:500;font-size:.875rem;color:#374151;margin-bottom:.375rem}.login-card .form-control{border:1px solid #d1d5db;border-radius:.375rem;padding:.5rem .75rem;font-size:1rem;line-height:1.5;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.login-card .form-control:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15);outline:none}.login-card .form-control::placeholder{color:#9ca3af}.login-card .form-control.is-invalid,.login-card .form-control:invalid{border-color:#ef4444;box-shadow:none}.login-card .form-control.is-invalid:focus{box-shadow:0 0 0 3px rgba(239,68,68,.15)}.login-card .invalid-feedback,.login-card .errorlist{font-size:.875rem;color:#ef4444}.login-card .errorlist{list-style:none;padding:0;margin:.25rem 0 0}.login-card .input-group .btn-outline-secondary{border-color:#d1d5db;color:#6b7280;border-radius:0 .375rem .375rem 0;transition:all .15s ease-in-out}.login-card .input-group .btn-outline-secondary:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151}.login-card .input-group .form-control{border-radius:.375rem 0 0 .375rem}.btn-login{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:600;color:#fff;background:#2563eb;border:none;border-radius:.375rem;cursor:pointer;transition:background .15s ease-in-out,box-shadow .15s ease-in-out;min-height:44px}.btn-login:hover{background:#1d4ed8}.btn-login:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.25)}.login-footer{margin-top:1.25rem;text-align:center}.login-footer a{font-size:.875rem;color:#6b7280;text-decoration:none;transition:color .15s}.login-footer a:hover{color:#2563eb}.login-copyright{margin-top:2rem;font-size:.75rem;color:#9ca3af;text-align:center}@media(prefers-reduced-motion: no-preference){.login-form-container{animation:loginFadeIn .4s ease-out}@keyframes loginFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}@media(max-width: 767px){.login-page{flex-direction:column}.login-brand-panel{flex:none;padding:2rem 1.5rem}.brand-features{display:none}.login-form-panel{padding:2rem 1.25rem}.login-card{padding:1.5rem}}@media(min-width: 768px)and (max-width: 1023px){.login-brand-panel{flex:0 0 300px}}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background-color:#fff}.main-content{margin-left:0;padding-top:1.5rem;padding-bottom:2rem;min-height:calc(100vh - 56px)}@media(min-width: 1024px){.main-content{margin-left:240px}}.messages-container .alert{border-left:4px solid;box-shadow:0 2px 4px rgba(0,0,0,.1)}.messages-container .alert.alert-success{border-left-color:#10b981}.messages-container .alert.alert-danger,.messages-container .alert.alert-error{border-left-color:#ef4444}.messages-container .alert.alert-warning{border-left-color:#f59e0b}.messages-container .alert.alert-info{border-left-color:#2563eb}.messages-container .alert i{vertical-align:middle}.text-primary{color:#2563eb !important}.text-success{color:#10b981 !important}.text-warning{color:#f59e0b !important}.text-danger{color:#ef4444 !important}.bg-primary{background-color:#2563eb !important}.bg-success{background-color:#10b981 !important}.bg-warning{background-color:#f59e0b !important}.bg-danger{background-color:#ef4444 !important}.btn-fade-in{animation:btnFadeIn .25s ease-out forwards}@keyframes btnFadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width: 1023px){.d-xl-none{display:block !important}}@media(min-width: 1024px){.d-xl-none{display:none !important}.d-xl-block{display:block !important}}/*# sourceMappingURL=main.css.map */
