/* Shared neutral palette: dark is the default, regardless of OS preference. */
:root{--gray-0:#181818;--gray-1:#202020;--gray-2:#252525;--gray-3:#303030;--gray-4:#414141;--gray-5:#666;--gray-6:#888;--gray-7:#aaa;--gray-8:#ccc;--gray-9:#ededed;--gray-10:#f5f5f5;--gray-11:#fff;--theme-success-ink:#a4d5b5;--theme-success-bg:#24372b;--theme-warning-ink:#e5c28b;--theme-warning-bg:#382e22;--theme-error-ink:#f3abab;--theme-error-bg:#3c2525}
:root[data-theme=dark]{color-scheme:dark}
:root[data-theme=light]{color-scheme:light;--gray-0:#fff;--gray-1:#fafafa;--gray-2:#f1f1f1;--gray-3:#e8e8e8;--gray-4:#d5d5d5;--gray-5:#aaa;--gray-6:#767676;--gray-7:#616161;--gray-8:#414141;--gray-9:#292929;--gray-10:#1b1b1b;--gray-11:#111;--theme-success-ink:#23633a;--theme-success-bg:#eaf5ed;--theme-warning-ink:#765313;--theme-warning-bg:#fff4dc;--theme-error-ink:#a32929;--theme-error-bg:#fff0f0}
/* Purchasecron client identity, read from its deployed dashboard. Geometry stays Matrix-owned. */
:root{
 --pc-bg:#181818;--pc-secondary:#202020;--pc-card:#252525;--pc-raised:#303030;--pc-input:#202020;
 --pc-border:#383838;--pc-border-strong:#505050;--pc-text:#ededed;--pc-muted:#b5b5b5;--pc-dim:#999999;--pc-selected:#3a3a3a;
 --pc-primary:#ffffff;--pc-primary-ink:#1b1b1b;--pc-focus:#cccccc;
 --pc-radius:8px;--pc-radius-sm:6px;--pc-radius-lg:12px;
 --pc-menu-shadow:0 8px 24px -8px rgba(0,0,0,.65),0 0 0 1px var(--pc-border);
 --pc-control-shadow:0 1px 0 rgba(0,0,0,.12);
 --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
 --bg:var(--pc-bg);--bg-2:var(--pc-secondary);--card:var(--pc-card);--sidebar:var(--pc-secondary);--surface:var(--pc-card);--surface-hover:var(--pc-raised);--input:var(--pc-input);
 --border:var(--pc-border);--line:var(--pc-border);--border-strong:var(--pc-border-strong);
 --text:var(--pc-text);--muted:var(--pc-muted);--subtle:var(--pc-dim);--accent:var(--pc-focus);--accent-text:var(--pc-focus);--radius:var(--pc-radius-lg)
}
/* The source dashboard is dark; keep Matrix's approved white light-mode roles. */
:root[data-theme=light]{
 --pc-bg:#ffffff;--pc-secondary:#fafafa;--pc-card:#ffffff;--pc-raised:#f1f1f1;--pc-input:#ffffff;
 --pc-border:#dedede;--pc-border-strong:#b5b5b5;--pc-text:#292929;--pc-muted:#616161;--pc-dim:#767676;--pc-selected:#e8e8e8;
 --pc-primary:#303030;--pc-primary-ink:#ffffff;--pc-focus:#616161;
 --pc-menu-shadow:0 8px 24px -8px rgba(0,0,0,.20),0 0 0 1px var(--pc-border);--pc-control-shadow:0 1px 0 rgba(0,0,0,.06)
}
body:is([data-client-preview],[data-client-matrix-report]){font-family:var(--sans);-webkit-font-smoothing:antialiased}
body[data-client-preview] .topbar{background:var(--pc-bg);border-color:var(--pc-border)}
body[data-client-preview] :is(.brand-mark,.avatar){background:var(--pc-raised);border:1px solid var(--pc-border-strong);color:var(--pc-text)}
body[data-client-preview] :is(.card,.source-card,.guide-card,.matrix-sketch){background:var(--pc-card);border-color:var(--pc-border);border-radius:var(--pc-radius-lg);box-shadow:none}
body[data-client-preview] .source-card{background:var(--pc-secondary)}
body[data-client-preview] :is(.button,.icon-button,input:not([type=checkbox]),select){border-radius:var(--pc-radius);border-color:var(--pc-border-strong)}
body[data-client-preview] :is(input:not([type=checkbox]),select){background:var(--pc-input);color:var(--pc-text)}
body[data-client-preview] :is(.button.secondary,.button.quiet){background:var(--pc-raised);color:var(--pc-text);box-shadow:var(--pc-control-shadow)}
body[data-client-preview] .button.primary{background:var(--pc-primary);color:var(--pc-primary-ink);border-color:var(--pc-primary);box-shadow:var(--pc-control-shadow)}
body[data-client-preview] :is(.button.secondary,.button.quiet):hover{background:var(--pc-selected)}
body[data-client-preview] .nav-item{border-radius:var(--pc-radius);color:var(--pc-muted)}
body[data-client-preview] .nav-item:hover,body[data-client-preview] .nav-item[aria-current=page]{background:var(--pc-selected);color:var(--pc-text);box-shadow:none}
body[data-client-preview] :is(.preview-note,.stepper){background:var(--pc-secondary);border-color:var(--pc-border)}
body[data-client-preview] .stepper [aria-current=step]{background:var(--pc-raised);color:var(--pc-text)}
body[data-client-preview] :is(dialog,.app-navigation){border-color:var(--pc-border)}
body[data-client-preview] dialog{background:var(--pc-card);border-radius:var(--pc-radius-lg);box-shadow:var(--pc-menu-shadow)}
body[data-client-matrix-report] .sidebar{background:var(--pc-secondary);border-color:var(--pc-border)}
body[data-client-matrix-report] .sidebar .nav-link{border-radius:var(--pc-radius);color:var(--pc-muted);font-weight:550}
body[data-client-matrix-report] .sidebar .nav-link:is(:hover,.nav-current){background:var(--pc-selected);color:var(--pc-text);box-shadow:none}
body[data-client-matrix-report] :is(.real-date-trigger,.google-select-trigger,.workspace-control){border-radius:var(--pc-radius);border-color:var(--pc-border-strong);background:var(--pc-input);color:var(--pc-text);box-shadow:var(--pc-control-shadow)}
body[data-client-matrix-report] :is(.real-date-trigger,.google-select-trigger,.workspace-control):hover,
body[data-client-matrix-report] :is(.real-date-trigger,.google-select-trigger)[aria-expanded=true]{background:var(--pc-selected)}
body[data-client-matrix-report] :is(.real-picker,.real-select-menu,.real-comparison-menu,.workspace-summary){background:var(--pc-card);border-color:var(--pc-border);border-radius:var(--pc-radius-lg);box-shadow:var(--pc-menu-shadow)}
body[data-client-matrix-report] :is(.real-select-menu [role=option],.real-comparison-menu button){border-radius:var(--pc-radius)}
body[data-client-matrix-report] :is(.real-select-menu [role=option],.real-comparison-menu button):hover,
body[data-client-matrix-report] .real-select-menu [role=option][aria-selected=true]{background:var(--pc-selected)}
body[data-client-matrix-report] :is(.chart-panel,.source-summary,.sources-details){background:var(--pc-card);border-color:var(--pc-border);border-radius:var(--pc-radius-lg);box-shadow:none}
body[data-client-matrix-report] #operations-app{background:var(--pc-bg)}
body[data-client-matrix-report] #operations-app .sources-policy{background:var(--pc-secondary)}
body:is([data-client-preview],[data-client-matrix-report]) :focus-visible{outline-color:var(--pc-focus)}
body[data-client-preview] #theme-toggle{background:var(--pc-raised);border-color:var(--pc-border-strong);border-radius:var(--pc-radius);color:var(--pc-text);box-shadow:var(--pc-control-shadow)}
body[data-client-preview] #theme-toggle:hover{background:var(--pc-selected)}
@media(max-width:760px){body[data-client-preview] .app-navigation{border-radius:var(--pc-radius-lg);box-shadow:var(--pc-menu-shadow)}}
/* Table reference axes stay distinct from data in both themes. */
:root{--matrix-axis-bg:var(--gray-4);--matrix-axis-ink:var(--gray-10);--matrix-axis-line:var(--gray-5)}
body[data-client-matrix-report] #main :is(#report-app,#google-ads-app,#meta-ads-app,#operations-app) :is(thead,thead th),
body[data-client-matrix-report] #main :is(#real-daily-scroll,#daily-native-table,#google-daily-table) :is(tbody,tfoot) tr>:first-child,
body[data-client-matrix-report] #main #google-micro-table .micro-date,
body[data-client-matrix-report] #main #meta-ads-app table:is([data-view=days],[data-view=macro]) :is(tbody,tfoot) tr>:first-child{background:var(--matrix-axis-bg)!important;color:var(--matrix-axis-ink);border-color:var(--matrix-axis-line)}
body[data-client-matrix-report] #main :is(#report-app,#google-ads-app,#meta-ads-app,#operations-app) thead :is(small,.column-hint){color:var(--gray-8)}
body[data-client-matrix-report] #main #real-daily-scroll .day-button{color:inherit}
*{scrollbar-color:var(--gray-5) var(--gray-1)}
.real-picker{color-scheme:inherit}
::-webkit-scrollbar-thumb{background:var(--gray-5)!important}
::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:var(--gray-1)!important}
#theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:5px 9px;border:1px solid var(--gray-4);border-radius:6px;background:var(--gray-2);color:var(--gray-9);font:inherit;font-size:11px;white-space:nowrap}
#theme-toggle:hover{background:var(--gray-3)}
#theme-toggle:focus-visible{outline:2px solid var(--gray-8);outline-offset:2px}
.theme-symbol{font-size:17px;line-height:1}
@media(max-width:760px){#theme-toggle{min-height:44px;min-width:44px;padding:6px}#theme-toggle .theme-label{display:none}}
/* Sources is an explanation and an audit trail, not a configuration form. */
body[data-client-matrix-report] #operations-app{display:block;flex:1;min-height:0;padding:24px clamp(14px,3vw,40px);overflow:auto;background:var(--pc-bg)}
.sources-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}
.sources-intro h1{font-size:24px;margin:0 0 8px;color:var(--gray-9)}
#operations-app .sources-intro p{font-size:13px;max-width:760px;margin:0;line-height:1.6}
.sources-badge{padding:5px 9px;border:1px solid var(--gray-4);border-radius:5px;white-space:nowrap;font-size:11px;color:var(--gray-8)}
.sources-section-title{font-size:15px;color:var(--gray-9);margin:20px 0 6px}
#operations-app .sources-subtitle{margin:0 0 14px}
.sources-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:14px;margin:16px 0 24px}
.source-summary{padding:18px;border:1px solid var(--gray-4);border-radius:9px;background:var(--gray-0);min-width:0}
.source-summary h3{font-size:15px;color:var(--gray-9);margin:0 0 4px}
#operations-app .source-summary p{margin:0 0 14px}
.source-summary dl{margin:0;display:grid;grid-template-columns:1fr;gap:4px}
.source-summary dt{font-size:11px;color:var(--gray-7);margin-top:8px}
.source-summary dd{font-size:12px;color:var(--gray-9);margin:0;overflow-wrap:anywhere}
.source-summary details{border-top:1px solid var(--gray-3);margin-top:16px;padding-top:12px;font-size:12px}
.source-summary summary{cursor:pointer;color:var(--gray-8)}
#operations-app .source-summary details p{margin-top:10px;margin-bottom:0}
.sources-details{border:1px solid var(--gray-4);background:var(--gray-0);border-radius:8px;margin:14px 0;padding:16px}
.sources-details>summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--gray-9);min-height:24px}
#operations-app .sources-details>.sources-subtitle{margin:10px 0 16px}
#operations-app .sources-details .table-panel{margin:12px 0}
#operations-app .sources-details .table-scroll{max-height:420px}
#operations-app .sources-details .table-panel>.section-head{display:none}
.sources-policy{padding:12px 16px;background:var(--gray-2);border-left:3px solid var(--gray-6);border-radius:4px;margin:14px 0}
#operations-app .sources-policy h2{font-size:13px;margin:0 0 4px;color:var(--gray-9)}
#operations-app .sources-policy p{margin:0}
@media(max-width:760px){.sources-intro{gap:12px;flex-direction:column}.sources-intro h1{font-size:22px}.sources-details{padding:12px}.sources-details>summary{min-height:44px;display:list-item}.sources-cards{grid-template-columns:1fr}}
