body{background:#f8f9fa}body.page-home{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}body.page-login{background:linear-gradient(135deg,#edf7f1,#eef6ff)}body.page-register{background:linear-gradient(135deg,#f5f7ff,#eef2ff)}.hero{min-height:calc(100vh - 72px);display:flex;align-items:center;justify-content:center}.hero .card{max-width:520px;border:none;border-radius:16px;box-shadow:0 10px 30px #00000014}.auth-card{max-width:420px;margin:80px auto;background:#fff;border:none;border-radius:18px;box-shadow:0 12px 30px #00000014}.auth-card.auth-card-wide{max-width:460px}.panel-card{max-width:680px;margin:80px auto;background:#fff;border-radius:18px;box-shadow:0 12px 28px #00000014}.panel-card.panel-card-wide{max-width:900px}.app-modal{--bs-modal-color: var(--bs-body-color);--bs-modal-bg: #fff;--bs-modal-padding: 1rem;--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 1rem;--bs-modal-header-padding-y: 1rem;--bs-modal-header-padding: 1rem 1rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: var(--bs-border-width);--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: .5rem;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: var(--bs-border-width);position:fixed;inset:0;z-index:1055;display:flex;align-items:center;justify-content:center;padding:1rem;background:#00000080}.app-modal .modal-dialog{width:100%;max-width:420px;margin:0}.app-modal .modal-content{background-color:#fff;border:none;border-radius:14px;box-shadow:0 16px 40px #0003}.app-modal .modal-body{max-height:60vh;overflow-y:auto}.session-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:0;text-align:left;color:inherit;background:none;border:0}.session-toggle:hover strong{text-decoration:underline}@media(max-width:575.98px){.hero{min-height:auto;padding:32px 0}.hero .card,.panel-card{padding:1.75rem!important}.auth-card,.panel-card{margin:32px auto}}
