.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:56px;background:var(--lg-bg-strong);border-bottom:1px solid var(--bgssai-border)}.app-brand{display:flex;align-items:center}.product-brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.product-brand-wordmark{width:auto;height:22px;display:block}.product-brand-divider{width:1px;height:22px;background:var(--bgssai-border)}.product-brand-name{color:var(--bgssai-text);font-size:17px;font-weight:750;letter-spacing:-.02em}.product-brand-accent{color:var(--bgssai-orange)}.product-brand-local{margin-left:6px;color:var(--bgssai-muted);font-size:13px;font-weight:650;letter-spacing:0}.app-nav{display:flex;gap:20px}.app-nav a{text-decoration:none;color:var(--bgssai-muted);font-size:15px}.app-nav a.active{color:var(--bgssai-blue);font-weight:600}.app-main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:32px 24px}.icp-footer{text-align:center;padding:16px 12px;font-size:12px;line-height:1.7;color:var(--bgssai-muted);border-top:1px solid var(--bgssai-border)}.icp-footer a{color:inherit;text-decoration:none}.icp-footer a:hover{text-decoration:underline;text-underline-offset:2px}.app-badge{background:var(--bgssai-orange);color:#fff;border-radius:12px;padding:2px 9px;font-size:11px;font-weight:700;letter-spacing:.5px}.page h1{font-size:24px;margin-top:0}.page code{background:#eef1f4;padding:1px 6px;border-radius:4px;font-size:.92em}button{background:var(--bgssai-blue);color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:15px;cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}.health-status{margin-top:12px;color:var(--bgssai-muted);font-size:14px}.settings-form{display:flex;flex-direction:column;gap:16px;max-width:480px;margin-top:16px}.settings-field{display:flex;flex-direction:column;gap:6px}.settings-label{font-size:14px;color:var(--bgssai-muted)}.settings-form input{padding:8px 10px;font-size:15px;border:1px solid var(--bgssai-border);border-radius:6px}.settings-form button{align-self:flex-start}.page-media{color:var(--bgssai-text)}.page-subtitle{margin:-4px 0 20px;color:var(--bgssai-muted);font-size:14px}.stats-row{display:grid;gap:14px;margin-bottom:22px}.stats-4{grid-template-columns:repeat(4,1fr)}.stats-5{grid-template-columns:repeat(5,1fr)}.stats-6{grid-template-columns:repeat(6,1fr)}.stat-card{background:var(--lg-bg-strong);border:1px solid var(--bgssai-border);border-radius:10px;padding:16px 18px}.stat-label{font-size:12px;color:var(--bgssai-muted);margin-bottom:8px}.stat-value{font-size:26px;font-weight:800;color:var(--bgssai-text);line-height:1.1}.stat-value.stat-warn{color:#e65100}.stat-value.stat-green{color:#2e7d32}.stat-value.stat-blue{color:var(--bgssai-blue)}.stat-value.stat-red{color:#c62828}.stat-value.stat-gray{color:#6b7480}.card{background:var(--lg-bg-strong);border:1px solid var(--bgssai-border);border-radius:10px;overflow:hidden}.card-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid var(--bgssai-border)}.card-title{font-size:15px;font-weight:700}.card-message{display:flex;gap:14px;flex-wrap:wrap;padding:10px 20px;border-bottom:1px solid var(--bgssai-border);background:var(--lg-bg-soft);font-size:13px}.page-notice{color:#2e7d32}.page-error{color:#c62828}.filter-tabs{display:flex;gap:6px;flex-wrap:wrap}.ftab{background:var(--lg-bg-strong);color:var(--bgssai-muted);border:1px solid var(--bgssai-border);border-radius:6px;padding:6px 13px;font-size:13px;font-weight:500;cursor:pointer}.ftab.active{background:#e8f0ff;color:var(--bgssai-blue);border-color:#b3c8f0;font-weight:600}.ftab-badge{margin-left:6px;background:var(--bgssai-orange);color:#fff;border-radius:9px;padding:0 6px;font-size:11px}.filter-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-select,.filter-input{border:1px solid var(--bgssai-border);border-radius:6px;padding:7px 10px;font-size:13px;outline:none;background:var(--lg-bg-strong);color:var(--bgssai-text)}.filter-input{width:200px}.filter-select:focus,.filter-input:focus{border-color:var(--bgssai-blue)}.btn-search{background:var(--bgssai-blue);color:#fff;border:none;border-radius:6px;padding:7px 16px;font-size:13px;cursor:pointer}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{background:#f7f8fc;text-align:left;padding:11px 14px;font-size:12px;font-weight:600;color:var(--bgssai-muted);border-bottom:1px solid var(--bgssai-border);white-space:nowrap}.data-table td{padding:12px 14px;font-size:13px;color:var(--bgssai-text);border-bottom:1px solid #f0f1f5;vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#f9fafb}.cell-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--bgssai-muted)}.cell-muted{color:#b0b6bd}.empty-hint{text-align:center;padding:44px 0;color:#aab0b7;font-size:14px}.status-badge{display:inline-block;border-radius:12px;padding:3px 10px;font-size:11px;font-weight:600;white-space:nowrap}.badge-pending{background:#fff8e1;color:#a37a00}.badge-approved{background:#e3f2fd;color:#1565c0}.badge-online{background:#e8f5e9;color:#2e7d32}.badge-offline{background:#f1f2f4;color:#57606a}.badge-rejected{background:#ffebee;color:#c62828}.channel-tag{display:inline-block;background:#e8f0ff;color:var(--bgssai-blue);border-radius:10px;padding:2px 9px;font-size:11px;white-space:nowrap}.btn-approve,.btn-reject,.btn-outline,.btn-danger,.btn-success{border-radius:5px;padding:5px 12px;font-size:12px;cursor:pointer;margin-right:6px}.btn-approve{background:#2e7d32;color:#fff;border:none}.btn-reject{background:var(--lg-bg-strong);color:#e53935;border:1px solid #e53935}.btn-outline{background:var(--lg-bg-strong);color:var(--bgssai-muted);border:1px solid var(--bgssai-border)}.btn-outline:hover{border-color:var(--bgssai-blue);color:var(--bgssai-blue)}.btn-danger{background:var(--lg-bg-strong);color:#e53935;border:1px solid #e53935}.btn-danger:hover{background:#ffeaea}.btn-success{background:var(--lg-bg-strong);color:#2e7d32;border:1px solid #2e7d32}.btn-success:hover{background:#e8f5e9}.btn-approve:disabled,.btn-reject:disabled,.btn-danger:disabled,.btn-success:disabled,.btn-price-save:disabled{opacity:.6;cursor:not-allowed}.price-edit{display:flex;align-items:center;gap:6px}.price-edit input{width:90px;border:1px solid var(--bgssai-border);border-radius:5px;padding:5px 8px;font-size:13px;outline:none}.price-edit input:focus{border-color:var(--bgssai-blue)}.btn-price-save{background:var(--bgssai-orange);color:#fff;border:none;border-radius:5px;padding:5px 10px;font-size:12px;cursor:pointer}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--bgssai-border)}.pg-info{margin-right:8px;font-size:13px;color:var(--bgssai-muted)}.pg-btn{background:var(--lg-bg-strong);color:var(--bgssai-text);border:1px solid var(--bgssai-border);border-radius:5px;padding:6px 12px;font-size:13px;cursor:pointer}.pg-btn.active{background:var(--bgssai-blue);color:#fff;border-color:var(--bgssai-blue)}.pg-btn:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-card{background:var(--lg-bg-strong);border-radius:12px;padding:24px 28px;width:480px;max-width:100%}.modal-title{margin:0 0 14px;font-size:16px;font-weight:700}.modal-hint{margin:0 0 12px;font-size:13px;color:var(--bgssai-muted)}.modal-reason-text{margin:0;font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.modal-textarea{width:100%;min-height:104px;border:1px solid var(--bgssai-border);border-radius:6px;padding:10px 12px;font-size:14px;font-family:inherit;resize:vertical;outline:none}.modal-textarea:focus{border-color:var(--bgssai-blue)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.btn-modal-confirm{background:#e53935;color:#fff;border:none;border-radius:6px;padding:9px 20px;font-size:14px;cursor:pointer}.btn-modal-confirm:disabled{opacity:.6;cursor:not-allowed}.btn-modal-cancel{background:var(--lg-bg-strong);color:var(--bgssai-muted);border:1px solid var(--bgssai-border);border-radius:6px;padding:8px 16px;font-size:14px;cursor:pointer}@media(max-width:900px){.stats-4,.stats-5,.stats-6{grid-template-columns:repeat(2,1fr)}.filter-right{margin-left:0}}.app-nav{margin-left:28px;margin-right:auto}.app-user{display:flex;align-items:center;gap:12px}.app-user-name{font-size:14px;color:var(--bgssai-text);font-weight:600}.btn-logout{background:var(--lg-bg-strong);color:var(--bgssai-muted);border:1px solid var(--bgssai-border);border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer}.btn-logout:hover{border-color:var(--bgssai-blue);color:var(--bgssai-blue)}.app-main-auth{flex:1;width:100%;max-width:none;margin:0;padding:0;display:flex;flex-direction:column}.app-shell-auth{background:#0f172a}.app-shell-auth .icp-footer{color:#64748b;border-top-color:#1e293b}.admin-login-viewport{flex:1;min-height:100%;display:flex;align-items:center;justify-content:center;background:#0f172a;padding:40px 16px}.admin-login-card{width:100%;max-width:380px;background:#1e293b;border-radius:12px;padding:40px 36px;box-shadow:0 4px 32px #0006;text-align:center}.admin-login-mark{display:block;margin:0 auto 14px;border-radius:12px}.admin-login-title{margin:0;color:#f1f5f9;font-size:20px;font-weight:700}.admin-login-sub{margin:6px 0 28px;color:#94a3b8;font-size:13px}.admin-login-form{text-align:left}.admin-login-field{display:block;color:#cbd5e1;font-size:13px;margin-bottom:6px}.admin-login-form input{width:100%;box-sizing:border-box;padding:10px 12px;margin-bottom:16px;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#f1f5f9;font-size:14px;outline:none}.admin-login-form input:focus{border-color:#2563eb}.admin-login-error{background:#450a0a;border:1px solid #991b1b;border-radius:6px;padding:8px 12px;color:#fca5a5;font-size:13px;margin:0 0 16px}.admin-login-submit{width:100%;padding:11px;border-radius:8px;border:none;background:#2563eb;color:#fff;font-size:15px;font-weight:600;cursor:pointer}.admin-login-submit:disabled{opacity:.5;cursor:not-allowed}.config-form{max-width:640px}.config-textarea{min-height:120px;padding:9px 12px;font-size:13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid var(--bgssai-border);border-radius:6px;outline:none;resize:vertical}.config-textarea:focus{border-color:var(--bgssai-blue)}.config-badge{margin-left:8px;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:600}.config-badge-on{background:#e8f5e9;color:#2e7d32}.config-badge-off{background:#f1f2f4;color:#57606a}.config-hint{font-size:12px;color:var(--bgssai-muted)}.config-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.config-field-inline{flex-direction:row;align-items:center;gap:10px}@media(max-width:700px){.config-row{grid-template-columns:1fr}}.app-header,.card,.media-card,.stat-card,.modal-panel,.drawer-panel,.side-panel,.filter-bar,.toolbar,.list-table,.table-wrap,.pagination,.empty-state,.form-card,.wallet-card,.order-card,.task-card,.draft-card,.mcp-token-card,.auth-card,.wechat-fast-login-dialog,.dropdown-menu,.popover,.toast,.page-panel{background:var(--lg-bg-strong);border-color:var(--lg-hairline);box-shadow:var(--lg-shadow);-webkit-backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness))}.app-header{position:sticky;top:0;z-index:50;background:var(--lg-bg-strong);box-shadow:var(--lg-shadow-nav);-webkit-backdrop-filter:blur(var(--lg-blur-strong)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));backdrop-filter:blur(var(--lg-blur-strong)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness))}.btn-outline{background:var(--lg-bg)!important;-webkit-backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate));backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate))}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{background:var(--lg-bg);border-color:var(--lg-hairline);-webkit-backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate));backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate))}.modal-card,.stat-card,.ftab,.wx-fast-login-dialog,.wx-fast-login-panel{background:var(--lg-bg-strong);border-color:var(--lg-hairline);-webkit-backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness))}.modal-overlay{-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%);background:#0f172a47!important}:root{--lg-blur: 20px;--lg-blur-strong: 28px;--lg-blur-soft: 12px;--lg-saturate: 180%;--lg-brightness: 1.05;--lg-bg: rgba(255, 255, 255, .52);--lg-bg-soft: rgba(255, 255, 255, .38);--lg-bg-strong: rgba(255, 255, 255, .72);--lg-bg-tint: rgba(248, 250, 255, .58);--lg-bg-dark-veil: rgba(15, 23, 42, .04);--lg-hairline: rgba(15, 23, 42, .08);--lg-hairline-strong: rgba(15, 23, 42, .12);--lg-rim: rgba(255, 255, 255, .65);--lg-rim-soft: rgba(255, 255, 255, .35);--lg-shadow: 0 1px 0 rgba(255, 255, 255, .55) inset, 0 8px 28px rgba(15, 23, 42, .08), 0 2px 8px rgba(15, 23, 42, .04);--lg-shadow-nav: 0 1px 0 rgba(255, 255, 255, .6) inset, 0 4px 18px rgba(15, 23, 42, .06);--lg-shadow-modal: 0 1px 0 rgba(255, 255, 255, .7) inset, 0 24px 64px rgba(15, 23, 42, .18), 0 8px 24px rgba(15, 23, 42, .08);--lg-radius: 14px;--lg-radius-sm: 10px;--lg-radius-lg: 20px;--lg-radius-pill: 999px;--lg-page-bg: radial-gradient(1200px 640px at 8% -12%, rgba(37, 99, 235, .18), transparent 58%), radial-gradient(980px 720px at 108% 0%, rgba(249, 115, 22, .14), transparent 55%), radial-gradient(900px 800px at 50% 110%, rgba(124, 58, 237, .1), transparent 58%), linear-gradient(180deg, #f4f7ff 0%, #eef2f8 46%, #f7f8fb 100%);--glass-bg-strong: var(--lg-bg-strong);--glass-hairline: var(--lg-hairline);--glass-blur: var(--lg-blur);--glass-saturate: var(--lg-saturate);--card: var(--lg-bg-strong);--input-bg: var(--lg-bg);--surface-2: var(--lg-bg-soft)}.lg-page,html.lg-enabled,body.lg-enabled{background:var(--lg-page-bg);background-attachment:fixed;min-height:100%}body.lg-enabled{background-color:transparent}.lg-surface,.lg-card,.lg-nav,.lg-panel,.lg-modal,.lg-input,.lg-chip,.lg-popover{position:relative;isolation:isolate;background:#ffffffeb;border:1px solid var(--lg-hairline);box-shadow:var(--lg-shadow)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.lg-surface,.lg-card,.lg-nav,.lg-panel,.lg-modal,.lg-input,.lg-chip,.lg-popover{background:var(--lg-bg);-webkit-backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness))}.lg-nav{background:var(--lg-bg-strong);-webkit-backdrop-filter:blur(var(--lg-blur-strong)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));backdrop-filter:blur(var(--lg-blur-strong)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));box-shadow:var(--lg-shadow-nav)}.lg-card,.lg-panel{background:var(--lg-bg-strong)}.lg-modal{background:var(--lg-bg-strong);-webkit-backdrop-filter:blur(var(--lg-blur-strong)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));backdrop-filter:blur(var(--lg-blur-strong)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness));box-shadow:var(--lg-shadow-modal)}.lg-input{background:var(--lg-bg);-webkit-backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate));backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate));box-shadow:inset 0 1px 0 var(--lg-rim-soft)}.lg-chip,.lg-popover{background:var(--lg-bg-tint);-webkit-backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate));backdrop-filter:blur(var(--lg-blur-soft)) saturate(var(--lg-saturate))}}.lg-surface,.lg-card,.lg-panel{border-radius:var(--lg-radius)}.lg-nav{border-radius:0;border-left:none;border-right:none;border-top:none;border-bottom:1px solid var(--lg-hairline)}.lg-modal{border-radius:var(--lg-radius-lg)}.lg-input{border-radius:var(--lg-radius-sm)}.lg-chip{border-radius:var(--lg-radius-pill)}.lg-surface:before,.lg-card:before,.lg-panel:before,.lg-modal:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.45) 0%,rgba(255,255,255,.08) 18%,transparent 42%);opacity:.9;z-index:0}.lg-surface>*,.lg-card>*,.lg-panel>*,.lg-modal>*{position:relative;z-index:1}.lg-fill{background:var(--lg-bg-strong)!important;border-color:var(--lg-hairline)!important;box-shadow:var(--lg-shadow)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.lg-fill{-webkit-backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness))!important;backdrop-filter:blur(var(--lg-blur)) saturate(var(--lg-saturate)) brightness(var(--lg-brightness))!important}}@media(prefers-reduced-transparency:reduce){:root{--lg-bg: rgba(255, 255, 255, .96);--lg-bg-soft: rgba(255, 255, 255, .94);--lg-bg-strong: rgba(255, 255, 255, .98);--lg-bg-tint: rgba(255, 255, 255, .96);--lg-blur: 0px;--lg-blur-strong: 0px;--lg-blur-soft: 0px}.lg-surface,.lg-card,.lg-nav,.lg-panel,.lg-modal,.lg-input,.lg-chip,.lg-popover,.lg-fill{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}:root{--bgssai-blue: #2563eb;--bgssai-orange: #f97316;--bgssai-text: #0f172a;--bgssai-muted: #64748b;--bgssai-border: var(--lg-hairline);--bgssai-bg: transparent;--brand: #2563eb;--brand-orange: #f97316;--glass-bg-strong: var(--lg-bg-strong);--glass-hairline: var(--lg-hairline);--glass-blur: var(--lg-blur);--glass-saturate: var(--lg-saturate);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft Yahei,sans-serif;line-height:1.6;color:var(--bgssai-text)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%}html,body{background:var(--lg-page-bg);background-attachment:fixed}#root{min-height:100vh;background:transparent}
