:root{--primary: #1668dc;--primary-strong: #0f55bd;--primary-soft: #eef5ff;--ink: #0f172a;--ink-soft: #334155;--muted: #64748b;--muted-light: #94a3b8;--line: #e9eef5;--line-soft: #f1f5f9;--surface: #ffffff;--canvas: #f4f6fa;--success: #16a34a;--warning: #d97706;--danger: #dc2626;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 4px 14px rgba(15, 23, 42, .05);--shadow-md: 0 18px 44px rgba(15, 23, 42, .08)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{min-height:100%}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}a{color:var(--primary);text-decoration:none}::selection{background:#1668dc29}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mono-text{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;letter-spacing:-.1px}.muted-text{color:var(--muted)}.text-warning{color:var(--warning)}.app-logo{display:inline-flex;align-items:center;gap:11px;min-width:0}.app-logo__mark{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:linear-gradient(135deg,#2379ee,#0f56c9);color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #1668dc47;font-size:19px}.app-logo__text{display:inline-flex;flex-direction:column;line-height:1.2;min-width:0}.app-logo__text strong{font-size:15px;font-weight:650;letter-spacing:.1px;color:var(--ink)}.app-logo__text small{font-size:10px;color:var(--muted-light);letter-spacing:1.2px;text-transform:uppercase;margin-top:3px}.app-logo--compact .app-logo__mark{width:34px;height:34px;flex-basis:34px;border-radius:10px;font-size:17px}.app-logo--dark .app-logo__text strong{color:#f8fafc}.app-logo--dark .app-logo__text small{color:#cbd5e199}.app-logo--dark .app-logo__mark{background:linear-gradient(135deg,#3b8cff,#1c63db);box-shadow:0 8px 22px #1c63db73}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-header__title{margin:0;font-size:24px;line-height:1.32;font-weight:680;letter-spacing:-.35px;color:var(--ink)}.page-header__desc{margin:7px 0 0;color:var(--muted);font-size:13.5px;line-height:1.6}.page-header__extra{display:flex;align-items:center;gap:10px;flex:0 0 auto;padding-top:2px}.page-loader{padding:72px 20px;display:flex;justify-content:center}.page-loader__placeholder{width:180px;height:40px}.full-page-loader{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(circle at 50% 38%,rgba(22,104,220,.08),transparent 34%),var(--canvas);color:var(--muted);font-size:13px}.brand-loader{width:54px;height:54px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:25px;background:linear-gradient(135deg,#2379ee,#0f56c9);box-shadow:0 12px 28px #1668dc4d;animation:brand-pulse 2.6s ease-in-out infinite}@keyframes brand-pulse{0%,to{transform:translateY(0);box-shadow:0 12px 28px #1668dc4d}50%{transform:translateY(-3px);box-shadow:0 16px 34px #1668dc66}}.empty-icon{font-size:46px;color:#cbd5e1}.empty-description{color:var(--muted);font-size:13px}.result-page{min-height:100vh;background:radial-gradient(circle at 50% 16%,rgba(22,104,220,.06),transparent 34%),var(--canvas);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px}.result-page__brand{margin-bottom:18px}.result-page .ant-result{padding:20px 28px 44px}.error-boundary-detail{max-width:760px;padding:14px;border-radius:10px;background:#111827;color:#fca5a5;font-size:12px;overflow:auto}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(440px,1.06fr) minmax(480px,1fr);background:#f4f7fb}.login-brand-panel{position:relative;overflow:hidden;padding:46px 54px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:radial-gradient(circle at 88% 10%,rgba(48,129,255,.4),transparent 40%),radial-gradient(circle at 10% 92%,rgba(12,74,160,.55),transparent 46%),linear-gradient(145deg,#07111f,#0b1d33 48%,#0d2849)}.login-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.06) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 88%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 88%);pointer-events:none}.login-brand-panel__glow{position:absolute;width:460px;height:460px;right:-180px;top:-170px;border-radius:50%;border:1px solid rgba(96,165,250,.2);box-shadow:inset 0 0 120px #2563eb2e,0 0 120px #2563eb14;pointer-events:none}.login-brand-panel .app-logo{position:relative;z-index:1}.login-brand-panel__content{position:relative;z-index:1;max-width:580px;margin:30px 0}.login-overline{margin-bottom:22px;background:#3b82f624!important;color:#93c5fd!important;border:1px solid rgba(96,165,250,.18)!important;border-radius:999px!important;padding:5px 12px!important;font-size:10px;font-weight:600;letter-spacing:1.9px}.login-brand-panel__content h1{margin:0;font-size:clamp(30px,3.4vw,46px);line-height:1.38;font-weight:650;letter-spacing:-1.1px;color:#f8fafc}.login-brand-panel__content>p{margin:20px 0 0;color:#cbd5e1b8;font-size:14px;letter-spacing:.4px}.login-brand-panel__features{margin-top:46px;display:grid;gap:18px;max-width:420px}.login-brand-panel__features>div{display:flex;align-items:flex-start;gap:13px;padding:14px 16px;border-radius:14px;border:1px solid rgba(148,163,184,.14);background:#0f223a70;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-brand-panel__features .anticon{width:32px;height:32px;border-radius:9px;background:#3b82f629;color:#7db2ff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;font-size:15px}.login-brand-panel__features span{display:flex;flex-direction:column;gap:3px}.login-brand-panel__features strong{font-size:13px;color:#e2e8f0;font-weight:600}.login-brand-panel__features small{font-size:12px;color:#94a3b8c2;line-height:1.55}.login-brand-panel__footer{position:relative;z-index:1;margin:0;color:#94a3b880;font-size:11.5px;letter-spacing:.2px}.login-form-panel{padding:44px 40px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.login-form-card{width:100%;max-width:432px;padding:36px 36px 28px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 64px #0f172a14}.login-form-card__head{text-align:center;margin-bottom:28px}.login-form-card__icon{width:48px;height:48px;margin:0 auto 15px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--primary);background:var(--primary-soft);border:1px solid #dbeafe;font-size:20px}.login-form-card__head h2{margin:0;font-size:23px;font-weight:680;letter-spacing:-.3px}.login-form-card__head p{margin:8px 0 0;color:var(--muted);font-size:13px}.login-form-card .ant-form-item-label>label{font-size:13px;color:var(--ink-soft);font-weight:550}.login-form-card .ant-form-item{margin-bottom:19px}.login-submit{height:46px!important;margin-top:5px;font-weight:600;box-shadow:0 8px 20px #1668dc2e}.login-divider{color:var(--muted-light)!important;font-size:12px;margin:24px 0 20px!important}.wecom-login-button{height:44px!important;border-color:#c9e7d4!important;color:#147a44!important;background:#f5fbf7!important;font-weight:550}.wecom-login-button:hover{border-color:#8ccba8!important;background:#ecf8f1!important;color:#0f6b39!important}.login-dev-alert{margin-top:20px;border-radius:12px!important;background:#f8fafc!important}.login-dev-alert .ant-alert-message{font-size:12.5px}.login-dev-alert .ant-alert-description{font-size:12px}.login-form-card__bottom{border-top:1px solid var(--line-soft);margin-top:22px;padding-top:17px;display:flex;justify-content:space-between;color:var(--muted-light);font-size:11.5px}.login-form-card__bottom a{color:var(--muted)}.login-form-card__bottom a:hover{color:var(--primary)}.login-copyright{margin:24px 0 0;color:#94a3b8;font-size:11px;text-align:center}.admin-layout{min-height:100vh;background:var(--canvas)}.admin-sider{position:sticky!important;top:0;height:100vh;overflow:hidden auto;background:#0b1220!important;border-right:1px solid rgba(148,163,184,.09)}.admin-sider__brand{height:68px;display:flex;align-items:center;padding:0 20px;border-bottom:1px solid rgba(148,163,184,.09);overflow:hidden}.admin-sider .ant-layout-sider-children{display:flex;flex-direction:column}.admin-menu{flex:1;padding:12px 0;border-inline-end:0!important;background:transparent!important}.admin-menu .ant-menu-item{margin-block:3px;font-size:13.5px}.admin-menu .ant-menu-item .anticon{font-size:16px}.admin-sider__footer{display:flex;align-items:center;gap:8px;padding:17px 22px 22px;color:#94a3b87a;font-size:10.5px;letter-spacing:.2px;white-space:nowrap}.admin-sider__footer.is-collapsed{justify-content:center;padding-inline:0}.admin-sider__dot{width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e1a;flex:0 0 6px}.admin-main-layout{min-width:0;min-height:100vh}.admin-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffffff0!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);height:68px!important;line-height:normal!important}.admin-header__left{display:flex;align-items:center;gap:12px;min-width:0}.admin-header__collapse{color:var(--muted)!important;font-size:17px!important}.admin-header__left>div{display:flex;flex-direction:column;gap:2px}.admin-header__eyebrow{font-size:10px;color:var(--muted-light);letter-spacing:1.3px;text-transform:uppercase;line-height:1.2}.admin-header__title{font-size:16px;font-weight:650;line-height:1.25;color:var(--ink)}.admin-header__right{display:flex;align-items:center;gap:14px}.admin-user-button{display:inline-flex;align-items:center;gap:10px;padding:5px 7px 5px 5px;border:1px solid transparent;border-radius:12px;background:transparent;cursor:pointer;color:var(--ink);transition:background .18s ease,border-color .18s ease}.admin-user-button:hover{background:#f8fafc;border-color:var(--line)}.admin-user-button__avatar{background:linear-gradient(135deg,#e9f2ff,#dbeafe)!important;color:var(--primary)!important;font-weight:650;flex:0 0 34px}.admin-user-button__name{display:flex;flex-direction:column;align-items:flex-start;font-size:12.5px;font-weight:600;line-height:1.3}.admin-user-button__name small{font-size:10px;font-weight:400;color:var(--muted-light)}.admin-user-button__arrow{color:var(--muted-light);font-size:10px}.admin-user-menu__info{display:flex;flex-direction:column;min-width:150px;gap:2px;padding:2px 0}.admin-user-menu__info span{font-size:11px;color:var(--muted)}.admin-content{padding:26px 28px 44px;min-width:0}.admin-content>*{width:100%;max-width:none;margin-inline:0}.admin-page{display:flex;flex-direction:column;gap:4px;animation:page-rise .3s ease both}@keyframes page-rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;display:flex;align-items:flex-start;gap:14px;width:100%;padding:20px;border-radius:16px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.stat-card--clickable{cursor:pointer}.stat-card--clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:#dbe6f4}.stat-card__icon{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;flex:0 0 42px}.stat-card--blue .stat-card__icon{color:#1668dc;background:#eef5ff}.stat-card--green .stat-card__icon{color:#15803d;background:#f0fdf4}.stat-card--amber .stat-card__icon{color:#b45309;background:#fffbeb}.stat-card--violet .stat-card__icon{color:#7c3aed;background:#f5f3ff}.stat-card--slate .stat-card__icon{color:#475569;background:#f8fafc}.stat-card__body{display:flex;flex-direction:column;min-width:0}.stat-card__title{color:var(--muted);font-size:12.5px;font-weight:500}.stat-card__value{margin-top:5px;color:var(--ink);font-size:28px;line-height:1.15;font-weight:680;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.stat-card__hint{margin-top:7px;color:var(--muted-light);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(340px,1fr);gap:18px;align-items:start}.admin-card{border-radius:16px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs)}.admin-card.ant-card .ant-card-head{min-height:56px;padding:0 20px;border-bottom:1px solid var(--line-soft)}.admin-card.ant-card .ant-card-body{padding:20px}.card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:620;color:var(--ink)}.card-title>span{display:inline-flex;align-items:center;gap:8px}.card-title .anticon{color:var(--primary)}.dashboard-no-data{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--muted);text-align:center;padding:24px}.dashboard-no-data .anticon{font-size:30px;color:#cbd5e1;margin-bottom:2px}.dashboard-no-data strong{color:var(--ink-soft);font-size:14px;font-weight:600}.dashboard-no-data span{font-size:11.5px;color:var(--muted-light);max-width:300px;line-height:1.6}.chart-card__footer{margin-top:12px;padding-top:14px;border-top:1px dashed var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.chart-card__footer strong{color:var(--ink);font-size:15px;font-weight:650}.alerts-list{display:flex;flex-direction:column;gap:10px}.alerts-list .ant-alert{border-radius:11px;padding:10px 13px}.alerts-empty{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;color:var(--muted)}.alerts-empty .anticon{font-size:32px;color:#4ade80}.alerts-empty strong{color:var(--ink);font-size:14px;margin-top:2px}.alerts-empty span{font-size:12px}.quick-panel{margin-top:18px;border-top:1px solid var(--line-soft);padding-top:8px}.quick-panel button{width:100%;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 8px;border-radius:9px;color:var(--ink-soft);font-size:12.5px;cursor:pointer;transition:background .16s ease}.quick-panel button:hover{background:#f8fafc}.quick-panel button>span:first-child{display:inline-flex;align-items:center;gap:8px}.quick-panel button .anticon{color:var(--muted)}.quick-panel button>span:last-child{color:var(--primary);font-weight:600;display:inline-flex;align-items:center;gap:6px;font-size:12px}.table-card{padding:0;overflow:hidden}.table-card .table-tabs{padding:0 20px}.table-card .table-tabs .ant-tabs-nav{margin:0}.table-card .table-tabs .ant-tabs-nav:before{border-bottom:1px solid var(--line-soft)}.table-card .table-tabs .ant-tabs-tab{padding:15px 0;font-size:13px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 20px}.table-toolbar__filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.table-toolbar__meta{color:var(--muted);font-size:12px;white-space:nowrap}.table-card .ant-table-wrapper{padding:0 20px 18px}.table-card>.ant-table-wrapper{padding-top:18px}.table-card .ant-table{font-size:13px}.table-card .ant-table-thead>tr>th{font-size:12px;font-weight:600;color:#475569;padding-top:11px;padding-bottom:11px;white-space:nowrap}.table-card .ant-table-tbody>tr>td{padding-top:13px;padding-bottom:13px}.table-card .ant-table-pagination{margin-bottom:2px!important}.table-primary{display:flex;flex-direction:column;gap:3px;min-width:0;line-height:1.45}.table-primary>span:first-child{color:var(--ink)}.table-secondary{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:11.5px;white-space:nowrap}.table-user-link{display:inline-flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;cursor:pointer;text-align:left;color:var(--ink);min-width:0}.table-user-link:hover strong{color:var(--primary)}.table-user-link__avatar{flex:0 0 34px;background:#f1f5f9!important;color:#64748b!important;font-weight:650;border:1px solid #e2e8f0}.table-user-link>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}.table-user-link strong{font-size:13px;font-weight:600;transition:color .16s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-user-link small{font-size:11px;color:var(--muted);font-family:SFMono-Regular,Consolas,monospace}.binding-summary-button{padding:0;border:0;background:transparent;cursor:pointer;text-align:left}.binding-summary-button:hover .table-secondary{color:var(--primary)}.row--attention>td{background:#fffdf7!important}.row--attention:hover>td{background:#fffaeb!important}.application-expand{padding:6px 8px;border-radius:10px;background:#f8fafc}.application-expand .ant-descriptions-item-label{font-size:11.5px;color:var(--muted)}.application-expand .ant-descriptions-item-content{font-size:12px}.modal-form{margin-top:16px}.modal-form .ant-form-item{margin-bottom:16px}.modal-form .ant-form-item-label>label{font-size:12.5px;font-weight:550;color:var(--ink-soft)}.modal-alert{margin-bottom:16px;border-radius:10px!important}.form-grid-2,.form-grid-4{display:grid;gap:0 16px}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-footnote{display:flex;align-items:flex-start;gap:7px;margin:-3px 0 0;color:var(--muted);font-size:11.5px;line-height:1.6}.form-footnote .anticon{margin-top:2px;color:var(--muted-light)}.approve-summary,.renew-summary,.renew-client-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px 14px;border-radius:11px;background:#f8fafc;border:1px solid var(--line-soft)}.approve-summary>div,.renew-summary>div,.renew-client-summary>div{display:flex;flex-direction:column;gap:4px;min-width:0}.approve-summary span,.renew-summary span,.renew-client-summary span{color:var(--muted);font-size:10.5px}.approve-summary strong,.renew-summary strong,.renew-client-summary strong{color:var(--ink);font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-application-note{margin-top:22px}.drawer-application-note>span{font-size:12px;font-weight:600;color:var(--ink-soft)}.drawer-application-note p{margin:8px 0 0;padding:12px 14px;border-radius:10px;background:#f8fafc;color:var(--muted);font-size:12.5px;line-height:1.65}.renew-divider{margin:18px 0!important}.renew-hint,.delete-note{margin:0 0 14px;font-size:12px;line-height:1.65;color:var(--muted)}.delete-note{margin-top:14px;padding:10px 12px;border-radius:9px;background:#f8fafc;border:1px solid var(--line-soft)}.delete-note--danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.test-result-descriptions{margin-top:18px}.user-drawer-profile{display:flex;align-items:center;gap:13px;padding-bottom:18px;border-bottom:1px solid var(--line-soft);margin-bottom:18px}.user-drawer-profile .ant-avatar{flex:0 0 52px;background:#eef5ff;color:var(--primary);font-size:21px;font-weight:650}.user-drawer-profile>div{flex:1;min-width:0}.user-drawer-profile h3{margin:0;font-size:17px;line-height:1.3}.user-drawer-profile span{display:block;margin-top:3px;color:var(--muted);font-size:11.5px;font-family:SFMono-Regular,Consolas,monospace}.user-drawer-descriptions .ant-descriptions-item-label{width:108px;font-size:12px;color:var(--muted)}.user-drawer-descriptions .ant-descriptions-item-content{font-size:12.5px}.drawer-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:24px 0 12px;color:var(--ink);font-size:13px;font-weight:620}.drawer-section-title>span{display:inline-flex;align-items:center;gap:7px}.drawer-section-title .anticon{color:var(--primary)}.user-client-list{display:flex;flex-direction:column;gap:10px}.user-client-item{padding:12px 13px;border-radius:11px;border:1px solid var(--line);background:#fff}.user-client-item__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.user-client-item__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:11.5px;margin-top:4px}.server-cell{display:flex;align-items:flex-start;gap:10px;min-width:0}.server-cell__status{margin-top:6px;width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e1a;flex:0 0 7px}.server-cell__status.is-off{background:#94a3b8;box-shadow:0 0 0 4px #94a3b81a}.server-cell__status.is-online{background:#22c55e;box-shadow:0 0 0 4px #22c55e1a}.server-cell__status.is-error{background:#ef4444;box-shadow:0 0 0 4px #ef44441a}.server-cell>div{display:flex;flex-direction:column;gap:3px;min-width:0}.server-cell strong{font-size:13px;font-weight:600;color:var(--ink)}.server-cell .mono-text{color:var(--muted);overflow:hidden;text-overflow:ellipsis;max-width:215px;white-space:nowrap}.server-tips{display:flex;align-items:flex-start;gap:9px;padding:13px 16px;border-radius:12px;border:1px dashed #dbe4ef;background:#ffffff8c;color:var(--muted);font-size:12px;line-height:1.6}.server-tips .anticon{color:var(--primary);margin-top:2px}.plan-name-cell{display:flex;flex-direction:column;gap:3px}.plan-name-cell strong{font-size:13px;font-weight:650}.plan-name-cell span{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}.plan-spec-cell{display:flex;flex-direction:column;gap:4px;color:var(--ink-soft);font-size:12px}.plan-spec-cell strong{font-weight:650}.plan-price{font-size:14px;color:var(--ink);font-variant-numeric:tabular-nums}.client-user-cell{display:flex;align-items:center;gap:10px;min-width:0}.client-user-cell .ant-avatar{flex:0 0 32px;background:#f1f5f9;color:#64748b;font-size:13px;font-weight:650}.client-user-cell>div{display:flex;flex-direction:column;gap:3px;min-width:0}.client-user-cell strong{font-size:13px;font-weight:600}.client-user-cell .mono-text{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.traffic-cell{display:flex;flex-direction:column;gap:5px;min-width:150px}.traffic-cell .ant-progress{margin:0;line-height:1}.traffic-cell>span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums}.traffic-cell em{font-style:normal;margin-left:auto;color:var(--ink-soft);font-weight:600}.settings-alert{margin-bottom:18px;border-radius:12px!important}.settings-form{display:flex;flex-direction:column;gap:18px}.settings-card.ant-card .ant-card-body{padding:22px}.settings-card .ant-form-item{margin-bottom:17px}.settings-card .ant-form-item-label>label{font-size:12.5px;font-weight:550;color:var(--ink-soft)}.settings-hint,.settings-sync-info{display:flex;align-items:flex-start;gap:9px;margin-bottom:18px;padding:11px 13px;border-radius:10px;background:#f8fafc;border:1px solid var(--line-soft);color:var(--muted);font-size:12px;line-height:1.6}.settings-hint .anticon,.settings-sync-info .anticon{color:var(--primary);margin-top:2px}.settings-sync-info{margin:4px 0 0;background:#f0f7ff;border-color:#dbeafe}.password-card{margin-top:0}.password-form{margin-top:4px}.password-form .ant-form-item{margin-bottom:16px}.password-form .ant-form-item-label>label{font-size:12.5px;font-weight:550;color:var(--ink-soft)}.settings-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:4px 0 10px}.settings-actions .ant-btn{min-width:168px}.settings-actions__hint{display:inline-flex;align-items:center;gap:6px;color:var(--muted-light);font-size:11.5px}.audit-actor{display:flex;align-items:center;gap:9px;min-width:0}.audit-actor__avatar{width:28px;height:28px;flex:0 0 28px;border-radius:8px;background:#f8fafc;border:1px solid var(--line);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;font-size:12px}.audit-detail-hint{font-size:11.5px}.audit-detail{margin:0;padding:14px 16px;max-height:340px;overflow:auto;border-radius:9px;background:#0f172a;color:#cbd5e1;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11.5px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.mobile-shell{width:100%;max-width:560px;min-height:100vh;margin:0 auto;background:#f5f7fb;position:relative;box-shadow:0 0 0 1px #0f172a08}.mobile-topbar{position:sticky;top:0;z-index:50;height:58px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:#f5f7fbe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(226,232,240,.7)}.mobile-topbar__right{display:flex;align-items:center;gap:9px}.mobile-topbar__tag{margin:0!important;color:#15803d!important;background:#e9f9ef!important;border-radius:999px!important;font-size:10.5px!important;padding:2px 8px!important}.mobile-topbar__avatar{background:linear-gradient(135deg,#e9f2ff,#dbeafe)!important;color:var(--primary)!important;font-weight:650}.mobile-main{padding-bottom:92px}.mobile-page{padding:16px 16px 20px;display:flex;flex-direction:column;gap:15px;animation:page-rise .28s ease both}.mobile-page-head{padding:4px 2px 2px}.mobile-page-head__eyebrow{display:block;font-size:9px;color:#94a3b8;letter-spacing:2.2px;font-weight:650;margin-bottom:7px}.mobile-page-head h1{margin:0;font-size:25px;line-height:1.25;font-weight:680;letter-spacing:-.5px;color:var(--ink)}.mobile-page-head p{margin:7px 0 0;color:var(--muted);font-size:12.5px;line-height:1.55}.mobile-page-head--row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.mobile-page-head--row .ant-btn{color:var(--muted);background:#fff;border-color:var(--line);box-shadow:var(--shadow-xs);flex:0 0 auto}.mobile-tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:560px;z-index:100;display:flex;align-items:stretch;height:calc(62px + env(safe-area-inset-bottom));padding:6px 9px env(safe-area-inset-bottom);background:#fffffff0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid rgba(226,232,240,.85);box-shadow:0 -10px 28px #0f172a0b}.mobile-tabbar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:11px;color:#94a3b8;font-size:10.5px;font-weight:500;transition:color .18s ease,background .18s ease}.mobile-tabbar__item:active{background:#f8fafc}.mobile-tabbar__icon{font-size:19px;line-height:1;height:22px;display:flex;align-items:center}.mobile-tabbar__item.is-active{color:var(--primary);font-weight:620}.mobile-tabbar__item.is-active .mobile-tabbar__icon{transform:translateY(-1px)}.h5-auth{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:30px 20px;background:radial-gradient(circle at 84% 8%,rgba(59,130,246,.16),transparent 38%),radial-gradient(circle at 16% 90%,rgba(22,104,220,.1),transparent 42%),linear-gradient(165deg,#f8fbff,#eef4fb)}.h5-auth__brand{width:100%;max-width:420px;padding:2px 0}.h5-auth__card{width:100%;max-width:420px;margin:auto 0;background:#fff;border:1px solid rgba(226,232,240,.85);border-radius:24px;padding:34px 26px 24px;text-align:center;box-shadow:0 26px 60px #0f172a17}.h5-auth__icon{width:62px;height:62px;margin:0 auto 18px;border-radius:19px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f7ee,#d7f2e2);color:#14934e;font-size:30px;box-shadow:0 10px 24px #14934e1f}.h5-auth h1{margin:0;font-size:22px;font-weight:680;letter-spacing:-.3px}.h5-auth p{margin:11px 0 24px;color:var(--muted);font-size:12.5px;line-height:1.75}.h5-auth .ant-btn{margin-bottom:10px;height:44px;border-radius:11px}.h5-auth__dev{border-color:#e2e8f0!important;color:var(--ink-soft)!important;background:#f8fafc!important}.h5-auth__tip{display:flex;align-items:center;justify-content:center;gap:5px;color:#94a3b8;font-size:10.5px;margin-top:8px}.h5-auth__tip .anticon{color:#94a3b8}.h5-auth__admin-link{margin-top:16px;padding:0;border:0;background:transparent;color:var(--muted-light);font-size:11px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.h5-auth__admin-link:hover{color:var(--primary)}.h5-auth__footer{width:100%;max-width:420px;text-align:center;color:#94a3b8;font-size:10.5px;padding-top:22px}.home-greeting{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:7px 2px 2px}.home-greeting__date{display:block;color:#94a3b8;font-size:10.5px;letter-spacing:.2px;margin-bottom:6px}.home-greeting h1{margin:0;font-size:23px;font-weight:680;letter-spacing:-.55px;line-height:1.35}.home-greeting p{margin:6px 0 0;color:var(--muted);font-size:12px}.home-refresh{color:var(--muted)!important;background:#fff!important;border-color:var(--line)!important;box-shadow:var(--shadow-xs);flex:0 0 auto;margin-top:4px}.status-hero{position:relative;overflow:hidden;border-radius:22px;padding:22px 20px;min-height:178px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;box-shadow:0 16px 36px #0f172a2e}.status-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 88% 8%,rgba(255,255,255,.16),transparent 34%),linear-gradient(120deg,rgba(255,255,255,.04),transparent 40%);pointer-events:none}.status-hero--active,.status-hero--unopened{background:linear-gradient(140deg,#0d2a4a,#124f8a 58%,#1668dc 130%)}.status-hero--expiring{background:linear-gradient(140deg,#3b2a08,#8a5a0b 58%,#c2820e 130%)}.status-hero--expired{background:linear-gradient(140deg,#3d1010,#7f1d1d 58%,#b91c1c 130%)}.status-hero--disabled{background:linear-gradient(140deg,#172033,#334155 58%,#64748b 130%)}.status-hero--depleted{background:linear-gradient(140deg,#3e1c08,#9a3412 58%,#c2410c 130%)}.status-hero__watermark{position:absolute;right:26px;top:-12px;font-size:144px;opacity:.07;transform:rotate(9deg);z-index:0}.status-hero__content{position:relative;z-index:1;min-width:0}.status-hero__eyebrow{font-size:9.5px;letter-spacing:1.9px;opacity:.56;font-weight:550}.status-hero__label{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:26px;font-weight:680;letter-spacing:-.5px;line-height:1.25}.status-hero__dot{width:8px;height:8px;border-radius:50%;background:var(--status-color);box-shadow:0 0 0 5px #ffffff1a;flex:0 0 8px;background:#fff;opacity:.9}.status-hero__content>p{margin:9px 0 0;font-size:12px;line-height:1.55;color:#ffffffb3;max-width:235px}.status-hero__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}.status-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:4px 8px;border-radius:999px;background:#ffffff1a;border:1px solid rgba(255,255,255,.1);font-size:10px;color:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.status-hero__ring{position:relative;z-index:1;flex:0 0 104px;padding-top:2px}.status-hero__ring .ant-progress-text{color:#fff!important}.status-ring-text{display:flex;flex-direction:column;align-items:center;line-height:1.15}.status-ring-text strong{font-size:20px;font-weight:680;letter-spacing:-.5px}.status-ring-text small{font-size:9px;color:#ffffff94;margin-top:3px;letter-spacing:.4px}.mobile-alert{border-radius:14px!important;border:1px solid #fde7b0!important;background:#fffaf0!important}.mobile-alert .ant-alert-message{font-size:12.5px;font-weight:600;color:#92400e}.mobile-alert .ant-alert-description{font-size:11.5px}.alert-inline{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:3px}.alert-inline .ant-btn-link{padding:0;height:auto;font-size:11.5px}.unopened-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px 20px;text-align:center;box-shadow:var(--shadow-xs)}.unopened-card__visual{position:relative;width:78px;height:78px;margin:2px auto 16px;display:flex;align-items:center;justify-content:center;border-radius:24px;background:linear-gradient(135deg,#eef5ff,#e4efff);color:var(--primary);font-size:31px}.unopened-card__ring{position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:30px;border:1px solid #dbeafe}.unopened-card__body h2{margin:0;font-size:18px;font-weight:650}.unopened-card__body p{margin:8px auto 18px;max-width:310px;color:var(--muted);font-size:12.5px;line-height:1.65}.unopened-card__actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.unopened-card__actions .ant-btn{min-width:118px;height:42px;border-radius:11px}.usage-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 18px 15px;box-shadow:var(--shadow-xs)}.usage-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.usage-card__head h2{margin:0;font-size:15px;font-weight:650}.usage-card__head p{margin:4px 0 0;color:var(--muted);font-size:11.5px}.usage-card__sync{display:inline-flex;align-items:center;gap:5px;margin-top:2px;color:var(--muted-light);font-size:10px;white-space:nowrap}.usage-card__body{display:flex;align-items:center;gap:22px;margin:14px 0 16px}.usage-ring{display:flex;flex-direction:column;align-items:center;line-height:1.15}.usage-ring strong{font-size:22px;font-weight:680;color:var(--ink);letter-spacing:-.6px}.usage-ring small{margin-top:3px;font-size:9.5px;color:var(--muted-light)}.usage-card__stats{flex:1;display:flex;flex-direction:column;gap:9px;min-width:0}.usage-stat-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:11.5px;color:var(--muted);border-bottom:1px dashed var(--line-soft);padding-bottom:8px}.usage-stat-row:last-child{border-bottom:0;padding-bottom:0}.usage-stat-row strong{color:var(--ink);font-size:13px;font-weight:650;font-variant-numeric:tabular-nums}.usage-card__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;border-top:1px solid var(--line-soft);padding-top:13px}.usage-meta-box{display:flex;align-items:flex-start;gap:7px;min-width:0;padding:8px;border-radius:9px;background:#f8fafc}.usage-meta-box>.anticon{margin-top:2px;color:var(--muted-light);font-size:12px;flex:0 0 12px}.usage-meta-box>span{display:flex;flex-direction:column;gap:3px;min-width:0}.usage-meta-box small{color:var(--muted-light);font-size:9.5px;white-space:nowrap}.usage-meta-box strong{color:var(--ink-soft);font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.usage-card__notice{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px solid var(--line-soft);color:#b45309;font-size:11px;line-height:1.5}.usage-card__notice .anticon{color:#f59e0b}.usage-card__notice span{flex:1;min-width:160px}.usage-card__notice .ant-btn-link{height:auto;padding:0;font-size:11px}.home-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-links button{display:flex;align-items:center;gap:10px;padding:13px;border-radius:14px;border:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .18s ease,transform .18s ease}.home-links button:hover{border-color:#cfe0f8;transform:translateY(-1px)}.home-links button>.anticon:first-child{width:30px;height:30px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;color:var(--primary);background:#eff6ff;flex:0 0 30px}.home-links button>span{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.home-links strong{font-size:12px;font-weight:600}.home-links small{font-size:9.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-links button>.anticon:last-child{color:#cbd5e1;font-size:10px}.home-tips{padding:14px 16px;border-radius:14px;background:#f0f7ff;border:1px solid #e0edff}.home-tips__tag{margin:0 0 7px!important;background:#dbeafe!important;color:#1d4ed8!important;border-radius:999px!important;font-size:9.5px!important}.home-tips p{margin:0;color:#475569;font-size:11.5px;line-height:1.7}.subscription-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow-xs)}.subscription-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.subscription-card__head h2{margin:0;font-size:15px;font-weight:650}.subscription-card__head p{margin:4px 0 0;color:var(--muted);font-size:10.5px;line-height:1.5}.subscription-card__badge{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:#f0fdf4;color:#15803d;font-size:9.5px;border:1px solid #dcfce7;white-space:nowrap}.subscription-format-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px;flex-wrap:wrap}.subscription-format-hint{color:var(--muted-light);font-size:9.5px}.subscription-url{margin-top:10px;padding:11px 12px;border-radius:10px;background:#f8fafc;border:1px solid var(--line-soft)}.subscription-url .ant-typography{color:#334155;font-family:SFMono-Regular,Consolas,monospace;font-size:10.5px;margin:0}.subscription-url--empty .ant-typography{color:var(--muted-light);font-family:inherit}.subscription-actions{margin-top:10px}.subscription-actions .ant-btn{height:40px;border-radius:10px}.subscription-actions .ant-btn-default{flex:0 0 auto}.subscription-divider{margin:14px 0 11px!important;border-color:var(--line-soft)!important}.subscription-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted-light);font-size:9.5px;flex-wrap:wrap}.qr-modal__body{text-align:center;padding:6px 4px 2px}.qr-modal__code{width:252px;height:252px;margin:0 auto;padding:12px;display:flex;align-items:center;justify-content:center;border-radius:16px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-sm)}.qr-modal__format{margin:14px 0 0;font-size:12px;color:var(--ink);font-weight:600}.qr-modal__hint{margin:6px 0 16px;color:var(--muted);font-size:11.5px;line-height:1.6}.apply-page{gap:13px}.plan-skeleton,.record-skeleton{display:flex;flex-direction:column;gap:12px}.apply-form{display:flex;flex-direction:column;gap:13px}.apply-section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 2px 0;font-size:13px;font-weight:620;color:var(--ink)}.apply-section-title .ant-tag{margin:0;font-size:9.5px;border-radius:999px}.plan-list{display:flex;flex-direction:column;gap:10px}.plan-card{position:relative;width:100%;text-align:left;padding:16px;border-radius:16px;border:1px solid var(--line);background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;box-shadow:var(--shadow-xs)}.plan-card:hover{border-color:#bcd4f3;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.plan-card--selected{border-color:var(--primary);box-shadow:0 0 0 3px #1668dc17,var(--shadow-sm)}.plan-card__check{position:absolute;top:13px;right:14px;color:var(--primary);font-size:16px;line-height:1}.plan-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.plan-card__top h3{margin:0;font-size:15px;font-weight:650;padding-right:18px;color:var(--ink)}.plan-card__top p{margin:4px 0 0;font-size:10.5px;color:var(--muted);line-height:1.5}.plan-card__price{flex:0 0 auto;font-size:16px;font-weight:680;color:var(--ink);letter-spacing:-.3px;font-variant-numeric:tabular-nums}.plan-card__specs{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.plan-card__specs span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:7px;background:#f8fafc;color:#475569;font-size:10.5px;border:1px solid #f1f5f9}.plan-card__specs .anticon{color:var(--muted-light);font-size:11px}.plan-card__selected-label{display:inline-block;margin-top:10px;padding:2px 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:9.5px;font-weight:600}.selected-summary{border-radius:13px;padding:12px 14px;background:#f0f7ff;border:1px solid #e0edff}.selected-summary__title{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:10.5px;font-weight:600}.selected-summary__rows{display:flex;flex-wrap:wrap;gap:5px 14px;margin-top:7px;color:#334155;font-size:11.5px}.selected-summary__rows span:not(:last-child):after{content:"·";margin-left:14px;color:#cbd5e1}.apply-note{margin-bottom:0!important}.apply-form .ant-form-item-label>label{font-size:12.5px;color:var(--ink-soft);font-weight:550}.apply-submit{height:46px!important;border-radius:12px;font-weight:600;font-size:14px;box-shadow:0 8px 20px #1668dc2e}.apply-form .form-footnote{text-align:center;justify-content:center;font-size:10.5px;margin-top:2px}.record-timeline{display:flex;flex-direction:column}.record-item{display:flex;align-items:stretch;gap:11px}.record-item__rail{width:13px;flex:0 0 13px;display:flex;flex-direction:column;align-items:center;padding-top:17px}.record-item__dot{width:9px;height:9px;border-radius:50%;flex:0 0 9px;box-shadow:0 0 0 4px #fff;border:1.5px solid #fff;z-index:1}.record-item__line{width:1px;flex:1;background:#e2e8f0;margin:3px 0}.record-item__content{flex:1;min-width:0;padding-bottom:12px}.record-card{padding:15px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-xs)}.record-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.record-card__head .ant-tag{margin:0;flex:0 0 auto;font-size:10px;border-radius:6px}.record-card__title{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}.record-card__type{display:inline-flex;padding:2px 6px;border-radius:5px;background:#f1f5f9;color:#64748b;font-size:9.5px;font-weight:550}.record-card__title strong{font-size:13.5px;font-weight:650;color:var(--ink)}.record-card__meta{display:flex;align-items:center;gap:10px;margin-top:6px;color:var(--muted-light);font-size:9.5px;flex-wrap:wrap}.record-card__id{font-family:SFMono-Regular,Consolas,monospace}.record-card__note{display:flex;align-items:flex-start;gap:6px;margin:10px 0 0;padding:8px 10px;border-radius:8px;background:#f8fafc;color:var(--muted);font-size:10.5px;line-height:1.55}.record-card__note .anticon{margin-top:2px;color:var(--muted-light)}.record-callout{display:flex;align-items:flex-start;gap:8px;margin-top:10px;padding:9px 11px;border-radius:9px;font-size:10.5px;line-height:1.55}.record-callout>.anticon{margin-top:2px;flex:0 0 auto}.record-callout>div{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.record-callout strong{font-weight:600;font-size:10.5px}.record-callout span{font-size:10.5px}.record-callout .ant-btn-link{height:auto;padding:0;font-size:10px;flex:0 0 auto}.record-callout--danger{background:#fef2f2;color:#b91c1c;border:1px solid #fee2e2}.record-callout--info{background:#f0f7ff;color:#1d4ed8;border:1px solid #e0edff}.record-callout--success{background:#f0fdf4;color:#15803d;border:1px solid #dcfce7}.record-card__actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;padding-top:10px;border-top:1px dashed var(--line)}.record-card__hint{color:var(--muted-light);font-size:9.5px}.record-card__actions .ant-btn{height:28px;font-size:11px}.record-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 2px}.record-footer .ant-tag{margin:0;color:var(--muted);font-size:10px;border-radius:999px;background:#f1f5f9}.record-footer .ant-btn-link{height:auto;padding:0;font-size:10.5px}.profile-card{display:flex;align-items:center;gap:15px;padding:18px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-xs)}.profile-card__avatar{position:relative;flex:0 0 68px}.profile-card__avatar .ant-avatar{background:linear-gradient(145deg,#1668dc,#0b4eb3)!important;color:#fff!important;font-size:27px;font-weight:650;box-shadow:0 8px 20px #1668dc3d}.profile-card__badge{position:absolute;right:-3px;bottom:-2px;width:24px;height:24px;border-radius:8px;background:#fff;border:1px solid var(--line);color:#18a058;display:flex;align-items:center;justify-content:center;font-size:13px;box-shadow:var(--shadow-xs)}.profile-card__main{min-width:0;flex:1}.profile-card__name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-card__name h2{margin:0;font-size:19px;font-weight:680;letter-spacing:-.3px}.profile-card__name .ant-tag{margin:0;font-size:9.5px;border-radius:999px}.profile-card__main>p{margin:5px 0 0;color:var(--muted);font-size:10.5px;font-family:SFMono-Regular,Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-card__status{display:flex;align-items:center;gap:6px;margin-top:8px;color:#15803d;font-size:10.5px;font-weight:500}.profile-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e1f}.profile-service-card{background:linear-gradient(150deg,#0d2a4a,#124a80);border-radius:20px;padding:17px;color:#fff;box-shadow:0 14px 30px #0d2a4a2b}.profile-service-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.profile-service-card__head>span:first-child{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#ffffff94;letter-spacing:.3px}.profile-service-card__head .ant-tag{margin:0;font-size:9.5px;border-radius:999px}.profile-service-card__plan{margin-top:9px;font-size:19px;font-weight:650;letter-spacing:-.3px}.profile-service-card__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:7px 0 14px;color:#e2e8f09e;font-size:10px}.profile-service-card .ant-btn-primary{background:#ffffff21;border-color:#ffffff2b;box-shadow:none;color:#fff;height:39px;font-size:12px;border-radius:9px}.profile-service-card .ant-btn-primary:hover:not(:disabled){background:#fff3!important;border-color:#ffffff40!important;color:#fff!important}.profile-service-card .ant-btn-primary:disabled{background:#ffffff0f!important;border-color:#ffffff17!important;color:#ffffff59!important}.profile-renew-wrap{display:block}.profile-renew-hint{margin:8px 0 0;color:#fff6;font-size:9.5px;text-align:center}.profile-empty-service{display:flex;align-items:center;gap:11px;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--line)}.profile-empty-service>.anticon{width:36px;height:36px;border-radius:10px;background:#f8fafc;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px}.profile-empty-service>div{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.profile-empty-service strong{font-size:12px;font-weight:600}.profile-empty-service span{font-size:10px;color:var(--muted)}.profile-section{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.profile-section__title{display:flex;align-items:center;gap:7px;padding:13px 15px;border-bottom:1px solid var(--line-soft);font-size:12px;font-weight:620;color:var(--ink)}.profile-section__title .anticon{color:var(--muted-light)}.profile-info-list{padding:2px 15px}.profile-info-list>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line-soft);font-size:11.5px}.profile-info-list>div:last-child{border-bottom:0}.profile-info-list span{display:inline-flex;align-items:center;gap:7px;color:var(--muted);flex:0 0 auto}.profile-info-list span .anticon{color:var(--muted-light);font-size:11px}.profile-info-list strong{color:var(--ink-soft);font-size:11.5px;font-weight:550;text-align:right;min-width:0;word-break:break-all}.profile-links{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.profile-links button{width:100%;display:flex;align-items:center;gap:11px;padding:13px 15px;border:0;border-bottom:1px solid var(--line-soft);background:transparent;text-align:left;cursor:pointer}.profile-links button:last-child{border-bottom:0}.profile-links button:hover{background:#f8fafc}.profile-links__icon{width:31px;height:31px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:#f0f7ff;color:var(--primary);flex:0 0 31px;font-size:13px}.profile-links button>span:nth-child(2){display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.profile-links strong{font-size:12px;font-weight:600;color:var(--ink)}.profile-links small{font-size:9.5px;color:var(--muted)}.profile-links__arrow{color:#cbd5e1;font-size:18px;line-height:1}.profile-support{display:flex;align-items:flex-start;gap:10px;padding:13px 15px;border-radius:14px;background:#f0f7ff;border:1px solid #e0edff}.profile-support>.anticon{color:var(--primary);margin-top:1px}.profile-support>div{display:flex;flex-direction:column;gap:3px}.profile-support strong{font-size:11.5px;color:#1e40af}.profile-support span{font-size:10px;color:#64748b}.profile-logout{height:44px!important;border-radius:11px;font-size:12.5px;margin-top:3px}.profile-version{text-align:center;color:#b6c1cf;font-size:9.5px;margin:2px 0 0}@media(max-width:1220px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.alerts-card .alerts-empty{min-height:120px}}@media(max-width:992px){.admin-content{padding:22px 18px 36px}.admin-header{padding-inline:16px!important}.admin-user-button__name,.admin-user-button__arrow{display:none}.form-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header{flex-wrap:wrap;gap:12px}.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:92px;padding:24px 28px;justify-content:center;align-items:flex-start}.login-brand-panel__content,.login-brand-panel__footer,.login-brand-panel__glow{display:none}.login-brand-panel .app-logo{margin:0 auto}.login-form-panel{padding:26px 20px 40px}.login-copyright{margin-top:18px}}@media(max-width:760px){.admin-content{padding:18px 12px 32px}.admin-header__eyebrow{display:none}.stat-grid{gap:10px}.stat-card{padding:15px;gap:10px;border-radius:13px}.stat-card__icon{width:36px;height:36px;flex-basis:36px;font-size:15px;border-radius:10px}.stat-card__value{font-size:23px}.stat-card__hint{display:none}.table-card .table-tabs{padding:0 12px}.table-card .table-tabs .ant-tabs-tab{padding:12px 0}.table-toolbar{padding:12px}.table-card .ant-table-wrapper{padding:0 12px 14px}.table-card>.ant-table-wrapper{padding-top:12px}.table-toolbar__filters{width:100%}.table-toolbar__filters .ant-input-search,.table-toolbar__filters .ant-select{width:100%!important}.table-toolbar__meta{width:100%}.form-grid-2,.form-grid-4{grid-template-columns:minmax(0,1fr)}.settings-card.ant-card .ant-card-body{padding:16px}.password-card{margin-top:0}.password-form{margin-top:4px}.password-form .ant-form-item{margin-bottom:16px}.password-form .ant-form-item-label>label{font-size:12.5px;font-weight:550;color:var(--ink-soft)}.settings-actions{flex-direction:column;align-items:stretch}.settings-actions .ant-btn{width:100%}.settings-actions__hint{justify-content:center}.page-header__title{font-size:21px}.approve-summary,.renew-summary,.renew-client-summary{grid-template-columns:minmax(0,1fr);gap:8px}}@media(max-width:620px){.usage-card__body{gap:14px}.usage-card__meta{grid-template-columns:repeat(3,minmax(0,1fr))}.usage-meta-box{padding:7px 6px;gap:5px}.usage-meta-box>.anticon{display:none}.status-hero{padding:19px 17px;gap:10px;min-height:168px}.status-hero__label{font-size:23px}.status-hero__content>p{max-width:190px;font-size:11px}.status-hero__ring{flex-basis:92px}.status-hero__ring .ant-progress,.status-hero__ring .ant-progress-inner{width:92px!important;height:92px!important}}@media(min-width:640px){body{background:#e9eef6}.mobile-shell{min-height:calc(100vh - 40px);margin:20px auto;border-radius:26px;box-shadow:0 26px 64px #0f172a24;overflow:clip}.mobile-topbar{border-radius:26px 26px 0 0}.mobile-tabbar{bottom:20px;border-radius:0 0 26px 26px;border-left:1px solid rgba(226,232,240,.85);border-right:1px solid rgba(226,232,240,.85)}.h5-auth{max-width:560px;margin:0 auto;border-radius:26px;min-height:calc(100vh - 40px)}}@media(max-width:480px){.usage-card__body{gap:12px}.usage-card__body .ant-progress{flex:0 0 104px}.usage-card__body .ant-progress-inner{width:104px!important;height:104px!important}.home-links{grid-template-columns:minmax(0,1fr)}.subscription-card__head p{max-width:220px}.profile-card{padding:15px;gap:12px}.profile-card__avatar{flex-basis:58px}.profile-card__avatar .ant-avatar{width:58px!important;height:58px!important;line-height:58px!important;font-size:23px!important}.plan-card__price{font-size:15px}.record-card__actions{align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}:focus-visible{outline:2px solid rgba(22,104,220,.55);outline-offset:2px}.ant-btn:focus-visible{outline:2px solid rgba(22,104,220,.55);outline-offset:1px}.plan-card:focus-visible,.home-links button:focus-visible,.stat-card:focus-visible,.profile-links button:focus-visible{outline:2px solid rgba(22,104,220,.55);outline-offset:2px}.audit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:4px 0 14px}.audit-toolbar__filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audit-cell{display:flex;flex-direction:column;gap:2px;min-width:0;line-height:1.4}.audit-cell__main{font-size:13px;color:#0f172a;overflow:hidden;text-overflow:ellipsis}.audit-cell__sub{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-action{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.audit-action__tag{margin-inline-end:0}.audit-table .audit-table__row--failed>td{background:#fff1f0}.audit-table .audit-table__row--failed:hover>td{background:#ffe4e1}.audit-expand-btn{color:#64748b;font-size:12px;padding-inline:6px}.audit-expand-btn:hover{color:#1668dc;background:transparent}.audit-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:6px 20px;padding:10px 16px;background:#f8fafc;border-radius:8px}.audit-detail-item{display:flex;align-items:baseline;gap:6px;min-width:0;font-size:12.5px;line-height:1.8}.audit-detail-item__key{flex:0 0 auto;color:#64748b;min-width:70px;text-align:right}.audit-detail-item__key:after{content:"："}.audit-detail-item__value{color:#0f172a;word-break:break-all;white-space:pre-wrap}@media(max-width:900px){.audit-detail-grid{grid-template-columns:1fr}.audit-toolbar__search{width:100%}.audit-toolbar__search .ant-input-search{width:100%!important}}.audit-detail-wrap{display:flex;flex-direction:column;gap:10px;padding:4px 0}.audit-detail-section__title{font-size:12px;font-weight:600;color:#64748b;margin-bottom:4px}.audit-detail-item--change{align-items:center}.audit-detail-item__value--from{color:#b91c1c;text-decoration:line-through;opacity:.75}.audit-detail-item__arrow{color:#94a3b8;margin:0 2px}.audit-detail-item__value--to{color:#15803d;font-weight:500}.audit-detail-meta{font-size:12.5px;color:#64748b}.audit-detail-meta summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0;color:#64748b}.audit-detail-meta summary:hover{color:#1668dc}.audit-detail-meta[open] .audit-detail-grid{padding:6px 0 0}.settings-tabs .ant-tabs-nav{margin-bottom:12px}.settings-tabs .ant-tabs-tab{padding:8px 4px;font-size:13.5px}.settings-tab-pane{width:100%;max-width:none;min-height:320px}.settings-tab-pane .settings-card,.node-block{margin-bottom:16px}.node-block__title{display:flex;align-items:baseline;gap:8px;padding:0 2px 6px}.node-block__name{font-size:15px;font-weight:650;color:#0f172a}.node-block__plan{font-size:12px;color:#64748b}.node-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:none}.node-tabs::-webkit-scrollbar{display:none}.node-tabs__tab{flex:1 0 auto;min-width:96px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px;border:1px solid var(--border, #e2e8f0);border-radius:10px;background:#fff;cursor:pointer;text-align:left;transition:all .18s ease}.node-tabs__server{font-size:13.5px;font-weight:600;color:#334155}.node-tabs__plan{font-size:11.5px;color:#94a3b8;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-tabs__tab--active{border-color:#1668dc;background:#eef5ff}.node-tabs__tab--active .node-tabs__server{color:#1668dc}.node-tabs__tab--active .node-tabs__plan{color:#5b8fd6}.node-panel{display:flex;flex-direction:column;gap:0}.clients-table .ant-table-tbody>tr>td{padding-top:7px!important;padding-bottom:7px!important}.clients-table .ant-table-thead>tr>th{padding-top:8px!important;padding-bottom:8px!important;font-size:12.5px}.client-cell{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.35}.client-cell__main{font-size:13px;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-cell__sub{font-size:11px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-line{display:flex;align-items:center;gap:5px;min-width:0;line-height:1.35}.client-line strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-sub{font-size:11px;color:var(--muted, #94a3b8);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clients-table .client-user-cell--compact{gap:7px;align-items:flex-start}.clients-table .client-user-cell--compact .ant-avatar{flex:0 0 26px;width:26px!important;height:26px!important;line-height:26px!important;font-size:12px;margin-top:1px}.clients-table .client-user-cell--compact>div{gap:1px}.clients-table .client-user-cell--compact strong{font-size:13px;font-weight:600}.client-mini-tag{margin-inline-end:0!important;padding:0 5px!important;font-size:10px!important;line-height:15px!important;height:15px}.client-traffic{display:flex;flex-direction:column;gap:2px;min-width:0}.client-traffic .client-line{justify-content:space-between}.client-traffic__pct{font-size:11px;font-style:normal;color:#64748b}.client-traffic__bar.ant-progress{margin:0;line-height:1}.client-traffic__bar .ant-progress-inner,.client-traffic__bar .ant-progress-bg{height:4px!important;border-radius:2px}.clients-table .ant-tag{margin-inline-end:0;line-height:16px}.clients-table .text-warning{color:#fa8c16}.clients-table .text-danger{color:#cf1322}.clients-table .ant-btn-sm{padding-inline:7px;font-size:12px}.users-tabs .ant-tabs-nav{margin-bottom:12px}.users-tabs .ant-tabs-tab{padding:8px 4px;font-size:13.5px}.users-tab-pane{min-height:320px}.users-table .ant-table-tbody>tr>td{padding-top:6px!important;padding-bottom:6px!important}.users-table .ant-table-thead>tr>th{padding-top:8px!important;padding-bottom:8px!important;font-size:12.5px}.users-table .table-user-link--compact{gap:7px}.users-table .table-user-link--compact .ant-avatar{flex:0 0 26px;width:26px!important;height:26px!important;line-height:26px!important;font-size:12px}.users-table .table-user-link--compact>span{display:flex;flex-direction:column;gap:0;min-width:0;line-height:1.3}.users-table .table-user-link--compact strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-table .table-user-link--compact small{font-size:11px;color:var(--muted, #94a3b8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-table .ant-select-sm{font-size:12px}.users-table .ant-tag{margin-inline-end:0;line-height:16px}.admin-drawer .ant-drawer-body{padding:18px 20px 28px}.admin-drawer .ant-drawer-body>*{width:100%;max-width:none}.admin-drawer .ant-table-tbody>tr>td{padding-top:8px!important;padding-bottom:8px!important}.admin-drawer .form-grid-2{column-gap:20px}.admin-drawer .ant-descriptions-view{width:100%}@media(min-width:1800px){.admin-content{padding-left:32px;padding-right:32px}}
