:root{color:#202633;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:1040px;color:#202633}button,input,select{font:inherit}.app-shell{min-height:100vh;padding:12px}.panel{min-height:calc(100vh - 24px);overflow:hidden;border:1px solid #e1e6ee;border-radius:10px;background:#fff;box-shadow:0 18px 44px #1219260f}.topbar{display:flex;align-items:center;gap:8px;min-height:56px;padding:10px 14px;border-bottom:1px solid #e8edf4;background:linear-gradient(#fff,#fbfcfe)}.brand-chip,.account-select,.date-button,.primary-button,.ghost-button,.icon-button,.filter-chip,.square-tool,.view-button{height:34px;border:1px solid #dfe5ee;border-radius:7px;background:#fff;color:#232a38;box-shadow:0 1px 2px #0f172a0a}.brand-chip{display:inline-flex;align-items:center;gap:7px;padding:0 11px;font-size:15px;font-weight:760}.brand-icon{display:inline-flex;color:#1877f2}.account-select{min-width:280px;padding:0 32px 0 11px;font-size:14px;font-weight:650}.primary-button,.ghost-button,.date-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;cursor:pointer;font-size:13px;font-weight:700}.primary-button{border-color:#244bb3;background:#244bb3;color:#fff}.primary-button.large{height:38px;padding:0 14px}.primary-button:disabled,.budget-link:disabled{cursor:not-allowed;opacity:.48}.ghost-button{color:#344054}.icon-button,.square-tool{width:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.date-button{min-width:214px;font-size:13px}.date-control{position:relative}.date-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:12;width:330px;padding:12px;border:1px solid #dbe1ea;border-radius:8px;background:#fff;box-shadow:0 18px 42px #0f172a29}.date-popover-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:13px}.date-popover-header button{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border:1px solid #e1e5ec;border-radius:6px;background:#fff;cursor:pointer}.preset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.preset-grid button{height:30px;border:1px solid #dce2eb;border-radius:6px;background:#fff;color:#344054;cursor:pointer;font-size:12px;font-weight:650}.preset-grid button.active{border-color:#9aa8d8;background:#f5f7ff;color:#244bb3}.custom-range{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.custom-range label{display:grid;gap:5px;color:#596273;font-size:12px;font-weight:650}.custom-range input{height:32px;min-width:0;border:1px solid #d6dce6;border-radius:6px;padding:0 8px;color:#202633;font-size:12px}.date-apply{width:100%;margin-top:12px}.topbar-spacer{flex:1}.warning-strip{display:flex;align-items:center;gap:8px;margin:12px 16px 0;padding:8px 11px;border:1px solid #f0d99d;border-radius:7px;background:#fff8e6;color:#7a5200;font-size:13px;font-weight:600}.warning-strip.error,.modal-error{border-color:#fecaca;background:#fef2f2;color:#b42318}.warning-strip.info{border-color:#d7e3fb;background:#f7faff;color:#3152ba}.warning-strip.compact{margin:14px 0 0}.inline-action{border:0;background:transparent;color:#244bb3;cursor:pointer;font-weight:800;text-decoration:underline}.filterbar{padding:10px 16px;border-bottom:1px solid #e8edf4;background:#fbfcfe}.view-primary-row,.view-drawer{display:flex;align-items:center;gap:8px}.view-primary-row{min-height:34px}.view-drawer{margin-top:10px;padding-top:10px;border-top:1px solid #edf1f6}.view-control{display:grid;width:148px;min-width:132px;gap:3px}.view-control-wide{width:240px;min-width:190px}.view-control-small{width:118px;min-width:108px}.view-control span{display:inline-flex;align-items:center;gap:5px;color:#667085;font-size:10px;font-weight:780;letter-spacing:0;text-transform:uppercase}.view-control select,.save-view-form input{width:100%;height:30px;border:1px solid #dfe5ee;border-radius:7px;background:#fff;color:#202633;font-size:12px;font-weight:650;outline:0}.view-control select{padding:0 26px 0 9px}.save-view-form{display:flex;min-width:260px;align-items:center;gap:6px;margin-left:auto}.save-view-form input{width:150px;padding:0 9px}.view-button{display:inline-flex;height:30px;align-items:center;justify-content:center;gap:5px;padding:0 10px;color:#2e3b52;cursor:pointer;font-size:12px;font-weight:760;white-space:nowrap}.view-button:hover{border-color:#b9c6d9;background:#f8fafc}.view-button.active{border-color:#b7c4eb;background:#f7f9ff;color:#244bb3}.view-button.muted{color:#667085}.view-button.icon-only{width:30px;padding:0}.view-error{display:flex;align-items:center;gap:7px;margin-top:8px;color:#b42318;font-size:12px;font-weight:700}.column-layout-panel{margin-top:10px;padding:10px;border:1px solid #e1e7ef;border-radius:8px;background:#fff;box-shadow:0 8px 22px #0f172a0f}.column-layout-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:12px}.column-layout-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:6px}.column-layout-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding:6px 7px;border:1px solid #edf1f6;border-radius:7px;background:#fbfcfe}.column-layout-row label{display:flex;min-width:0;align-items:center;gap:7px;color:#2e3645;font-size:12px;font-weight:700}.column-layout-actions{display:flex;align-items:center;gap:6px}.column-layout-row input{width:14px;height:14px;accent-color:#3152ba}.column-width-value{min-width:44px;color:#667085;font-size:11px;font-weight:700;text-align:right}.column-action-group{display:flex}.column-action-group button{display:inline-flex;width:26px;height:24px;align-items:center;justify-content:center;border:1px solid #dfe5ee;border-radius:6px;background:#fff;color:#566178;cursor:pointer;font-size:13px;font-weight:800}.column-action-group button+button{margin-left:-1px}.column-action-group button:first-child{border-radius:6px 0 0 6px}.column-action-group button:last-child{border-radius:0 6px 6px 0}.column-action-group button:disabled{cursor:not-allowed;opacity:.38}.filter-chip.active,.square-tool{border-color:#b7c4eb;background:#f7f9ff;color:#244bb3}.search-field{display:flex;width:min(360px,28vw);min-width:240px;height:30px;align-items:center;gap:8px;padding:0 8px 0 10px;border:1px solid #e0e5ed;border-radius:7px;background:#fff;box-shadow:0 1px 2px #0f172a0d}.search-field input{min-width:0;flex:1;border:0;outline:0;font-size:12px}kbd{padding:2px 6px;border:1px solid #d7dbe2;border-radius:5px;background:#f9fafb;color:#777f8f;font-size:11px}.entity-tabs{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));max-width:960px;padding:12px 16px 0;background:#fff}.entity-tab{display:flex;height:40px;align-items:center;gap:8px;padding:0 15px;border:1px solid #e3e7ee;border-bottom:0;border-radius:8px 8px 0 0;background:#f8fafc;color:#3d4451;cursor:pointer;font-size:14px;font-weight:700;text-align:left}.entity-tab.active{background:#fff;color:#244bb3;box-shadow:inset 0 2px #3152ba}.table-wrap{position:relative;overflow:auto;border-top:1px solid #e5eaf1}.table-placeholder{padding:10px 14px;border-bottom:1px solid #e2e5ea;background:#f7f8fa;color:#606979;font-size:13px;font-weight:600}.table-context{display:flex;align-items:center;gap:9px;min-height:38px;padding:7px 16px;border-bottom:1px solid #edf1f6;background:#fff;color:#667085;font-size:12px}.drill-path{display:inline-flex;min-width:0;align-items:center;gap:6px;color:#667085}.drill-path button{border:0;background:transparent;color:#244bb3;cursor:pointer;font-size:12px;font-weight:750}.drill-path button:disabled{color:#667085;cursor:default}.drill-path strong{overflow:hidden;max-width:240px;text-overflow:ellipsis;white-space:nowrap}.table-context strong{color:#2d3442;font-weight:700}.sync-status{margin-left:auto;color:#667085;font-weight:650}.sync-status.success{border-radius:999px;padding:3px 8px;background:#effaf3;color:#157347}.sync-status.failed{color:#b42318}.sync-status.running{color:#966412}.ops-table{width:100%;min-width:1320px;border-collapse:separate;border-spacing:0;background:#fff;table-layout:fixed}.ops-table th,.ops-table td{height:48px;padding:0 10px;border-right:1px solid #f0f3f7;border-bottom:1px solid #f0f3f7;text-align:left;vertical-align:middle}.ops-table th{position:sticky;top:0;z-index:1;height:38px;background:#fbfcfe;color:#394150;font-size:12px;font-weight:760}.ops-table tbody tr:nth-child(2n){background:#fcfdff}.ops-table tbody tr:hover{background:#f7faff}.empty-row{color:#667085;font-size:13px;text-align:center!important}.checkbox-col{width:42px;text-align:center}.checkbox-col input{width:16px;height:16px;border-radius:4px;accent-color:#3152ba}.toggle-col{width:72px}.toggle{display:inline-flex;width:36px;height:20px;align-items:center;padding:2px;border-radius:999px;background:#e7e9ed}.toggle span{width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #10182824}.toggle.on{justify-content:flex-end;background:#2f55c7}.header-cell{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-cell svg{width:14px;height:14px;flex:0 0 auto;margin-left:auto;color:#8a94a6;opacity:0}.ops-table th:hover .header-cell svg{opacity:1}.column-resizer{position:absolute;top:-12px;right:-10px;width:9px;height:42px;border:0;background:transparent;cursor:col-resize}.column-resizer:after{position:absolute;top:9px;right:3px;width:1px;height:24px;background:#aeb8c8;content:"";opacity:0}.column-resizer:hover:after,.column-resizer:focus-visible:after{opacity:1}.name-cell{min-width:0}.name-cell strong{display:block;margin-bottom:4px;overflow:hidden;font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.name-cell span{display:inline-flex;align-items:center;gap:5px;color:#535c6b;font-size:12px}.row-action{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#2f55c7;cursor:pointer;font-size:12px;font-weight:750;padding:0}.status-pill,.match-pill,.connection-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700}.status-pill span{width:8px;height:8px;border:0;border-radius:50%;background:currentColor}.status-pill.paused{color:#c29214}.status-pill.running{color:#168a4a}.status-pill.archived{color:#697386}.numeric{text-align:right!important;font-size:13px;white-space:nowrap}.placement-cell{overflow:hidden}.placement-cell span{display:inline-block;max-width:100%;overflow:hidden;padding:3px 7px;border-radius:999px;background:#f3f6fb;color:#4b5565;font-size:12px;font-weight:700;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.budget-link{border:0;background:transparent;color:#5268a7;cursor:pointer;font-size:14px;font-weight:750;text-decoration:underline}.performance.negative,.negative-text{color:#cf3f50;font-weight:750}.performance.positive,.positive-text{color:#11834c;font-weight:750}.performance.neutral{color:#667085}.match-pill{border-radius:999px;padding:3px 8px;font-size:12px}.match-pill.matched{background:#eaf8ef;color:#147a45}.match-pill.partial{background:#fff5df;color:#966412}.match-pill.unmatched{background:#fdecec;color:#b42318}.empty-state{display:grid;min-height:420px;place-items:center;align-content:center;padding:32px;text-align:center}.empty-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:14px;background:#eaf1ff;color:#1877f2}.empty-state h1{margin:16px 0 7px;font-size:22px}.empty-state p{max-width:560px;margin:0 0 18px;color:#606979;font-size:14px;line-height:1.5}.login-card{display:grid;width:min(380px,calc(100vw - 56px));min-height:420px;align-content:center;gap:14px;margin:0 auto;padding:42px 0;text-align:center}.login-card .empty-icon{margin:0 auto}.login-card h1{margin:2px 0 0;font-size:22px}.login-card p{margin:0;color:#606979;font-size:14px;line-height:1.5}.login-card input{height:38px;border:1px solid #d0d5dd;border-radius:6px;padding:0 11px;font-size:13px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0f172a6b}.modal{width:min(820px,100%);max-height:min(700px,calc(100vh - 40px));overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 80px #0f172a47}.modal.narrow{width:min(480px,100%)}.modal.settings-modal{width:min(680px,100%)}.modal-header,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid #e5e7eb}.modal-actions{border-top:1px solid #e5e7eb;border-bottom:0}.modal h2{margin:0 0 4px;font-size:18px}.modal p{margin:0;color:#667085;font-size:13px}.modal-error{margin:14px 18px 0;padding:10px 12px;border:1px solid;border-radius:6px;font-size:13px}.settings-grid{display:grid;gap:13px;padding:16px 18px}.settings-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.settings-grid label{display:grid;gap:6px;color:#344054;font-size:13px;font-weight:700}.settings-grid input,.settings-grid select,.settings-grid textarea{width:100%;border:1px solid #d0d5dd;border-radius:6px;color:#202633;font-size:13px}.settings-grid input,.settings-grid select{height:36px;padding:0 10px}.settings-grid textarea{min-height:88px;resize:vertical;padding:9px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.settings-grid .inline-check{display:flex;align-items:center;gap:8px;font-weight:650}.settings-grid .inline-check input{width:14px;height:14px}.settings-note{padding:10px 12px;border:1px solid #dbe8ff;border-radius:6px;background:#f5f8ff;color:#3152ba;font-size:12px;font-weight:650}.settings-test-result{display:grid;gap:3px;padding:10px 12px;border:1px solid #b9e6c9;border-radius:6px;background:#f1fbf5;color:#147a45;font-size:12px;font-weight:650}.settings-test-result span,.settings-test-result small{color:#315f45}.connection-list{display:grid;gap:12px;padding:16px 18px}.connection-card{border:1px solid #e1e4e8;border-radius:7px;overflow:hidden}.connection-card-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f8fafc}.connection-card-header strong,.connection-card-header span{display:block}.connection-card-header span{color:#667085;font-size:12px}.connection-status.active{color:#147a45}.connection-status.needs_reconnect{color:#b42318}.account-list{display:grid}.account-option{display:grid;grid-template-columns:20px 1fr auto;gap:10px;align-items:center;padding:11px 14px;border-top:1px solid #edf0f4}.account-option input{width:16px;height:16px;accent-color:#3152ba}.account-option strong,.account-option small{display:block}.account-option small{margin-top:3px;color:#667085;font-size:12px}.account-option em{color:#147a45;font-size:12px;font-style:normal;font-weight:700}.account-option em.muted{color:#667085}.budget-summary{display:grid;grid-template-columns:1fr auto;gap:10px;margin:16px 18px;padding:14px;border:1px solid #e1e4e8;border-radius:7px;background:#fbfcfe;font-size:13px}.budget-summary span{color:#667085}.budget-input{display:grid;gap:7px;margin:16px 18px 0;font-size:13px;font-weight:700}.budget-input input{height:36px;border:1px solid #d0d5dd;border-radius:6px;padding:0 10px}html[data-theme=dark],html[data-theme=dark] body{color:#dbe4f0;background:#0f141d}html[data-theme=dark] .panel,html[data-theme=dark] .modal,html[data-theme=dark] .date-popover{border-color:#293241;background:#151b26;box-shadow:0 18px 52px #00000059}html[data-theme=dark] .topbar,html[data-theme=dark] .filterbar,html[data-theme=dark] .entity-tabs,html[data-theme=dark] .table-context,html[data-theme=dark] .ops-table,html[data-theme=dark] .ops-table th,html[data-theme=dark] .modal-header,html[data-theme=dark] .modal-actions,html[data-theme=dark] .connection-card-header,html[data-theme=dark] .column-layout-panel{border-color:#293241;background:#111722;color:#dbe4f0}html[data-theme=dark] .brand-chip,html[data-theme=dark] .account-select,html[data-theme=dark] .date-button,html[data-theme=dark] .ghost-button,html[data-theme=dark] .icon-button,html[data-theme=dark] .filter-chip,html[data-theme=dark] .square-tool,html[data-theme=dark] .view-button,html[data-theme=dark] .view-control select,html[data-theme=dark] .save-view-form input,html[data-theme=dark] .column-action-group button,html[data-theme=dark] .search-field,html[data-theme=dark] .date-popover-header button,html[data-theme=dark] .preset-grid button,html[data-theme=dark] .entity-tab,html[data-theme=dark] .settings-grid input,html[data-theme=dark] .settings-grid select,html[data-theme=dark] .settings-grid textarea,html[data-theme=dark] .login-card input,html[data-theme=dark] .custom-range input,html[data-theme=dark] .budget-input input{border-color:#334155;background:#1b2431;color:#dbe4f0;box-shadow:none}html[data-theme=dark] .view-control span{color:#9aa7b8}html[data-theme=dark] .view-drawer{border-color:#293241}html[data-theme=dark] .column-width-value{color:#9aa7b8}html[data-theme=dark] .primary-button{border-color:#5f7df2;background:#5f7df2;color:#fff}html[data-theme=dark] .filter-chip.active,html[data-theme=dark] .square-tool,html[data-theme=dark] .view-button.active,html[data-theme=dark] .preset-grid button.active,html[data-theme=dark] .entity-tab.active{border-color:#5f7df2;background:#202b45;color:#b9c8ff}html[data-theme=dark] .table-wrap,html[data-theme=dark] .filterbar,html[data-theme=dark] .entity-tabs,html[data-theme=dark] .table-placeholder,html[data-theme=dark] .ops-table th,html[data-theme=dark] .ops-table td,html[data-theme=dark] .modal-header,html[data-theme=dark] .modal-actions,html[data-theme=dark] .account-option,html[data-theme=dark] .budget-summary,html[data-theme=dark] .column-layout-row{border-color:#293241}html[data-theme=dark] .column-layout-row{background:#151b26}html[data-theme=dark] .column-layout-row label{color:#dbe4f0}html[data-theme=dark] .placement-cell span{background:#202938;color:#cbd5e1}html[data-theme=dark] .view-error{color:#ffb4a8}html[data-theme=dark] .ops-table tbody tr:nth-child(2n){background:#171f2b}html[data-theme=dark] .ops-table tbody tr:nth-child(odd){background:#151b26}html[data-theme=dark] .ops-table tbody tr:hover{background:#1b2533}html[data-theme=dark] .table-context strong,html[data-theme=dark] .ops-table th,html[data-theme=dark] .name-cell strong,html[data-theme=dark] .modal h2,html[data-theme=dark] .connection-card strong{color:#f3f7fb}html[data-theme=dark] .empty-row,html[data-theme=dark] .table-placeholder,html[data-theme=dark] .table-context,html[data-theme=dark] .drill-path,html[data-theme=dark] .sync-status,html[data-theme=dark] .name-cell span,html[data-theme=dark] .empty-state p,html[data-theme=dark] .login-card p,html[data-theme=dark] .modal p,html[data-theme=dark] .settings-grid label,html[data-theme=dark] .custom-range label,html[data-theme=dark] .account-option small,html[data-theme=dark] .account-option em.muted,html[data-theme=dark] .budget-summary,html[data-theme=dark] .budget-summary span{color:#9aa7b8}html[data-theme=dark] .drill-path button,html[data-theme=dark] .row-action{color:#b9c8ff}html[data-theme=dark] .drill-path button:disabled{color:#9aa7b8}html[data-theme=dark] .warning-strip{border-color:#6f5720;background:#2d2414;color:#f4d179}html[data-theme=dark] .warning-strip.info{border-color:#294b82;background:#142238;color:#9cc4ff}html[data-theme=dark] .sync-status.success{background:#10291f;color:#7ee2a8}html[data-theme=dark] .warning-strip.error,html[data-theme=dark] .modal-error{border-color:#7f2d2d;background:#311a1d;color:#fca5a5}html[data-theme=dark] .settings-note{border-color:#294b82;background:#142238;color:#9cc4ff}html[data-theme=dark] .settings-test-result,html[data-theme=dark] .match-pill.matched{border-color:#1f6b45;background:#10291f;color:#7ee2a8}html[data-theme=dark] .settings-test-result span,html[data-theme=dark] .settings-test-result small{color:#9bd8b2}html[data-theme=dark] .match-pill.partial{background:#332510;color:#f2c46b}html[data-theme=dark] .match-pill.unmatched{background:#351a1d;color:#fca5a5}html[data-theme=dark] .empty-icon{background:#172947;color:#74a6ff}html[data-theme=dark] .connection-card{border-color:#293241}html[data-theme=dark] .budget-summary{background:#111722}html[data-theme=dark] kbd{border-color:#334155;background:#111722;color:#9aa7b8}html[data-theme=dark] .column-resizer:after{background:#64748b}
