.shell[data-v-b4d026ae]{height:100vh}.sider[data-v-b4d026ae]{background:var(--dsp-panel)}.brand[data-v-b4d026ae]{display:flex;align-items:center;gap:10px;height:60px;padding:0 18px}.brand.compact[data-v-b4d026ae]{justify-content:center;padding:0}.brand-mark[data-v-b4d026ae]{display:grid;flex:none;width:30px;height:30px;place-items:center;border-radius:9px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:700}.brand-name[data-v-b4d026ae]{color:var(--dsp-text-strong);font-size:15px;font-weight:650;letter-spacing:.01em;white-space:nowrap}.main-column[data-v-b4d026ae]{background:var(--dsp-bg)}.topbar[data-v-b4d026ae]{display:flex;align-items:center;justify-content:space-between;gap:16px;height:60px;padding:0 24px;background:var(--dsp-panel)}.title[data-v-b4d026ae]{display:flex;align-items:center;gap:8px;min-width:0;font-size:14px;white-space:nowrap}.title .section[data-v-b4d026ae],.title .divider[data-v-b4d026ae]{color:var(--dsp-muted)}.title strong[data-v-b4d026ae]{color:var(--dsp-text-strong);font-weight:600}.actions[data-v-b4d026ae]{display:flex;align-items:center;gap:8px}.identity[data-v-b4d026ae]{display:flex;align-items:center;gap:10px;padding:4px 8px 4px 4px;border:0;border-radius:999px;background:transparent;color:var(--dsp-muted);font:inherit;cursor:pointer}.identity[data-v-b4d026ae]:hover{background:var(--dsp-primary-soft)}.avatar[data-v-b4d026ae]{background:var(--dsp-primary);color:#fff;font-weight:600}.who[data-v-b4d026ae]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.username[data-v-b4d026ae]{color:var(--dsp-text-strong);font-size:13px;font-weight:600}.role[data-v-b4d026ae]{font-size:11px}.content[data-v-b4d026ae]{height:calc(100vh - 60px);background:var(--dsp-bg)}.content-inner[data-v-b4d026ae]{max-width:1600px;margin:0 auto;padding:24px}@media(max-width:640px){.topbar[data-v-b4d026ae]{padding:0 12px}.title .section[data-v-b4d026ae],.title .divider[data-v-b4d026ae],.who[data-v-b4d026ae]{display:none}.content-inner[data-v-b4d026ae]{padding:14px}}.targeting-input[data-v-ec38ab6b]{display:grid;width:100%;grid-template-columns:136px minmax(0,1fr);align-items:start;gap:10px}.range-row[data-v-ec38ab6b]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.value-select[data-v-ec38ab6b]{min-width:0}.all-placeholder[data-v-ec38ab6b]{display:flex;min-height:34px;align-items:center;padding:0 12px;border:1px dashed var(--dsp-border);border-radius:8px;color:var(--dsp-muted);font-size:13px}@media(max-width:520px){.targeting-input[data-v-ec38ab6b],.range-row[data-v-ec38ab6b]{grid-template-columns:1fr}}.macro-url[data-v-701bb057]{display:flex;flex-direction:column;gap:8px;width:100%}.macro-chips[data-v-701bb057]{display:flex;flex-wrap:wrap;gap:6px}.macro-chip[data-v-701bb057]{cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.macro-chip.locked[data-v-701bb057]{cursor:not-allowed;opacity:.6}.macro-warning[data-v-701bb057]{color:#d97706;font-size:12px;line-height:1.5}.page-header[data-v-13f38a41]{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.text[data-v-13f38a41]{min-width:0}h1[data-v-13f38a41]{margin:0;color:var(--dsp-text-strong);font-size:24px;font-weight:650;line-height:1.25;letter-spacing:-.01em}p[data-v-13f38a41]{max-width:820px;margin:6px 0 0;color:var(--dsp-muted);font-size:14px;line-height:1.5}.page-actions[data-v-13f38a41]{display:flex;flex-wrap:wrap;align-items:center;gap:10px}@media(max-width:760px){.page-header[data-v-13f38a41]{align-items:stretch;flex-direction:column}}.summary-strip[data-v-653aba09]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.summary-card[data-v-653aba09]{display:flex;flex-direction:column;gap:8px;padding:14px 18px}.summary-card span[data-v-653aba09]{color:var(--dsp-muted);font-size:12px;font-weight:500}.summary-card strong[data-v-653aba09]{color:var(--dsp-text-strong);font-size:24px;line-height:1}.list-panel[data-v-653aba09]{overflow:hidden}.filter-bar[data-v-653aba09]{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px;padding:16px 18px;border-bottom:1px solid var(--dsp-border)}.filter-fields[data-v-653aba09]{display:grid;flex:1;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 14px;min-width:0}.filter-field[data-v-653aba09]{display:flex;flex-direction:column;gap:6px;min-width:0}.filter-label[data-v-653aba09]{color:var(--dsp-muted);font-size:12px;font-weight:500}.filter-actions[data-v-653aba09]{display:flex;gap:8px}.data-table[data-v-653aba09] .n-data-table__pagination{padding:12px 18px;margin:0}.data-table[data-v-653aba09] .clickable-row{cursor:pointer}.data-table[data-v-653aba09] .muted-id{color:var(--dsp-muted)}.data-table[data-v-653aba09] .row-actions{display:flex;gap:2px}.editor-form[data-v-653aba09]{display:flex;flex-direction:column;gap:16px;padding-bottom:8px}.editor-section[data-v-653aba09]{padding:18px;border:1px solid var(--dsp-border);border-radius:12px;background:var(--dsp-panel)}.section-heading[data-v-653aba09]{display:flex;gap:12px;margin-bottom:16px}.section-index[data-v-653aba09]{display:grid;flex:none;width:26px;height:26px;place-items:center;border-radius:50%;background:var(--dsp-primary-soft);color:var(--dsp-primary);font-size:13px;font-weight:700}.section-heading h2[data-v-653aba09]{margin:0;color:var(--dsp-text-strong);font-size:15px;font-weight:650;line-height:1.4}.section-heading p[data-v-653aba09]{margin:3px 0 0;color:var(--dsp-muted);font-size:13px;line-height:1.5}.form-grid[data-v-653aba09]{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}.form-grid .span-2[data-v-653aba09],.form-divider[data-v-653aba09]{grid-column:1 / -1}.form-divider[data-v-653aba09]{margin:4px 0 0}.targeting-grid[data-v-653aba09]{display:grid;grid-template-columns:1fr;gap:14px;padding-bottom:6px}.domains-field[data-v-653aba09]{width:100%}.drawer-footer[data-v-653aba09]{display:flex;justify-content:flex-end;gap:10px}.copy-error[data-v-653aba09]{margin-top:8px;color:var(--dsp-danger);font-size:12px}@media(max-width:900px){.summary-strip[data-v-653aba09]{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid[data-v-653aba09]{grid-template-columns:1fr}}.list-panel[data-v-6a0026cb]{overflow:hidden}.filter-bar[data-v-6a0026cb]{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px;padding:16px 18px;border-bottom:1px solid var(--dsp-border)}.filter-fields[data-v-6a0026cb]{display:grid;flex:1;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 14px;min-width:0}.filter-field[data-v-6a0026cb]{display:flex;flex-direction:column;gap:6px;min-width:0}.filter-label[data-v-6a0026cb]{color:var(--dsp-muted);font-size:12px;font-weight:500}.filter-actions[data-v-6a0026cb]{display:flex;gap:8px}.table-meta[data-v-6a0026cb]{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;color:var(--dsp-muted);font-size:13px}.table-meta strong[data-v-6a0026cb]{margin-right:4px;color:var(--dsp-text-strong)}.filter-note[data-v-6a0026cb]{color:var(--dsp-primary)}.data-table[data-v-6a0026cb] .n-data-table-base-table{border-top:1px solid var(--dsp-border)}.data-table[data-v-6a0026cb] .n-data-table__pagination{padding:12px 18px;margin:0}.data-table[data-v-6a0026cb] .clickable-row{cursor:pointer}.data-table[data-v-6a0026cb] .muted-id{color:var(--dsp-muted)}.data-table[data-v-6a0026cb] .copy-cell{display:flex;align-items:center;gap:6px;min-width:0}.data-table[data-v-6a0026cb] .copy-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table[data-v-6a0026cb] .cell-thumb img{border-radius:6px}.data-table[data-v-6a0026cb] .row-actions{display:flex;gap:2px}.editor[data-v-6a0026cb]{display:flex;flex-direction:column;gap:18px}.editor-item[data-v-6a0026cb]{margin:0}.field-control[data-v-6a0026cb]{display:flex;flex-direction:column;width:100%}.wide[data-v-6a0026cb]{width:100%}.upload-field[data-v-6a0026cb]{display:flex;flex-direction:column;gap:10px}.upload-preview[data-v-6a0026cb]{display:flex;align-items:center;gap:10px}.upload-thumb[data-v-6a0026cb]{width:64px;height:64px;object-fit:cover;border:1px solid var(--dsp-border);border-radius:8px;background:var(--dsp-panel-subtle)}.upload-path[data-v-6a0026cb]{color:var(--dsp-muted);font-size:12px;word-break:break-all}.drawer-footer[data-v-6a0026cb]{display:flex;justify-content:flex-end;gap:10px}.update-summary[data-v-66a22370]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;padding:12px 14px;border-radius:10px;background:var(--dsp-panel-subtle)}.update-summary>div[data-v-66a22370]{display:grid;gap:4px}.update-form[data-v-66a22370]{display:flex;flex-direction:column;gap:16px}.file-field[data-v-66a22370]{width:100%}.muted[data-v-66a22370]{color:var(--dsp-muted);font-size:12px}.modal-footer[data-v-66a22370]{display:flex;justify-content:flex-end;gap:10px}.trend[data-v-4d74dd02]{position:relative;width:100%}.svg[data-v-4d74dd02]{width:100%;height:220px;display:block}.grid[data-v-4d74dd02]{stroke:var(--dsp-grid);stroke-width:1}.axis[data-v-4d74dd02]{fill:var(--dsp-muted);font-size:10px}.area[data-v-4d74dd02]{fill:url(#trend-fill)}.line[data-v-4d74dd02]{fill:none;stroke:var(--dsp-primary);stroke-width:2;vector-effect:non-scaling-stroke}.dot[data-v-4d74dd02]{fill:var(--dsp-panel);stroke:var(--dsp-primary);stroke-width:1.5}.cursor[data-v-4d74dd02]{stroke:var(--dsp-muted);stroke-width:1;stroke-dasharray:3 3;opacity:.5}.dot-hover[data-v-4d74dd02]{fill:var(--dsp-primary)}.xaxis[data-v-4d74dd02]{display:flex;justify-content:space-between;padding:4px 12px 0 52px}.xlabel[data-v-4d74dd02]{font-size:11px;color:var(--dsp-muted)}.tip[data-v-4d74dd02]{position:absolute;top:0;transform:translate(-50%);background:var(--dsp-tip-bg);color:#fff;font-size:12px;padding:4px 8px;border-radius:6px;display:flex;flex-direction:column;gap:1px;pointer-events:none;white-space:nowrap}.tip strong[data-v-4d74dd02]{font-weight:600}.kpi-grid[data-v-cbe3c778]{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px}.kpi[data-v-cbe3c778]{padding:16px 18px;border-width:1px;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.kpi[data-v-cbe3c778]:hover{border-color:var(--dsp-primary)}.kpi.selected[data-v-cbe3c778]{border-color:var(--dsp-primary);box-shadow:0 0 0 3px var(--dsp-primary-soft)}.kpi-title[data-v-cbe3c778]{color:var(--dsp-muted);font-size:13px;font-weight:500}.kpi-value[data-v-cbe3c778]{margin:8px 0 6px;color:var(--dsp-text-strong);font-size:26px;font-weight:700;letter-spacing:-.01em}.kpi-delta[data-v-cbe3c778]{display:flex;align-items:center;gap:3px;color:var(--dsp-muted);font-size:12px}.kpi-delta.up[data-v-cbe3c778]{color:var(--dsp-success)}.kpi-delta.down[data-v-cbe3c778]{color:var(--dsp-danger)}.kpi-vs[data-v-cbe3c778]{margin-left:2px;color:var(--dsp-muted)}.trend-card[data-v-cbe3c778]{padding:18px 20px 14px}.card-header[data-v-cbe3c778]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.card-header strong[data-v-cbe3c778]{color:var(--dsp-text-strong);font-size:15px}.card-sub[data-v-cbe3c778]{margin-left:10px;color:var(--dsp-muted);font-size:13px}.metric-select[data-v-cbe3c778]{width:180px}.trend-body[data-v-cbe3c778]{display:flex;min-height:248px;align-items:center;justify-content:center}.login-page[data-v-1df00cf0]{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100vh;background:var(--dsp-bg)}.hero[data-v-1df00cf0]{display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:48px 56px;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.18),transparent 40%),linear-gradient(145deg,#4338ca,#6d28d9 55%,#7c3aed);color:#fff}.hero-brand[data-v-1df00cf0]{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:650}.brand-mark[data-v-1df00cf0]{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#ffffff2e;font-weight:700}.hero-copy h2[data-v-1df00cf0]{max-width:460px;margin:0;font-size:36px;font-weight:700;line-height:1.15;letter-spacing:-.02em}.hero-copy p[data-v-1df00cf0]{max-width:440px;margin:16px 0 0;color:#fffc;font-size:15px;line-height:1.6}.hero-points[data-v-1df00cf0]{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;color:#ffffffd9;font-size:14px}.hero-points li[data-v-1df00cf0]:before{content:"";display:inline-block;width:6px;height:6px;margin-right:10px;border-radius:50%;background:#c4b5fd;vertical-align:middle}.form-side[data-v-1df00cf0]{position:relative;display:grid;place-items:center;padding:32px 24px}.form-card[data-v-1df00cf0]{width:min(380px,100%)}h1[data-v-1df00cf0]{margin:0;color:var(--dsp-text-strong);font-size:28px;font-weight:700;letter-spacing:-.01em}.subtitle[data-v-1df00cf0]{margin:6px 0 28px;color:var(--dsp-muted);font-size:14px}.login-form[data-v-1df00cf0]{display:flex;flex-direction:column;gap:18px}.theme-toggle[data-v-1df00cf0]{position:absolute;top:20px;right:24px;border:0;background:transparent;color:var(--dsp-muted);font:inherit;font-size:13px;cursor:pointer}.theme-toggle[data-v-1df00cf0]:hover{color:var(--dsp-primary)}@media(max-width:860px){.login-page[data-v-1df00cf0]{grid-template-columns:1fr}.hero[data-v-1df00cf0]{display:none}}.toolbar[data-v-afbf8899]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px}.grow[data-v-afbf8899]{flex:1}.time-button[data-v-afbf8899]{min-width:280px;justify-content:flex-start}.time-panel[data-v-afbf8899]{display:flex;flex-direction:column;gap:12px;padding:4px}.hour-head[data-v-afbf8899]{display:flex;align-items:center;justify-content:space-between;color:var(--dsp-text-strong);font-weight:600}.hour-grid[data-v-afbf8899]{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.hour-chip[data-v-afbf8899]{justify-content:center;font-variant-numeric:tabular-nums}.picker-panel[data-v-afbf8899]{display:flex;flex-direction:column;gap:18px;padding:18px}.picker[data-v-afbf8899]{display:grid;grid-template-columns:1.3fr 1fr;gap:28px}.col-title[data-v-afbf8899]{margin-bottom:10px;color:var(--dsp-text-strong);font-size:14px;font-weight:600}.col-title .hint[data-v-afbf8899]{margin-left:8px;color:var(--dsp-muted);font-size:12px;font-weight:400}.dim-group[data-v-afbf8899]{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.group-label[data-v-afbf8899]{flex:none;min-width:86px;padding-top:3px;color:var(--dsp-muted);font-size:12px}.chips[data-v-afbf8899]{display:flex;flex-wrap:wrap;gap:6px}.chip[data-v-afbf8899]{cursor:pointer}.chip.disabled[data-v-afbf8899]{cursor:not-allowed;opacity:.4}.filters[data-v-afbf8899]{padding-top:16px;border-top:1px solid var(--dsp-border)}.filter-row[data-v-afbf8899]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.filter-dim[data-v-afbf8899]{width:180px}.filter-vals[data-v-afbf8899]{flex:1;max-width:560px}.result-panel[data-v-afbf8899]{overflow:hidden}.rowcount[data-v-afbf8899]{padding:10px 16px;border-top:1px solid var(--dsp-border);color:var(--dsp-muted);font-size:12px}@media(max-width:900px){.picker[data-v-afbf8899]{grid-template-columns:1fr}}:root{--dsp-bg: #f6f7fb;--dsp-panel: #ffffff;--dsp-panel-subtle: #f9fafb;--dsp-text: #1f2937;--dsp-text-strong: #111827;--dsp-muted: #6b7280;--dsp-border: #e5e7eb;--dsp-primary: #4f46e5;--dsp-primary-soft: rgba(79, 70, 229, .1);--dsp-success: #16a34a;--dsp-danger: #dc2626;--dsp-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 16px rgba(16, 24, 40, .04);--dsp-grid: #eef0f4;--dsp-tip-bg: #111827;color-scheme:light}:root[data-theme=dark]{--dsp-bg: #0f1117;--dsp-panel: #171a22;--dsp-panel-subtle: #1c2029;--dsp-text: #d1d5db;--dsp-text-strong: #f3f4f6;--dsp-muted: #9ca3af;--dsp-border: #2a2f3a;--dsp-primary: #818cf8;--dsp-primary-soft: rgba(129, 140, 248, .14);--dsp-success: #4ade80;--dsp-danger: #f87171;--dsp-shadow: none;--dsp-grid: #252a35;--dsp-tip-bg: #374151;color-scheme:dark}*{box-sizing:border-box}body{min-width:320px;margin:0;background:var(--dsp-bg);color:var(--dsp-text);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}#app{min-height:100vh}.page{display:flex;flex-direction:column;gap:16px}.panel{border:1px solid var(--dsp-border);border-radius:12px;background:var(--dsp-panel);box-shadow:var(--dsp-shadow)}.field-help{margin-top:6px;color:var(--dsp-muted);font-size:12px;line-height:1.5}.tabular{font-variant-numeric:tabular-nums}
