.login-page{min-height:100vh;min-height:100dvh}.login-page>.login-shell{flex:1;width:100%}.login-page footer,.login-page .login-card__footer{position:static;inset:auto;width:auto;max-width:none;text-align:center}.login-shell{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);overflow:hidden}.login-shell__backdrop{position:absolute;inset:0;background-image:var(--login-bg-image);background-position:center;background-size:cover;background-repeat:no-repeat;transform:scale(1.03);filter:blur(6px) saturate(1.1)}.login-shell__backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,#0f2d238c,#143c5a73,#0a1e1999)}.login-shell__center{position:relative;z-index:1;width:100%;max-width:28rem;display:flex;justify-content:center}.login-card{width:100%;display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-8) var(--space-6);border-radius:var(--radius-lg);background:#ffffffe0;border:1px solid rgba(255,255,255,.65);box-shadow:var(--shadow-lg);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.login-card__brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.login-card__logos{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.login-card__logo{width:auto;max-width:12.5rem;height:auto;max-height:4.5rem;object-fit:contain}.login-card__logo--bindawood{max-width:10rem;max-height:3rem}.login-card__title{margin:0;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-secondary)}.login-card__subtitle{margin:0;font-size:var(--font-size-label);font-weight:var(--font-weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.login-card__body{min-width:0}.login-card__footer{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-5);border-top:1px solid var(--color-border);font-size:var(--font-size-small);line-height:var(--line-height-body);color:var(--color-text-muted);text-align:center}.login-card__footer a{color:var(--color-secondary);text-decoration:underline;text-underline-offset:2px}.login-card__footer a:hover{color:var(--color-primary)}.login-form{display:flex;flex-direction:column;gap:var(--space-4);width:100%;min-width:0}.login-form--wide{max-width:none}.login-form .bsc-field{margin-bottom:0}.login-form__fieldset{margin:0;padding:0;border:none;display:flex;flex-direction:column;gap:var(--space-2)}.login-form__fieldset .bsc-radio-group{width:100%;justify-content:stretch}.login-form__fieldset .bsc-radio-group .bsc-radio-field{flex:1}.login-form__submit{width:100%;margin-top:var(--space-1)}.login-form__links{margin:var(--space-1) 0 0;padding-top:var(--space-2);text-align:center;font-size:var(--font-size-body)}.login-form__links a{color:var(--color-secondary);font-weight:var(--font-weight-medium);text-decoration:none}.login-form__links a:hover{color:var(--color-primary);text-decoration:underline}.login-form__heading{margin:0;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-secondary);text-align:center}.login-form__lead,.login-form__note{margin:0;font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-text);text-align:center}.login-form__note{font-size:var(--font-size-label);font-weight:var(--font-weight-medium);color:var(--color-primary)}.login-form__hint{margin:0;padding:var(--space-3);font-size:var(--font-size-small);line-height:var(--line-height-body);color:var(--color-text);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md)}.login-form__hint-title{margin:0 0 var(--space-2);font-weight:var(--font-weight-semibold)}.login-form__hint ul{margin:0;padding-left:var(--space-5)}.login-form__messages:empty{display:none}.login-form__messages span.error,.login-form__messages .error{display:block;padding:var(--space-3);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-danger-text);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}.login-form__messages .success{display:block;padding:var(--space-3);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-success-text);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-md)}.login-password-wrap{position:relative;width:100%}.login-password-wrap .bsc-input{padding-right:var(--space-10)}.login-password-toggle{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;min-width:2.25rem;min-height:2.25rem;padding:var(--space-1);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-secondary);cursor:pointer;line-height:1}.login-password-toggle:hover{background:var(--color-surface-muted)}.login-password-toggle:focus{outline:none}.login-password-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.login-password-toggle__icon{font-size:1.25rem}.login-form input.error,.login-form .bsc-input.error{border-color:var(--color-danger);background-color:var(--color-danger-bg)}@media (max-width: 480px){.login-shell{padding:var(--space-2);align-items:flex-end}.login-card{padding:var(--space-6) var(--space-4);border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:calc(100dvh - var(--space-2));overflow-y:auto}.login-card__logo{max-width:10rem;max-height:3.5rem}}
