@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;700;900&family=Space+Grotesk:wght@400;500;600;700&display=swap";.admin-wrap{display:flex;height:100vh;overflow:hidden}.admin-side{width:208px;flex:none;background:var(--surface);border-right:1px solid var(--line);padding:18px 12px;display:flex;flex-direction:column}.admin-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 16px}.admin-brand .badge{width:34px;height:34px;border-radius:10px;color:#fff;flex:none;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;font-family:var(--font-display)}.admin-brand .name{font-weight:800;font-size:14px}.admin-brand .sub{color:var(--ink-4);font-size:10.5px;letter-spacing:.5px}.admin-nav{display:flex;flex-direction:column;gap:3px}.admin-nav .item{display:flex;align-items:center;gap:11px;border:none;cursor:pointer;text-align:left;border-radius:11px;padding:10px 11px;transition:.15s;background:transparent;color:var(--ink-2);font-family:var(--font);font-weight:500;font-size:13.5px}.admin-nav .item:hover{background:var(--surface-2)}.admin-nav .item.on{background:var(--brand-50);color:var(--brand);font-weight:700}.admin-nav .item .nav-badge{margin-left:auto;font-size:11px;font-weight:700;background:var(--danger);color:#fff;border-radius:999px;padding:1px 7px;font-family:var(--font-display)}.admin-foot{border-top:1px solid var(--line-2);padding-top:6px}.admin-foot .acct{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;padding:10px 8px;cursor:pointer;text-align:left;border-radius:10px}.admin-foot .acct:hover{background:var(--surface-2)}.admin-foot .acct .nm{font-weight:700;font-size:12.5px;white-space:nowrap}.admin-foot .acct .rl{font-size:10.5px;color:var(--ink-4)}.admin-main{flex:1;overflow:auto;background:var(--bg);min-width:0}.admin-topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;position:sticky;top:0;z-index:8;background:#f3f6fcd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-2)}.admin-topbar .tt{font-weight:800;font-size:21px;letter-spacing:-.4px}.admin-topbar .st{color:var(--ink-3);font-size:12.5px;margin-top:2px}.login-wrap{display:flex;height:100vh;min-height:640px;overflow:hidden}.login-brand{flex:1.05;position:relative;background:#0c1430;color:#fff;overflow:hidden;display:flex;flex-direction:column;padding:52px 56px}.login-brand .glow{position:absolute;border-radius:50%;pointer-events:none;filter:blur(8px)}.login-brand .g1{top:-140px;right:-120px;width:420px;height:420px;background:radial-gradient(circle,rgba(43,70,224,.55),transparent 68%)}.login-brand .g2{bottom:-180px;left:-120px;width:460px;height:460px;background:radial-gradient(circle,rgba(31,143,255,.28),transparent 70%)}.brand-top{display:flex;align-items:center;gap:14px;position:relative;z-index:2}.brand-badge{width:46px;height:46px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:20px;background:#ffffff29;font-family:var(--font-display)}.brand-top .name{font-weight:900;font-size:21px;letter-spacing:.5px}.brand-top .sub{font-size:12px;opacity:.6;letter-spacing:2px;margin-top:2px}.brand-mid{flex:1;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2;max-width:520px}.headline{font-size:46px;font-weight:900;line-height:1.25;letter-spacing:-1px}.headline em{font-style:normal;color:#8fa8ff}.lede{font-size:15.5px;line-height:1.8;opacity:.78;margin-top:22px}.feats{display:flex;flex-direction:column;gap:16px;margin-top:40px}.feat{display:flex;align-items:center;gap:16px}.feat .ic{width:48px;height:48px;border-radius:14px;flex:none;display:flex;align-items:center;justify-content:center;background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff1f}.feat .ft{font-weight:700;font-size:15.5px}.feat .fd{font-size:12.5px;opacity:.65;margin-top:2px}.brand-tracks{display:flex;gap:8px;margin-top:46px;position:relative;z-index:2;flex-wrap:wrap}.brand-tracks .tk{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;padding:6px 13px;border-radius:999px;background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff1a}.brand-tracks .tk i{width:8px;height:8px;border-radius:50%;display:block}.brand-foot{position:relative;z-index:2;font-size:12px;opacity:.4;letter-spacing:.3px}.login-panel{flex:.95;display:flex;align-items:center;justify-content:center;background:var(--surface);padding:40px}.login-card{width:100%;max-width:392px}.welcome{font-size:30px;font-weight:900;letter-spacing:-.5px}.welcome-sub{color:var(--ink-3);font-size:14px;margin-top:8px}.field{margin-bottom:15px}.field>label{display:block;font-size:12.5px;font-weight:600;color:var(--ink-2);margin-bottom:7px}.inp{display:flex;align-items:center;gap:10px;background:var(--surface-2);border-radius:12px;padding:0 14px;box-shadow:inset 0 0 0 1px var(--line);transition:.16s;height:48px}.inp:focus-within{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--brand)}.inp input{border:none;outline:none;background:transparent;flex:1;font-family:var(--font);font-size:14.5px;color:var(--ink);min-width:0}.inp input::placeholder{color:var(--ink-4)}.inp .act{cursor:pointer;color:var(--ink-4);display:flex;flex:none;background:none;border:none;padding:0}.inp .act:hover{color:var(--ink-2)}.row-between{display:flex;align-items:center;justify-content:space-between;margin:4px 0 22px}.remember{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--ink-2);-webkit-user-select:none;user-select:none}.remember .box{width:18px;height:18px;border-radius:6px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line);transition:.15s}.remember[data-on="1"] .box{background:var(--brand);box-shadow:none}.link{font-size:13px;color:var(--brand);text-decoration:none;font-weight:600;background:none;border:none;cursor:pointer}.link:hover{text-decoration:underline}.submit{width:100%;height:50px;border:none;border-radius:13px;background:var(--brand);color:#fff;font-family:var(--font);font-weight:700;font-size:15.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:.16s;box-shadow:0 10px 26px #2b46e047}.submit:hover{filter:brightness(1.05)}.submit:active{transform:translateY(1px)}.submit:disabled{opacity:.6;cursor:default}.divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--ink-4);font-size:12.5px}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--line)}.sso{width:100%;height:48px;border:none;border-radius:13px;background:var(--surface-2);color:var(--ink-2);font-family:var(--font);font-weight:600;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;box-shadow:inset 0 0 0 1px var(--line);transition:.16s}.sso:hover{background:var(--surface-3)}.login-foot{text-align:center;color:var(--ink-4);font-size:12px;margin-top:30px;line-height:1.7}@media(max-width:900px){.login-brand{display:none}.login-panel{flex:1}}:root{--font: "Noto Sans SC", system-ui, -apple-system, sans-serif;--font-display: "Space Grotesk", "Noto Sans SC", system-ui, sans-serif;--ink: #0e1626;--ink-2: #2c3850;--ink-3: #5a6884;--ink-4: #93a0b8;--line: #e7ebf3;--line-2: #eef1f7;--bg: #f3f6fc;--surface: #ffffff;--surface-2: #f7f9fe;--surface-3: #eef2fa;--brand: #2b46e0;--brand-600: #2238c4;--brand-700: #1b2da0;--brand-ink: #16246f;--brand-50: #eef1ff;--brand-100: #dfe4ff;--t-yan: #6c5ce7;--t-jiu: #1f8fff;--t-gong: #12b08a;--t-chuang: #f5901f;--t-qi: #ec6a9c;--ok: #12b08a;--warn: #f5a524;--danger: #f0526b;--info: #1f8fff;--r-sm: 10px;--r: 14px;--r-lg: 18px;--sh-sm: 0 1px 2px rgba(20, 30, 60, .06), 0 1px 3px rgba(20, 30, 60, .05);--sh: 0 4px 14px rgba(22, 36, 80, .07), 0 1px 3px rgba(22, 36, 80, .05);--sh-lg: 0 18px 50px rgba(22, 36, 80, .13), 0 4px 14px rgba(22, 36, 80, .07)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.num,.mono{font-family:var(--font-display);font-feature-settings:"tnum" 1}
