@font-face{font-family:OC-OPPOSans-Bold;src:url(/build/assets/OPPOSans-B-subset-DaOmA6em.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{color:#162033;background:#f7fbff;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--accent: #2563eb;--accent-strong: #1d4ed8;--accent-soft: #eff6ff;--blue: #2563eb;--text: #162033;--muted: #65758b;--line: #dbe7ef;--surface: #ffffff;--surface-soft: #f1f8fb;--shadow: 0 16px 36px rgba(31, 82, 108, .1)}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% 0%,rgba(37,99,235,.12),transparent 28%),linear-gradient(135deg,#fbfdff,#eef5ff 48%,#f8fbff);font-size:14px;line-height:1.5;margin:0;min-width:1100px}.bridge-missing{align-items:center;background:#f7fbff;display:flex;inset:0;justify-content:center;min-height:100vh;position:fixed;z-index:20}.bridge-missing div{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:12px;max-width:560px;padding:28px}.bridge-missing h1,.bridge-missing p{margin:0}.bridge-missing p{color:var(--muted);line-height:1.7}.bridge-missing code{background:#1d4ed8;border-radius:8px;color:#fff;padding:10px 12px}.login-screen{align-items:center;background:radial-gradient(circle at 30% 12%,rgba(37,99,235,.13),transparent 28%),linear-gradient(135deg,#f8fdff,#edfffb);display:flex;justify-content:center;min-height:100vh}.login-panel{background:#ffffffeb;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:16px;padding:32px;width:420px}.login-panel h1,.login-panel p{margin:0}.login-panel p{color:var(--muted)}button:not([class*=arco-]),.login-panel input,.context-selectors select,.form input,.form select,.form textarea,.alert-rule-params input{font:inherit}button:not([class*=arco-]){border:0;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--blue));color:#fff;cursor:pointer;font-weight:700;padding:10px 16px;transition:background-color .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}button:not([class*=arco-]):hover:not(:disabled){box-shadow:0 10px 20px #2563eb29;transform:translateY(-1px)}button:not([class*=arco-]):disabled{cursor:not-allowed;opacity:.6}button.secondary:not([class*=arco-]){background:var(--accent-soft);color:var(--accent-strong)}button.ghost:not([class*=arco-]){background:transparent;color:var(--muted)}button.danger:not([class*=arco-]){background:#fff0ed;color:#b3402b}.shell{display:flex;min-height:100vh;overflow:hidden}.sidebar{background:#fff;border-right:1px solid #eef0f4;box-shadow:6px 0 20px #0000000a;color:var(--text);display:flex;flex-direction:column;padding:24px;width:260px;z-index:2}.brand{align-items:center;display:flex;gap:12px;margin-bottom:34px}.brand-logo{border-radius:8px;height:48px;width:48px;object-fit:cover}.brand-version{font-size:11px;font-weight:400;color:var(--muted);margin-left:4px}.link-text{color:rgb(var(--arcoblue-6));cursor:pointer}.link-text:hover{color:rgb(var(--arcoblue-5))}.brand h1,.brand p{margin:0}.brand h1{font-size:18px;line-height:1.25}.brand p{color:var(--muted);font-size:13px;margin-top:4px}.nav{display:grid;gap:8px}.nav button{align-items:center;background:transparent;color:#425466;display:flex;gap:10px;padding:12px;text-align:left}.nav button svg{flex:0 0 auto;font-size:16px}.nav button.active{background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:inset 3px 0 0 var(--accent);color:var(--accent-strong)}.db-box{background:linear-gradient(135deg,#f8fbff,#eff6ff);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:14px}.nav+.db-box{margin-top:auto}.db-box span{color:var(--muted);font-size:12px}.sidebar-logout{color:var(--muted);justify-self:start;padding:4px 0}.main{background:transparent;flex:1;min-width:0;padding:28px;overflow:hidden}.topbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:18px}.topbar h2,.topbar p{margin:0}.context-selectors{align-items:end;display:flex;gap:10px}.context-selectors .selector-item{color:var(--muted);display:grid;font-size:12px;font-weight:800;gap:4px}.context-selectors select,.date-range-control select{min-width:180px;padding:8px 10px}.context-sync{align-self:end;white-space:nowrap}.eyebrow{color:var(--muted);font-size:13px;font-weight:800}.account-id{color:var(--accent-strong);font-size:13px;font-weight:800;margin:6px 0 0}.actions,.sync-buttons,.rec-actions,.table-actions{display:flex;gap:10px}.message{background:#fff8e6;border:1px solid #f5d77d;border-radius:8px;box-shadow:0 10px 24px #f59e0b14;color:#8a5a00;margin:0 0 16px;padding:12px 14px}.page{display:grid;gap:18px;min-width:0}.grid-2{align-items:start;grid-template-columns:420px 1fr}.ranking-grid{align-items:start;display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-grid{display:grid;gap:14px;grid-template-columns:repeat(6,minmax(0,1fr))}.metrics-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.panel,.recommendation{background:#fffffff0;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px #1f526c12}.metric{cursor:pointer;display:grid;gap:8px;padding:18px;position:relative;transition:box-shadow .2s,transform .15s}.metric:hover{box-shadow:0 8px 24px #1f526c24;transform:translateY(-1px)}.metric:before{background:linear-gradient(90deg,var(--accent),var(--blue));border-radius:8px 8px 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.metric span{color:var(--muted);font-size:13px}.metric strong{color:#0f172a;font-size:24px;font-weight:400;font-family:OC-OPPOSans-Bold,pingfang sc,-apple-system,blinkmacsystemfont,segoe ui,hiragino sans gb,microsoft yahei,helvetica neue,sans-serif,"apple color emoji","segoe ui emoji"}.metric-change{font-size:12px;font-weight:500}.metric-change.up{color:#16a34a}.metric-change.down{color:#dc2626}.sparkline-popover{text-align:center}.sparkline-title{font-size:13px;color:#475569;margin-bottom:6px}.sparkline-svg{display:block}.sparkline-range{font-size:11px;color:#94a3b8;margin-top:4px}.panel{padding:18px}.form label{color:#425466;display:grid;gap:6px;font-size:13px;font-weight:700}.form input{border:1px solid var(--line);border-radius:8px;color:var(--text);padding:10px 12px}.check-row{align-items:center;display:flex!important;gap:8px!important}.check-row input{height:16px;width:16px}.table-actions button{padding:8px 10px}.sort-button{background:transparent;color:var(--muted);font-size:13px;padding:0;text-align:left;white-space:nowrap}.sort-text{cursor:pointer;white-space:nowrap}.sort-text:hover{color:var(--primary-color)}.date-range-control{align-items:center;display:flex;gap:8px;justify-content:flex-end}.date-range-control>span{color:var(--muted);font-weight:700;white-space:nowrap}.date-range-control .arco-picker{width:260px}.ranking-list{display:grid;gap:10px}.ranking-item{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:12px}.ranking-item.ranking-good{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}.ranking-item.ranking-good strong{color:#16a34a}.ranking-item.ranking-bad{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#fecaca}.ranking-item.ranking-bad strong{color:#dc2626}.ranking-item span{color:var(--muted);font-size:13px;line-height:1.6}.panel-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.panel-head-left{align-items:center;display:flex}.panel h3,.recommendation h3{margin:0}.panel-note{color:var(--muted);font-size:13px;margin:6px 0 0}.table-scroll-wrapper{box-sizing:border-box;overflow-x:auto;overflow-y:hidden;width:100%}.project-table-wrapper{max-width:calc(100vw - 370px);overflow-y:hidden}.table-scroll-wrapper .arco-table{min-width:100%}.project-table-wrapper .arco-table-container,.project-table-wrapper .arco-table-content,.project-table-wrapper .arco-table-body,.project-table-wrapper .arco-scrollbar-container{overflow-x:auto;overflow-y:hidden}.project-table-wrapper .arco-scrollbar-track-direction-vertical{display:none}.material-cover{background:#edf6fb;border-radius:6px;display:block;height:48px;object-fit:cover;width:64px}.material-cover-empty{align-items:center;color:#3b82f6;display:flex;font-size:12px;justify-content:center}.material-id-cell{display:grid;gap:3px}.material-detail-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 280px}.material-detail-main{display:grid;gap:18px}.material-breadcrumb{align-items:center;display:flex;gap:8px}.material-breadcrumb span{color:#8a9aa3}.material-breadcrumb button{margin-left:auto}.detail-section-title{margin:18px 0 12px}.detail-metrics{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.detail-metric{background:linear-gradient(135deg,#f8fdff,#eff6ff);border:1px solid #e5f0f5;border-radius:4px;display:grid;gap:6px;padding:14px}.detail-metric span,.detail-metric small{color:var(--muted)}.detail-metric strong{font-size:22px}.detail-chart-head{align-items:center;display:flex;justify-content:space-between}.chart-legend{display:flex;gap:18px}.chart-legend span{align-items:center;color:#425466;display:flex;gap:6px}.chart-legend i{display:block;height:3px;width:16px}.chart-legend .blue{background:#2f65ff}.chart-legend .violet{background:#7c3aed}.trend-chart{display:grid;gap:8px}.trend-chart svg{height:280px;width:100%}.grid-line{stroke:#dcecf4;stroke-dasharray:6 6}.line-cost,.line-show{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.line-cost{stroke:#2f65ff}.line-show{stroke:#7c3aed}.trend-dates{color:#8a9aa3;display:flex;font-size:12px;justify-content:space-between}.material-preview{display:grid;gap:12px;position:sticky;top:18px}.material-preview img,.material-preview video,.preview-empty{background:#eef7fb;border-radius:4px;height:360px;object-fit:cover;width:100%}.preview-empty{align-items:center;color:#3b82f6;display:flex;justify-content:center}.material-preview span{color:var(--muted)}.material-preview em{background:#eff6ff;border-radius:4px;font-style:normal;justify-self:start;padding:6px 10px}.form{display:grid;gap:14px}label{color:#425466;display:grid;font-size:13px;font-weight:700;gap:8px}.login-panel input,.context-selectors select,.form input,.form select,.form textarea,.alert-rule-params input{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--text);padding:10px 12px}.login-panel input:focus,.context-selectors select:focus,.form input:focus,.form select:focus,.form textarea:focus,.alert-rule-params input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1f;outline:none}.form textarea{resize:vertical}.account-stats{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0}.account-stats div{background:linear-gradient(135deg,#f8fdff,#eff6ff);border-radius:8px;display:grid;gap:4px;padding:14px}.account-stats span,.account-list small{color:var(--muted);font-size:12px}.account-stats strong{font-size:24px}.account-list{display:grid;gap:12px}.account-list article{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;justify-content:space-between;padding:14px}.account-list article div{display:grid;gap:4px}.account-list span{color:var(--accent-strong);font-size:13px}.recommendation-list{display:grid;gap:14px}.recommendation{padding:18px}.rec-head{align-items:start;display:flex;justify-content:space-between}.priority,.status{border-radius:999px;display:inline-block;font-size:12px;font-weight:800;margin-bottom:8px;padding:4px 8px}.priority.high{background:#fff0ed;color:#b3402b}.priority.medium{background:#fff8e6;color:#765713}.priority.low{background:#edf7ff;color:#245d8f}.status{background:var(--accent-soft);color:var(--accent-strong)}dl{display:grid;gap:8px;grid-template-columns:86px 1fr;margin:16px 0}dt{color:var(--muted);font-weight:800}dd{margin:0}.requirements ol{display:grid;gap:14px;margin:16px 0 0;padding-left:22px}.requirements li{padding-left:4px}.requirements strong,.requirements span{display:block}.requirements span{color:#425466;line-height:1.7;margin-top:4px}.daily-report{display:grid;gap:18px}.report-summary{background:linear-gradient(135deg,#f8fdff,#eff6ff);border-radius:8px;display:grid;gap:8px;padding:16px}.report-summary p{margin:0}.report-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.report-block{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px}.report-block h4,.report-actions h4{margin:0 0 10px}.report-block p{color:#425466;margin:8px 0 0}.report-actions{display:grid;gap:10px}.report-actions article{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:14px}.report-actions span{color:var(--muted);font-size:13px}.report-actions p{margin:0}.empty-report{align-items:center;display:flex;justify-content:space-between}.alert-dashboard{background:#fffffff0;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px #1f526c12;padding:12px}.alert-dashboard.healthy{align-items:center;display:flex;gap:10px;justify-content:center;padding:24px}.healthy-icon{font-size:20px}.alert-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.alert-title-row{align-items:center;display:flex;gap:8px;min-width:0}.alert-header h3{display:flex;align-items:center;gap:8px;margin:0}.help-icon{color:var(--muted);cursor:pointer;height:18px;vertical-align:middle;width:18px}.help-icon:hover{color:var(--accent-strong)}.alert-summary{display:flex;gap:8px}.alert-badge{border-radius:999px;font-size:12px;font-weight:800;line-height:1;padding:5px 10px;white-space:nowrap}.alert-badge.high{background:#fff0ed;color:#b3402b}.alert-badge.medium{background:#fff8e6;color:#765713}.alert-badge.low{background:#edf7ff;color:#245d8f}.alert-table{margin-top:4px}.alert-level-tag{border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;line-height:1;padding:6px 10px;white-space:nowrap}.alert-level-tag.high{background:#fff0ed;color:#b3402b}.alert-level-tag.medium{background:#fff8e6;color:#765713}.alert-level-tag.low{background:#edf7ff;color:#245d8f}.alert-status-tag{border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;line-height:1;padding:6px 10px;white-space:nowrap}.alert-status-tag.alerting{background:#fff8e6;color:#765713}.alert-status-tag.resolved{background:#edf7ff;color:#245d8f}.alert-status-tag.ignored{background:#fff8e6;color:#765713}.alert-scope-button{max-width:168px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table .arco-table-td,.data-table .arco-table-th{overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.data-table .arco-table-td .arco-table-cell,.data-table .arco-table-th .arco-table-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-cell-copy-button{align-items:center;background:#fff;border:1px solid var(--color-border-2, #e5e6eb);border-radius:4px;box-shadow:0 2px 8px #1d21291f;color:rgb(var(--primary-6, 22, 93, 255));cursor:pointer;display:none;height:22px;justify-content:center;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:22px;z-index:3}.table-cell-copy-button:hover{background:var(--color-fill-2, #f2f3f5)}.table-cell-copy-button svg{fill:currentColor;height:15px;width:15px}.cell-ellipsis-tooltip{display:none;position:fixed;z-index:9999;background:#1d2129eb;color:#fff;font-size:13px;line-height:1.5;padding:6px 10px;border-radius:4px;max-width:400px;word-break:break-all;white-space:normal;pointer-events:none;box-shadow:0 4px 12px #00000026}.link-text{color:var(--accent);cursor:pointer;max-width:168px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.link-text:hover{text-decoration:underline}.alert-list{display:grid;gap:10px}.alert-item{border-radius:8px;display:grid;gap:10px;padding:14px}.alert-item.high{background:#fff8f7;border:1px solid #ffd2c9}.alert-item.medium{background:#fffbf0;border:1px solid #ffe9a3}.alert-item.low{background:#f5fbff;border:1px solid #c2e0ff}.alert-content{align-items:center;display:flex;gap:10px}.alert-level{font-size:13px;white-space:nowrap}.alert-message{color:var(--text);font-size:14px}.alert-meta{align-items:center;display:flex;gap:12px;justify-content:space-between}.alert-meta button{padding:6px 12px;font-size:13px}.alert-action{color:var(--muted);font-size:13px}.material-detail-drawer{display:flex;flex-direction:column;gap:20px}.material-preview-drawer{display:flex;flex-direction:column;gap:12px}.material-preview-drawer video,.material-preview-drawer img{background:#eef7fb;border-radius:8px;height:280px;object-fit:cover;width:100%}.preview-empty{background:#eef7fb;border-radius:8px;height:280px;align-items:center;color:#3b82f6;display:flex;justify-content:center}.preview-info{display:flex;flex-direction:column;gap:4px}.preview-info span{color:var(--muted);font-size:13px}.material-data-drawer{display:flex;flex-direction:column}.drawer-date{margin-bottom:8px}.material-data-drawer .detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.alert-rules-content{display:flex;flex-direction:column;gap:20px}.alert-rules-content h4{margin:0 0 8px;font-size:14px}.alert-rules-content h4.level-high{color:#b3402b}.alert-rules-content h4.level-medium{color:#765713}.alert-rules-content ul{margin:0;padding-left:20px}.alert-rules-content li{margin-bottom:6px;color:var(--text)}.alert-rule-config{display:flex;flex-direction:column;gap:16px}.alert-rule-tabs{display:flex;gap:8px;padding-bottom:12px}.alert-rule-tabs button{padding:6px 16px;border:1px solid #e5e6e8;border-radius:4px;background:#fff;cursor:pointer;font-size:13px;color:var(--muted)}.alert-rule-tabs button.active{background:#165dff;color:#fff;border-color:#165dff}.alert-rule-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.alert-rule-item{padding:12px;border:1px solid #e5e6e8;border-radius:6px}.alert-rule-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.rule-name{font-weight:500;color:var(--text);flex:1}.level-tag{padding:2px 8px;border-radius:4px;font-size:12px}.level-tag.high{background:#ffebe6;color:#b3402b}.level-tag.medium{background:#fff7e6;color:#765713}.alert-rule-params{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.alert-rule-params label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.alert-rule-params .params-hint{font-size:12px;color:#999}.alert-rule-actions{display:flex;justify-content:flex-end;padding-top:12px;border-top:1px solid #e5e6e8}.project-detail-drawer{display:flex;flex-direction:column;gap:16px}.project-detail-drawer .detail-metrics{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.project-detail-drawer .detail-metric{display:flex;flex-direction:column;gap:4px}.project-detail-drawer .detail-metric span{color:var(--muted);font-size:12px}.project-detail-drawer .detail-metric strong{color:var(--text);font-size:14px}.column-config-list{display:flex;flex-direction:column;gap:8px}.column-config-item{padding:4px 0}
