:root{--auth-bg: #f7fcff;--auth-surface: rgba(255, 255, 255, .78);--auth-surface-strong: rgba(255, 255, 255, .94);--auth-border: rgba(37, 99, 235, .13);--auth-border-strong: rgba(34, 211, 238, .34);--auth-text: #10243f;--auth-muted: #52637d;--auth-dim: #718099;--auth-blue: #2563eb;--auth-blue-deep: #1d4ed8;--auth-cyan: #22d3ee;--auth-cyan-deep: #0891b2;--auth-turquoise: #14b8a6;--auth-turquoise-deep: #0f766e;--auth-violet: #8b5cf6;--auth-danger: #dc2626;--auth-danger-soft: rgba(220, 38, 38, .08);--auth-success: #0f766e;--auth-success-soft: rgba(20, 184, 166, .1);--auth-shadow: 0 28px 90px rgba(31, 81, 153, .14);--auth-shadow-strong: 0 38px 120px rgba(37, 99, 235, .18);--auth-card-x: 50%;--auth-card-y: 0%}*{box-sizing:border-box}html{min-height:100%}.auth-body{min-height:100vh;overflow-x:hidden;color:var(--auth-text);color-scheme:light;font-family:Space Grotesk,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at 12% 6%,rgba(139,92,246,.13),transparent 27rem),radial-gradient(circle at 84% 10%,rgba(34,211,238,.2),transparent 31rem),radial-gradient(circle at 48% 88%,rgba(20,184,166,.14),transparent 34rem),linear-gradient(180deg,#ffffff 0%,var(--auth-bg) 48%,#ffffff 100%)}.auth-body:before,.auth-body:after,.auth-noise,.auth-grid,.auth-orb,.auth-med-network{position:fixed;pointer-events:none}.auth-body:before{inset:0;z-index:-8;content:"";background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.76),transparent 28rem),linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(20,184,166,.04) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 82%,transparent 100%)}.auth-body:after{inset:auto 0 0;z-index:-9;height:32vh;content:"";background:radial-gradient(ellipse at 50% 100%,rgba(34,211,238,.16),transparent 58%),linear-gradient(to top,rgba(255,255,255,.95),transparent)}.auth-noise{inset:0;z-index:-1;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='0.65'/%3E%3C/svg%3E");mix-blend-mode:multiply}.auth-grid{inset:8vh 0 0;z-index:-7;opacity:.58;background:linear-gradient(115deg,transparent 0 44%,rgba(34,211,238,.08) 44.15%,transparent 48%),linear-gradient(64deg,transparent 0 52%,rgba(139,92,246,.07) 52.15%,transparent 56%),radial-gradient(ellipse at 50% 110%,rgba(37,99,235,.12),transparent 52%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 74%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 74%,transparent 100%)}.auth-orb{z-index:-6;border-radius:999px;filter:blur(46px);opacity:.44;animation:authOrbFloat 13s ease-in-out infinite}.auth-orb-blue{top:4%;left:-9rem;width:25rem;height:25rem;background:#2563eb3d}.auth-orb-cyan{top:12%;right:-10rem;width:28rem;height:28rem;background:#22d3ee57;animation-delay:-5s}.auth-orb-violet{right:28%;bottom:-12rem;width:30rem;height:30rem;background:#8b5cf633;opacity:.34;animation-delay:-8s}.auth-med-network{inset:0;z-index:-5}.auth-med-network:before{position:absolute;top:17%;left:50%;width:min(48rem,78vw);height:min(28rem,46vw);border:1px solid rgba(37,99,235,.1);border-radius:999px;content:"";transform:translate(-50%) rotate(-10deg);background:radial-gradient(circle at 22% 32%,rgba(34,211,238,.16),transparent 8rem),radial-gradient(circle at 78% 70%,rgba(139,92,246,.1),transparent 9rem);-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent)}.auth-med-network span{position:absolute;width:.72rem;height:.72rem;border-radius:999px;background:var(--auth-cyan);box-shadow:0 0 28px #22d3ee61;animation:authNodePulse 4.8s ease-in-out infinite}.auth-med-network span:nth-child(1){top:26%;left:20%}.auth-med-network span:nth-child(2){top:16%;right:24%;background:var(--auth-violet);animation-delay:-1.5s}.auth-med-network span:nth-child(3){right:34%;bottom:18%;background:var(--auth-turquoise);animation-delay:-3s}.auth-body a{color:inherit}.auth-body :focus-visible{outline:3px solid rgba(37,99,235,.7);outline-offset:4px}.auth-shell{position:relative;z-index:1;display:flex;min-height:100vh;align-items:center;padding:clamp(2rem,5vw,4.5rem) 0}.auth-stage{display:grid;width:min(100%,73rem);align-items:stretch;grid-template-columns:minmax(0,1.02fr) minmax(20rem,.78fr);gap:clamp(1rem,3vw,1.6rem);margin:0 auto}.auth-login-stage{width:min(100%,67rem)}.auth-register-stage{width:min(100%,78rem);grid-template-columns:minmax(0,1.12fr) minmax(20rem,.64fr)}.auth-panel{position:relative;overflow:hidden;border:1px solid var(--auth-border);border-radius:2rem;background:radial-gradient(circle at var(--auth-card-x) var(--auth-card-y),rgba(34,211,238,.18),transparent 33%),linear-gradient(145deg,#fffffff5,#ffffffa3),var(--auth-surface);box-shadow:var(--auth-shadow),inset 0 1px #ffffffc7;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.auth-panel:before{position:absolute;inset:0;pointer-events:none;content:"";background:linear-gradient(110deg,transparent 0 36%,rgba(255,255,255,.62) 48%,transparent 62%),radial-gradient(circle at 16% 0%,rgba(34,211,238,.16),transparent 34%),radial-gradient(circle at 88% 16%,rgba(139,92,246,.1),transparent 32%);opacity:.76}.auth-panel-main{padding:clamp(1.35rem,4vw,3rem)}.auth-panel-wide{padding:clamp(1.2rem,3.4vw,2.5rem)}.auth-panel-side{display:flex;min-height:100%;flex-direction:column;justify-content:space-between;gap:1.5rem;padding:clamp(1.35rem,3.5vw,2.6rem)}.auth-brand,.auth-register-head,.auth-copy,.auth-form,.auth-alert,.auth-signal-list,.auth-chip-row,.auth-mini-device,.auth-panel-side>*{position:relative;z-index:1}.auth-brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--auth-text);text-decoration:none;font-size:1.02rem;font-weight:900;letter-spacing:-.02em}.auth-brand:hover{color:var(--auth-blue-deep)}.auth-brand-logo{position:relative;width:2.45rem;height:2.45rem;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:.95rem}.auth-brand-logo{display:inline-block;object-fit:cover;background:#fff;box-shadow:0 16px 38px #2563eb29,inset 0 0 0 1px #ffffff80}.auth-register-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.7rem}.auth-copy{margin:clamp(1.8rem,4vw,3.2rem) 0 1.5rem}.auth-register-head+.auth-copy{margin-top:0}.auth-kicker{display:inline-flex;width:max-content;align-items:center;margin-bottom:.9rem;padding:.38rem .72rem;border:1px solid rgba(37,99,235,.13);border-radius:999px;color:var(--auth-blue-deep);background:#ffffffb3;box-shadow:0 10px 30px #2563eb14;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.auth-copy h1,.auth-panel-side h2{max-width:38rem;margin:0 0 .85rem;color:var(--auth-text);font-family:Fraunces,ui-serif,Georgia,serif;font-size:clamp(2.35rem,5vw,4.55rem);line-height:.95;letter-spacing:-.055em;text-wrap:balance}.auth-panel-side h2{font-size:clamp(2rem,3.4vw,3.45rem)}.auth-copy p,.auth-panel-side p{max-width:39rem;margin:0;color:var(--auth-muted);font-size:1.02rem;line-height:1.7}.auth-alert{display:grid;gap:.25rem;margin-bottom:1.2rem;padding:.9rem 1rem;border:1px solid var(--auth-border);border-radius:1rem;background:#ffffffb3;box-shadow:0 12px 34px #2563eb12}.auth-alert strong{color:var(--auth-text);font-size:.92rem}.auth-alert span{color:var(--auth-muted);font-size:.9rem}.auth-alert-error{border-color:#dc26263d;background:var(--auth-danger-soft)}.auth-alert-error strong,.auth-alert-error span{color:#991b1b}.auth-alert-success{border-color:#14b8a647;background:var(--auth-success-soft)}.auth-alert-success strong,.auth-alert-success span{color:var(--auth-success)}.auth-form{display:grid;gap:1.05rem}.auth-field{display:grid;gap:.42rem}.auth-label-row,.auth-options,.auth-form-footer,.auth-form-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem}.auth-form-meta{color:var(--auth-dim);font-size:.84rem}.auth-body .form-label{margin:0;color:var(--auth-text);font-size:.88rem;font-weight:900}.auth-body .form-control,.auth-body .form-select{min-height:3.25rem;border:1px solid rgba(37,99,235,.13);border-radius:1rem;color:var(--auth-text);background:linear-gradient(180deg,#fffffff5,#ffffffc7),#ffffffd1;box-shadow:inset 0 1px #ffffffe0,0 10px 26px #2563eb0d;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease}.auth-body .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='%2310243f' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");padding-right:2.35rem}.auth-body .form-control::placeholder{color:#52637d94}.auth-body .form-control:hover,.auth-body .form-select:hover{border-color:#22d3ee5c}.auth-body .form-control:focus,.auth-body .form-select:focus{color:var(--auth-text);border-color:#0891b294;background:#fffffffa;box-shadow:0 0 0 .24rem #22d3ee24,0 0 34px #22d3ee1f,inset 0 1px #ffffffe6;transform:translateY(-1px)}.auth-body .form-control:disabled,.auth-body .form-select:disabled{color:#52637d9e;border-color:#2563eb14;background:#ffffff8a}.auth-body .form-control.is-invalid,.auth-body .form-select.is-invalid{border-color:#dc2626a8;background-image:none;box-shadow:0 0 0 .2rem #dc26261a}.auth-help{color:var(--auth-dim);font-size:.8rem;line-height:1.45}.error{color:#b91c1c;font-size:.82rem;font-weight:800;line-height:1.45}.auth-password-wrap{position:relative}.auth-password-wrap .form-control{padding-right:5.7rem}.auth-password-toggle{position:absolute;top:50%;right:.55rem;padding:.34rem .58rem;border:1px solid rgba(37,99,235,.12);border-radius:999px;color:var(--auth-blue-deep);background:#ffffffc7;font:inherit;font-size:.74rem;font-weight:900;transform:translateY(-50%);transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.auth-password-toggle:hover,.auth-password-toggle:focus-visible{color:var(--auth-cyan-deep);border-color:#22d3ee61;background:#fffffff5;box-shadow:0 10px 24px #22d3ee1f}.auth-link{color:var(--auth-blue-deep);text-decoration:none;font-size:.88rem;font-weight:900;transition:color .18s ease,transform .18s ease}.auth-link:hover,.auth-link:focus-visible{color:var(--auth-cyan-deep);transform:translateY(-1px)}.auth-check{display:inline-flex;align-items:center;gap:.55rem;color:var(--auth-muted);cursor:pointer;font-size:.88rem;line-height:1.35}.auth-check input{width:1rem;height:1rem;accent-color:var(--auth-cyan-deep)}.auth-submit{position:relative;isolation:isolate;display:inline-flex;min-height:3.5rem;align-items:center;justify-content:center;gap:.8rem;overflow:hidden;padding:.78rem 1.25rem;border:0;border-radius:999px;color:#fff;background:radial-gradient(circle at 28% 15%,rgba(255,255,255,.28),transparent 24%),linear-gradient(135deg,var(--auth-blue-deep),var(--auth-cyan-deep) 52%,var(--auth-turquoise-deep));box-shadow:0 20px 50px #2563eb38,0 0 34px #22d3ee29;font-weight:900;letter-spacing:-.01em;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.auth-submit:before{position:absolute;inset:-40% -70%;z-index:-1;content:"";background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.55),transparent 65%);opacity:.34;transform:translate(-45%) rotate(8deg);transition:transform .52s cubic-bezier(.2,.8,.2,1);mix-blend-mode:screen}.auth-submit:hover,.auth-submit:focus-visible{color:#fff;transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 24px 64px #2563eb47,0 0 42px #22d3ee3d}.auth-submit:active{transform:translateY(0) scale(.99)}.auth-submit:hover:before,.auth-submit:focus-visible:before{transform:translate(54%) rotate(8deg)}.auth-submit:disabled{cursor:wait;opacity:.78;transform:none}.auth-submit-icon{display:inline-grid;width:1.45rem;height:1.45rem;place-items:center;border-radius:999px;background:#ffffff2e}.auth-form-footer{margin-top:.65rem}.auth-side-glow{position:absolute;inset:-18% -20% auto auto;width:22rem;height:22rem;border-radius:999px;background:radial-gradient(circle,rgba(34,211,238,.22),transparent 66%);filter:blur(12px)}.auth-signal-list{display:grid;gap:.85rem}.auth-signal{display:grid;grid-template-columns:auto 1fr;gap:.7rem .9rem;padding:1rem;border:1px solid rgba(37,99,235,.11);border-radius:1.2rem;background:#ffffff9e;box-shadow:inset 0 1px #ffffffb8,0 12px 30px #2563eb0f}.auth-signal span{display:grid;width:2.25rem;height:2.25rem;grid-row:span 2;place-items:center;border-radius:.82rem;color:#fff;background:linear-gradient(135deg,var(--auth-blue),var(--auth-cyan));box-shadow:0 12px 26px #2563eb29;font-size:.78rem;font-weight:900}.auth-signal strong{color:var(--auth-text);font-size:.95rem}.auth-signal small{color:var(--auth-muted);line-height:1.55}.auth-chip-row{display:flex;flex-wrap:wrap;gap:.55rem}.auth-chip-row span{padding:.44rem .7rem;border:1px solid rgba(37,99,235,.12);border-radius:999px;color:var(--auth-blue-deep);background:#ffffffad;font-size:.78rem;font-weight:900}.auth-mini-device{display:grid;max-width:18rem;gap:.8rem;margin-top:auto;padding:1rem;border:1px solid rgba(37,99,235,.11);border-radius:1.6rem;background:radial-gradient(circle at 28% 0%,rgba(34,211,238,.18),transparent 42%),#ffffff9e;box-shadow:0 28px 80px #2563eb1c}.auth-mini-top{display:flex;justify-content:space-between}.auth-mini-top span{width:3.2rem;height:.45rem;border-radius:999px;background:#2563eb24}.auth-mini-card{display:flex;justify-content:space-between;gap:1rem;padding:.85rem;border:1px solid rgba(37,99,235,.1);border-radius:1rem;background:#ffffffa8}.auth-mini-card.active{border-color:#22d3ee52;box-shadow:0 0 28px #22d3ee1f}.auth-mini-card strong{color:var(--auth-text)}.auth-mini-card em{color:var(--auth-cyan-deep);font-style:normal;font-weight:900}.auth-mini-line{height:2.5rem;border-radius:999px;background:linear-gradient(90deg,#2563eb2e,#22d3ee33,#8b5cf624)}.auth-toast{position:fixed;top:1.25rem;right:1.25rem;z-index:1060;display:none;max-width:min(24rem,calc(100vw - 2rem));align-items:center;gap:.8rem;padding:.9rem 1rem;border:1px solid var(--auth-border);border-radius:1rem;color:var(--auth-text);background:#fffffff0;box-shadow:0 22px 70px #2563eb29;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-toast.show{display:flex}.auth-toast-success{border-color:#14b8a64d}.auth-toast-error{border-color:#dc262647}.auth-toast span{color:var(--auth-muted);line-height:1.45}.auth-toast button{flex:0 0 auto;padding:.34rem .55rem;border:1px solid rgba(37,99,235,.14);border-radius:999px;color:var(--auth-blue-deep);background:#2563eb0f;font:inherit;font-size:.75rem;font-weight:900}[data-auth-card]{opacity:0;transform:translateY(1.2rem) scale(.985);animation:authPanelIn .64s cubic-bezier(.2,.8,.2,1) forwards}[data-auth-card]:nth-child(2){animation-delay:90ms}@keyframes authPanelIn{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes authOrbFloat{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-1.1rem,0) scale(1.04)}}@keyframes authNodePulse{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.9;transform:scale(1.4)}}@media(max-width:991.98px){.auth-shell{align-items:flex-start;padding:1rem 0 2rem}.auth-stage,.auth-register-stage{width:min(100%,44rem);grid-template-columns:1fr}.auth-panel-side{min-height:auto}.auth-mini-device{display:none}}@media(max-width:767.98px){.auth-body:after,.auth-grid,.auth-med-network{display:none}.auth-orb{opacity:.24;filter:blur(42px)}.auth-shell{padding:0}.auth-shell .container{max-width:none;padding:0}.auth-stage,.auth-register-stage{width:100%;gap:0}.auth-panel{border-right:0;border-left:0;border-radius:0}.auth-panel-main{min-height:100vh;padding:1.25rem}.auth-panel-side{display:none}.auth-copy{margin:2rem 0 1.4rem}.auth-copy h1{font-size:clamp(2.25rem,13vw,3.65rem);line-height:.98}.auth-copy p,.auth-panel-side p{font-size:.98rem;line-height:1.65}.auth-label-row,.auth-options,.auth-form-footer,.auth-form-meta,.auth-register-head{align-items:stretch;flex-direction:column}.auth-submit{width:100%}.auth-toast{right:1rem;left:1rem;max-width:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}[data-auth-card]{opacity:1;transform:none}}
