/* Login-only sunset theme. Business screens and base styles are deliberately unchanged. */
body.al-auth-theme { background: #182b40; color: #f8f8fc; color-scheme: dark; }
body.al-auth-theme .auth { --al-auth-x: 0px; --al-auth-y: 0px; display: block; position: relative; min-height: 100dvh; isolation: isolate; background: #182b40; }
body.al-auth-theme .auth-aside { display: none; }
body.al-auth-theme .auth-main { position: relative; z-index: 1; min-height: 100dvh; display: flex; align-items: center; justify-content: center; padding: 86px 24px 68px; }
body.al-auth-theme .auth-box { box-sizing: border-box; width: 408px; max-width: 100%; margin: 0; padding: 29px 30px 24px; color: #fff; background: rgba(19,32,53,.78); border: 1px solid rgba(255,255,255,.32); border-radius: 20px; box-shadow: 0 20px 70px rgba(5,17,34,.3), inset 0 1px 0 rgba(255,255,255,.14); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
body.al-auth-theme .al-auth-brand { display: flex; gap: 12px; align-items: center; padding-bottom: 22px; margin-bottom: 21px; border-bottom: 1px solid rgba(255,255,255,.14); }
body.al-auth-theme .al-auth-brand img { width: 42px; height: 42px; border-radius: 12px; object-fit: cover; box-shadow: 0 4px 18px rgba(0,0,0,.12); }
body.al-auth-theme .al-auth-brand strong { display: block; color: #fff; font-size: 18px; font-weight: 650; letter-spacing: .5px; }
body.al-auth-theme .al-auth-brand span { display: block; margin-top: 3px; color: #d7e3ee; font-size: 9px; letter-spacing: 1.5px; }
body.al-auth-theme .auth-box h2 { margin: 0 0 7px; color: #fff; font-size: 24px; letter-spacing: .5px; font-weight: 600; }
body.al-auth-theme .auth-box > p.muted { margin: 0; color: #d5dfeb; font-size: 12px; line-height: 1.8; }
body.al-auth-theme .auth-tabs { display: flex; gap: 6px; padding: 4px; margin: 23px 0 22px; border: 1px solid rgba(255,255,255,.15); border-radius: 11px; background: rgba(9,23,42,.36); }
body.al-auth-theme .auth-tabs button { flex: 1; min-height: 38px; padding: 8px 10px; border: 0; border-radius: 8px; background: transparent; color: #d9e1eb; font-size: 12px; cursor: pointer; transition: background .2s, color .2s; }
body.al-auth-theme .auth-tabs button.active { background: rgba(255,255,255,.17); color: #fff; box-shadow: 0 2px 7px rgba(0,0,0,.08); }
body.al-auth-theme .auth-box .field { position: relative; display: block; margin-bottom: 17px; color: #f0f3f8; font-size: 12px; line-height: 1.5; }
body.al-auth-theme .auth-box .field input { display: block; box-sizing: border-box; width: 100%; height: 46px; min-height: 46px; margin-top: 7px; padding: 11px 13px 11px 41px; border: 1px solid rgba(255,255,255,.26); border-radius: 9px; outline: none; color: #fff; background: rgba(255,255,255,.09); font-size: 14px; transition: border-color .2s, box-shadow .2s, background .2s; }
body.al-auth-theme .auth-box .field input::placeholder { color: #c5cedc; opacity: 1; font-size: 12px; }
body.al-auth-theme .auth-box .field input:focus { background: rgba(255,255,255,.14); border-color: #8be0df; box-shadow: 0 0 0 3px rgba(139,224,223,.16); }
body.al-auth-theme .auth-box .field.al-auth-password input { padding-right: 49px; }
body.al-auth-theme .auth-box .field input::-ms-reveal { display: none; }
body.al-auth-theme .auth-box .field input:autofill { -webkit-text-fill-color: #fff; box-shadow: 0 0 0 1000px #34465b inset; caret-color: #fff; }
body.al-auth-theme .al-auth-field-icon { position: absolute; pointer-events: none; left: 14px; bottom: 14px; width: 17px; height: 17px; color: #9fdedc; }
body.al-auth-theme .al-auth-field-icon svg { display: block; width: 100%; height: 100%; }
body.al-auth-theme .al-auth-reveal { display: flex; position: absolute; align-items: center; justify-content: center; right: 3px; bottom: 2px; height: 42px; width: 43px; border: 0; border-radius: 8px; color: #e4ecf5; background: transparent; cursor: pointer; }
body.al-auth-theme .al-auth-reveal svg { width: 18px; height: 18px; }
body.al-auth-theme .al-auth-reveal:hover { background: rgba(255,255,255,.12); }
body.al-auth-theme .auth-box .auth-submit { box-sizing: border-box; display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; min-height: 46px; margin-top: 9px; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; color: #172f43; background: linear-gradient(105deg,#ffafd0 0%,#edc1e0 36%,#88dedb 100%); font-weight: 700; font-size: 14px; letter-spacing: 1px; box-shadow: 0 6px 23px rgba(101,167,197,.16); transition: filter .18s, transform .18s; }
body.al-auth-theme .auth-box .auth-submit:hover { filter: brightness(1.08); transform: translateY(-1px); }
body.al-auth-theme .auth-box .auth-submit:active { transform: translateY(0); }
body.al-auth-theme .auth-box .auth-submit:disabled { opacity: .65; cursor: wait; transform: none; }
body.al-auth-theme .auth-box .formerror { color: #ffe1df; font-size: 12px; line-height: 1.65; }
body.al-auth-theme .auth-box .formerror:not(:empty) { margin: 8px 0 13px; padding: 9px 11px; border: 1px solid rgba(255,172,164,.38); border-radius: 8px; background: rgba(118,26,42,.4); }
body.al-auth-theme .auth-switch { margin: 20px 0 0; color: #d8e3ed; font-size: 12px; text-align: center; }
body.al-auth-theme .auth-switch a, body.al-auth-theme .auth-switch button, body.al-auth-theme .auth-switch .link { color: #ffdbac; text-decoration: none; font-weight: 600; }
body.al-auth-theme .auth-switch a:hover, body.al-auth-theme .auth-switch button:hover { color: #fff1dc; text-decoration: underline; }
body.al-auth-theme .auth-help { border-top: 1px solid rgba(255,255,255,.17); margin-top: 24px; padding-top: 16px; color: #d4deea; font-size: 11px; line-height: 1.9; }
body.al-auth-theme .auth-box .success { margin-top: 23px; color: #efffff; background: rgba(57,125,121,.35); border: 1px solid rgba(133,223,205,.4); border-radius: 12px; padding: 20px; }
body.al-auth-theme .auth-box .success p { color: #dbeeea; line-height: 1.8; }
body.al-auth-theme .auth-box .success .btn { color: #14352f; border-color: transparent; background: #a9e1d4; }
body.al-auth-theme button:focus-visible, body.al-auth-theme a:focus-visible { outline: 2px solid #a2f0e8; outline-offset: 3px; }
body.al-auth-theme .al-auth-scene { position: fixed; z-index: 0; inset: 0; overflow: hidden; pointer-events: none; background: #284861; }
body.al-auth-theme .al-auth-wallpaper { position: absolute; inset: -3%; background: url('/assets/auth-sunset-20261025.png') center center / cover no-repeat; transform: translate3d(var(--al-auth-x),var(--al-auth-y),0); }
body.al-auth-theme .al-auth-wallpaper::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(10,23,45,.1),rgba(13,29,46,.08) 42%,rgba(9,24,37,.38)); }
body.al-auth-theme .al-auth-wallpaper-drift { position: absolute; inset: 0; animation: alAuthDrift 34s ease-in-out infinite alternate; }
body.al-auth-theme .al-auth-stars { position: absolute; inset: 0; }
body.al-auth-theme .al-auth-star { position: absolute; width: var(--al-star-size); height: var(--al-star-size); top: var(--al-star-y); left: var(--al-star-x); border-radius: 50%; background: #fff4de; box-shadow: 0 0 8px rgba(255,241,201,.8); opacity: .25; animation: alAuthTwinkle var(--al-star-duration) ease-in-out var(--al-star-delay) infinite alternate; }
body.al-auth-theme .al-auth-orb { position: absolute; width: 62px; height: 62px; border-radius: 50%; background: radial-gradient(circle at 35% 30%,rgba(255,188,206,.6),rgba(201,114,178,.18)); animation: alAuthFloat 18s ease-in-out infinite alternate; box-shadow: inset 0 0 20px rgba(255,255,255,.08); }
body.al-auth-theme .al-auth-orb.one { top: 21%; left: 8%; }
body.al-auth-theme .al-auth-orb.two { width: 41px; height: 41px; top: 63%; left: 22%; background: radial-gradient(circle at 35% 30%,rgba(255,227,155,.6),rgba(223,183,95,.12)); animation-delay: -5s; animation-duration: 22s; }
body.al-auth-theme .al-auth-orb.three { width: 88px; height: 88px; top: 70%; right: 8%; background: radial-gradient(circle at 35% 30%,rgba(156,221,255,.48),rgba(110,142,242,.16)); animation-delay: -11s; animation-duration: 25s; }
body.al-auth-theme .al-auth-motion { position: fixed; z-index: 4; right: max(24px,env(safe-area-inset-right)); top: max(22px,env(safe-area-inset-top)); display: flex; align-items: center; gap: 8px; min-height: 35px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.36); border-radius: 22px; color: #fff; background: rgba(19,35,54,.6); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); font-size: 11px; cursor: pointer; }
body.al-auth-theme .al-auth-motion svg { width: 14px; height: 14px; }
body.al-auth-theme .al-auth-motion:disabled { cursor: default; opacity: .85; }
body.al-auth-theme .al-auth-footer { position: absolute; z-index: 1; left: 16px; right: 16px; bottom: 22px; color: #eff4f9; text-shadow: 0 1px 5px #162639; text-align: center; font-size: 10px; letter-spacing: 1px; pointer-events: none; }
body.al-auth-theme .auth.al-auth-paused .al-auth-scene *, body.al-auth-theme .auth.al-auth-away .al-auth-scene * { animation-play-state: paused !important; }
@keyframes alAuthDrift { from { transform: scale(1); } to { transform: scale(1.045) translate3d(-.45%,.25%,0); } }
@keyframes alAuthTwinkle { from { opacity: .12; transform: translateY(0); } to { opacity: .85; transform: translateY(-8px); } }
@keyframes alAuthFloat { from { transform: translate3d(0,0,0); } to { transform: translate3d(14px,-27px,0); } }
@media (max-width:600px) {
 body.al-auth-theme .auth-main { padding: 73px 18px 64px; }
 body.al-auth-theme .auth-box { width: 382px; padding: 24px 23px 22px; border-radius: 17px; background: rgba(19,32,53,.82); }
 body.al-auth-theme .al-auth-brand { margin-bottom: 18px; padding-bottom: 18px; }
 body.al-auth-theme .al-auth-motion { top: max(15px,env(safe-area-inset-top)); right: 17px; }
 body.al-auth-theme .al-auth-orb.three { right: -24px; }
 body.al-auth-theme .al-auth-orb.two { left: 3%; }
 body.al-auth-theme .al-auth-wallpaper { background-position: 50% center; }
 body.al-auth-theme .auth-box h2 { font-size: 22px; }
}
@media (max-height:700px) and (min-width:601px) {
 body.al-auth-theme .auth-main { padding: 64px 24px 54px; }
 body.al-auth-theme .auth-box { padding-top: 23px; padding-bottom: 21px; }
 body.al-auth-theme .al-auth-brand { margin-bottom: 16px; padding-bottom: 16px; }
}
@media (prefers-reduced-motion:reduce) {
 body.al-auth-theme .al-auth-scene * { animation: none !important; }
 body.al-auth-theme .al-auth-wallpaper { transform: none !important; }
 body.al-auth-theme .auth-submit, body.al-auth-theme input, body.al-auth-theme .auth-tabs button { transition: none !important; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
 body.al-auth-theme .auth-box { background: rgba(19,32,53,.94); }
}
