:root{--accent-soft:#302640;--accent-soft-hover:#3b2e50;--accent-border:#614581;--accent-ink:#fff;--panel-hover:#242435;--scrim:#070a13b0;--shadow-2:0 18px 48px #0000006b}
/* DEAL Flow light palette. Existing dark tokens remain the default. */
html[data-theme="light"] {
 color-scheme:light;
 --bg:#f5f6fa;--panel:#fff;--panel-strong:#f0f2f7;--panel-hover:#f7f5fc;
 --text:#222537;--text-secondary:#4f566b;--muted:#697187;--line:#e1e5ed;--panel-border:var(--line);
 --control-bg:#fff;--control-border:#cbd2e0;--control-border-hover:#a2aec4;
 --accent:#6d28d9;--accent-hover:#5420ab;--primary:#6d28d9;--primary-hover:#5b21b6;
 --button:var(--primary);--button-hover:var(--primary-hover);--accent-ink:#fff;--on-dark:#f6f7fd;
 --accent-soft:#f1eafa;--accent-soft-hover:#e9def8;--accent-border:#d7c6ee;
 --success:#206e52;--success-soft:#edf7f2;--success-line:#cce5d8;--success-bg:var(--success-soft);--success-border:var(--success-line);
 --warning:#8c5c15;--warning-soft:#fdf5e7;--warning-line:#edddbc;--warning-bg:var(--warning-soft);--warning-border:var(--warning-line);
 --danger:#b13248;--danger-soft:#fff0f3;--danger-line:#efc8d1;--danger-bg:var(--danger-soft);--danger-border:var(--danger-line);
 --focus-ring:#9365e3;--focus-glow:#6d28d91a;--selection-bg:#e7d9ff;--scroll-thumb:#b6bfd0;--scrim:#12152370;
 --sidebar-bg:#20212c;--sidebar-footer:#1a1b25;--sidebar-line:#393b4c;--sidebar-hover:#2c2e3e;--sidebar-active:#383048;
 --sidebar-text:#c7cbda;--sidebar-muted:#a3abc2;--sidebar-accent:#cfb8f8;
 --chart-purple:#9166cd;--chart-blue:#5283af;--chart-amber:#b88738;--chart-green:#66a188;
 --shadow-0:none;--shadow-1:0 1px 2px #18223b09;--shadow-2:0 18px 48px #18223b24;
}
html[data-theme="dark"]{color-scheme:dark}
html[data-theme="light"] .app-shell .role-photographer{background:#eef4fb;border-color:#cfdeef;color:#365f87}
.public-topbar .brand-wordmark,.public-topbar .brand-caption{color:var(--text)}
/* Original brand artwork remains unchanged and readable on its dark brand surface. */
html[data-theme="light"] .public-topbar .workspace-brand img{background:var(--sidebar-bg);border-radius:5px;padding:3px}
.appearance-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 8px;border:0;border-radius:7px;background:transparent;color:var(--text-secondary);font:500 12px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer;white-space:nowrap}
.appearance-button svg{width:18px;height:18px;flex-shrink:0}.appearance-button:hover{background:var(--accent-soft);color:var(--accent)}
.public-topbar-actions{display:flex;align-items:center;gap:16px}.auth-appearance{display:flex;justify-content:flex-end;margin:0 0 22px}
.theme-dialog{width:min(610px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);box-shadow:var(--shadow-2,0 18px 48px #0003);overflow:auto;font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.theme-dialog::backdrop{background:var(--scrim,#070a13b0)}
.theme-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel)}
.theme-dialog-header h2{font-size:18px;line-height:1.35;font-weight:650;letter-spacing:-.3px;margin:0}
.theme-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.theme-close svg{width:18px;height:18px}.theme-close:hover{background:var(--accent-soft);color:var(--accent)}
.theme-dialog-body{padding:24px}.theme-dialog-body>p{margin:0 0 20px;color:var(--muted);font-size:13px;line-height:1.7}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.theme-option{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0;padding:18px 16px;border:1px solid var(--control-border);border-radius:9px;background:var(--panel);color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer}
.theme-option>svg{width:23px;height:23px}.theme-option strong{font-size:14px;font-weight:600}.theme-option>span{font-size:12px;color:var(--muted);line-height:1.55}.theme-option:hover{background:var(--panel-hover,var(--panel-strong));border-color:var(--control-border-hover)}
.theme-option[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.theme-dialog-body .theme-status{margin:20px 0 0;font-size:12px;min-height:20px}
.theme-dialog-footer{display:flex;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--line);position:sticky;bottom:0;background:var(--panel)}
.theme-done{min-height:40px;padding:9px 22px;border:1px solid var(--primary);border-radius:7px;background:var(--primary);color:var(--on-dark);font:600 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer}.theme-done:hover{background:var(--primary-hover)}
.appearance-button:focus-visible,.theme-dialog button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
@media(max-width:760px){
 .appearance-button,.theme-close{width:44px;min-width:44px;height:44px;min-height:44px;padding:0}
 .topbar-right .appearance-button>span{display:none}
 .public-topbar-actions{gap:6px}.public-topbar-label{display:none}
 .auth-appearance .appearance-button,.public-topbar .appearance-button{width:auto;gap:7px;padding:6px 10px}
 .theme-dialog{max-height:calc(100dvh - 20px);width:calc(100vw - 20px);border-radius:14px}
 .theme-dialog-header{padding:14px 18px}.theme-dialog-header h2{font-size:17px}.theme-dialog-body{padding:20px 18px}
 .theme-options{grid-template-columns:1fr;gap:10px}.theme-option{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:3px 13px;padding:14px 16px;min-height:72px}
 .theme-option>svg{grid-row:1/3}.theme-option>span{grid-column:2}.theme-dialog-footer{padding:14px 18px}.theme-done{min-height:44px;flex:1}
 .topbar-right{gap:0}.breadcrumb strong{max-width:calc(100vw - 202px)}
}
@media(max-width:380px){.breadcrumb strong{max-width:calc(100vw - 170px)}}
