.auth-shell{background:var(--bg);align-items:stretch;min-height:100svh;display:flex;position:relative}.auth-shell:before{content:"";background:radial-gradient(46% 55% at 14% 22%, var(--accent-tint), transparent 70%);pointer-events:none;z-index:0;position:absolute;inset:0}.auth-shell:after{content:"";pointer-events:none;z-index:0;background:0 0;position:absolute;inset:0}.auth-aside{z-index:1;min-width:0;padding:clamp(var(--xl), 6vw, 96px);border-right:1px solid var(--rule);flex-direction:column;flex:1.05 1 0;justify-content:center;align-items:flex-start;display:flex;position:relative;overflow:hidden}.auth-shell-brand{top:var(--xl);z-index:3;color:var(--ink);align-items:center;text-decoration:none;display:inline-flex;position:absolute;right:48px}.auth-aside-wordmark{font-family:var(--font-sans);letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;color:var(--ink);font-size:12px;font-weight:600;line-height:1}.auth-aside-content{z-index:1;max-width:30rem;position:relative}.auth-aside-overline{color:var(--accent);font-family:var(--font-mono);font-size:var(--t-eyebrow);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:20px;font-weight:500;line-height:1.2;display:inline-flex}.auth-aside-overline:before{content:"";background:var(--accent);flex-shrink:0;width:18px;height:1px}.auth-aside-title{max-width:15ch;color:var(--ink);font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.9rem,1.4rem + 1.8vw,3rem);font-weight:440;line-height:1.04}.auth-aside-description{margin-top:var(--lg);max-width:58ch;color:var(--ink-soft);font-size:var(--t-body);line-height:1.6}.auth-aside-features{gap:18px;margin-top:36px;display:grid}.auth-feature{border-bottom:1px solid var(--rule-soft);gap:6px;padding-bottom:18px;display:grid}.auth-feature:last-child{border-bottom:0;padding-bottom:0}.auth-feature-title{color:var(--ink);font-size:var(--t-h3);font-weight:600;line-height:1.2}.auth-feature-text{color:var(--ink-mute);font-size:13.5px;line-height:1.55}.login-panel{z-index:2;min-width:0;padding:clamp(var(--lg), 4vw, 64px);flex:1 1 0;justify-content:center;align-items:center;display:flex;position:relative}.login-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-lg);width:100%;max-width:420px;box-shadow:var(--shadow);padding:32px;position:relative;overflow:hidden}.login-card:before{content:"";background:var(--accent);height:2px;position:absolute;top:0;left:0;right:0}.login-card-header{margin-bottom:28px}.login-card-overline{color:var(--accent);font-family:var(--font-mono);font-size:var(--t-eyebrow);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:12px;font-weight:500;line-height:1.2;display:inline-flex}.login-card-overline:before{content:"";background:var(--accent);flex-shrink:0;width:18px;height:1px}.login-card-title{color:var(--ink);font-family:var(--font-display);font-size:var(--t-h2);letter-spacing:-.02em;font-weight:440;line-height:1.1}.login-card-description{color:var(--ink-soft);margin-top:10px;font-size:13.5px;line-height:1.6}.login-session-expired{border-radius:var(--r-sm);background:var(--accent-tint);border:1px solid var(--accent-line);color:var(--accent-deep);margin-top:10px;padding:8px 12px;font-size:13.5px;line-height:1.5}.login-form{gap:18px;display:grid}.login-field{gap:8px;display:grid}.login-label-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.login-label{color:var(--ink);font-size:13px;font-weight:500;line-height:1.4}.login-inline-link{color:var(--accent);transition:color var(--dur-fast) var(--ease);font-size:13px;text-decoration:none}.login-inline-link:hover{color:var(--accent-deep)}.login-input{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--field);width:100%;min-height:46px;color:var(--ink);font-family:var(--font-sans);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);outline:none;padding:0 13px;font-size:14.5px}.login-input::placeholder{color:var(--ink-mute)}.login-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.login-submit{border-radius:var(--r-sm);background:var(--accent);color:#fff;min-height:44px;font-family:var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border:1px solid #0000;margin-top:4px;font-size:14px;font-weight:600}.login-submit:hover{background:var(--accent-deep);transform:translateY(-1px);box-shadow:0 6px 18px #1d4ed847}.login-submit:active{transform:translateY(0)}html[data-theme=dark] .mkt .login-submit{background:var(--accent-deep)}html[data-theme=dark] .mkt .login-submit:hover{background:var(--accent-deeper);box-shadow:0 6px 18px #0006}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-divider{align-items:center;gap:12px;margin:20px 0;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--rule);flex:1;height:1px}.login-divider span{font-family:var(--font-mono);color:var(--ink-mute);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.login-wallet-btn{border:1px solid var(--rule);border-radius:var(--r-sm);width:100%;min-height:44px;color:var(--ink);font-family:var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.login-wallet-btn:hover{border-color:var(--accent);color:var(--accent)}.login-wallet-btn:disabled{opacity:.5;cursor:not-allowed}.login-footer{margin-top:var(--lg);border-top:1px solid var(--rule);gap:6px;padding-top:18px;display:grid}.login-support-text{color:var(--ink-mute);font-size:13px;line-height:1.5}.login-support-link{color:var(--accent);transition:color var(--dur-fast) var(--ease);font-size:13px;text-decoration:none}.login-support-link:hover{color:var(--accent-deep)}.login-footer a{color:var(--accent);transition:color var(--dur-fast) var(--ease);text-decoration:none}.login-footer a:hover{color:var(--accent-deep)}@media (max-width:1024px){.auth-shell{flex-direction:column}.auth-aside{text-align:center;border-right:0;border-bottom:1px solid var(--rule);flex:none;align-items:center;width:100%;padding:80px 32px 36px}.auth-aside-content{max-width:38rem}.auth-aside-overline,.auth-aside-title{margin-left:auto;margin-right:auto}.auth-shell-brand{top:28px;right:32px}.auth-aside-title{max-width:20ch}.login-panel{flex:none;width:100%;padding:32px}}@media (max-width:640px){.auth-aside{padding:64px 20px 24px}.auth-shell-brand{top:20px;right:20px}.auth-aside-title{max-width:none;font-size:clamp(1.6rem,1.2rem + 4vw,2.1rem)}.auth-aside-description{margin-top:var(--md);font-size:14px}.auth-aside-features{display:none}.login-panel{padding:20px 20px 40px}.login-card{max-width:none;padding:24px 20px}.login-label-row{flex-direction:column;align-items:flex-start;gap:4px}}@media (max-width:420px){.auth-aside{padding:56px 18px 22px}.auth-aside-description{display:none}.login-panel{padding:16px 16px 36px}.login-card{border-radius:var(--r);padding:22px 18px}}.pw-input-wrap{align-items:center;display:flex;position:relative}.pw-input-wrap .login-input{padding-right:56px}.pw-toggle-btn{color:var(--ink-mute);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:color var(--dur-fast) var(--ease);background:0 0;border:none;padding:4px 0;font-size:11px;font-weight:500;position:absolute;right:12px}.pw-toggle-btn:hover{color:var(--accent)}.pw-rules{flex-direction:column;gap:4px;margin-top:8px;display:flex}.pw-rule{color:var(--ink-mute);transition:color var(--dur-fast) var(--ease);margin:0;font-size:12px}.pw-rule--ok{color:var(--accent)}.login-error{border:1px solid var(--accent-line);border-radius:var(--r-sm);background:var(--accent-tint);color:var(--accent-deep);padding:10px 14px;font-size:13px;line-height:1.5}.login-error-gap{margin-top:var(--md)}.auth-resend-link{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;padding:0}.auth-resend-link:disabled{opacity:.6;cursor:not-allowed}.auth-resend-sent{color:var(--accent);margin-top:4px;font-size:13px;line-height:1.5}.login-field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:480px){.login-field-row{grid-template-columns:1fr}}.login-success{border:1px solid var(--accent-line);border-radius:var(--r);background:var(--accent-tint);flex-direction:column;gap:12px;padding:20px;display:flex}.login-success-title{color:var(--ink);font-size:var(--t-h3);font-weight:600;line-height:1.2}.login-success-text{color:var(--ink-soft);font-size:13px;line-height:1.6}.login-submit--link{justify-content:center;align-items:center;margin-top:4px;text-decoration:none;display:inline-flex}.login-overlay{background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 60%), var(--bg);z-index:200;justify-content:center;align-items:center;animation:.2s ease-out both overlayIn;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.login-overlay-card{align-items:center;gap:var(--lg);flex-direction:column;display:flex}.login-overlay-wordmark{font-family:var(--font-sans);letter-spacing:.16em;color:var(--ink);text-transform:uppercase;font-size:13px;font-weight:600}.login-overlay-spinner{width:40px;height:40px}.login-overlay-track{stroke:var(--rule)}.login-overlay-arc{stroke:var(--accent);transform-origin:50%;animation:.9s linear infinite spinArc}@keyframes spinArc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-overlay-message{font-family:var(--font-mono);color:var(--ink-mute);letter-spacing:.04em;min-height:16px;font-size:11px;font-weight:400;transition:opacity .2s}.login-overlay-dots{align-items:center;gap:6px;display:flex}.login-overlay-dot{background:var(--accent-deep);border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite dotPulse}.login-overlay-dot:first-child{background:var(--accent);animation-delay:0s}.login-overlay-dot:nth-child(2){background:var(--accent-deep);animation-delay:.2s}.login-overlay-dot:nth-child(3){background:#1d4ed866;animation-delay:.4s}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(1)}40%{opacity:1;transform:scale(1.4)}}.register-legal{border:1px solid var(--rule);border-radius:var(--r);background:var(--surface-2);flex-direction:column;gap:12px;margin:4px 0;padding:16px 18px;display:flex}.register-legal-legend{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-mute);padding:0 4px;font-size:10.5px;font-weight:600}.register-legal-item{cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity var(--dur-fast) var(--ease);align-items:flex-start;gap:10px;padding:4px 0;display:flex}.register-legal-item:hover{opacity:.9}.register-legal-item input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.register-legal-text{color:var(--ink-soft);font-size:13px;line-height:1.5}.register-legal-link{color:var(--accent);text-underline-offset:2.5px;transition:color var(--dur-fast) var(--ease);text-decoration:underline;text-decoration-thickness:1px}.register-legal-link:hover{color:var(--accent-deep)}.register-legal-version{font-family:var(--font-mono);color:var(--ink-mute);margin-left:4px;font-size:10.5px}.register-legal-required{font-family:var(--font-mono);color:var(--accent);margin-left:4px;font-size:10.5px;font-weight:600}.register-legal-optional-tag{font-family:var(--font-mono);color:var(--ink-mute);margin-left:4px;font-size:10.5px}.register-legal-optional{border-top:1px dashed var(--rule);flex-direction:column;gap:10px;padding-top:12px;display:flex}@media (min-width:1920px){.auth-shell .auth-aside-content{max-width:42rem}.auth-shell .auth-aside-overline,.auth-shell .login-card-overline{font-size:13px}.auth-shell .auth-aside-title{max-width:16ch;font-size:54px}.auth-shell .auth-aside-description{max-width:62ch;font-size:18px}.auth-shell .auth-feature-title{font-size:22px}.auth-shell .auth-feature-text{font-size:16px}.auth-shell .auth-aside-wordmark{font-size:13px}.auth-shell .login-card{max-width:500px;padding:44px}.auth-shell .login-card-title{font-size:40px}.auth-shell .login-card-description,.auth-shell .login-label{font-size:15px}.auth-shell .login-input{min-height:52px;padding:14px 16px;font-size:16px}.auth-shell .login-submit,.auth-shell .login-wallet-btn{min-height:54px;font-size:16px}.auth-shell .pw-toggle-btn,.auth-shell .pw-rule{font-size:13px}}@media (min-width:2560px){.auth-shell .auth-aside-content{max-width:54rem}.auth-shell .auth-aside-overline,.auth-shell .login-card-overline{font-size:16px}.auth-shell .auth-aside-title{font-size:72px}.auth-shell .auth-aside-description{font-size:23px}.auth-shell .auth-feature-title{font-size:28px}.auth-shell .auth-feature-text{font-size:20px}.auth-shell .auth-aside-wordmark{font-size:15px}.auth-shell .login-card{max-width:640px;padding:60px}.auth-shell .login-card-title{font-size:54px}.auth-shell .login-card-description,.auth-shell .login-label{font-size:19px}.auth-shell .login-input{border-radius:8px;min-height:64px;padding:18px 20px;font-size:20px}.auth-shell .login-submit,.auth-shell .login-wallet-btn{min-height:66px;font-size:20px}.auth-shell .pw-toggle-btn,.auth-shell .pw-rule{font-size:16px}}@media (min-width:3840px){.auth-shell .auth-aside-content{max-width:74rem}.auth-shell .auth-aside-overline,.auth-shell .login-card-overline{font-size:22px}.auth-shell .auth-aside-title{font-size:104px}.auth-shell .auth-aside-description{font-size:32px}.auth-shell .auth-feature-title{font-size:40px}.auth-shell .auth-feature-text{font-size:28px}.auth-shell .auth-aside-wordmark{font-size:20px}.auth-shell .login-card{border-radius:22px;max-width:880px;padding:84px}.auth-shell .login-card-title{font-size:78px}.auth-shell .login-card-description,.auth-shell .login-label{font-size:26px}.auth-shell .login-input{border-radius:12px;min-height:88px;padding:24px 28px;font-size:28px}.auth-shell .login-submit,.auth-shell .login-wallet-btn{min-height:92px;font-size:28px}.auth-shell .pw-toggle-btn,.auth-shell .pw-rule{font-size:22px}}
