.app-shell{height:100vh}.app-sider{border-right:1px solid #1c1c1c;flex-direction:column;display:flex;position:relative;background:#0a0a0a!important}.app-brand{color:#fff;flex:none;align-items:center;gap:10px;height:64px;padding:0 18px;display:flex}.app-brand-mark{color:#0a0a0a;letter-spacing:-.5px;background:#fff;border-radius:7px;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;font-weight:800;display:flex}.app-brand-text{letter-spacing:-.3px;font-size:17px;font-weight:650}.app-brand-ai{color:#8f8f8f}.app-brand-sub{color:#5f5f5f;letter-spacing:1.4px;text-transform:uppercase;flex:none;margin-top:-6px;padding:0 18px 14px;font-size:10.5px}.app-menu{flex:1;padding-top:4px;overflow:auto;border-inline-end:none!important}.app-menu .ant-menu-item{letter-spacing:.2px;font-size:13.5px}.app-sider-footer{border-top:1px solid #1c1c1c;flex:none;padding:14px 18px 18px}.app-version{color:#8a8a8a;font-size:11.5px}.app-sider-mono{color:#4a4a4a;letter-spacing:1.2px;margin-top:3px;font-size:9.5px}.app-header{backdrop-filter:blur(8px);border-bottom:1px solid #ededed;justify-content:space-between;align-items:center;display:flex;background:#ffffffeb!important;padding:0 20px!important}.header-left{align-items:center;gap:10px;min-width:0;display:flex}.header-title{letter-spacing:.1px;font-size:15px;font-weight:650}.header-right{align-items:center;gap:10px;display:flex}.header-user{color:#3d3d3d;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.header-avatar{color:#fff;background:#111;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:600;display:inline-flex}.app-content{height:calc(100vh - 56px);overflow:hidden}.app-content>*{height:100%}@media (width<=1100px){.header-user-name{display:none}}.header-logout{color:#3d3d3d;cursor:pointer;background:#fff;border:1px solid #ededed;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;transition:all .15s;display:inline-flex}.header-logout:hover{color:#111;border-color:#111}*{box-sizing:border-box}html,body,#root{color:#111;background:#f2f2f2;height:100%;margin:0;padding:0;overflow:hidden}body{-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}button{font-family:inherit}.app-loading{justify-content:center;align-items:center;height:100vh;display:flex}.page{height:100%;padding:20px 24px 28px;overflow:auto}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page-header-title{letter-spacing:-.3px;font-size:20px;font-weight:650}.page-header-desc{color:#6b6b6b;margin-top:4px;font-size:12.5px;line-height:1.7}.page-header-actions{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.mono-card{background:#fff;border:1px solid #ededed;border-radius:12px;padding:20px}.mono-card-title{letter-spacing:.2px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-size:15px;font-weight:600;display:flex}.mono-card-desc{color:#6b6b6b;font-size:12.5px;line-height:1.7}.mono-stat-card{position:relative}.mono-stat-label{color:#8a8a8a;letter-spacing:.4px;text-transform:uppercase;font-size:12px}.mono-stat-value{letter-spacing:-.5px;align-items:baseline;gap:4px;min-height:34px;margin-top:6px;font-size:26px;font-weight:650;display:flex}.mono-stat-suffix{color:#8a8a8a;font-size:12px;font-weight:400}.mono-stat-icon{color:#c2c2c2;font-size:22px;position:absolute;bottom:18px;right:18px}.mono-hint{color:#9a9a9a;font-size:12px}.mono-muted{color:#6b6b6b}.mono-strong{font-weight:600}.mono-divider{background:#ededed;height:1px;margin:14px 0}.mono-loading{color:#6b6b6b;justify-content:center;align-items:center;gap:8px;font-size:12.5px;display:flex}.mono-empty{background:#fafafa;border:1px dashed #dcdcdc;border-radius:12px;padding:24px}.page-grid{gap:16px;display:grid}.page-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.page-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=1280px){.page-grid-4,.page-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.page-grid-2,.page-grid-3,.page-grid-4{grid-template-columns:minmax(0,1fr)}}.cell-sub{color:#9a9a9a;margin-top:2px;font-size:11.5px}.cell-mono{font-family:Consolas,SFMono-Regular,Menlo,monospace;font-size:12px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d5d5d5;border:2px solid #f2f2f2;border-radius:6px}::-webkit-scrollbar-track{background:0 0}.login-page{background:#f2f2f2;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);height:100vh;display:grid}.login-brand{color:#fff;background:#0a0a0a;flex-direction:column;justify-content:space-between;padding:48px;display:flex}.login-brand-top{align-items:center;gap:12px;display:flex}.login-mark{color:#0a0a0a;background:#fff;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:20px;font-weight:800;display:flex}.login-brand-title{letter-spacing:-.3px;font-size:20px;font-weight:650}.login-brand-sub{color:#8f8f8f;letter-spacing:1.6px;text-transform:uppercase;margin-top:4px;font-size:11px}.login-brand-body{max-width:420px}.login-slogan{letter-spacing:-.5px;font-size:30px;font-weight:650;line-height:1.35}.login-slogan-muted{color:#8a8a8a}.login-desc{color:#9a9a9a;margin-top:16px;font-size:13px;line-height:1.9}.login-brand-foot{color:#5f5f5f;letter-spacing:.4px;font-size:11.5px}.login-panel{justify-content:center;align-items:center;padding:32px;display:flex}.login-card{width:100%;max-width:400px}.login-card-title{letter-spacing:-.3px;font-size:22px;font-weight:650}.login-card-sub{color:#6b6b6b;margin:6px 0 22px;font-size:12.5px}.login-note{text-align:center;color:#9a9a9a;margin-top:16px;font-size:11.5px;line-height:1.7}@media (width<=900px){.login-page{grid-template-columns:minmax(0,1fr)}.login-brand{display:none}.login-panel{padding:20px}}.kv-list{flex-direction:column;display:flex}.kv-row{border-bottom:1px solid #f5f5f5;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 2px;font-size:12.5px;display:flex}.kv-row:last-child{border-bottom:none}.kv-label{color:#8a8a8a;flex:none}.kv-value{color:#111;text-align:right;word-break:break-all}.quick-actions{flex-direction:column;gap:8px;display:flex}.quick-action{color:#111;text-align:left;cursor:pointer;background:#fff;border:1px solid #ededed;border-radius:10px;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;font-family:inherit;font-size:18px;transition:border-color .15s,background .15s;display:flex}.quick-action:hover{background:#fafafa;border-color:#111}.quick-action-title{margin-bottom:2px;font-size:13px;font-weight:600}.quick-action-desc{color:#8a8a8a;font-size:11.5px;line-height:1.6}.table-toolbar,.upstream-import{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.upstream-import .ant-input-affix-wrapper,.upstream-import>.ant-input{flex:260px;min-width:220px}.upstream-selection{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-modules{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=900px){.settings-modules{grid-template-columns:minmax(0,1fr)}}.settings-module{background:#fcfcfc;border:1px dashed #e3e3e3;border-radius:10px;padding:12px 14px}.settings-module-title{align-items:center;gap:6px;margin-bottom:4px;font-size:12.5px;font-weight:600;display:flex}.settings-about-brand{align-items:center;gap:12px;margin-bottom:12px;display:flex}.settings-brand-mark{color:#fff;background:#111;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;font-weight:800;display:inline-flex}.settings-brand-title{letter-spacing:-.3px;font-size:17px;font-weight:700;line-height:1.2}.settings-brand-ai{color:#8a8a8a}.settings-brand-sub{color:#9a9a9a;letter-spacing:1.2px;text-transform:uppercase;margin-top:2px;font-size:11px}
