:root{--n-0: #ffffff;--n-25: #fbfcfd;--n-50: #f5f7fa;--n-100:#eef1f6;--n-150:#e4e8ef;--n-200:#d8dde7;--n-300:#c2c9d6;--n-400:#98a1b3;--n-500:#6b7488;--n-600:#4e5668;--n-700:#39404f;--n-800:#252b36;--n-900:#151922;--n-950:#0d1017;--bg: var(--n-50);--panel: var(--n-0);--panel-sunk: var(--n-25);--border: var(--n-150);--border-strong: var(--n-300);--text: var(--n-900);--text-dim: var(--n-600);--text-faint: #68717f;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: #eef0fe;--accent-line: #c3c6f8;--accent-on: #ffffff;--head-bg: var(--n-100);--row-hover: var(--n-50);--group-bg: var(--n-100);--roi-great: #05603a;--roi-good: #067a4a;--roi-mid: #a16207;--roi-warn: #c2410c;--roi-bad: #c0392f;--ok: #067a4a;--ok-soft: #e3f5ec;--ok-line: #a8ddc3;--warn: #7d5906;--warn-bg: #fdf4dd;--warn-line: #e8ca70;--danger: #c0392f;--danger-soft: #fceceb;--danger-line: #eebcb7;--info: #2a5f8f;--info-soft: #e8f1f9;--info-line: #b6d2e8;--violet: #6b4a86;--violet-soft: #f1eaf6;--violet-line: #d3c1e0;--orange: #a3541a;--orange-soft: #fde7d3;--orange-line: #e08a3c;--orange-hover:#f9d5b6;--warn-hover: #f8ecd2;--r-sm: 6px;--r-md: 9px;--r-lg: 14px;--r-full: 999px;--shadow-sm: 0 1px 2px rgba(16, 20, 30, .05);--shadow-md: 0 2px 8px rgba(16, 20, 30, .07), 0 1px 2px rgba(16, 20, 30, .05);--shadow-lg: 0 16px 44px rgba(16, 20, 30, .18);--radius: var(--r-md);--radius-sm: var(--r-sm);--chart-2: #1baf7a;--chart-3: #b45309}[data-theme=dark]{--chart-2: #199e70;--chart-3: #c2853c;--bg: #141517;--panel: #1c1e21;--panel-sunk: #17191b;--border: #2b2e32;--border-strong: #43474d;--text: #eceef1;--text-dim: #adb2b9;--text-faint: #8b9099;--accent: #8189f5;--accent-hover: #9aa1f8;--accent-soft: #24262f;--accent-line: #3f4463;--accent-on: #14151a;--head-bg: #212427;--row-hover: #202325;--group-bg: #212427;--roi-great: #5fe3a9;--roi-good: #3ecf94;--roi-mid: #e3b45c;--roi-warn: #f59356;--roi-bad: #f4736a;--ok: #3ecf94;--ok-soft: #16261f;--ok-line: #2b5340;--warn: #e3b45c;--warn-bg: #2a2517;--warn-line: #574a26;--danger: #f4736a;--danger-soft: #2b1c1b;--danger-line: #593330;--info: #74b6ea;--info-soft: #16222c;--info-line: #2e4a61;--violet: #bb9fd9;--violet-soft: #241f2c;--violet-line: #443655;--orange: #e8a05c;--orange-soft: #2b2117;--orange-line: #664325;--orange-hover:#362818;--warn-hover: #332d1c;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 2px 10px rgba(0, 0, 0, .55);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .7)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font:13px/1.45 -apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em}table.data td,table.data th,.pill,.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}::selection{background:var(--accent-soft)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:11px;height:11px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-full);border:3px solid var(--panel)}*::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.layout{display:flex;flex-direction:column;height:100%;overflow:hidden}.main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.topbar{display:flex;align-items:center;gap:14px;padding:9px 16px;background:var(--panel);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);z-index:5}.brand{font-size:14px;font-weight:800;letter-spacing:1.2px;color:var(--text);white-space:nowrap}.nav-tiles{display:flex;align-items:center;gap:3px;padding:3px;background:var(--panel-sunk);border:1px solid var(--border);border-radius:var(--r-full)}.nav-tile{display:inline-flex;align-items:center;gap:7px;padding:7px 15px;border:none;border-radius:var(--r-full);background:transparent;color:var(--text-dim);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .13s ease,color .13s ease}.nav-tile:hover{background:var(--row-hover);color:var(--text)}.nav-tile.active{background:var(--accent);color:var(--accent-on);box-shadow:var(--shadow-sm)}.nav-tile.active:hover{background:var(--accent-hover);color:var(--accent-on)}.nav-tile-icon{font-size:13px}.theme-toggle{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--r-full);background:var(--panel);cursor:pointer;font-size:15px;color:var(--text-dim);transition:background .13s ease,color .13s ease,border-color .13s ease}.theme-toggle:hover{background:var(--row-hover);color:var(--text);border-color:var(--border-strong)}.seg{display:inline-flex;padding:2px;gap:2px;background:var(--panel-sunk);border:1px solid var(--border);border-radius:var(--r-full)}.seg-btn{padding:5px 13px;border:none;border-radius:var(--r-full);background:transparent;color:var(--text-dim);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .13s ease,color .13s ease}.seg-btn:hover{color:var(--text)}.seg-btn.active{background:var(--panel);color:var(--text);box-shadow:var(--shadow-sm)}.page{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 14px;gap:10px;overflow:hidden}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);padding:11px 13px;box-shadow:var(--shadow-sm)}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar-rows{display:flex;flex-direction:column;gap:8px}.toolbar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tb-group{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--panel);color:var(--text);font:inherit;font-weight:600;white-space:nowrap;transition:background .13s ease,border-color .13s ease,color .13s ease}.pill-dim{color:var(--text-dim);font-weight:500;background:var(--panel-sunk)}button.pill{cursor:pointer}button.pill:hover{background:var(--row-hover);border-color:var(--border-strong)}button.pill:active{transform:translateY(.5px)}button.pill:disabled{opacity:.45;cursor:default}button.pill:disabled:hover{background:var(--panel);border-color:var(--border)}button.pill.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on);box-shadow:var(--shadow-sm)}button.pill.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}input,select,textarea{font:inherit;color:inherit;padding:6px 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--panel);outline:none;transition:border-color .13s ease,box-shadow .13s ease}input:hover,select:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input.search{min-width:220px}.spacer{flex:1}.table-wrap{flex:1;min-height:0;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}table.data{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}table.data th,table.data td{padding:6px 9px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);text-align:right;white-space:nowrap;vertical-align:middle;background:var(--panel)}table.data th{position:sticky;top:0;z-index:3;background:var(--head-bg);font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-dim);text-align:right;padding-top:8px;padding-bottom:8px;border-bottom:1px solid var(--border-strong)}table.data td.txt{text-align:left}table.data th.center{text-align:center}table.data th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}table.data th.sortable:hover{background:var(--row-hover);color:var(--text)}table.data th.sorted{color:var(--accent)}.sort-mark{display:inline-block;width:9px;margin-left:3px;opacity:.9}table.data th.sortable:not(.sorted) .sort-mark{opacity:0}table.data th.sortable:hover:not(.sorted) .sort-mark{opacity:.35}table.data tbody tr:hover td{background:var(--row-hover)}table.data td.lite{color:var(--text-dim);font-weight:400}tr.spacer-row td{height:7px;padding:0;background:var(--bg);border-right:none}tr.total td{background:var(--group-bg);font-weight:700;border-bottom:1px solid var(--border-strong)}tr.total:hover td{background:var(--group-bg)}tr.group td{background:var(--group-bg);font-weight:700;text-align:left}tr.geo-band td{position:sticky;left:0;background:linear-gradient(90deg,var(--accent-soft),var(--panel-sunk) 60%,var(--panel));border-top:2px solid var(--accent-line);border-bottom:1px solid var(--accent-line);border-right:none;padding:9px 14px;text-align:left}tr.geo-band:hover td{background:linear-gradient(90deg,var(--accent-soft),var(--panel-sunk) 60%,var(--panel))}.geo-band-inner{display:flex;align-items:baseline;gap:12px}.geo-band-code{font-size:17px;font-weight:800;letter-spacing:.5px;color:var(--accent)}.geo-band-flag{font-size:19px}.geo-band-meta{font-size:11px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px}.geo-band-stat{font-weight:700;color:var(--text)}.geo-band-sep{width:1px;align-self:stretch;background:var(--accent-line);margin:0 2px}.geo-band-today-label{font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:2px 8px;border-radius:var(--r-full);background:var(--accent);color:var(--accent-on)}.muted{color:var(--text-faint)}td.edit{cursor:text}td.edit:hover{box-shadow:inset 0 0 0 1px var(--accent-line)}td.edit input{width:100%;padding:2px 4px;border:1px solid var(--accent);border-radius:4px;text-align:inherit;font:inherit}td.editing-wide{min-width:520px;background:var(--accent-soft)!important;padding:7px 9px;white-space:normal}.cell-textarea{width:100%;min-width:500px;padding:7px 9px;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--panel);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5;resize:vertical;word-break:break-all;outline:none}.edit-hint{display:block;margin-top:4px;font-size:10px;font-weight:600;color:var(--accent);letter-spacing:.3px}.roi-good{color:var(--roi-good);font-weight:700}.roi-mid{color:var(--roi-mid);font-weight:700}.roi-warn{color:var(--roi-warn);font-weight:700}.roi-bad{color:var(--roi-bad);font-weight:700}.roi-great{color:var(--roi-great);font-weight:800;background:var(--ok-soft);border:1px solid var(--ok-line);border-radius:var(--r-sm);padding:0 4px;white-space:nowrap}.status{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;border:1px solid transparent}.status-active{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.status-stop{background:var(--danger-soft);color:var(--roi-bad);border-color:var(--danger-line)}.status-reject{background:var(--violet-soft);color:var(--violet);border-color:var(--violet-line)}.status-warn{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}.status-none{background:var(--panel-sunk);color:var(--text-faint);border-color:var(--border)}.grp{position:relative;display:inline-block;width:100%}.grp-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:3px 2px;border:none;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--r-sm)}.grp-trigger:hover{background:var(--row-hover)}.grp-trigger:hover .grp-edit{opacity:1}.grp-name{font-weight:700;white-space:nowrap}.grp-fp{flex:1;min-width:0;font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grp-edit{opacity:0;font-size:10px;font-weight:700;letter-spacing:.4px;color:var(--accent);white-space:nowrap;transition:opacity .13s ease}.grp-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:60;width:330px;display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}.grp-field{display:flex;flex-direction:column;gap:4px}.grp-field input,.grp-field textarea{width:100%;resize:vertical}.grp-foot{display:flex;gap:7px}table.data{table-layout:fixed}table.data th{overflow:hidden}.col-resize{position:absolute;top:0;right:0;width:7px;height:100%;cursor:col-resize;z-index:4}.col-resize:hover{background:var(--accent);opacity:.55}table.data[data-text=ellipsis] td,table.data[data-text=ellipsis] th{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}table.data[data-text=clip] td,table.data[data-text=clip] th{overflow:hidden;text-overflow:clip;white-space:nowrap}table.data[data-text=wrap] td{white-space:normal;word-break:break-word;overflow:visible}table.data tr.geo-band td,table.data tr.adset-head td,table.data td.empty{overflow:visible;text-overflow:clip}.col-badge{margin-left:6px;padding:0 6px;border-radius:var(--r-full);background:var(--panel-sunk);border:1px solid var(--border);font-size:10px;font-weight:700;color:var(--text-dim)}button.pill.primary .col-badge{background:#ffffff2e;border-color:transparent;color:var(--accent-on)}.col-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:290px;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}.col-menu-head{display:flex;align-items:center;gap:8px;padding:9px 11px;border-bottom:1px solid var(--border);background:var(--panel-sunk)}.col-list{max-height:420px;overflow-y:auto;padding:5px}.col-item{display:flex;align-items:center;gap:7px;padding:4px 6px;border-radius:var(--r-sm);border:1px solid transparent}.col-item:hover{background:var(--row-hover)}.col-item.dragging{opacity:.4}.col-item.over{border-color:var(--accent);background:var(--accent-soft)}.col-item.off .col-label{color:var(--text-faint)}.col-item.locked{opacity:.65}.col-grip{cursor:grab;color:var(--text-faint);font-size:12px;-webkit-user-select:none;user-select:none}.col-item.locked .col-grip{cursor:default}.col-label{flex:1;display:flex;align-items:center;gap:7px;cursor:pointer;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-steps{display:flex;gap:2px}.col-steps .icon-btn{padding:1px 5px;font-size:11px;line-height:1.3}.col-steps .icon-btn:disabled{opacity:.3;cursor:default}.sync-bar{height:8px;border-radius:var(--r-full);background:var(--panel-sunk);border:1px solid var(--border);overflow:hidden}.sync-bar-fill{height:100%;background:var(--accent);transition:width .25s ease}.sync-toast{position:fixed;left:16px;bottom:16px;z-index:80;width:300px;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}.sync-toast-head{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:var(--panel);cursor:pointer;font:inherit;text-align:left}.sync-toast-head:hover{background:var(--row-hover)}.sync-toast-title{flex:1;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-toast-close{color:var(--text-faint);font-size:15px;line-height:1;padding:0 3px}.sync-toast-close:hover{color:var(--text)}.sync-dot{width:9px;height:9px;border-radius:999px;flex:0 0 auto;background:var(--text-faint)}.sync-dot.ok{background:var(--ok)}.sync-dot.err{background:var(--danger)}.sync-dot.spin{background:var(--accent);animation:sync-pulse 1s ease-in-out infinite}@keyframes sync-pulse{0%,to{opacity:1}50%{opacity:.35}}.sync-toast-bar{height:3px;background:var(--panel-sunk);overflow:hidden}.sync-toast-fill{height:100%;background:var(--accent);transition:width .3s ease}.sync-toast-body{padding:10px 12px;border-top:1px solid var(--border);background:var(--panel-sunk);font-size:12px}.trend-chart{position:relative}.trend-legend{display:flex;gap:16px;margin-bottom:6px;font-size:12px;font-weight:600;color:var(--text-dim)}.trend-legend-item{display:inline-flex;align-items:center;gap:6px}.trend-legend-line{width:14px;height:2px;border-radius:999px;display:inline-block}.trend-svg{width:100%;height:auto;display:block;overflow:visible}.trend-grid{stroke:var(--border);stroke-width:1}.trend-axis{font-size:9px;fill:var(--text-faint);font-variant-numeric:tabular-nums}.trend-line{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.trend-end-label{font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.trend-crosshair{stroke:var(--border-strong);stroke-width:1;pointer-events:none}.trend-tooltip{position:absolute;top:6px;transform:translate(-50%);min-width:130px;padding:8px 10px;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-md);pointer-events:none;z-index:5}.trend-tooltip-date{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text-faint);margin-bottom:4px}.trend-tooltip-row{display:flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap}.trend-tooltip-key{width:10px;height:2px;border-radius:999px;display:inline-block}.stat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.stat-tile{padding:12px 14px;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.stat-tile-label{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}.stat-tile-value{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2}.stat-tile-delta{margin-top:4px;font-size:12px;font-weight:700}.stat-tile-delta.up{color:var(--ok)}.stat-tile-delta.down{color:var(--danger)}.stat-tile-delta.flat{color:var(--text-faint)}.dash-section{display:flex;flex-direction:column;gap:10px}.dash-section-title{font-size:13px;font-weight:800;margin-bottom:2px}.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:start}.dash-grid-2{grid-template-columns:repeat(2,1fr)}@media (max-width: 900px){.dash-grid,.dash-grid-2{grid-template-columns:1fr}}.stat-tiles-inline{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0}.stat-tiles-inline .stat-tile{padding:8px 10px}.stat-tiles-inline .stat-tile-value{font-size:20px}.stat-tile-sub{margin-top:2px;font-size:11px;color:var(--text-faint);white-space:nowrap}.pill-late{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}.dash-tile{display:flex;flex-direction:column;gap:6px;min-width:0}@media (max-width: 900px){.dash-grid{grid-template-columns:1fr}}.trend-chart.compact .trend-legend{font-size:10px;gap:10px}.trend-chart.compact .trend-end-label{font-size:9px}.trend-chart.compact .trend-axis{font-size:8px}.geo-rank-list{display:flex;flex-direction:column;gap:7px;flex:1;justify-content:center}.geo-rank-row{display:grid;grid-template-columns:52px 1fr auto auto;align-items:center;gap:8px}.geo-rank-name{font-size:12px;font-weight:700;white-space:nowrap}.geo-rank-bar-track{height:6px;border-radius:999px;background:var(--panel-sunk);border:1px solid var(--border);overflow:hidden}.geo-rank-bar{display:block;height:100%;background:var(--accent);border-radius:999px}.geo-rank-spend{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:62px;text-align:right}.geo-rank-roi{font-size:12px;font-weight:800;min-width:56px;text-align:right}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:22px;border:2px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--panel-sunk);cursor:pointer;transition:border-color .13s ease,background .13s ease}.drop:hover{border-color:var(--accent-line)}.drop.over{border-color:var(--accent);background:var(--accent-soft)}tr.slot-empty td{opacity:.62}.imp-tag{display:inline-block;margin-right:5px;padding:1px 8px;border-radius:var(--r-full);background:var(--panel-sunk);border:1px solid var(--border);font-size:10px;font-weight:700}.imp-tag.hot{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.imp-tag.warn{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn)}.imp-details{display:flex;flex-direction:column;gap:7px;padding:10px 4px}.imp-stats{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--text-dim)}.imp-log{max-height:240px;overflow:auto;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--panel-sunk);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.dp{position:relative;display:inline-block}.dp-trigger{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--panel);font:inherit;font-weight:600;color:var(--text);cursor:pointer;white-space:nowrap;transition:border-color .13s ease,background .13s ease}.dp-trigger:hover{border-color:var(--border-strong);background:var(--row-hover)}.dp-trigger.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.dp-icon{font-size:13px}.dp-caret{color:var(--text-faint);font-size:10px}.dp-preset-tag{padding:1px 8px;border-radius:var(--r-full);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-size:10px;font-weight:700}.dp-pop{display:grid;grid-template-columns:auto auto;grid-template-areas:"presets cals" "foot foot";background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}.dp-pop.dp-portal{position:fixed;z-index:200;max-width:calc(100vw - 24px)}.dp-presets{grid-area:presets;display:flex;flex-direction:column;padding:8px;gap:1px;min-width:190px;background:var(--panel-sunk);border-right:1px solid var(--border)}.dp-preset{text-align:left;padding:7px 11px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text-dim);font:inherit;font-weight:500;cursor:pointer;white-space:nowrap}.dp-preset:hover{background:var(--row-hover);color:var(--text)}.dp-preset.active{background:var(--accent);color:var(--accent-on);font-weight:700}.dp-cals{grid-area:cals;display:flex;gap:20px;padding:12px 14px}.dp-cal{width:224px}.dp-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.dp-month{font-weight:700;font-size:13px}.dp-nav,.dp-nav-spacer{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.dp-nav{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--panel);color:var(--text-dim);cursor:pointer;font-size:14px;line-height:1}.dp-nav:hover{background:var(--row-hover);color:var(--text);border-color:var(--border-strong)}.dp-week,.dp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dp-week span{text-align:center;font-size:10px;font-weight:700;letter-spacing:.4px;color:var(--text-faint);padding-bottom:4px}.dp-day{height:28px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;transition:background .1s ease}.dp-day:hover{background:var(--accent-soft)}.dp-day.out{color:var(--text-faint);opacity:.55}.dp-day.today{box-shadow:inset 0 0 0 1px var(--border-strong);font-weight:700}.dp-day.in-range{background:var(--accent-soft);border-radius:0}.dp-day.sel{background:var(--accent);color:var(--accent-on);font-weight:700}.dp-day.sel-start{border-radius:var(--r-sm) 0 0 var(--r-sm)}.dp-day.sel-end{border-radius:0 var(--r-sm) var(--r-sm) 0}.dp-day.sel:hover{background:var(--accent-hover)}.dp-foot{grid-area:foot;display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--border);background:var(--panel-sunk)}.dp-hint{font-size:12px;color:var(--text-dim)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#080b128c;display:flex;align-items:center;justify-content:center;padding:24px}.modal-card{max-width:96vw;max-height:90vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border-strong);border-radius:14px;box-shadow:0 18px 48px transparent;overflow:hidden}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--head-bg)}.modal-title{font-size:15px;font-weight:800}.modal-sub{font-size:12px;color:var(--text-dim);margin-top:2px}.modal-body{flex:1;min-height:0;overflow:auto;padding:14px 16px}.modal-foot{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--border);background:var(--row-hover)}table.data td input.cellinput{width:100%;padding:4px 6px;border:1px solid var(--border);border-radius:5px;font:inherit}table.data td input.cellinput:focus{border-color:var(--accent)}tr.link-group td{background:var(--group-bg);border-top:2px solid var(--border-strong);padding:7px 12px}tr.link-group:hover td{background:var(--group-bg)}.link-os{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.6px;margin-right:9px}.link-service{font-size:13px;font-weight:800;letter-spacing:.3px}td.url-cell{max-width:460px}.url-text{display:block;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--text-dim)}tr:hover .url-text{white-space:normal;word-break:break-all;color:var(--text)}.url-editor{width:100%;min-height:190px;padding:12px 14px;border:1px solid var(--accent-line);border-radius:var(--radius-sm);background:var(--panel);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.65;word-break:break-all;resize:vertical;outline:none}.url-editor:focus{border-color:var(--accent)}.macro-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}.macro-tag{padding:2px 8px;border-radius:999px;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.token-full{display:inline-block;max-width:420px;word-break:break-all;white-space:normal}td.copy-cell{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;max-width:340px;overflow:hidden;text-overflow:ellipsis}td.copy-cell:hover{background:var(--row-hover);box-shadow:inset 0 0 0 1px var(--accent-line)}td.copy-cell.is-copied{background:var(--accent-soft)!important;box-shadow:inset 0 0 0 1px var(--accent)}.copy-flag{position:absolute;right:6px;top:50%;transform:translateY(-50%);padding:1px 7px;border-radius:999px;background:var(--accent);color:var(--accent-on);font-size:9px;font-weight:800;letter-spacing:.4px}.unset-tag{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn);font-size:10px;font-weight:800;letter-spacing:.5px}tr.pick-row{cursor:pointer}tr.pick-row:hover td{background:var(--accent-soft)}tr.pick-busy td{background:var(--warn-bg)}tr.pick-busy td:first-child{border-left:3px solid var(--warn-line)}tr.pick-busy:hover td{background:var(--warn-hover)}tr.pick-over td{background:var(--orange-soft)}tr.pick-over td:first-child{border-left:3px solid var(--orange-line)}tr.pick-over:hover td{background:var(--orange-hover)}.pick-current-tag{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.3px}.plan-badge{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--panel);border:1px solid var(--warn-line);color:var(--warn);font-size:10px;font-weight:800;letter-spacing:.3px}.plan-badge-over{border-color:var(--orange-line);color:var(--orange)}.acc-status-tag{display:inline-block;padding:1px 7px;border-radius:999px;font-size:10px;font-weight:700;border:1px solid var(--border);background:var(--panel);color:var(--text-dim)}.acc-status-tag.acc-status-active{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.acc-status-tag.acc-status-ban{background:var(--danger-soft);color:var(--roi-bad);border-color:var(--danger-line)}.acc-status-tag.acc-status-freeze{background:var(--info-soft);color:var(--info);border-color:var(--info-line)}.legend{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--text-dim);margin-right:12px}.legend i{width:11px;height:11px;border-radius:3px;display:inline-block;border:1px solid var(--border-strong)}.dot-free{background:var(--panel)}.dot-busy{background:var(--warn-bg);border-color:var(--warn-line)}.dot-over{background:var(--orange-soft);border-color:var(--orange-line)}tr.plan-date td{background:var(--group-bg);border-top:2px solid var(--border-strong);font-size:13px;font-weight:800;letter-spacing:.4px;padding:7px 12px}tr.plan-date:hover td{background:var(--group-bg)}.plan-dots{display:inline-flex;gap:4px}.plan-dot{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--panel);cursor:pointer;padding:0;color:var(--border-strong);font-size:17px;line-height:1}.plan-dot:hover{border-color:var(--border-strong);background:var(--row-hover)}.plan-dot.on-done{color:var(--ok);background:var(--ok-soft);border-color:var(--ok-line)}.plan-dot.on-ready{color:var(--warn);background:var(--warn-bg);border-color:var(--warn-line)}.acc-cell-btn{display:block;width:100%;text-align:left;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer;padding:4px 7px;font:inherit;color:inherit}.acc-cell-btn:hover{border-color:var(--accent);background:var(--row-hover)}.acc-cell-btn.empty-pick{color:var(--text-faint)}.acc-cell{display:flex;align-items:center;gap:4px}.acc-cell .acc-cell-btn{flex:1;min-width:0}.acc-cell-actions{flex:none;display:flex;gap:3px;opacity:.4;transition:opacity .12s ease}tr:hover .acc-cell-actions,.acc-cell-actions:focus-within{opacity:1}.acc-cell-actions .icon-btn{padding:2px 6px;line-height:1.2}.acc-cell-actions .icon-btn.ok{color:var(--ok);border-color:var(--ok-line);background:var(--ok-soft)}tr.acc-agency td{background:var(--accent-soft);border-top:2px solid var(--accent-line);border-bottom:1px solid var(--accent-line);font-size:14px;font-weight:800;letter-spacing:.4px;color:var(--accent);padding:8px 12px}tr.acc-agency:hover td{background:var(--accent-soft)}.acc-pill{display:inline-block;margin-left:10px;padding:1px 9px;border-radius:999px;background:var(--panel);border:1px solid var(--accent-line);font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--accent)}tr.acc-social td{background:var(--group-bg);font-size:11px;font-weight:700;letter-spacing:.4px;color:var(--text-dim);padding:5px 12px 5px 22px}tr.acc-social:hover td{background:var(--group-bg)}select.acc-status{border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;cursor:pointer}select.acc-status-active{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}select.acc-status-ban{background:var(--danger-soft);color:var(--roi-bad);border-color:var(--danger-line)}select.acc-status-freeze{background:var(--info-soft);color:var(--info);border-color:var(--info-line)}select.acc-status-no_topup{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}select.acc-status-other{background:var(--violet-soft);color:var(--violet);border-color:var(--violet-line)}select.acc-status-none{background:var(--panel);color:var(--text-faint)}.split{flex:1;min-height:0;min-width:0;display:grid;grid-template-rows:var(--top, 52%) 8px 1fr}.split-pane{min-height:0;min-width:0;display:flex;flex-direction:column;gap:8px}.split-handle{cursor:row-resize;border-radius:999px;background:var(--border);margin:2px 0}.split-handle:hover{background:var(--accent-line)}.pane-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:800;padding:0 2px}.pane-sub{font-size:11px;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px}.sub{display:block;font-size:11px;color:var(--text-faint);font-weight:400}.expander{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-dim);padding:0 4px}.expander:hover{color:var(--accent)}tr.adset td{background:var(--info-soft);color:var(--text);border-bottom:1px solid var(--info-line)}tr.adset:hover td{background:var(--info-soft)}tr.adset td:first-child{border-left:3px solid var(--info);background:var(--info-soft)}tr.adset td.adset-name{font-weight:700;padding-left:20px}tr.adset-head td{background:var(--info-soft);color:var(--info);font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;padding-left:20px;border-bottom:1px solid var(--info-line)}tr.adset-head td:first-child{border-left:3px solid var(--info)}.adset-status{display:inline-block;padding:1px 7px;border-radius:999px;background:var(--panel);border:1px solid var(--info-line);color:var(--info);font-size:10px;font-weight:700;letter-spacing:.4px}.empty{padding:40px;text-align:center;color:var(--text-faint)}.icon-btn{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius-sm);cursor:pointer;padding:3px 7px;color:var(--text-dim);font-size:13px}.icon-btn:hover{background:var(--row-hover);color:var(--text)}.icon-btn.danger:hover{color:var(--roi-bad);border-color:var(--danger-line);background:var(--danger-soft)}.sort-levels{display:flex;flex-direction:column;gap:8px}.sort-level{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--panel-sunk);border:1px solid var(--border);border-radius:var(--r-md)}.sort-level-num{flex:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-full);background:var(--accent);color:var(--accent-on);font-size:11px;font-weight:700}.sort-level select{min-width:150px}.ctl-btn{margin-left:4px;padding:1px 5px;opacity:.35;transition:opacity .12s ease}tr:hover .ctl-btn{opacity:1}.ctl-block{margin-top:14px}.ctl-confirm{margin-top:14px;padding:10px 12px;background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:var(--r-md)}.ctl-btn.has-notes{opacity:1;color:var(--accent);border-color:var(--accent-line)}.note-add{display:flex;gap:8px}.note-add input{flex:1;min-width:0}.note-list{margin-top:12px;display:flex;flex-direction:column;gap:6px}.note-row{display:flex;align-items:baseline;gap:10px;padding:7px 10px;background:var(--panel-sunk);border:1px solid var(--border);border-radius:var(--r-md)}.note-time{flex:none;font-size:11px;color:var(--text-faint);white-space:nowrap}.note-text{flex:1;min-width:0;word-break:break-word}.note-row .icon-btn{flex:none;padding:1px 6px;opacity:.4}.note-row:hover .icon-btn{opacity:1}.cell-notes{display:block;margin-top:2px}.cell-notes span{display:block;font-size:10px;line-height:1.35;color:var(--accent);white-space:nowrap}table.data td.m1{font-weight:700;color:var(--text)}table.data td.m2{font-weight:400;color:var(--text)}table.data th.m1{color:var(--text);font-weight:800}table.data td.date-cell{text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px;text-decoration-thickness:1px}.add-head{display:flex;gap:10px}.add-head label{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.add-head input{width:100%}.add-ids{width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--panel);color:var(--text);font:inherit;font-variant-numeric:tabular-nums;resize:vertical}.add-ids:focus{outline:none;border-color:var(--accent)}.adset-creative{color:var(--text-dim);font-size:12px}.rates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:10px;align-items:start}.rates-partner{grid-column:1 / -1;margin-top:6px;font-size:13px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--accent)}.rates-grid>.rates-partner:first-child{margin-top:0}.rates-card{padding:10px 12px 4px}.rates-card-head{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.rates-geo{font-size:14px;font-weight:800}.rates-variant{font-size:11px;color:var(--text-dim);background:var(--panel-sunk);border:1px solid var(--border);border-radius:var(--r-full);padding:1px 7px}.rates-table{width:100%}.rates-table th,.rates-table td{padding:4px 7px}.rates-table th:first-child,.rates-table td:first-child{width:55%}.pill-bonus{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.rates-notes{flex-wrap:wrap;gap:6px}.pane-title{display:flex;align-items:baseline;gap:10px}.pane-title .pill{align-self:center}.caps-table thead th{position:sticky;top:0;z-index:2;background:var(--panel)}.caps-table td.txt,.caps-table th.txt{text-align:left}.caps-table input.cap-num{width:62px;text-align:right}.caps-table td select{font:inherit;padding:3px 5px;border-radius:5px;border:1px solid var(--border);background:var(--panel);color:var(--text)}.caps-table td:last-child input{min-width:180px}.cap-row-dim td{opacity:.5}.cap-chk{display:flex;align-items:center;gap:5px;white-space:nowrap}.cap-bar-wrap{display:flex;align-items:center;gap:7px;justify-content:flex-end}.cap-bar{width:72px;height:7px;border-radius:4px;background:var(--border);overflow:hidden;flex:none}.cap-bar span{display:block;height:100%;border-radius:4px}.cap-bar-val{font-weight:700;min-width:38px;text-align:right}.cap-ok span{background:var(--roi-good)}.cap-near span{background:var(--roi-mid)}.cap-feed span{background:var(--roi-warn)}.cap-over span{background:var(--roi-bad)}.cap-ok+.cap-bar-val,.cap-bar-wrap .cap-ok~.cap-bar-val{color:var(--roi-good)}.cap-bar-wrap .cap-near~.cap-bar-val{color:var(--roi-mid)}.cap-bar-wrap .cap-feed~.cap-bar-val{color:var(--roi-warn)}.cap-bar-wrap .cap-over~.cap-bar-val{color:var(--roi-bad)}.cap-rate-prev{color:var(--text-dim);font-size:11px;text-decoration:line-through}.pill.cap-pill-feed{background:var(--warn-bg);color:var(--roi-warn);border-color:var(--warn-line, var(--border))}.pill.cap-pill-over{background:var(--danger-soft);color:var(--roi-bad);border-color:var(--danger-line)}.caps-add{width:560px}.caps-add-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.caps-add-row label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.caps-add-row input,.caps-add-row select{font:inherit;text-transform:none;letter-spacing:0;color:var(--text);padding:5px 7px;border:1px solid var(--border);border-radius:6px;background:var(--panel);width:110px}.caps-add-names{width:100%;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);resize:vertical}.caps-add-names:focus,.caps-add-row input:focus,.caps-add-row select:focus{border-color:var(--accent);outline:none}.caps-add-result{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.cap-requested{color:var(--text-dim);font-style:italic}.pill.cap-pill-req{background:var(--panel-sunk);color:var(--text-dim)}.caps-feed{width:min(1180px,94vw)}.caps-feed-preview{margin-top:12px}.caps-feed-table{width:100%;margin-top:8px}.caps-feed-table td,.caps-feed-table th{padding:4px 7px}.caps-feed-note{white-space:normal;color:var(--text-dim);font-size:12px;max-width:300px}.caps-table tfoot td{position:sticky;bottom:0;z-index:2;background:var(--head-bg);border-top:2px solid var(--border-strong);font-weight:700}.cap-stopped{color:var(--roi-bad);font-weight:700}.caps-table tfoot td.cap-ok{color:var(--roi-good)}.caps-table tfoot td.cap-near{color:var(--roi-mid)}.caps-table tfoot td.cap-feed{color:var(--roi-warn)}.caps-table tfoot td.cap-over{color:var(--roi-bad)}.caps-feed-field{white-space:nowrap}.caps-feed-field>*{vertical-align:middle}.caps-feed-field .cap-num{width:56px;margin:0 4px}.caps-feed-date{width:124px}.caps-feed-table select{max-width:108px}.caps-feed-table input[type=checkbox]:disabled{opacity:.3}.cap-rate-cell{white-space:nowrap;text-align:right}table.data td.cap-rate-cell input.cap-num{width:58px}table.data td.cap-rate-cell input.cap-ratedate{width:124px;margin-left:5px}.cap-ratedate-btn{margin-left:5px;min-width:46px;padding:3px 5px;border:1px solid transparent;border-radius:5px;background:none;color:var(--text-dim);font:inherit;font-size:11px;cursor:pointer}.cap-ratedate-btn:hover{border-color:var(--border);background:var(--row-hover)}.cap-ratedate-btn.has{color:var(--text)}.caps-table td.cap-offerid,.caps-feed-table td.cap-offerid{font-size:11px;text-align:right;font-variant-numeric:tabular-nums}table.data tr.cap-row-rate td{background:var(--warn-bg)}.cap-rate-ask{margin-left:5px;padding:2px 7px;border:1px solid var(--roi-warn);border-radius:var(--r-full);background:none;color:var(--roi-warn);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.cap-rate-ask:hover{background:var(--roi-warn);color:#fff}.pill.cap-pill-rate{background:var(--warn-bg);color:var(--roi-warn);border-color:var(--warn-line)}.caps-table td.cap-marks{white-space:normal;max-width:190px;line-height:1.9}.caps-table td.cap-marks .pill{font-size:10px;padding:1px 6px;margin-right:3px}.pill.cap-pill-near{background:var(--panel-sunk);color:var(--roi-mid);border-color:var(--roi-mid)}.caps-table th.cap-th{cursor:pointer;-webkit-user-select:none;user-select:none}.caps-table th.cap-th:hover{color:var(--text);background:var(--row-hover)}.caps-table th.cap-th.active{color:var(--accent)}.cap-th-arrow{display:inline-block;min-width:9px;margin-left:2px;font-size:9px}table.data td.m1.roi-good{color:var(--roi-good)}table.data td.m1.roi-mid{color:var(--roi-mid)}table.data td.m1.roi-bad{color:var(--roi-bad)}.caps-table th.cap-pick,.caps-table td.cap-pick{width:30px;text-align:center;padding:4px}.caps-table td.cap-pick input{cursor:pointer}.caps-report{width:560px}.caps-report-text{width:100%;font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel-sunk);color:var(--text);resize:vertical;white-space:pre}.caps-report-text:focus{border-color:var(--accent);outline:none}.caps-report-hint{margin-top:9px;padding:6px 10px;border:1px solid var(--roi-warn);border-radius:7px;color:var(--roi-warn);font-size:12px}.cap-basis{font-size:10px;color:var(--text-dim);margin-left:2px}.strat-windows{display:flex;gap:3px}.strat-windows .pill{padding:5px 9px}.strat-windows .pill.active{background:var(--accent);color:var(--accent-on);border-color:var(--accent)}.strat-table{width:100%;table-layout:fixed}.strat-table th.txt,.strat-table td.txt{text-align:left}.strat-table td,.strat-table th{vertical-align:top}.strat-table thead th{position:sticky;top:0;z-index:2;background:var(--panel)}.strat-creative{font-weight:700;padding-top:12px!important}.strat-empty{text-align:center;color:var(--text-faint)}.strat-cell{padding:5px!important}.strat-cell-btn{display:flex;flex-direction:column;gap:2px;width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--panel-sunk);color:var(--text);font:inherit;text-align:left;cursor:pointer}.strat-cell-btn:hover{border-color:var(--border-strong);background:var(--row-hover)}.strat-cell.open .strat-cell-btn{border-color:var(--accent)}.strat-now{font-size:11px;font-weight:700;color:var(--roi-good)}.strat-now.zero{color:var(--text-faint);font-weight:500}.strat-roi{font-size:17px;font-weight:800;line-height:1.1}.strat-strong{font-size:11px;color:var(--text-dim)}.strat-plan{display:inline-block;margin-top:4px;padding:2px 6px;font-size:10px;color:var(--text-dim);border:1px dashed var(--border);border-radius:var(--r-full);cursor:pointer}.strat-plan:hover{color:var(--accent);border-color:var(--accent);border-style:solid}.strat-detail td{background:var(--panel-sunk)}.strat-list{padding:4px 2px}.strat-list-head{font-weight:700;margin-bottom:6px}.strat-list-row{display:flex;align-items:center;gap:9px;padding:3px 0;border-top:1px solid var(--border)}.strat-list-name{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strat-dot{width:7px;height:7px;border-radius:50%;background:var(--border-strong);flex:none}.strat-dot.on{background:var(--roi-good)}.daily-app{display:block;font-size:10px;color:var(--text-dim);line-height:1.3}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.login-card{width:320px;display:flex;flex-direction:column;gap:14px;padding:26px 24px}.login-brand{font-weight:800;letter-spacing:.16em;font-size:15px;text-align:center;margin-bottom:4px}.login-field{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.login-field input{font:inherit;font-size:14px;text-transform:none;letter-spacing:0;color:var(--text);padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.login-field input:focus{border-color:var(--accent);outline:none}.login-error{font-size:12px;color:var(--roi-bad);padding:7px 10px;border:1px solid var(--danger-line);border-radius:7px;background:var(--danger-soft)}.login-submit{justify-content:center;padding:9px}.topbar-user{font-size:12px;color:var(--text-dim);padding:0 4px;white-space:nowrap}.topbar .nav-tiles{min-width:0;overflow-x:auto;scrollbar-width:none}.topbar .nav-tiles::-webkit-scrollbar{display:none}.topbar .brand,.topbar .topbar-user,.topbar .theme-toggle{flex:none}.topbar-user{max-width:120px;overflow:hidden;text-overflow:ellipsis}.pass-card{width:340px}.pass-body{display:flex;flex-direction:column;gap:12px}.pass-hint{font-size:11px;color:var(--roi-warn);text-transform:none;letter-spacing:0}.pass-ok{font-size:12px;color:var(--ok);padding:7px 10px;border:1px solid var(--ok-line);border-radius:7px;background:var(--ok-soft)}button.topbar-user{background:none;border:none;cursor:pointer;font:inherit;font-size:12px;color:var(--text-dim)}button.topbar-user:hover{color:var(--text);text-decoration:underline}
