.auth{background:var(--surface);min-height:100dvh;color:var(--text);grid-template-columns:minmax(440px,1fr) minmax(0,1.08fr);gap:16px;padding:16px;display:grid}.auth__side{flex-direction:column;min-width:0;padding:16px 24px 8px;display:flex}.auth__top{justify-content:space-between;align-items:center;gap:var(--s-3);min-height:36px;display:flex}.auth__mark{visibility:hidden}.auth__lang.lang-switch{margin-left:auto}.auth__panel{width:min(420px,100%);animation:auth-rise .42s var(--ease-out) both;margin:auto;padding:40px 0}@keyframes auth-rise{0%{opacity:0;transform:translateY(10px)}}.auth__title{letter-spacing:-.035em;margin:0;font-size:clamp(34px,3.4vw,48px);font-weight:450;line-height:1.05}.auth__lede{color:var(--text-muted);font-size:var(--fs-md);margin:14px 0 0;line-height:1.5}.auth__panel>p.muted{margin:20px 0 0}.auth__panel>p.muted+.btn,.auth__title+.btn,.auth__lede+.btn{margin-top:24px}.auth__form{flex-direction:column;gap:18px;margin-top:36px;display:flex}.auth__form .field__label{font-size:var(--fs-sm);font-weight:550}.auth__form .input{background:var(--surface-sunk);min-height:52px;font-size:var(--fs-md);border:1px solid #0000;border-radius:14px;padding:0 16px}.auth__form .input:hover{border-color:var(--border)}.auth__form .input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 16%, transparent)}.auth__form .btn--lg,.auth__actions .btn{min-height:52px;font-size:var(--fs-md);border-radius:14px}.auth__form .btn--lg{margin-top:6px}.auth__password{display:block;position:relative}.auth__password .input{width:100%;padding-right:52px}.auth__reveal{width:38px;height:38px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.auth__reveal:hover{background:var(--hover);color:var(--text)}.auth__reveal:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.auth__error{background:var(--danger-soft);color:var(--danger);font-size:var(--fs-sm);border-radius:12px;margin:0;padding:10px 14px}.auth__forgot{margin-top:var(--s-1);color:var(--accent);font-size:var(--fs-sm);align-self:flex-start;padding:4px 0;font-weight:550;text-decoration:none}.auth__forgot--end{align-self:flex-end;margin:-8px 0 -4px}.auth__forgot:hover{text-underline-offset:3px;text-decoration:underline}.auth__forgot:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.auth__sent{gap:var(--s-3);background:var(--surface-sunk);font-size:var(--fs-md);border-radius:14px;flex-direction:column;margin-top:28px;padding:16px 18px;line-height:1.5;display:flex}.auth__sent p{margin:0}.auth__sent p+p{color:var(--text-muted);font-size:var(--fs-sm)}.auth__actions{gap:var(--s-2);flex-direction:column;margin-top:24px;display:flex}.auth__or{align-items:center;gap:var(--s-3);color:var(--text-muted);font-size:var(--fs-sm);margin:28px 0 14px;display:flex}.auth__or:before,.auth__or:after{content:"";background:var(--border);flex:1;height:1px}.auth__field{border:1px solid var(--border);min-height:52px;color:var(--text);font-size:var(--fs-md);transition:border-color var(--dur), background-color var(--dur);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:0 16px;font-weight:550;text-decoration:none;display:flex}.auth__field:hover{border-color:var(--border-strong);background:var(--surface-sunk)}.auth__field:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth__field>svg{color:var(--text-muted);flex:none}.auth__foot{justify-content:space-between;gap:var(--s-3);color:var(--text-muted);font-size:var(--fs-xs);display:flex}.auth__links{gap:var(--s-3);display:flex}.auth__foot a{color:inherit;text-decoration:none}.auth__foot a:hover{color:var(--text);text-decoration:underline}.auth__brand{isolation:isolate;color:#fff;background:radial-gradient(720px 520px at 88% 4%,#60a5fa80,#0000 62%),radial-gradient(620px 480px at 6% 96%,#14b8c442,#0000 60%),radial-gradient(520px 380px at 40% 55%,#8b5cf638,#0000 70%),linear-gradient(155deg,#001a4d 0%,#002569 50%,#00348f 100%);border-radius:28px;height:calc(100dvh - 32px);min-height:560px;position:sticky;top:16px;overflow:hidden}.auth__grid{z-index:-1;background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 55%,#000 20%,#0000 75%);mask-image:radial-gradient(at 55%,#000 20%,#0000 75%)}.auth__brand-logo{position:absolute;top:36px;left:40px}.auth__stage{perspective:1400px;place-items:center;padding:96px 40px;display:grid;position:absolute;inset:0}.auth__art{transform-origin:50% 60%;filter:drop-shadow(0 40px 60px #0008288c);width:min(600px,100%);height:auto;animation:9s ease-in-out infinite alternate auth-float;transform:rotateX(28deg)rotate(-12deg)scale(1.04)}@keyframes auth-float{0%{transform:rotateX(28deg)rotate(-12deg)scale(1.04)translateY(0)}to{transform:rotateX(24deg)rotate(-10deg)scale(1.04)translateY(-10px)}}.auth__art-hall{fill:#ffffff0f;stroke:#ffffff38}.auth__art-aisle{stroke:#ffffff24;stroke-dasharray:4 6}.auth__art-booth{fill:#ffffff14;stroke:#ffffff57;stroke-width:1px}.is-picked .auth__art-booth{fill:#5b9dff47;stroke:#9cc3ff;stroke-width:1.6px}.auth__art-num{fill:#fff9;font:600 9px var(--font);letter-spacing:.04em}.auth__art-check{fill:none;stroke:#0b1a3a;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.auth__art-pulse{fill:none;stroke:#9cc3ff;stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;animation:auth-pulse 2.4s var(--ease-out) infinite}@keyframes auth-pulse{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.auth__card{-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);width:min(320px,100% - 80px);animation:auth-card .6s .2s var(--ease-out) both;background:#ffffff29;border:1px solid #ffffff47;border-radius:22px;gap:14px;padding:18px 20px;display:flex;position:absolute;bottom:40px;right:40px;box-shadow:0 20px 50px #00082859,inset 0 1px #ffffff40}@keyframes auth-card{0%{opacity:0;transform:translateY(14px)}}.auth__card-icon{color:#1c1300;background:#f5a524;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 0 0 4px #f5a52440}.auth__card-body{min-width:0;font-size:var(--fs-sm);flex-direction:column;flex:1;gap:3px;line-height:1.4;display:flex}.auth__card-body strong{font-size:var(--fs-md);font-weight:650}.auth__card-body>span:not(.auth__card-bar){color:#ffffffd9}.auth__card-bar{background:#fff3;border-radius:999px;height:6px;margin:6px 0 4px;overflow:hidden}.auth__card-bar>span{border-radius:inherit;background:linear-gradient(90deg,#5eead4,#8db8ff);width:75%;height:100%;display:block}.auth__card-body small{color:#ffffff9e;font-size:var(--fs-xs)}@media (prefers-reduced-motion:reduce){.auth__panel,.auth__card,.auth__art{animation:none}.auth__art-pulse{opacity:.6;animation:none}}@media (width<=960px){.auth{grid-template-columns:minmax(0,1fr);padding:0}.auth__brand{display:none}.auth__mark{visibility:visible}.auth__side{padding:20px 16px 16px}.auth__panel{padding:32px 0}}.user-chip{border-radius:var(--radius);background:var(--accent);color:#fff;width:30px;height:30px;font:inherit;font-size:var(--fs-xs);cursor:pointer;border:0;place-items:center;margin-left:2px;font-weight:650;display:grid}.user-chip:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.user-menu__sub{color:var(--text-muted);font-size:var(--fs-xs);display:block}.dialog>.auth__form{margin-top:var(--s-2)}
