:root{--bg-base: #080c14;--bg-surface: #0d1424;--bg-card: #111827;--bg-elevated: #1a2235;--border-subtle: rgba(99, 130, 255, .1);--border-default: #1f2d45;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #4b5a7a;--color-primary: #6366f1;--color-primary-light: rgba(99, 102, 241, .15);--color-secondary: #8b5cf6;--color-cyan: #22d3ee;--color-success: #10b981;--color-success-light: rgba(16, 185, 129, .12);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .12);--color-danger: #f43f5e;--color-danger-light: rgba(244, 63, 94, .12);--glow-primary: 0 0 20px rgba(99, 102, 241, .35);--glow-success: 0 0 12px rgba(16, 185, 129, .35);--glow-danger: 0 0 12px rgba(244, 63, 94, .35)}*{box-sizing:border-box}body{margin:0;background:var(--bg-base);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2a3a55;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3a4e6a}@keyframes pulse-ring{0%{transform:scale(1);opacity:1}70%{transform:scale(2.2);opacity:0}to{transform:scale(2.2);opacity:0}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}@keyframes float-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-dot{position:relative;display:inline-block;width:8px;height:8px;border-radius:50%}.status-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;animation:pulse-ring 1.8s ease-out infinite}.status-dot.online{background:var(--color-success)}.status-dot.online:after{background:var(--color-success)}.status-dot.offline{background:var(--color-danger)}.status-dot.offline:after{background:var(--color-danger);animation:none}.status-dot.unknown{background:var(--text-muted)}.status-dot.unknown:after{animation:none}.glass-card{background:#111827d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-default);border-radius:14px}.gradient-text{background:linear-gradient(135deg,#6366f1,#8b5cf6,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.proto-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.5px;white-space:nowrap}.proto-badge.reality{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.2)}.proto-badge.hy2{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.2)}.proto-badge.xhttp{background:#22d3ee26;color:#22d3ee;border:1px solid rgba(34,211,238,.2)}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 12px 40px #0006}.sd-sider{background:linear-gradient(180deg,#0a0f1e,#0d1528)!important;border-right:1px solid rgba(99,102,241,.12)!important}.sd-sider .ant-menu{background:transparent!important}.sd-sider .ant-menu-item{margin:2px 8px!important;border-radius:8px!important;color:var(--text-secondary)!important;transition:all .2s ease!important}.sd-sider .ant-menu-item:hover{background:#6366f11f!important;color:var(--text-primary)!important}.sd-sider .ant-menu-item-selected{background:linear-gradient(135deg,#6366f140,#8b5cf626)!important;color:#a5b4fc!important;box-shadow:inset 2px 0 #6366f1!important}.ant-card{border-color:var(--border-default)!important}.ant-table-thead>tr>th{background:#6366f10f!important;color:var(--text-secondary)!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.5px!important;border-bottom:1px solid var(--border-default)!important}.ant-table-tbody>tr:hover>td{background:#6366f10f!important}.page-enter{animation:float-up .3s ease}.traffic-ring-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.traffic-ring-wrap svg{transform:rotate(-90deg)}.shimmer{background:linear-gradient(90deg,#1a2235 25%,#222f47,#1a2235 75%);background-size:200% auto;animation:shimmer 1.5s linear infinite;border-radius:8px}.user-content{padding:28px 40px;max-width:100%;margin:0 auto;width:100%}.gate{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#090b10;color:#f4efe6}.gate-aside{position:relative;padding:max(22px,env(safe-area-inset-top)) 20px 20px;background:radial-gradient(140% 90% at 0% 120%,rgba(196,92,42,.5),transparent 52%),radial-gradient(90% 70% at 100% -10%,rgba(28,74,92,.65),transparent 48%),#12151c;overflow:hidden}.gate-kicker{font-size:11px;letter-spacing:.32em;color:#e8c48c}.gate-word{margin:8px 0 6px;font-size:40px;line-height:.95;letter-spacing:-.04em;font-weight:640}.gate-lead{margin:0;max-width:22em;color:#c9c2b4;font-size:15px;line-height:1.55}.gate-main{flex:1;padding:22px 18px max(28px,env(safe-area-inset-bottom))}.gate-card h2{margin:0 0 6px;font-size:22px;font-weight:640}.gate-card .hint{margin:0 0 22px;color:#9a9488;font-size:14px;line-height:1.5}.gate .ant-input,.gate .ant-input-affix-wrapper,.gate .ant-input-password{min-height:48px;background:#171a22!important;border-color:#343846!important;color:#f4efe6!important}.gate .ant-input::placeholder{color:#7d786e}.gate .ant-btn-primary{height:48px;margin-top:4px;background:#e8c48c!important;color:#1c1408!important;border:none!important;font-weight:650;box-shadow:none!important}@media(min-width:880px){.gate{flex-direction:row}.gate-aside{width:46%;display:flex;flex-direction:column;justify-content:center;padding:56px}.gate-word{font-size:76px}.gate-main{display:flex;align-items:center;justify-content:center;background:#101218}.gate-card{width:min(400px,100%)}}.portal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px}.portal-actions{display:flex;gap:8px;flex-shrink:0}.portal-sub-extra{color:#4b5a7a;font-size:12px}@media(max-width:640px){.portal-head{flex-direction:column}.portal-actions{width:100%}.portal-actions .ant-btn{flex:1;height:40px}.portal-sub-extra{display:none}.user-content{padding:16px 14px max(24px,env(safe-area-inset-bottom))}.account-hero{padding:16px!important;gap:16px!important}}@media(max-width:576px){.user-content{padding:16px 14px max(24px,env(safe-area-inset-bottom))}.ant-card-body{padding:16px!important}.sub-qr-col{margin-top:16px;text-align:center}}
