:root{--brand: #6c5ce7;--brand-2: #8b7cff;--brand-soft: rgba(108, 92, 231, .1);--ink: #1b1930;--ink-2: #4b4866;--muted: #8a87a0;--line: #ececf5;--bg: #f4f5fa;--card: #ffffff;--green: #00b98b;--amber: #f5a524;--red: #f0436b;--radius: 18px;--shadow: 0 10px 32px rgba(23, 21, 41, .06);--shadow-hover: 0 18px 44px rgba(23, 21, 41, .12)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}::selection{background:#6c5ce733}.page{animation:page-in .35s ease both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.page-title{margin:0;font-size:26px;font-weight:700;letter-spacing:-.02em}.page-subtitle{margin:6px 0 0;color:var(--muted);font-size:13.5px}.surface{background:var(--card);border:1px solid rgba(236,236,245,.9);border-radius:var(--radius);box-shadow:var(--shadow)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.soft-divider{height:1px;background:var(--line);margin:16px 0}.admin-sider{background:radial-gradient(680px 300px at -10% -5%,rgba(108,92,231,.34),transparent 60%),radial-gradient(420px 260px at 110% 110%,rgba(0,185,139,.16),transparent 60%),linear-gradient(180deg,#121022,#0c0b18);border-right:1px solid rgba(255,255,255,.04)}.brand{display:flex;align-items:center;gap:12px;padding:24px 22px 20px}.brand-mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#8b7cff,#6c5ce7 45%,#4d3fd6);display:grid;place-items:center;color:#fff;font-size:19px;box-shadow:0 8px 22px #6c5ce773;flex-shrink:0}.brand-name{color:#fff;font-weight:700;font-size:15.5px;letter-spacing:-.01em;line-height:1.2}.brand-caption{color:#fff6;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px}.sider-footer{position:absolute;bottom:64px;left:16px;right:16px;padding:14px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:#ffffff80;font-size:11.5px;line-height:1.6}.sider-footer b{color:#ffffffc7;font-weight:600}.admin-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 28px;background:#f4f5fad1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(236,236,245,.7)}.admin-content{padding:26px 28px 60px;max-width:1560px;margin:0 auto;width:100%}.header-user{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 10px;border-radius:12px;transition:background .2s ease}.header-user:hover{background:#ffffffe6}.header-avatar{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#8b7cff,#6c5ce7);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:radial-gradient(900px 700px at 12% -10%,rgba(108,92,231,.5),transparent 58%),radial-gradient(700px 600px at 92% 108%,rgba(0,185,139,.22),transparent 60%),linear-gradient(140deg,#100e1f,#17142b 55%,#0c0b16);overflow:hidden}.login-brand{display:flex;flex-direction:column;justify-content:center;padding:8vw 4vw 8vw 8vw;position:relative}.login-brand:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:1px solid rgba(255,255,255,.06);right:-140px;top:8%}.login-logo{display:flex;align-items:center;gap:14px;color:#fff;font-weight:700;font-size:18px;margin-bottom:54px}.login-logo .brand-mark{width:46px;height:46px;border-radius:15px;font-size:22px}.login-headline{color:#fff;font-size:clamp(34px,3.4vw,54px);line-height:1.1;letter-spacing:-.035em;margin:0 0 22px;font-weight:700;max-width:620px}.login-headline span{background:linear-gradient(100deg,#b7adff,#8b7cff 40%,#5eead4);-webkit-background-clip:text;background-clip:text;color:transparent}.login-desc{color:#ffffff85;font-size:15px;line-height:1.8;max-width:470px;margin:0 0 40px}.login-features{display:grid;gap:14px;max-width:440px}.login-feature{display:flex;gap:12px;align-items:flex-start;color:#ffffffb3;font-size:13.5px}.login-feature-dot{width:26px;height:26px;border-radius:9px;background:#7c6cff29;border:1px solid rgba(124,108,255,.3);display:grid;place-items:center;color:#b7adff;font-size:12px;flex-shrink:0}.login-panel{display:flex;align-items:center;justify-content:center;padding:40px}.login-card{width:min(420px,100%);background:#fffffff7;border-radius:26px;padding:42px 38px 34px;box-shadow:0 40px 100px #00000073;animation:login-in .5s cubic-bezier(.2,.8,.2,1) both}@keyframes login-in{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}.login-card h2{margin:0 0 6px;font-size:24px;letter-spacing:-.02em}.login-card .sub{color:var(--muted);font-size:13px;margin:0 0 28px}.login-card .ant-form-item{margin-bottom:18px}.login-hint{margin-top:18px;padding:12px 14px;border-radius:12px;background:#f7f6ff;color:#6b6880;font-size:12px;line-height:1.6}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.stat-card{position:relative;overflow:hidden;padding:22px 22px 20px;border-radius:var(--radius);background:var(--card);border:1px solid rgba(236,236,245,.9);box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease}.stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.stat-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-46px;top:-46px;background:var(--tint, rgba(108, 92, 231, .08));filter:blur(2px)}.stat-head{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.stat-label{color:var(--muted);font-size:13px;font-weight:500}.stat-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:17px;color:#fff;background:var(--accent, linear-gradient(135deg, #8b7cff, #6c5ce7));box-shadow:0 8px 18px var(--glow, rgba(108, 92, 231, .28))}.stat-value{position:relative;z-index:1;font-size:32px;font-weight:700;letter-spacing:-.03em;margin-top:14px;line-height:1}.stat-foot{position:relative;z-index:1;color:var(--muted);font-size:12px;margin-top:10px}.stat-foot b{color:var(--ink-2);font-weight:600}.dash-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.dash-grid-3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:16px}.panel{padding:22px;border-radius:var(--radius);background:var(--card);border:1px solid rgba(236,236,245,.9);box-shadow:var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:12px}.panel-title{font-size:15.5px;font-weight:650;letter-spacing:-.01em}.panel-sub{font-size:12px;color:var(--muted);margin-top:3px}.trend{display:flex;align-items:flex-end;gap:12px;height:190px;padding-top:8px}.trend-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;justify-content:flex-end}.trend-bars{width:100%;max-width:42px;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;flex:1}.trend-bar{width:100%;border-radius:7px 7px 4px 4px;min-height:4px;transition:height .5s cubic-bezier(.2,.8,.2,1)}.trend-bar.alive{background:linear-gradient(180deg,#4ee0b8,#00b98b)}.trend-bar.dead{background:linear-gradient(180deg,#ff9db3,#f0436b);border-radius:4px}.trend-label{color:var(--muted);font-size:11px;white-space:nowrap}.trend-legend{display:flex;gap:16px;font-size:12px;color:var(--muted)}.trend-legend i{width:8px;height:8px;border-radius:3px;display:inline-block;margin-right:6px}.rate-ring{position:relative;width:168px;height:168px;margin:4px auto 12px}.rate-ring svg{transform:rotate(-90deg)}.rate-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center}.rate-value{font-size:34px;font-weight:700;letter-spacing:-.04em;line-height:1}.rate-label{color:var(--muted);font-size:12px;margin-top:6px}.rate-meta{display:flex;justify-content:center;gap:18px;font-size:12px;color:var(--muted)}.rate-meta b{display:block;color:var(--ink);font-size:15px;margin-top:2px}.plan-row{display:grid;grid-template-columns:76px 1fr 34px;align-items:center;gap:12px;margin-bottom:14px;font-size:12.5px}.plan-track{height:8px;border-radius:999px;background:#f1f1f8;overflow:hidden}.plan-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#8b7cff,#6c5ce7);transition:width .6s ease}.plan-count{text-align:right;color:var(--ink-2);font-weight:600}.mini-list{display:flex;flex-direction:column;gap:4px}.mini-row{display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;transition:background .15s ease}.mini-row:hover{background:#fafaff}.mini-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.mini-main{flex:1;min-width:0}.mini-title{font-size:13px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-sub{font-size:11.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-right{font-size:11.5px;color:var(--muted);white-space:nowrap}.empty-mini{padding:28px 0;text-align:center;color:var(--muted);font-size:12.5px}.filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid rgba(236,236,245,.9);box-shadow:var(--shadow);margin-bottom:14px}.account-email{display:flex;align-items:center;gap:11px;min-width:0}.email-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0;background:linear-gradient(135deg,#a89dff,#6c5ce7)}.email-main{min-width:0}.email-text{font-size:13.5px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-sub{font-size:11.5px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.batch-bar{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:14px;padding:12px 16px 12px 20px;border-radius:16px;background:#141224f0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 22px 50px #0c0a1a5c;color:#fff;animation:batch-in .28s cubic-bezier(.2,.8,.2,1) both}@keyframes batch-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.batch-count{font-size:13px;color:#ffffffb8}.batch-count b{color:#fff}.detail-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px}.detail-hero{position:relative;overflow:hidden;padding:26px;border-radius:var(--radius);background:radial-gradient(600px 260px at 100% 0%,rgba(124,108,255,.16),transparent 60%),linear-gradient(135deg,#fff,#fbfbff);border:1px solid rgba(236,236,245,.9);box-shadow:var(--shadow);margin-bottom:16px}.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.hero-email{font-size:24px;font-weight:700;letter-spacing:-.025em;margin:0;word-break:break-all}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin-top:22px}.kv-label{font-size:11.5px;color:var(--muted);margin-bottom:4px}.kv-value{font-size:13.5px;font-weight:500;word-break:break-all}.secret-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line)}.secret-row:last-child{border-bottom:none}.secret-label{font-size:12px;color:var(--muted)}.secret-value{font-size:13px;font-weight:550;letter-spacing:.04em}.totp-code{font-size:26px;letter-spacing:.18em;font-weight:700;color:var(--brand)}.session-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11.5px;background:#f4f4fa;color:var(--ink-2)}.session-chip.ok{background:#00b98b1a;color:#009e78}.session-chip.off{background:#f4f4fa;color:var(--muted)}.job-progress{display:flex;align-items:center;gap:12px}.job-progress .ant-progress{margin:0;flex:1}.stage-pill{display:inline-flex;padding:2px 9px;border-radius:999px;background:#f3f2fb;color:#6b6880;font-size:11px}.log-block{margin:0;padding:14px 16px;border-radius:12px;background:#12101f;color:#cfcaff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;line-height:1.7;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow:auto}@media(max-width:1200px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid,.dash-grid-3,.detail-grid{grid-template-columns:1fr}}@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-brand{display:none}.admin-content{padding:18px 16px 80px}.stat-grid,.kv-grid{grid-template-columns:1fr}}
