/* PSB login — source frame 9:199, 375 × 812. */
body.db-login-page { background: #092d54 !important; }
.db-login, .db-login * { box-sizing: border-box; font-family: 'Figtree', Arial, sans-serif !important; }
.db-login { display: flex; flex-direction: column; width: 100%; max-width: 430px; min-height: max(812px, 100dvh); margin: 0 auto; padding: 0; color: #fff; background: linear-gradient(180deg, transparent 5%, rgba(4,19,35,.35) 35%, transparent 65%), url('../images/psb/figma/45398119fa998c851b96e098e90a8e5e16637260.png') center top / 100% auto no-repeat; }
.db-login__hero { flex: 0 0 355px; padding-top: 92px; text-align: center; }
.db-login__welcome { margin: 0 0 22px; color: #fff; font-size: 18px; font-weight: 400; line-height: 22px; }
.db-login__brand { display: flex; justify-content: center; }
.db-login__brand img { display: block; max-width: calc(100% - 64px); }
.db-login__panel { flex: 1; margin: 0; padding: 30px max(24px, 7.2%) 44px; border: 0; border-top: 3px solid #ff5e32; border-radius: 25px 25px 0 0; background: #092d54; box-shadow: none; }
.db-login__lead { margin: 0 auto 30px; color: #fff; font-size: 16px; line-height: 19px; font-weight: 400; text-align: center; }
.db-login__form { margin: 0; }
.db-login .db-field { position: relative; display: flex; align-items: center; min-height: 48px; margin: 0 0 17px; border: 0; border-radius: 10px; background: #fff; }
.db-login .db-field:focus-within { outline: 2px solid #ff8057; outline-offset: 3px; }
.db-login .db-field__icon { flex-shrink: 0; width: 18px; height: 18px; margin-left: 20px; }
.db-login .db-field__icon--lock { width: 16px; height: 21px; margin-left: 21px; }
.db-login .db-field input { flex: 1; min-width: 0; height: 48px !important; margin: 0 !important; padding: 0 42px 0 12px !important; border: 0 !important; border-radius: 10px !important; background: transparent !important; color: #061f3a !important; -webkit-text-fill-color: #061f3a !important; font-size: 16px !important; font-weight: 400 !important; box-shadow: none !important; }
.db-login .db-field input::placeholder { color: #061f3a !important; opacity: 1 !important; }
.db-login .db-field input:focus { outline: none; }
.db-login .db-password-toggle { position: absolute; right: 2px; top: 2px; display: flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; margin: 0; padding: 0; border: 0; background: transparent; border-radius: 8px; }
.db-login .db-password-toggle img { width: 18px; height: 18px; filter: brightness(.4); opacity: .55; }
.db-login .db-password-toggle.is-visible img { opacity: 1; }
.db-login .db-login__submit { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; margin: 32px 0 0; padding: 12px; border: 0; border-radius: 10px; background: linear-gradient(90deg,#ff5e32,#f38859); color: #fff !important; font-size: 18px; font-weight: 700; line-height: 24px; box-shadow: none; cursor: pointer; }
.db-login .db-login__submit:hover { filter: brightness(1.06); }
.db-login .db-login__languages { display: flex; justify-content: center; margin-top: 51px; padding: 0; }
.db-login .db-language-switch { gap: 0; margin: 0; color: #8290a0; }
.db-login .db-language-switch a { color: #8290a0 !important; font-size: 18px; font-weight: 400; }
.db-login .db-language-switch a[aria-current='true'] { color: #fff !important; font-weight: 700; }
.db-login button:focus-visible, .db-login a:focus-visible { outline: 2px solid #ff8057; outline-offset: 3px; }
.success-page { position: fixed !important; inset: 0; z-index: 998 !important; display: none; background: #092d54 url('../images/psb/PBS-LoadingGIF-Dark.gif') center / auto 100% no-repeat !important; }
.success-page::before { content: none; }
@media (prefers-reduced-motion: reduce) { .success-page { background: #092d54 url('../images/psb/logo-login.svg') center / 240px auto no-repeat !important; } }
@media (max-width: 374px) { .db-login__panel { padding-right: 24px; padding-left: 24px; } }
