:root{--bg-canvas: #000000;--bg: #0e0f10;--bg-subtle: #111214;--panel: #16181a;--panel-2: #1d2023;--panel-3: #26292c;--border: #26292c;--border-strong: #454a4e;--sidebar-bg: var(--bg-subtle);--text: #e7e9ea;--muted: #7a7f84;--faint: #83898e;--text-disabled: #454a4e;--primary: #5cd98a;--primary-600: #8fd9a8;--primary-700: #7fffb0;--primary-soft: rgba(92, 217, 138, .12);--accent: #7fffb0;--accent-surface: #2e3a33;--on-primary: #0e0f10;--ok: #5cd98a;--warn: #e8b23a;--warn-strong: #ffc24b;--err: #ff6b6b;--err-strong: #ff5a6e;--info: #2563eb;--info-hover: #4e7bee;--radius-xs: 2px;--radius-track: 3px;--radius-sm: 4px;--radius-md: 4px;--radius: 6px;--radius-xl: 8px;--radius-pill: 999px;--control-h: 32px;--control-h-sm: 26px;--control-track-off: #24272a;--control-track-on: #2e3a33;--control-knob-off: #6e747a;--control-knob-on: #8fd9a8;--table-row: var(--bg);--table-zebra: #141516;--progress-fill: #6e747a;--check-mark: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='none' stroke='%235cd98a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3.2 7.2l2.6 2.6 5-5.6'/%3E%3C/svg%3E");--check-dash: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='none' stroke='%235cd98a' stroke-width='1.6' stroke-linecap='round' d='M3.5 7h7'/%3E%3C/svg%3E");--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);--scrim: rgba(10, 12, 11, .85);--shadow-glow: 0 0 0 1px rgba(92, 217, 138, .18), 0 8px 30px -10px rgba(92, 217, 138, .35);--ring: 0 0 0 2px rgba(92, 217, 138, .28);--t-fast: .12s cubic-bezier(.4, 0, .2, 1);--t: .18s cubic-bezier(.4, 0, .2, 1);--select-chevron: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%234b5053' d='M3 6.5h10L8 11.5z'/%3E%3C/svg%3E");--font: "Schibsted Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "Cousine", ui-monospace, SFMono-Regular, Menlo, monospace;color-scheme:dark}:root[data-theme=light]{--bg-canvas: #e9ebed;--bg: #f4f5f6;--bg-subtle: #fafbfb;--panel: #ffffff;--panel-2: #f0f1f2;--panel-3: #e6e8ea;--border: #e2e4e6;--border-strong: #c6cacd;--sidebar-bg: #ffffff;--text: #16181a;--muted: #5f666c;--faint: #5f666c;--text-disabled: #a6abaf;--primary: #178f4e;--primary-600: #127a42;--primary-700: #0e6335;--primary-soft: rgba(23, 143, 78, .1);--accent: #0e6335;--accent-surface: #ddf2e6;--on-primary: #ffffff;--ok: #178f4e;--warn: #9a6b00;--warn-strong: #7d5600;--err: #dc2626;--err-strong: #b91c1c;--info: #2563eb;--info-hover: #1d4ed8;--table-row: var(--bg);--table-zebra: #eceef0;--progress-fill: #8b9198;--control-track-off: #d8dbde;--control-track-on: #ddf2e6;--control-knob-off: #8b9198;--control-knob-on: #178f4e;--check-mark: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='none' stroke='%23178f4e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3.2 7.2l2.6 2.6 5-5.6'/%3E%3C/svg%3E");--check-dash: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='none' stroke='%23178f4e' stroke-width='1.6' stroke-linecap='round' d='M3.5 7h7'/%3E%3C/svg%3E");--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 10px 30px -14px rgba(15, 23, 42, .2);--scrim: rgba(15, 23, 42, .35);--shadow-glow: 0 0 0 1px rgba(23, 143, 78, .2), 0 10px 30px -12px rgba(23, 143, 78, .3);--ring: 0 0 0 2px rgba(23, 143, 78, .3);--select-chevron: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%235f666c' d='M3 6.5h10L8 11.5z'/%3E%3C/svg%3E");color-scheme:light}*{box-sizing:border-box}html{scrollbar-color:var(--border-strong) transparent}body{margin:0;font-family:var(--font);color:var(--text);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:var(--bg)}::selection{background:var(--primary-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#3a445c}.app{width:100%;max-width:100%;margin:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;z-index:40;display:flex;flex-direction:row;align-items:center;gap:12px;background:var(--sidebar-bg);border-bottom:1px solid var(--border);padding:6px 16px;overflow:visible}.sidebar-drop{display:none}.sidebar.nav-open .sidebar-drop{display:flex;flex-direction:column;position:absolute;top:100%;left:16px;z-index:50;width:260px;max-height:calc(100vh - 64px);overflow-y:auto;padding:6px 0;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md)}.sidebar.nav-open .side-nav{flex:0 0 auto;overflow:visible;padding-bottom:0}.sidebar.nav-open .sidebar-foot{margin-top:6px}.sidebar-logo{display:block;padding:6px 0;background:none;border:none;cursor:pointer;text-align:left}.rox-logo{display:inline-flex;align-items:center;gap:8px;color:var(--text)}.rox-wordmark{font-size:18px;font-weight:700;letter-spacing:-.02em;line-height:1;white-space:nowrap}.rox-wordmark-suffix{color:var(--muted);font-weight:600}.side-nav{flex:1;overflow-y:auto;padding-bottom:12px}.side-nav>div{display:contents}.nav-group-label{padding:16px 16px 5px;font-size:11px;font-weight:500;letter-spacing:.44px;text-transform:uppercase;color:var(--text-disabled)}.nav-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;background:none;border:none;color:var(--muted);font:inherit;font-size:13px;line-height:20px;text-align:left;cursor:pointer;transition:color var(--t-fast),background var(--t-fast)}.nav-item:hover{color:var(--text);background:var(--panel)}:root[data-theme=light] .nav-item:hover{background:var(--panel-2)}.nav-item.active{color:var(--text);background:var(--panel-2)}.nav-item:focus-visible{outline:none;box-shadow:inset var(--ring)}.sidebar-foot{border-top:1px solid var(--border);padding:12px 16px 14px;display:flex;flex-direction:column;gap:7px}.sidebar-utils{display:flex;align-items:center;gap:6px;padding-bottom:4px}.sidebar-utils .btn{padding:4px 7px;font-size:12px}.sidebar-user{font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-plan{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.sidebar-plan .plan-badge{display:inline-flex;align-items:center;padding:1px 7px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:10px;font-weight:700;letter-spacing:.7px;color:var(--text)}.sidebar-logout{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0;font:inherit;font-size:12.5px;color:var(--muted);cursor:pointer;align-self:flex-start}.sidebar-logout:hover{color:var(--text)}.topbar{display:flex;align-items:center;gap:10px;padding:10px 24px;min-height:56px;border-bottom:1px solid var(--border);background:var(--panel)}.topbar h1{font-size:18px;font-weight:600;margin:0;white-space:nowrap}.topbar-utils{display:flex;align-items:center;gap:8px;margin-left:auto}.header-banner{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px}.header-banner img{max-height:40px;flex:0 1 auto;min-width:0;object-fit:contain;border-radius:var(--radius-sm)}.header-banner a{flex:0 1 auto;min-width:0;display:flex;align-items:center;justify-content:center}@media (max-width: 1180px){.header-banner{display:none}}.theme-toggle{padding:8px;line-height:0;color:var(--muted)}.theme-toggle:hover:not(:disabled){color:var(--text)}.theme-toggle svg{display:block}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500}.tour-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center}.tour-card{max-width:420px;margin:16px}.tour-hole{position:absolute;border-radius:10px;box-shadow:0 0 0 9999px #0000008c;pointer-events:none}.tour-tooltip-anchor{position:absolute;max-width:360px}.tour-tooltip{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:14px 16px}.tour-tooltip:focus{outline:none}.tab{display:inline-flex;align-items:center;gap:9px;background:none;border:none;color:var(--muted);padding:10px 16px;cursor:pointer;font:inherit;font-size:13px;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--t),background var(--t),border-color var(--t)}.tab svg{width:18px;height:18px;flex:0 0 auto}.tab:hover{color:var(--text);background:var(--panel-3)}.tab:active{transform:translateY(1px)}.tab.active{color:var(--text);border-bottom-color:var(--text)}.tab.active svg{color:var(--primary)}.app-content{min-width:0;display:flex;flex-direction:column}.app-content>main{flex:1;min-width:0;padding:20px 24px 72px}.app-content>main.flush{padding:0 0 72px}main.flush:not(.flush-inset)>.card{border-left:0;border-right:0;border-top:0;border-radius:0;margin-bottom:0}main.flush.flush-inset{padding:24px 32px 72px}main.flush>.card>.card-body{padding:0}main.flush .dash-toolbar{margin:0;padding:18px 16px}main.flush>.card>.card-body>table th:first-child,main.flush>.card>.card-body>table td:first-child,main.flush>.card>.card-body>.table-wrap>table th:first-child,main.flush>.card>.card-body>.table-wrap>table td:first-child{padding-left:16px}main.flush>.card>.card-body>table th:last-child,main.flush>.card>.card-body>table td:last-child,main.flush>.card>.card-body>.table-wrap>table th:last-child,main.flush>.card>.card-body>.table-wrap>table td:last-child{padding-right:16px}main.flush>.card>.card-head{padding:15px 16px}main.flush>.card>.card-body>table thead th,main.flush>.card>.card-body>.table-wrap>table thead th{border-top:1px solid var(--border)}main.flush>.dash-card>.card-body>.stats>.stat:first-child{padding-left:24px}main.flush>.dash-card>.card-body>.stats>.stat:last-child{padding-right:24px}main.flush>.dash-card>.card-body>.dash-toolbar{padding-left:24px;padding-right:24px}main.flush>.dash-card>.card-body>table th:first-child,main.flush>.dash-card>.card-body>table td:first-child{padding-left:24px}main.flush>.dash-card>.card-body>table th:last-child,main.flush>.dash-card>.card-body>table td:last-child{padding-right:24px}main.flush>.card>.card-body>.state,main.flush>.card>.card-body>.muted,main.flush>.card>.card-body>p{margin-left:16px;margin-right:16px}main.flush>.card>.card-body>.field,main.flush>.card>.card-body>.row{padding-left:16px;padding-right:16px}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:var(--control-h);height:var(--control-h);padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text);cursor:pointer}.nav-toggle:hover{background:var(--panel-3)}@media (max-width: 900px){.sidebar{padding:6px 10px}.sidebar.nav-open .sidebar-drop{left:10px;right:10px;width:auto}.app-content>main{padding:14px 12px 72px}}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:18px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid var(--border);flex-wrap:wrap}.card-title{font-size:14px;margin:0;font-weight:400;color:var(--muted);letter-spacing:normal}.card-actions{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.card-actions .row{align-items:flex-end}.card-actions .btn,.dash-toolbar .btn,.dash-toolbar select,.dash-toolbar input{height:var(--control-h)}.card-body{padding:18px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;background:var(--panel);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stat{position:relative;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 15px;overflow:hidden;transition:border-color var(--t),background var(--t)}.stats>.stat{background:transparent;border:0;border-left:1px solid var(--border);border-radius:0;padding:14px 16px}.stats>.stat:first-child{border-left:0}.stats>.stat:hover{background:var(--panel-2)}.stat:hover{border-color:var(--border-strong)}.stat-label{color:var(--muted);font-size:11px;font-weight:400}.stat-value{font-size:26px;font-weight:600;line-height:26px;margin-top:6px;font-variant-numeric:tabular-nums;letter-spacing:-.52px;white-space:nowrap}.stat-value-sm{font-size:21px;line-height:26px}.stat-value-xs{font-size:18px;line-height:26px}.stat-sub{color:var(--muted);font-size:12px;margin-top:6px;line-height:15px}.stat-clickable{cursor:pointer}.stat-clickable:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.stat-active{border-color:var(--primary);background:var(--primary-soft)}.stats>.stat-active{background:var(--panel-3)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--border);white-space:nowrap}th{padding-top:11px;padding-bottom:11px}th{color:var(--muted);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.02em;background:var(--table-row);position:sticky;top:0}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.sort-btn{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-align:right;width:100%;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.sort-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}tbody tr{background:var(--table-row);transition:background var(--t-fast)}tbody tr:nth-child(2n){background:var(--table-zebra)}tbody tr:hover{background:var(--primary-soft)}tfoot td{font-weight:650;border-top:2px solid var(--border-strong)}tfoot th{font-weight:650;border-top:2px solid var(--border-strong);color:var(--text);text-transform:none;letter-spacing:0;font-size:13px}.table-wrap{overflow-x:auto;margin:-18px}.modal-body .table-wrap{margin:0}main.flush .table-wrap{margin:0}.table-wrap table{min-width:max-content}.table-compact th,.table-compact td{padding:9px 10px;font-size:12px}.table-compact td{color:var(--muted)}.table-compact .cell-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.table-compact .btn{padding:3px 7px;font-size:12px;line-height:1}.campaign-sort-bar{display:flex;align-items:center;gap:2px;flex-wrap:wrap;padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:4px}.sort-btn-inline{background:none;border:1px solid transparent;border-radius:4px;padding:2px 8px;cursor:pointer;font-size:11px;color:var(--muted);white-space:nowrap;font-family:inherit;text-transform:uppercase;letter-spacing:.04em;transition:color var(--t-fast),border-color var(--t-fast)}.sort-btn-inline:hover{border-color:var(--border);color:var(--text)}.sort-btn-inline.active{color:var(--primary);font-weight:700;border-color:#3b82f64d;background:#3b82f614}.campaign-list{display:flex;flex-direction:column}.campaign-item{display:flex;flex-direction:column;border-bottom:1px solid var(--border);border-left:2px solid color-mix(in srgb,var(--text) 40%,transparent);cursor:pointer;transition:background var(--t-fast)}.campaign-item-top{display:flex;align-items:center;gap:10px;background:var(--panel);padding:10px 16px;transition:background var(--t-fast)}.campaign-item:hover .campaign-item-top{background:var(--panel-2)}.campaign-item-name{font-size:13px;font-weight:600;flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-item-sep{display:none}.campaign-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:22px;flex:0 0 auto;padding:0;background:var(--panel-3);border:none;border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;transition:color var(--t-fast),background var(--t-fast)}.campaign-expand-btn:hover{color:var(--text);background:var(--border-strong)}.campaign-item-account{font-size:12px;color:var(--muted);flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.launches-toolbar{display:flex;align-items:center;gap:10px;padding:8px 16px;border-bottom:1px solid var(--border)}.data-table th,.data-table td{padding:10px 16px 9px}.data-table th{padding-top:11px;padding-bottom:11px}.row-actions{display:flex;align-items:center;gap:6px}.row-actions .btn{height:auto;padding:4px 9px;font-size:12px;line-height:18px}.card-lede{display:block;padding:12px 16px;font-size:13px;color:var(--muted)}.toolbar-trailing{display:flex;align-items:center;gap:8px;margin-left:auto}@media (max-width: 900px){.toolbar-trailing{margin-left:0}}.page-band{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-24px -32px 24px;padding:6px 16px 5px;background:var(--panel);border-bottom:1px solid var(--border)}.page-band-title{color:var(--muted);font-size:13px}.page-band .btn{height:36px}.tabs{display:flex;align-items:flex-end;flex-wrap:wrap;padding:0 8px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0}.tabs+.card{border-top:0;border-top-left-radius:0;border-top-right-radius:0;margin-top:0}.tab-shell--narrow{max-width:960px}.profile-card{max-width:none}main.flush>.profile-card>.card-body{padding:24px}main.flush>.profile-card>.card-body>.field,main.flush>.profile-card>.card-body>.row{padding-left:0;padding-right:0}.accounts-table{table-layout:fixed;min-width:1480px}.accounts-table td,.accounts-table th{overflow:hidden;text-overflow:ellipsis}.accounts-name{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-width:0}.accounts-name .cell-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.accounts-name>.muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.creatives-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:nowrap;padding:16px;border-bottom:1px solid var(--border)}.creative-name{display:flex;align-items:center;gap:10px;min-width:0}.creative-thumb{display:block;flex:none;width:44px;height:34px;object-fit:cover;border-radius:var(--radius-sm);background:var(--panel-2)}.creative-file{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table td:has(.creative-name){padding-top:6px;padding-bottom:7px}.launch-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;color:var(--text)}.app-url{display:inline-block;vertical-align:middle;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.launch-owner{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.campaign-item-owner{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;flex-shrink:1}.admin-restored-badge{font-size:10px;text-transform:uppercase;letter-spacing:.4px;padding:1px 6px;border-radius:999px;border:1px solid var(--border);color:var(--muted);margin-left:6px;white-space:nowrap;vertical-align:middle}.campaign-item-actions{gap:8px;margin-left:auto;flex-shrink:0;display:flex;align-items:center}.campaign-item-actions .btn{padding:4px 9px;font-size:12px;line-height:18px;border-radius:var(--radius-sm);border-color:var(--border);background:none}.campaign-item-metrics{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px 28px;background:var(--bg);padding:8px 16px;order:-1;border-bottom:1px solid var(--border)}.metric-group{display:flex;gap:0 28px}.metric-chip{display:inline-flex;flex-direction:column;align-items:flex-start}.refresh-wheel{display:inline-block;vertical-align:-2px}.refresh-wheel.spinning{animation:refresh-wheel-spin .9s linear infinite}@keyframes refresh-wheel-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.refresh-wheel.spinning{animation:none;opacity:.6}}.metric-chip-label{font-size:11px;color:var(--text-disabled);line-height:16.5px}.metric-chip-value{font-size:13px;font-variant-numeric:tabular-nums;line-height:19.5px;padding-top:2px;color:var(--muted)}.metric-chip-value a{color:var(--text);text-decoration:underline dotted;text-underline-offset:2px}.metric-chip-value a:hover{color:var(--accent);text-decoration:underline solid}.campaign-totals{border-top:2px solid var(--border-strong);padding:10px 16px 6px;margin-top:4px}.campaign-totals .campaign-item-metrics{background:none;padding:0;margin-top:6px;border-bottom:0;order:0}.campaigns-layout{display:flex;gap:16px;align-items:flex-start}.campaigns-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:10px}@media (max-width: 720px){.campaigns-layout{flex-direction:column}.campaigns-layout .level-tabs{flex-direction:row!important;width:100%!important;flex-wrap:wrap}}.field{display:inline-flex;flex-direction:column;gap:6px}.filter-fixed .field{display:flex;width:100%}.field-label{color:var(--muted);font-size:11px;font-weight:500}input,select,textarea{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;font:inherit;font-size:13px;transition:border-color var(--t),box-shadow var(--t),background var(--t)}textarea{padding:8px 12px}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]){height:var(--control-h)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--border)}input:disabled:not([type=checkbox]):not([type=radio]),select:disabled,textarea:disabled{color:var(--text-disabled);background:var(--panel);cursor:not-allowed}textarea{min-height:54px;resize:vertical;font-family:inherit}input::placeholder,textarea::placeholder{color:var(--faint)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--ring)}input[type=checkbox]:focus,input[type=radio]:focus{box-shadow:none}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--primary);outline-offset:1px}input[type=checkbox],input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;box-sizing:border-box;flex:none;width:14px;height:14px;min-width:auto;padding:0;margin:0;background:var(--panel);border:1px solid var(--border);cursor:pointer;transition:background-color var(--t-fast),border-color var(--t-fast)}input[type=checkbox]{border-radius:var(--radius-xs)}input[type=radio]{border-radius:var(--radius-pill)}input[type=checkbox]:hover:not(:disabled),input[type=radio]:hover:not(:disabled){border-color:var(--border-strong)}input[type=checkbox]:checked,input[type=checkbox]:indeterminate{background-color:color-mix(in srgb,var(--primary) 15%,transparent);border-color:var(--primary);background-image:var(--check-mark);background-repeat:no-repeat;background-position:center}input[type=checkbox]:indeterminate{background-image:var(--check-dash)}input[type=checkbox]:checked:hover:not(:disabled),input[type=checkbox]:indeterminate:hover:not(:disabled){background-color:color-mix(in srgb,var(--primary) 24%,transparent);border-color:var(--primary-600)}input[type=radio]:checked{background-color:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 3px var(--panel)}input[type=radio]:checked:hover:not(:disabled){background-color:var(--primary-600);border-color:var(--primary-600)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.5;cursor:not-allowed}select:focus{box-shadow:none}select:focus-visible{outline:2px solid var(--primary);outline-offset:1px;box-shadow:none}select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;height:var(--control-h);color:var(--muted);background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:32px}.btn.btn-outline{border-color:var(--text);color:var(--text)}.btn.btn-outline:hover:not(:disabled){background:color-mix(in srgb,var(--text) 10%,transparent)}.btn.msd-trigger{height:var(--control-h);border-color:var(--border);background-color:var(--panel-2);background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:32px;color:var(--muted);font-weight:400}.btn.msd-trigger:hover{background-color:var(--panel-3);color:var(--muted)}.btn.msd-trigger.has-value,select.has-value,.btn.msd-trigger.has-value:hover{color:var(--text)}input[type=date]{height:var(--control-h)}input[type=date].is-default{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:none;color:var(--text);border-radius:var(--radius-sm);padding:5px 13px;font:inherit;font-size:13px;font-weight:500;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background var(--t),border-color var(--t),transform var(--t-fast),box-shadow var(--t),opacity var(--t)}.btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--border-strong) 55%,var(--text));background:var(--panel-3)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--text);border-color:var(--text);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--text) 86%,white);border-color:color-mix(in srgb,var(--text) 86%,white);box-shadow:var(--shadow-sm)}.btn-danger{background:transparent;border-color:var(--err);color:var(--err)}.btn-warn{background:transparent;border-color:var(--warn);color:var(--warn)}.btn-warn:hover:not(:disabled){background:color-mix(in srgb,var(--warn) 12%,transparent);border-color:var(--warn-strong);color:var(--warn-strong)}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--err) 14%,transparent);border-color:var(--err)}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}.badge{--badge-tone: var(--muted);display:inline-flex;align-items:center;gap:5px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--badge-tone) 55%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--badge-tone) 10%,transparent);font-size:11px;font-weight:500;letter-spacing:0;color:var(--badge-tone);white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--badge-tone);flex:0 0 auto}.badge-ok{--badge-tone: var(--ok)}.badge-warn{--badge-tone: var(--warn)}.badge-err{--badge-tone: var(--err)}.badge-info{--badge-tone: var(--info-hover)}:root[data-theme=light] .badge-info{--badge-tone: var(--info)}.badge-muted{--badge-tone: var(--faint)}.badge-plain{padding:0;border:0;background:none;color:var(--text);font-size:12px;line-height:18px;text-transform:none;letter-spacing:0}.marker-chip{display:inline-flex;align-items:center;padding:1px 5px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:11px;line-height:16.5px;color:var(--muted);white-space:nowrap}.state{color:var(--muted);padding:18px 4px;display:flex;align-items:center;gap:10px}.state-error{color:var(--err)}.state-empty{justify-content:center;flex-direction:column;text-align:center;gap:12px;padding:32px 16px}.state-action{margin-left:auto}.spinner{width:14px;height:14px;border:2px solid var(--border-strong);border-top-color:var(--primary);border-radius:50%;display:inline-block;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn>.spinner{width:12px;height:12px;flex:none;border-color:currentColor;border-top-color:transparent;opacity:.9}.form-panel{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:16px;display:grid;gap:14px;box-shadow:var(--shadow-sm)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;align-items:start}.modal-body .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-body .form-grid-3{grid-template-columns:repeat(6,minmax(0,1fr))}.modal-body .form-grid-3>.field{grid-column:span 2}.modal-body .form-grid-3>.field-span-2{grid-column:span 4}.modal-body .form-grid-3>.field-half{grid-column:span 3}@media (max-width: 720px){.modal-body .form-grid{grid-template-columns:1fr}}.form-grid .field{display:flex}.form-grid input:not([type=checkbox]):not([type=radio]),.form-grid select{width:100%}.list-filter{width:100%;min-width:0;height:var(--control-h);margin-bottom:3px;font-size:13px}.check-list{border:1px solid var(--border);border-radius:var(--radius-sm);padding:0;max-height:110px;overflow:auto;display:grid;gap:0;background:var(--panel-2)}.form-panel .check-list,.tree-ad-card .check-list{background:var(--panel-2)}.check-item{display:flex;gap:8px;font-size:11px;color:var(--muted);align-items:center;cursor:pointer;padding:3px 8px;border-radius:0;transition:background var(--t-fast)}.check-item:hover{background:var(--panel-3);color:var(--text)}.check-item:has(input:checked){color:var(--text)}.check-item-disabled{opacity:.5;cursor:not-allowed}.check-item-disabled:hover{background:transparent}.picker-actions{display:flex;gap:6px;margin-bottom:6px}.subtabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:12px}.form-actions{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.mapping-list .state{justify-content:flex-start;text-align:left}.form-section-title{font-weight:600;font-size:10px;color:var(--text);text-transform:uppercase;letter-spacing:.033em;margin:22px 0 14px}.form-panel>.form-section-title:first-child,.modal-body .form-section-title:first-child{margin-top:0}.modal-body .chips,.modal-body .chips-fieldset,.modal-body .check-inline{margin:12px 0}.modal-body .form-grid+.field-hint,.modal-body .form-grid+.field-note{margin-top:8px}.chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.chip{display:inline-flex;gap:6px;align-items:center;padding:5px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);cursor:pointer;font-size:12px;background:var(--panel);transition:border-color var(--t),background var(--t)}.chip:hover{border-color:var(--primary)}.chip:has(input:checked){border-color:var(--primary);background:var(--primary-soft);color:var(--text)}.chip:has(input[type=checkbox]){border:0;background:none;border-radius:0;padding:4px 10px 4px 0;font-size:12px;color:var(--text)}.chip-disabled:has(input[type=checkbox]){color:var(--text-disabled)}.chip:has(input[type=radio]){flex:0 0 auto;border-radius:var(--radius-sm);border-color:var(--border);padding:5px 12px;font-size:13px;color:var(--muted);background:none}.chip:has(input[type=radio]:checked){border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent)}.chip:has(input[type=radio]) input[type=radio]{width:12px;height:12px;background:none;border:2px solid var(--border-strong)}.chip:has(input[type=radio]) input[type=radio]:checked{background:var(--primary);border-color:var(--primary);box-shadow:none}.check-inline{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text);cursor:pointer}.check-inline.is-disabled{opacity:.45;cursor:not-allowed}.chip-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.field-hint{font-size:11px;margin-top:3px}.field-hint-warn{color:var(--warn)}.field-hint-err{color:var(--err)}.field-hint-inline{font-size:11px;font-weight:400;color:var(--muted)}.hint{position:relative;display:inline-flex;align-items:center;outline:none}.hint-bubble{position:fixed;transform:translate(-50%,calc(-100% - 8px));background:var(--panel-3);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:7px 10px;font-size:12px;font-weight:400;text-transform:none;letter-spacing:normal;line-height:1.4;white-space:normal;width:max-content;max-width:260px;overflow-wrap:anywhere;text-align:left;pointer-events:none;box-shadow:var(--shadow-md);z-index:1200}.req-mark{color:var(--err);margin-left:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.field-note{font-size:12px;color:var(--muted);margin-top:4px;max-width:65ch;line-height:1.5}.tree-adgroup-card{background:none;border:0;border-radius:0;padding:0 0 0 18px;margin-top:12px}.tree-ad-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;margin-top:8px}.tree-node-title{font-size:13px;font-weight:600;letter-spacing:-.01em;margin:0;flex:1}.tree-node-title--ad{font-size:13px;font-weight:600;margin:0;flex:1}.tree-node-header{display:flex;align-items:center;gap:8px;margin-left:-23px}.form-submit-bar{bottom:0;z-index:5;background:var(--panel);border-top:1px solid var(--border);margin:12px -18px -18px;padding:12px 18px}.tree-sticky-header{position:sticky;top:0;z-index:4;background:var(--panel)}.tl-form{--tree-pad: 12px;--tree-gutter: 36px}.tl-form .tree-campaign-card,.tl-form .tree-adgroup-card,.tl-form .tree-ad-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm)}.tl-form .tree-adgroup-card,.tl-form .tree-ad-card{padding:10px var(--tree-pad) 12px calc(var(--tree-pad) + var(--tree-gutter))}.tl-form .tree-campaign-card{padding:var(--tree-pad)}.tl-form .tree-node-header{margin-left:calc(-1 * var(--tree-gutter))}.tl-form .tree-node-header .btn-disclosure{width:calc(var(--tree-gutter) - 8px);flex:none;padding:2px 0;justify-content:center}.tl-form .tree-sticky-header{background:var(--bg)}.tl-form :is(.tree-campaign-card,.tree-adgroup-card,.tree-ad-card) :is(input,select,textarea):disabled:not([type=checkbox]):not([type=radio]){background:var(--bg)}.modal-body .form-panel.tl-form{display:flex;flex-direction:column;gap:0;min-height:100%}.tl-form .tl-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;display:grid;gap:14px}input[type=number]{font-variant-numeric:tabular-nums}.btn-disclosure{background:none;border:none;color:var(--muted);cursor:pointer;padding:2px 6px;font-size:13px;display:inline-flex;align-items:center}.disclosure-chevron{transition:transform var(--t-fast, .15s) ease}@media (prefers-reduced-motion: reduce){.disclosure-chevron{transition:none}}.chips-fieldset{border:0;padding:0;margin:0;min-width:0}.link-button{background:none;border:0;padding:0;margin:0;font:inherit;color:var(--accent);text-align:left;text-decoration:underline;cursor:pointer}.link-button:hover{text-decoration:none}.count-link{color:inherit;text-decoration:none;font-variant-numeric:tabular-nums}.count-link:hover{text-decoration:underline}textarea{font-family:inherit;font-size:13px;width:100%;resize:vertical}.progress{display:flex;width:48px;height:3px;background:var(--panel-3);overflow:hidden;margin-top:4px}.progress-done{background:var(--progress-fill)}.progress-failed{background:var(--err)}.daypart{display:grid;gap:8px}.daypart-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px}.daypart-scroll{overflow-x:auto;padding-bottom:4px}.daypart-grid{display:grid;grid-template-columns:44px repeat(48,minmax(11px,1fr));gap:2px;min-width:640px;-webkit-user-select:none;user-select:none}.daypart-corner{grid-column:1}.daypart-hour{grid-column:span 2;color:var(--faint);font-size:11px;font-family:var(--mono);text-align:left;line-height:1}.daypart-row{display:grid;grid-template-columns:subgrid;grid-column:1 / -1}.daypart-day{border:none;background:none;color:var(--muted);font:inherit;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:0 6px 0 0;cursor:pointer}.daypart-day:hover{color:var(--text)}.daypart-cell{height:18px;padding:0;border:1px solid var(--border);border-radius:3px;background:var(--panel-3);cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast)}.daypart-cell:hover{border-color:var(--primary)}.daypart-cell.on{background:var(--primary);border-color:var(--primary-700)}.daypart-cell:focus-visible{outline:none;box-shadow:var(--ring);z-index:1}.entity-controls{display:grid;gap:8px;padding:4px 0 8px 16px;border-left:2px solid var(--border)}.entity-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.entity-row .btn{padding:4px 9px;font-size:12px}.entity-name{min-width:240px;font-size:12px}.entity-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;max-width:640px}.entity-kv{display:grid;grid-template-columns:max-content 1fr;gap:2px 14px;font-size:12px}.live-badge{display:inline-flex;align-items:center;gap:6px;color:var(--ok);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);animation:live-pulse 1.6s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1;box-shadow:0 0 color-mix(in srgb,var(--ok) 45%,transparent)}50%{opacity:.6;box-shadow:0 0 0 5px transparent}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:fade-in var(--t-fast)}.modal{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-width:560px;width:100%;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;animation:modal-in var(--t)}.modal--wide{max-width:880px}.modal--medium{max-width:720px}.modal-body .form-panel{border:none;background:none;box-shadow:none;padding:0;margin:0}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;flex-shrink:0}.modal-title{font-size:16px;font-weight:600;margin:0}.modal-close{padding:4px 8px;line-height:1;font-size:14px;color:var(--muted);background:none;border-color:transparent;flex-shrink:0}.modal-close:hover:not(:disabled){color:var(--text);background:var(--panel-3)}.modal-body{--control-h: 36px;padding:18px 20px;overflow-y:auto;flex:1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border);flex-shrink:0}.modal-actions .btn{height:var(--control-h)}.confirm-message{margin:0;color:var(--muted);font-size:14px;line-height:1.55;white-space:pre-wrap}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.toaster{position:fixed;bottom:154px;right:24px;z-index:1100;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{padding:10px 16px;border-radius:6px;font-size:13px;font-weight:500;box-shadow:0 4px 16px #00000040;animation:toast-in .18s ease-out}.toast-ok{background:var(--ok);color:#fff}.toast-err{background:var(--err);color:#fff}.toast-warn{background:var(--warn);color:#1a1a1a}.toast-info{background:var(--info);color:#fff}.toast-muted{background:var(--surface);color:var(--text);border:1px solid var(--border)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.delta{display:inline-flex;align-items:center;padding:1px 5px;border:1px solid currentColor;border-radius:var(--radius-xs);background:var(--panel-2);font-size:10px;font-weight:600;line-height:15px;letter-spacing:.33px;text-transform:uppercase;font-variant-numeric:tabular-nums;white-space:nowrap}.delta-up{color:var(--ok)}.delta-down{color:var(--err)}.delta-flat{color:var(--muted)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-size:12px}a{color:var(--primary)}@media (max-width: 640px){.tl-form{--tree-pad: 8px;--tree-gutter: 28px}.topbar{flex-wrap:wrap;row-gap:6px;padding:8px 12px}.card-head{flex-direction:column;align-items:stretch}.card-actions{width:100%}.form-grid{grid-template-columns:1fr}.form-grid-spacer{display:none}input,select,textarea{min-width:0}.row>.field{flex:1 1 140px}.campaign-item-top{flex-wrap:wrap;row-gap:6px}.campaign-item-name{flex:1 1 auto}.campaign-item-actions{margin-left:0;width:100%;justify-content:flex-end}.campaign-item-actions .btn{opacity:1}.campaign-item-account{max-width:160px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.tutorial-fab{position:fixed;bottom:24px;right:24px;z-index:900;display:inline-flex;align-items:center;gap:10px;padding:13px 21px;border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);color:var(--text);font-size:16px;font-weight:600;white-space:nowrap;text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.tutorial-fab svg{color:var(--accent);flex-shrink:0;width:23px;height:23px}.tutorial-fab:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 6px 20px #00000047}.tutorial-fab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tutorial-login-btn{display:flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:.625rem 1.25rem;border-radius:.375rem;background:var(--panel);border:1px solid var(--border);color:var(--text);font-size:.9375rem;font-weight:500;text-decoration:none;cursor:pointer;box-shadow:0 1px 3px #00000014;transition:border-color .12s ease,transform .12s ease}.tutorial-login-btn svg{color:var(--accent);flex-shrink:0;width:18px;height:18px}.tutorial-login-btn:hover{transform:translateY(-1px);border-color:var(--accent)}.tutorial-login-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.support-fab{position:fixed;bottom:89px;right:24px;z-index:900;display:inline-flex;align-items:center;gap:10px;padding:13px 21px;border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);color:var(--text);font-size:16px;font-weight:600;white-space:nowrap;text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.support-fab svg{color:var(--accent);flex-shrink:0;width:23px;height:23px}.support-fab:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 6px 20px #00000047}.support-fab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.support-login-btn{display:flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:.625rem 1.25rem;border-radius:.375rem;background:var(--panel);border:1px solid var(--border);color:var(--text);font-size:.9375rem;font-weight:500;text-decoration:none;cursor:pointer;box-shadow:0 1px 3px #00000014;transition:border-color .12s ease,transform .12s ease}.support-login-btn svg{color:var(--accent);flex-shrink:0;width:18px;height:18px}.support-login-btn:hover{transform:translateY(-1px);border-color:var(--accent)}.support-login-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.launch-stepper{display:flex;align-items:center;gap:0;flex-wrap:wrap;margin:2px 0 16px;border-bottom:1px solid var(--border)}.launch-step-chip{display:inline-flex;align-items:center;gap:5px;padding:9px 14px;background:none;border:0;border-bottom:2px solid transparent;border-radius:0;margin-bottom:-1px;color:var(--muted);font-size:12px;font-weight:400;font-family:inherit;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}.launch-step-chip:hover:not(:disabled){color:var(--text)}.launch-step-chip:disabled{cursor:default;opacity:.5}.launch-step-chip:focus-visible{outline:none;box-shadow:var(--ring)}.launch-step-chip.is-reached{color:var(--text)}.launch-step-chip.is-current{border-bottom-color:var(--text);color:var(--text)}.launch-step-num{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:var(--radius-pill);background:none;border:1px solid var(--border-strong);color:var(--muted);font-size:12px;font-weight:600;flex:none}.launch-step-chip.is-current .launch-step-num{background:var(--text);border-color:var(--text);color:var(--on-primary)}.launch-step-chip.is-done .launch-step-num{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.launch-step-chip.is-done{color:var(--muted)}.launch-step-footer{margin-top:18px;padding-top:14px;border-top:1px solid var(--border);justify-content:flex-end}.launch-review{display:flex;flex-direction:column;gap:14px}.review-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:12px}.review-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.review-section-head .form-section-title{border-bottom:0;padding-bottom:0;margin:0}.review-rows{margin:10px 0 0}.review-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:7px 0;border-bottom:1px solid var(--border)}.review-row:last-child{border-bottom:0}.review-row dt{color:var(--muted);font-size:13px}.review-row dd{margin:0;color:var(--text);font-size:13px;text-align:right;font-variant-numeric:tabular-nums}.launch-review>.state{flex-direction:column;align-items:flex-start;padding:10px 12px}.review-issues-title{font-weight:600;margin-bottom:6px}.launch-review .review-issues-title+ul{margin:0;padding-left:18px}.onoff-switch{position:relative;width:28px;height:16px;padding:0;border:none;border-radius:var(--radius-track);background:var(--control-track-off);cursor:pointer;flex-shrink:0;vertical-align:middle;transition:background var(--t-fast)}.onoff-switch-knob{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:var(--radius-xs);background:var(--control-knob-off);transition:left var(--t-fast),background var(--t-fast),opacity var(--t-fast)}.onoff-switch:hover:not(:disabled) .onoff-switch-knob{opacity:.85}.onoff-switch-on{background:var(--control-track-on)}.onoff-switch-on .onoff-switch-knob{left:14px;background:var(--control-knob-on)}.onoff-switch:disabled{opacity:.45;cursor:default}.topbar-utils .theme-toggle,.topbar-utils .support-header-btn{margin-left:0}.support-header-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.support-header-btn~.theme-toggle{margin-left:0}.support-header-btn svg{width:14px;height:14px}.searchable-select{position:relative}.searchable-select-menu{position:absolute;inset-inline:0;top:calc(100% + 4px);z-index:40;max-height:240px;overflow-y:auto;background:var(--panel-2);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 10px 28px #00000059}.searchable-select-option{display:block;width:100%;text-align:left;padding:7px 10px;background:none;border:0;color:inherit;font:inherit;cursor:pointer}.searchable-select-option:hover,.searchable-select-option:focus{background:var(--panel-3)}.searchable-select-empty{padding:8px 10px;font-size:12px}.cols-panel{display:flex;flex-direction:column;gap:10px;min-width:0}.cols-tabs{display:flex;gap:4px;padding:3px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.cols-tab{flex:1;padding:7px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}.cols-tab:hover{color:var(--text);background:var(--panel-2)}.cols-tab.active{color:var(--text);background:var(--panel-3);font-weight:500}.cols-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cols-search{flex:1 1 180px;min-width:140px;height:var(--control-h)}.cols-count{font-size:12px;color:var(--muted);white-space:nowrap}.cols-toolbar-actions{display:flex;gap:6px;margin-left:auto}.cols-toolbar-actions .btn{height:var(--control-h)}.cols-list{list-style:none;margin:0;padding:0;max-height:46vh;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.cols-row{position:relative;display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none}.cols-row:last-child{border-bottom:0}.cols-row:hover{background:var(--panel-2)}.cols-row.dragging{opacity:.45}.cols-row.drop-before:before,.cols-row.drop-after:after{content:"";position:absolute;left:8px;right:8px;height:2px;background:var(--accent);border-radius:2px;pointer-events:none}.cols-row.drop-before:before{top:-1px}.cols-row.drop-after:after{bottom:-1px}.cols-grip{display:inline-flex;align-items:center;justify-content:center;width:22px;height:24px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-disabled);cursor:grab}.cols-row:hover .cols-grip{color:var(--muted)}.cols-grip:active{cursor:grabbing}.cols-grip:disabled{cursor:default;opacity:.4}.cols-label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-size:12px;cursor:pointer}.cols-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cols-grip:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cols-empty{padding:14px 10px;font-size:12px;color:var(--muted);text-align:center}.cols-hint{margin:0;font-size:11px;color:var(--text-disabled);line-height:1.45}.dash-toolbar{margin:12px 0}.profile-fields{display:flex;flex-direction:column;gap:14px}.profile-fields .field-label{margin-bottom:2px}.status-chips{display:flex;flex-wrap:wrap;gap:8px}.topbar .status-chips{margin-left:6px;min-width:0;align-items:center}.topbar .status-chip{height:20px;padding:0 5px;gap:5px;font-size:12px}.topbar .status-chip svg{width:12px;height:12px}.status-chip{display:inline-flex;align-items:center;gap:8px;height:var(--control-h);padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel-2);color:var(--muted);font:inherit;font-size:13px;cursor:pointer;transition:background var(--t),border-color var(--t),color var(--t)}.status-chip:hover{background:var(--panel-3);color:var(--text)}.status-chip svg{flex:none;opacity:.9}.status-chip-warn{border-color:color-mix(in srgb,var(--warn) 45%,transparent);color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--panel-2))}.status-chip-warn:hover{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,var(--panel-2))}.status-chip-err{border-color:color-mix(in srgb,var(--err) 45%,transparent);color:var(--err);background:color-mix(in srgb,var(--err) 8%,var(--panel-2))}.status-chip-err:hover{color:var(--err);background:color-mix(in srgb,var(--err) 14%,var(--panel-2))}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.login-card{width:min(460px,100%);padding:28px 24px 20px;background:var(--panel);border:1px solid var(--panel-3);border-radius:12px;text-align:center}.login-brand{display:flex;justify-content:center;margin-bottom:20px}.login-title{font-size:26px;font-weight:600;letter-spacing:-.02em;margin:0 0 12px;color:var(--text)}.login-sub{font-size:14px;line-height:1.5;color:var(--muted);margin:0 auto 24px;max-width:24rem}.login-sub strong{color:var(--text);font-weight:600}.login-error{font-size:13px;color:var(--err);margin:0 0 16px}.login-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:min(340px,100%);margin:0 auto}.login-foot{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--panel-3);font-size:13px;color:var(--muted)}.login-google{color:var(--text);text-decoration:underline;text-underline-offset:3px}
