.login-root{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(ellipse at top left,#0b1929,#050911 60%,#02050a);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.login-root:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,#02061700 30%,#0206178c 70%,#020617c7),linear-gradient(180deg,#02061740,#02061700 35%,#02061700 65%,#02061759);z-index:0}.login-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(56,189,248,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(56,189,248,.06) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%);mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%);animation:gridDrift 30s linear infinite;pointer-events:none}@keyframes gridDrift{0%{background-position:0 0}to{background-position:48px 48px}}.login-glow{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.login-glow.cyan{width:600px;height:600px;background:radial-gradient(circle,rgba(56,189,248,.18),transparent 70%);top:-150px;left:-150px;animation:floatA 16s ease-in-out infinite}.login-glow.violet{width:520px;height:520px;background:radial-gradient(circle,rgba(139,92,246,.15),transparent 70%);bottom:-140px;right:-140px;animation:floatB 18s ease-in-out infinite}.login-glow.green{width:420px;height:420px;background:radial-gradient(circle,rgba(34,197,94,.1),transparent 70%);top:40%;left:30%;animation:floatA 22s ease-in-out infinite reverse}@keyframes floatA{0%,to{transform:translate(0)}50%{transform:translate(40px,60px)}}@keyframes floatB{0%,to{transform:translate(0)}50%{transform:translate(-40px,-50px)}}.login-chart-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.32;animation:chartFadeIn .8s ease-out}@keyframes chartFadeIn{0%{opacity:0}to{opacity:.32}}.login-chart-bg .chart-label{transition:transform .3s cubic-bezier(.4,0,.2,1)}.login-chart-bg .chart-price-text{animation:pricePop .25s cubic-bezier(.34,1.56,.64,1);transform-box:fill-box;transform-origin:0 50%}@keyframes pricePop{0%{opacity:.5;transform:scale(.95)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.login-shell{position:relative;z-index:1;width:100%;max-width:1280px;margin:0 auto;padding:0 56px;display:flex;align-items:center;gap:64px;min-height:100vh}.login-left,.login-right{display:flex;flex-direction:column;position:relative}.login-left{flex:1 1 58%;align-items:flex-start;justify-content:center;padding:48px 0}.login-right{flex:0 1 460px;align-items:stretch;justify-content:center;padding:48px 0}@media (max-width: 1180px){.login-shell{padding:0 40px;gap:40px}.login-right{flex:0 1 420px}.headline{font-size:48px}}@media (max-width: 960px){.login-shell{padding:24px;gap:0;justify-content:center}.login-left{display:none}.login-right{flex:1 1 100%;padding:0}}.brand{display:flex;align-items:center;gap:12px;margin-bottom:36px}.brand-logo{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#38bdf8,#6366f1);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #38bdf859,0 0 0 1px #ffffff1f inset}.brand-name{font-size:22px;font-weight:700;color:#fff;letter-spacing:.5px}.brand-pro{font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;background:linear-gradient(90deg,#facc15,#f59e0b);color:#1a1a1a;margin-left:4px;letter-spacing:.5px}.headline{font-size:56px;font-weight:800;line-height:1.08;margin:0 0 24px;background:linear-gradient(120deg,#fff,#93c5fd,#38bdf8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;letter-spacing:-1px;max-width:560px}.subhead{font-size:16px;color:#94a3b8;margin:0 0 40px;max-width:520px;line-height:1.7}.features{display:grid;grid-template-columns:1fr 1fr;gap:18px 32px;max-width:520px;margin-bottom:44px}.feature{display:flex;gap:12px;align-items:center}.feature-icon{width:36px;height:36px;border-radius:10px;background:#38bdf81a;border:1px solid rgba(56,189,248,.22);display:flex;align-items:center;justify-content:center;color:#38bdf8;font-size:16px;flex-shrink:0}.feature-text{color:#cbd5e1;font-size:14px;line-height:1.5}.ticker{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;max-width:640px;font-variant-numeric:tabular-nums}.ticker-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:10px 14px;background:#0f172a8c;border:1px solid rgba(56,189,248,.14);border-radius:10px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:left;font-family:inherit;color:inherit;transition:transform .18s ease,border-color .18s ease,background .18s ease}.ticker-item:hover{transform:translateY(-1px);border-color:#38bdf866;background:#0f172abf}.ticker-item:focus-visible{outline:2px solid #38bdf8;outline-offset:2px}.ticker-item.active{border-color:#38bdf8b3;background:linear-gradient(180deg,#38bdf829,#0f172a99);box-shadow:0 0 0 1px #38bdf859,0 8px 22px -8px #38bdf880}.ticker-item.active .ticker-symbol{color:#cbd5e1}.ticker-symbol{font-size:11px;color:#64748b;font-weight:600;letter-spacing:.6px}.ticker-price{font-size:15px;color:#f1f5f9;font-weight:600;transition:color .2s ease}.ticker-price.up{color:#22c55e;animation:flashUp .6s ease-out}.ticker-price.down{color:#ef4444;animation:flashDown .6s ease-out}@keyframes flashUp{0%{background:#22c55e40}to{background:transparent}}@keyframes flashDown{0%{background:#ef444440}to{background:transparent}}.ticker-change{font-size:12px;font-weight:600}.ticker-change.up{color:#22c55e}.ticker-change.down{color:#ef4444}.login-card{width:100%;max-width:440px;padding:44px 40px;border-radius:20px;background:linear-gradient(180deg,#0f172a8c,#0206178c);border:1px solid rgba(56,189,248,.16);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);box-shadow:0 18px 50px -16px #0009,0 0 0 1px #ffffff08 inset;transition:background .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1),backdrop-filter .4s cubic-bezier(.4,0,.2,1),-webkit-backdrop-filter .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);animation:cardIn .65s cubic-bezier(.2,.8,.2,1);will-change:backdrop-filter,background}@keyframes cardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.login-card:hover,.login-card:focus-within{background:linear-gradient(180deg,#0f172af0,#020617f0);border-color:#38bdf852;box-shadow:0 24px 70px -20px #000000bf,0 0 0 1px #ffffff0d inset,0 0 60px -20px #38bdf847;-webkit-backdrop-filter:blur(28px) saturate(160%);backdrop-filter:blur(28px) saturate(160%);transform:translateY(-2px)}.login-card .card-title,.login-card .card-sub,.login-card .login-footer,.login-card .ant-form-item,.login-card .login-btn,.login-card .mobile-brand{transition:opacity .4s cubic-bezier(.4,0,.2,1)}.login-card .card-sub,.login-card .login-footer{opacity:.7}.login-card:hover .card-sub,.login-card:focus-within .card-sub,.login-card:hover .login-footer,.login-card:focus-within .login-footer{opacity:1}.mobile-brand{display:none;margin-bottom:20px}@media (max-width: 960px){.mobile-brand{display:flex}}@media (hover: none),(max-width: 960px){.login-card{background:linear-gradient(180deg,#0f172aeb,#020617eb);border-color:#38bdf847;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}.login-card .card-sub,.login-card .login-footer{opacity:1}}.card-title{font-size:22px;font-weight:700;color:#f8fafc;margin-bottom:8px;letter-spacing:-.2px;line-height:1.35}.card-sub{color:#94a3b8;margin-bottom:32px;font-size:13px}.login-card .ant-input-affix-wrapper,.login-card .ant-input-affix-wrapper-lg{background:#0f172a59!important;border:1px solid rgba(148,163,184,.1)!important;border-radius:10px!important;height:48px;padding:0 14px!important;transition:background .4s ease,border-color .25s ease,box-shadow .25s ease}.login-card:hover .ant-input-affix-wrapper,.login-card:focus-within .ant-input-affix-wrapper{background:#0f172ab3!important;border-color:#94a3b838!important}.login-card .ant-input-affix-wrapper:hover{border-color:#38bdf880!important}.login-card .ant-input-affix-wrapper-focused,.login-card .ant-input-affix-wrapper:focus-within{border-color:#38bdf8!important;box-shadow:0 0 0 3px #38bdf826!important}.login-card .ant-input-affix-wrapper input.ant-input,.login-card .ant-input{background:transparent!important;color:#f1f5f9!important;font-size:14px}.login-card .ant-input::placeholder{color:#64748b!important}.login-btn.ant-btn{height:48px;border-radius:10px;font-size:15px;font-weight:600;letter-spacing:4px;background:linear-gradient(135deg,#0ea5e9,#6366f1);border:none;box-shadow:0 8px 24px -4px #0ea5e973;transition:transform .2s ease,box-shadow .2s ease}.login-btn.ant-btn:not(:disabled):hover{transform:translateY(-1px);background:linear-gradient(135deg,#0ea5e9,#6366f1)!important;box-shadow:0 12px 32px -4px #0ea5e98c}.login-btn.ant-btn:not(:disabled):active{transform:translateY(0)}.login-footer{margin-top:28px;padding-top:20px;border-top:1px solid rgba(148,163,184,.08);text-align:center;font-size:12px;color:#64748b;letter-spacing:.3px}.login-footer .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#22c55e;margin-right:6px;vertical-align:middle;box-shadow:0 0 8px #22c55e;animation:pulseDot 2s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}
