/* Compact authentication stage. All selectors are scoped to authentication. */
.auth-screen{height:100svh;min-height:0;grid-template-columns:minmax(0,640px) minmax(340px,400px);justify-content:center;column-gap:42px;align-items:center;padding:78px 32px 34px;background:radial-gradient(ellipse at 30% 46%,#aecfff66,transparent 50%),linear-gradient(115deg,#dceaff,#eff6ff 60%,#e2edff)}
.auth-brand{top:23px;left:50%;right:auto;width:min(1082px,calc(100% - 64px));transform:translateX(-50%)}
.auth-brand .wordmark{font-size:18px}.auth-brand .edition{font-size:8px}
.auth-art{order:1;min-width:0;min-height:0;margin:0;padding:0;width:100%;height:auto;justify-self:center;align-self:center}
.scene-image{width:100%;max-width:640px;height:auto;animation:authSceneFloat 7s ease-in-out infinite;will-change:transform}
.scene-caption{left:5%;right:5%;bottom:-12px}.scene-caption h1{font-size:19px;letter-spacing:0}.scene-caption p{font-size:9px;margin-top:5px}
.scene-chip.one{top:8%;right:2%;animation:authChipFloat 6s ease-in-out infinite}.scene-chip.two{left:0;bottom:20%;animation:authChipFloat 6s ease-in-out -3s infinite}
.auth-content{order:2;padding:0;align-self:center;align-items:center;width:100%;min-width:0;justify-self:center}
.auth-card{width:100%;max-width:400px;padding:27px 30px 24px;border-radius:18px;background:linear-gradient(135deg,#ffffffce,#edf5ffad);box-shadow:0 18px 50px #396cb51c,inset 0 0 0 1px #ffffff80;animation:authCardEnter .55s cubic-bezier(.2,.8,.2,1) both}
.auth-tabs{margin:0 0 18px;gap:27px}.auth-tabs button{min-height:37px;padding:0 0 9px;font-size:12px;transition:color .18s,border-color .18s}
.auth-card h2{font-size:26px;line-height:1.35;margin:4px 0 5px}.auth-card .eyebrow{font-size:8px;letter-spacing:.14em}
.auth-card form>.muted{font-size:11px;line-height:1.65;margin:0 0 17px}
.auth-card label{font-size:11px;line-height:1.5;margin:13px 0 6px}
.auth-card input{min-height:42px;height:42px;line-height:20px;padding:10px 13px;font-size:12px;border-color:#ddeafa;background:#ffffff9e}
.auth-card .password-shell input{padding-right:44px}
.auth-card small{font-size:9px;line-height:1.55;margin-top:4px}
.registration-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:12px}
.registration-grid input{width:100%;min-width:0}.auth-card #register>.eyebrow{display:none}
.auth-card .code-row{grid-template-columns:minmax(0,1fr) 110px;gap:8px}
.auth-card .code-row .secondary{min-height:42px;height:42px;padding:7px;font-size:11px}
.auth-card .full{margin-top:19px;min-height:43px;height:43px;padding:9px 18px;position:relative;overflow:hidden}
.auth-card .full:after{content:"";position:absolute;top:-20%;left:-65%;width:38%;height:150%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,#ffffff33,transparent);pointer-events:none;animation:authButtonLight 7s ease-in-out infinite}
.auth-card .form-message{font-size:11px;line-height:1.6;min-height:0;margin:9px 0 0}.auth-card .form-message:empty{display:none}
.auth-foot{display:none!important}.copyright{font-size:8px;line-height:1.6;margin-top:13px;max-width:400px;color:#7e9bc0}
.auth-screen:after{content:"";position:absolute;z-index:-1;pointer-events:none;width:350px;height:350px;border-radius:50%;left:22%;top:20%;background:radial-gradient(circle,#ffffff90,transparent 65%);animation:authAmbient 9s ease-in-out infinite}
.auth-card form.auth-form-enter{animation:authFormEnter .3s ease both}
@keyframes authCardEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes authFormEnter{from{opacity:.25;transform:translateX(9px)}to{opacity:1;transform:translateX(0)}}
@keyframes authSceneFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes authChipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@keyframes authAmbient{0%,100%{opacity:.55;transform:scale(.95)}50%{opacity:1;transform:scale(1.12)}}
@keyframes authButtonLight{0%,75%,100%{left:-65%}90%{left:125%}}
@media(min-width:1600px){.auth-screen{grid-template-columns:minmax(0,680px) 420px;gap:48px}.auth-brand{width:1148px}.auth-card{max-width:420px;padding:30px 34px 27px}.scene-image{max-width:680px}.copyright{max-width:420px}}
@media(max-width:1100px){.auth-screen{grid-template-columns:minmax(0,1fr) 370px;column-gap:25px;padding:74px 30px 30px}.auth-brand{width:calc(100% - 60px)}.auth-card{max-width:370px;padding:25px 26px 23px}.auth-art{margin:0}.scene-chip{font-size:9px;padding:7px 10px}.scene-caption h1{font-size:16px}}
@media(min-width:761px) and (max-height:780px){.auth-screen{padding-top:62px;padding-bottom:20px}.auth-brand{top:18px}.auth-card{padding:22px 26px 20px}.auth-tabs{margin-bottom:14px}.auth-card h2{font-size:24px}.auth-card form>.muted{margin-bottom:12px}.auth-card label{margin-top:10px}.auth-card input,.auth-card .code-row .secondary{height:40px;min-height:40px}.auth-card .full{margin-top:15px;height:41px;min-height:41px}.copyright{margin-top:10px}.scene-image{max-height:calc(100svh - 115px)}.scene-caption{bottom:-8px}}
@media(max-width:760px){.auth-screen{height:auto;min-height:100svh;display:flex;flex-direction:column;gap:0;padding:78px 22px 24px;overflow:hidden}.auth-brand{top:22px;width:calc(100% - 44px)}.auth-brand .edition{font-size:7px;max-width:120px}.auth-art{order:1;position:relative;width:100%;max-width:330px;height:115px;min-height:115px;margin:0 0 15px}.scene-image{position:absolute;width:260px;max-width:none;height:auto;max-height:none;top:-42px;animation:authSceneFloat 7s ease-in-out infinite}.scene-caption,.scene-chip{display:none}.auth-content{order:2;width:100%;max-width:400px;padding:0;align-items:center}.auth-card{max-width:400px;padding:23px 25px 22px}.auth-card h2{font-size:24px}.auth-card form>.muted{margin-bottom:14px}.auth-card label{margin-top:11px}.auth-card input,.auth-card .code-row .secondary{height:42px;min-height:42px}.auth-card .full{height:44px;min-height:44px;margin-top:17px}.copyright{margin-top:12px}.auth-screen:after{width:240px;height:240px;left:10%;top:5%}}
@media(max-width:760px) and (max-height:780px){.auth-screen{padding-top:69px}.auth-art{display:none}.auth-card{padding:21px 23px}.auth-tabs{margin-bottom:15px}.auth-card form>.muted{margin-bottom:10px}.auth-card label{margin-top:9px}.copyright{margin-top:10px}}
@media(min-width:761px) and (max-height:560px){.auth-screen{height:auto;min-height:100svh;align-items:start;padding-top:64px;padding-bottom:26px}.auth-art{align-self:center}.scene-image{max-height:400px}}
@media(min-width:761px) and (min-height:561px) and (max-height:650px){.auth-screen{padding-top:52px;padding-bottom:10px}.auth-brand{top:14px}.auth-card{padding:16px 24px}.auth-tabs{margin-bottom:10px}.auth-tabs button{min-height:30px;padding-bottom:6px}.auth-card .eyebrow{display:none}.auth-card h2{font-size:22px}.auth-card form>.muted{font-size:10px;line-height:1.5;margin-bottom:8px}.auth-card label{font-size:10px;margin:8px 0 4px}.auth-card input,.auth-card .code-row .secondary{height:36px;min-height:36px;padding-top:7px;padding-bottom:7px}.auth-card small{font-size:8px;line-height:1.5;margin-top:3px}.auth-card .full{height:38px;min-height:38px;margin-top:12px}.copyright{font-size:7px;margin-top:7px}.scene-caption{bottom:0}.scene-caption p{display:none}}
@media(prefers-reduced-motion:reduce){.auth-card,.scene-image,.scene-chip,.auth-screen:after,.auth-card .full:after,.auth-card form.auth-form-enter{animation:none!important;will-change:auto}.auth-tabs button{transition:none}}
