/* Scaling is an ordered operating flow; all tokens come from the dashboard. */
.scaling-bulk { min-width:0; color:var(--text); font-size:14px; line-height:1.45; }
.scaling-bulk [hidden] { display:none!important; }
.scaling-bulk h2 { margin:0; font-size:18px; font-weight:700; line-height:1.25; }
.scaling-bulk h3 { margin:0; font-size:14px; font-weight:650; line-height:1.45; }
.scaling-bulk p { margin:0; }
.sb-heading { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px 24px; }
.sb-heading p,.sb-note { color:var(--muted); font-size:12px; }
.sb-steps { display:flex; gap:24px; list-style:none; margin:20px 0 0; padding:0 0 16px; border-bottom:1px solid var(--line); }
.sb-steps li { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:12px; }
.sb-steps li>span { display:grid; place-items:center; width:24px; height:24px; border:1px solid var(--field-border); border-radius:4px; font-variant-numeric:tabular-nums; }
.sb-steps [aria-current=step] { color:var(--text); font-weight:650; }
.sb-steps [aria-current=step]>span { color:var(--active-text); background:var(--active-bg); border-color:var(--active-border); }
.sb-section { padding:20px 0; border-bottom:1px solid var(--line); }
.sb-section-heading { display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; gap:8px 16px; margin-bottom:12px; }
.sb-section-heading>span { color:var(--muted); font-size:12px; }
.sb-filter-grid { display:grid; grid-template-columns:minmax(320px,420px) minmax(240px,320px) 100px max-content; justify-content:start; align-items:end; gap:16px; margin-top:12px; }
.scaling-bulk fieldset { border:0; padding:0; margin:0; min-width:0; }
.scaling-bulk .sb-field { display:flex; flex-direction:column; gap:6px; margin:0; min-width:0; color:var(--label); font-size:12px; font-weight:650; }
.scaling-sources legend { display:block; margin:0 0 6px; padding:0; color:var(--label); font-size:12px; font-weight:650; }
.scaling-sources>div { display:flex; flex-wrap:wrap; gap:4px; }
.scaling-bulk .scaling-sources label { display:flex; align-items:center; justify-content:center; gap:6px; padding:0 8px; height:40px; margin:0; border:1px solid var(--field-border); border-radius:4px; background:var(--field); font-size:12px; font-weight:650; cursor:pointer; }
.scaling-bulk .scaling-sources label:has(input:checked) { border-color:var(--active-border); color:var(--active-text); background:var(--active-bg); }
#scaling-bulk input:not([type=checkbox]),#scaling-bulk select,#scaling-bulk button { box-sizing:border-box; min-height:40px; border:1px solid var(--field-border); border-radius:6px; background:var(--field); color:var(--text); padding:8px 10px; font:inherit; line-height:1.2; margin:0; }
#scaling-bulk input:not([type=checkbox]),#scaling-bulk select { width:100%; font-size:14px; font-weight:400; }
#scaling-bulk button { font-size:14px; font-weight:600; cursor:pointer; }
#scaling-bulk button.primary-button { background:var(--primary); border-color:var(--primary); color:var(--primary-text); padding:8px 16px; }
#scaling-bulk button.primary-button:hover:not(:disabled) { background:var(--primary-hover); border-color:var(--primary-hover); }
#scaling-bulk button:not(.primary-button):hover:not(:disabled) { background:var(--panel-soft); }
#scaling-bulk input[type=checkbox] { width:16px; height:16px; margin:0; accent-color:var(--primary); flex-shrink:0; }
#scaling-bulk :is(button,input,select):focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
#scaling-bulk :is(button,input,select):disabled { opacity:.5; cursor:not-allowed; }
#scaling-bulk input { caret-color:var(--primary); }
#scaling-bulk ::selection { background:var(--active-bg-strong); color:var(--text); }
.sb-filter-grid+ .sb-note { margin-top:12px; }
#sb-status { margin-top:8px; color:var(--label); font-size:12px; }
.sb-empty { padding:16px 0 4px; color:var(--muted); }
.scaling-table-wrap { width:100%; overflow:auto; overscroll-behavior-x:contain; }
.scaling-bulk table { border-collapse:collapse; width:100%; min-width:1080px; font-size:14px; }
.scaling-bulk caption { text-align:left; color:var(--muted); font-size:12px; padding:0 0 12px; }
.scaling-bulk th { color:var(--label); font-size:12px; font-weight:650; white-space:nowrap; text-align:left; background:var(--panel-soft); }
.scaling-bulk th,.scaling-bulk td { padding:12px; border-bottom:1px solid var(--line); vertical-align:middle; }
.scaling-bulk th:first-child,.scaling-bulk td:first-child { padding-left:8px; width:32px; }
.scaling-bulk tbody tr:has(input[data-pick]:checked) { background:var(--active-bg-soft); }
.scaling-bulk tbody tr:hover { background:var(--panel-soft); }
.scaling-bulk .sb-number { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.scaling-bulk .scaling-name { width:32%; min-width:260px; max-width:420px; overflow-wrap:anywhere; }
.scaling-name>span:first-child { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.scaling-bulk small { display:block; margin-top:4px; color:var(--muted); font-size:12px; font-weight:400; }
.scaling-bulk td:last-child { min-width:180px; max-width:240px; }
.scaling-bulk [data-tone=positive] { color:var(--success); }
.scaling-bulk [data-tone=negative],.sb-error,.sb-row-warning { color:var(--danger); }
.sb-row-warning { display:block; margin-top:6px; font-size:12px; }
.sb-selection-totals { display:flex; flex-wrap:wrap; gap:12px 24px; padding:12px 8px 0; font-size:12px; font-variant-numeric:tabular-nums; }
.sb-selection-totals span { color:var(--muted); }
.sb-selection-totals b { color:var(--text); font-weight:600; margin-left:6px; }
.sb-action-grid { display:grid; grid-template-columns:minmax(240px,320px) 180px 240px; gap:16px; }
.scaling-budgets { display:grid; grid-template-columns:repeat(4,minmax(140px,180px)); gap:12px; margin-top:16px; }
#sb-action-note { margin-top:12px; }
.sb-validation { padding-top:12px; color:var(--warning); font-size:14px; }
.scaling-dock { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-top:20px; }
.scaling-dock>div { display:flex; flex-direction:column; gap:4px; }
.scaling-dock strong { font-size:14px; font-weight:650; font-variant-numeric:tabular-nums; }
#sb-plan-note { color:var(--muted); font-size:12px; }
.scaling-bulk details { margin-top:16px; font-size:12px; }
.scaling-bulk summary { cursor:pointer; color:var(--label); }
.scaling-bulk details ul { margin:12px 0 0; padding-left:20px; }
.scaling-bulk details li { padding:8px 0; overflow-wrap:anywhere; }
.scaling-bulk details li p { margin-top:4px; color:var(--muted); }
.sb-operation { padding:20px 0; border-bottom:1px solid var(--line); }
#sb-progress { width:100%; height:8px; display:block; border:0; border-radius:4px; overflow:hidden; accent-color:var(--primary); background:var(--line); }
#sb-progress::-webkit-progress-bar { background:var(--line); }
#sb-progress::-webkit-progress-value { background:var(--primary); }
#sb-progress::-moz-progress-bar { background:var(--primary); }
.sb-operation[data-state=error] #sb-progress { accent-color:var(--warning); }
.sb-operation[data-state=error] #sb-progress::-webkit-progress-value { background:var(--warning); }
.sb-operation[data-state=success] #sb-progress::-webkit-progress-value { background:var(--success); }
.sb-progress-context { display:flex; flex-wrap:wrap; gap:8px 16px; margin:12px 0 4px; }
#sb-progress-percent { font-size:12px; font-variant-numeric:tabular-nums; }
#sb-progress-detail { color:var(--label); }
#sb-progress-campaign { overflow-wrap:anywhere; }
.sb-operation-steps { display:flex; flex-wrap:wrap; gap:8px 20px; padding:0; margin:16px 0 0; list-style:none; font-size:12px; color:var(--muted); }
.sb-operation-steps [aria-current=step] { color:var(--active-text); font-weight:650; text-decoration:underline; text-underline-offset:6px; }
.sb-operation-steps [data-state=error] { color:var(--warning); }
.sb-operation-steps [data-state=done] { color:var(--success); }
.sb-journal ol { max-height:240px; overflow:auto; margin:12px 0 0; padding:0; list-style:none; }
.sb-journal li { display:grid; grid-template-columns:70px 160px 1fr; gap:12px; padding:8px 0; border-bottom:1px solid var(--line); }
.sb-journal time { color:var(--muted); font-variant-numeric:tabular-nums; }
#sb-resume { margin-top:16px!important; }
.sb-result { padding:20px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.sb-result .sb-section-heading { margin-bottom:8px; }
.sb-result[data-state=error] h3 { color:var(--warning); }
.sb-result[data-state=success] h3 { color:var(--success); }
.sb-result p+p { margin-top:8px; }
.sb-result-campaign { font-weight:600; }
.sb-result dl { margin:12px 0 0; }
.sb-result dl>div { display:grid; grid-template-columns:80px 1fr; gap:12px; padding:4px 0; }
.sb-result dt { color:var(--muted); }
.sb-result dd { margin:0; }
.sb-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
/* Compact navigation for Control. */
[data-view=control] .control-workflow-switch { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
[data-view=control] .control-workflow-switch button { min-height:48px; padding:8px 12px; }
[data-view=control] .control-workflow-switch button strong { font-size:12px; font-weight:650; }
[data-view=control] .control-workflow-switch button>b { display:none; }
@media(max-width:1250px) {
 .sb-filter-grid { grid-template-columns:minmax(320px,1fr) minmax(240px,1fr) 100px; }
 .sb-filter-grid #sb-load { grid-column:2 / 4; justify-self:end; }
}
@media(max-width:800px) {
 .sb-filter-grid { grid-template-columns:1fr 100px; gap:12px; }
 .scaling-sources { grid-column:1 / -1; }
 .sb-filter-grid #sb-load { grid-column:1 / -1; justify-self:stretch; }
 .sb-action-grid { grid-template-columns:1fr 1fr; gap:12px; }
 .sb-action-grid>.sb-field:first-child { grid-column:1 / -1; }
 .scaling-budgets { grid-template-columns:1fr 1fr; }
 .sb-steps { gap:12px; }
 .sb-steps li { flex:1; align-items:flex-start; }
 .sb-steps li>span { flex-shrink:0; }
 .sb-journal li { grid-template-columns:60px 1fr; }
 .sb-journal li>span { grid-column:2; }
 [data-view=control] .control-workflow-switch { display:flex; overflow:auto; }
 [data-view=control] .control-workflow-switch button { flex:0 0 180px; }
}
@media(max-width:480px) {
 .sb-section { padding:16px 0; }
 .sb-steps { gap:8px; }
 .sb-steps li { flex-direction:column; gap:6px; }
 .scaling-sources>div { display:grid; grid-template-columns:repeat(3,1fr); }
 .scaling-dock { align-items:stretch; }
 .scaling-dock>div,.scaling-dock>button { width:100%; }
}

/* Control workflows share the scaling screen's hierarchy and action placement. */
[data-view=control] .control-workflow-switch { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
[data-view=control] .control-workflow-switch button { min-height:48px; padding:8px 12px; }
[data-view=control] .control-workflow-switch button strong { font-size:12px; font-weight:650; }
[data-view=control] .control-workflow-switch button>b { display:none; }
.control-surface { padding:20px!important; min-width:0; font-size:14px; }
.control-surface [hidden] { display:none!important; }
.control-surface h2 { font-size:18px; line-height:1.4; margin:0; }
.control-surface h3 { font-size:14px; line-height:1.4; }
.control-surface .section-heading,.cf-heading { margin-bottom:16px; align-items:start; }
.cf-heading p,.control-surface .workspace-help { margin:6px 0 0; font-size:12px; line-height:1.6; color:var(--muted); }
.cf-steps { display:flex; gap:24px; list-style:none; padding:0 0 16px; margin:0 0 20px; border-bottom:1px solid var(--line); color:var(--label); font-size:12px; }
.cf-steps li { display:flex; align-items:center; gap:8px; }
.cf-steps li>span { display:grid; place-items:center; width:24px; height:24px; flex-shrink:0; border:1px solid var(--line); border-radius:4px; font-variant-numeric:tabular-nums; color:var(--text); }
.control-surface input:not([type=checkbox]):not([type=hidden]),.control-surface select { min-height:40px; width:100%; min-width:0; border-radius:6px; }
.control-surface button { min-height:40px; border-radius:6px; }
.control-surface label>span,.control-surface legend { font-size:12px; color:var(--label); }
#analytics-pause-queue.control-surface .analytics-pause-queue-source { display:grid; grid-template-columns:minmax(220px,320px) minmax(300px,1fr) max-content; gap:16px; align-items:end; padding-bottom:20px; margin-bottom:0; border-bottom:1px solid var(--line); }
.control-surface .analytics-pause-queue-create-slot,.control-surface .analytics-pause-queue-action-slot { margin:0; align-self:auto; }
.control-surface .pause-source-checkboxes { border:0; border-radius:0; padding:0; margin:0; min-width:0; gap:8px 12px; }
.control-surface .pause-source-checkboxes legend { margin-bottom:8px; padding:0; }
.control-surface .pause-source-checkboxes label { display:inline-flex; align-items:center; gap:6px; }
.control-surface .analytics-pause-queue-summary { padding:16px 0; margin:0; font-size:14px; }
.control-surface .analytics-pause-queue-table-wrap { border:1px solid var(--line); border-radius:6px; overflow:auto; }
.control-surface .analytics-pause-queue-status { border-radius:0; box-shadow:none; }
.control-surface .analytics-pause-queue-status>header { padding:12px; }
.control-surface .analytics-pause-queue-status header em { border:0; padding:0; font-size:12px; font-weight:500; }
.control-surface .analytics-pause-process { margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }
.control-surface .analytics-pause-process-row { border-radius:0; background:transparent; border:0; border-bottom:1px solid var(--line); padding:12px 0; }
.cf-dock,.control-surface .rejected-ads-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:0; padding:16px 0 0; border-top:1px solid var(--line); background:transparent; }
.cf-dock>span { color:var(--muted); font-size:12px; }
.control-surface .analytics-pause-queue-table-wrap+.cf-dock { margin-top:16px; }
.cf-dock .analytics-pause-queue-actions { margin:0; display:flex; gap:8px; flex-wrap:wrap; }
.control-surface .rejected-ads-toolbar { padding:0 0 16px; gap:16px; align-items:center; border-bottom:1px solid var(--line); }
.control-surface .rejected-ads-toolbar p { margin:0; }
.control-surface #rejected-status,.control-surface .preview-message { margin:16px 0; padding:12px; font-size:14px; line-height:1.6; overflow-wrap:anywhere; background:var(--panel-soft); border:1px solid var(--line); border-radius:4px; white-space:pre-line; }
.control-surface .rejected-ads-table { margin-bottom:16px; border-radius:6px; overflow:auto; }
.control-surface .rejected-ads-table table { min-width:620px; }
.control-surface .rejected-ads-table th { font-size:12px; color:var(--label); font-weight:600; }
.control-surface .rejected-ads-table td { vertical-align:top; font-size:14px; padding:12px; }
.control-surface .rejected-number { text-align:right; font-variant-numeric:tabular-nums; }
.control-surface .rejected-ad-item { padding:12px 0; border-bottom:1px solid var(--line); }
.control-surface .rejected-ads-actions small { margin-top:4px; color:var(--muted); font-size:12px; }
.control-surface #rejected-delete:not(:disabled) { border-color:var(--danger); color:var(--danger); background:var(--panel); }
.control-surface .admin-textarea { min-height:150px; width:100%; border-radius:6px; font-size:14px; line-height:1.6; }
.control-surface .control-input-meter { gap:16px; margin:8px 0 16px; padding:0; border:0; background:transparent; font-size:12px; }
.control-surface .auto-pause-actions { justify-content:flex-end; margin:0; }
.control-surface .control-account-picker { border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; padding:0 0 16px; margin:16px 0; }
.control-surface .control-readiness-strip { border-radius:4px; box-shadow:none; }
.control-surface .control-mode-panel { border:0; background:transparent; padding:0; margin:16px 0; }
[data-view=control] .control-grid { grid-template-columns:minmax(0,1fr) 280px; gap:16px; align-items:start; }
[data-view=control] .control-preflight-panel { padding:20px; border-radius:6px; }
[data-view=control] .control-preflight-panel h2 { font-size:14px; }
[data-view=control] .control-preflight-panel .preview-section { padding:16px 0; border-radius:0; background:transparent; border:0; border-bottom:1px solid var(--line); }
.cf-progress { margin:0 0 20px; padding:12px 0 16px; border-bottom:1px solid var(--line); }
.cf-progress>div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.cf-progress strong { font-size:14px; }
.cf-progress [data-cf-count] { color:var(--muted); font-size:12px; font-variant-numeric:tabular-nums; }
.cf-progress progress { display:block; width:100%; height:6px; border:0; accent-color:var(--primary); border-radius:4px; overflow:hidden; }
.cf-progress progress::-webkit-progress-bar { background:var(--line); }
.cf-progress progress::-webkit-progress-value { background:var(--primary); }
.cf-progress p { color:var(--label); margin:8px 0 0; font-size:12px; line-height:1.6; overflow-wrap:anywhere; white-space:pre-line; }
.cf-progress[data-state=attention] strong { color:var(--warning); }
.cf-progress[data-state=done] strong { color:var(--success); }
@media(max-width:1100px) {
 #analytics-pause-queue.control-surface .analytics-pause-queue-source { grid-template-columns:minmax(180px,1fr) minmax(240px,1fr); }
 .control-surface .analytics-pause-queue-create-slot { grid-column:1/-1; justify-self:end; }
 [data-view=control] .control-grid { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:800px) {
 [data-view=control] .control-workflow-switch { display:flex; overflow:auto; }
 [data-view=control] .control-workflow-switch button { flex:0 0 180px; }
 .control-surface { padding:16px!important; }
 .cf-steps { gap:12px; }
 .cf-steps li { flex:1; align-items:start; }
 #analytics-pause-queue.control-surface .analytics-pause-queue-source { grid-template-columns:1fr; }
 .control-surface .analytics-pause-queue-create-slot { justify-self:stretch; }
 .control-surface .analytics-pause-queue-create-slot button { width:100%; }
 .cf-dock>span,.cf-dock>button,.cf-dock .analytics-pause-queue-action-slot,.cf-dock .analytics-pause-queue-actions button { width:100%; }
 .control-surface .rejected-ads-toolbar { flex-direction:column; align-items:stretch; }
 .control-surface .rejected-ads-actions>div,.control-surface .rejected-ads-actions>button { width:100%; }
 .control-surface .launch-account-grid { grid-template-columns:1fr; }
 .control-surface .analytics-pause-queue-status-list { min-width:720px; }
}
@media(max-width:480px) { .cf-steps li { flex-direction:column; gap:6px; } }

#analytics-pause-queue.control-surface .analytics-pause-queue-source label { margin-bottom:0; }
#analytics-pause-queue.control-surface .pause-source-checkboxes label { min-height:40px; }
.control-surface .analytics-pause-queue-table-wrap:not(:has(.analytics-pause-queue-status)) { border:0; }
.control-surface .control-input-meter>span { border:0; background:transparent; padding:0; border-radius:0; }
.control-surface .control-readiness-strip { border-left-width:1px; }
@media(max-width:800px) { .control-surface .rejected-ads-toolbar .workspace-help { flex:0 1 auto; } }
@media(max-width:640px) {
 .control-surface .rejected-ads-table table { min-width:0; table-layout:auto; }
 .control-surface .rejected-ads-table td.rejected-empty { width:auto; min-width:0; }
 .operator-table-shell #analytics-pause-queue.control-surface .analytics-pause-queue-action-slot:has(button) { position:static; padding:0; border:0; }
 .operator-table-shell #analytics-pause-queue.control-surface { padding-bottom:16px; }
}

/* Lead cost and EPC keep individual numeric columns when the table scrolls. */
.scaling-bulk table { min-width:1440px; }
.scaling-bulk th.sb-number { white-space:normal; min-width:88px; }
.scaling-bulk .scaling-name { width:28%; }

/* Fixed budget steps share the existing field, table and theme vocabulary. */
.scaling-bulk .sb-method-row { display:flex; flex-wrap:wrap; align-items:end; gap:12px 16px; margin-top:12px; }
.scaling-bulk .sb-method-row>.sb-field { flex:0 1 280px; }
.scaling-bulk #sb-budget-below-field { flex-basis:220px; }
.scaling-bulk #sb-budget-rule { margin-top:8px; max-width:85ch; }
.scaling-bulk .sb-budget-change { display:block; margin-top:6px; color:var(--text); font-size:12px; font-variant-numeric:tabular-nums; }
@media(max-width:640px) { .scaling-bulk .sb-method-row>.sb-field { flex:1 1 100%; } }

.scaling-bulk .sb-action-grid { grid-template-columns:180px minmax(240px,320px); }
@media(max-width:800px) { .scaling-bulk .sb-action-grid { grid-template-columns:1fr; } }
