/* Shared studio chrome. Customer previews own their colors; images are never filtered. */
html { color-scheme: dark; }
.signmall-theme-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
button.theme-toggle {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  flex-shrink: 0; min-height: 44px; padding: 10px 13px; margin: 0;
  border: 1px solid #43525d; border-radius: 8px; background: #17222b;
  color: #edf2f3; font: 600 13px/1.4 system-ui, sans-serif;
  letter-spacing: normal; white-space: nowrap; cursor: pointer;
}
button.theme-toggle:hover { background: #26333e; border-color: #d1f87e; }
button.theme-toggle:focus-visible { outline: 3px solid #d1f87e; outline-offset: 4px; }
.theme-toggle svg { width: 18px; height: 18px; flex-shrink: 0; }
.theme-toggle [data-theme-moon], html[data-theme="light"] .theme-toggle [data-theme-sun] { display: none; }
html[data-theme="light"] .theme-toggle [data-theme-moon] { display: block; }
.theme-toggle[hidden] { display: none; }
.theme-home .nav { flex-wrap: wrap; }
.theme-home .signmall-theme-actions { margin-left: auto; }
.theme-workspace .top-actions { flex: 1; justify-content: flex-end; }

html[data-theme="light"] {
  color-scheme: light;
  --bg: #f5f7f8; --wash: #f5f7f8; --panel: #fff; --paper: #fff;
  --ink: #17343f; --muted: #526773; --line: #cdd8de;
  --green: #176247; --purple: #176247; --lime: #176247; --accent: #176247;
  --soft: #eaf3ed;
}
html[data-theme="light"] body { background: var(--wash); color: var(--ink); }
html[data-theme="light"] :is(.theme-workspace, .theme-setup) button:not(:where(.storefront *, #preview *, .ai-look *)) {
  background: #fff; color: var(--ink); border-color: var(--line); box-shadow: none;
}
html[data-theme="light"] :is(.theme-workspace, .theme-setup) button:hover:not(:disabled):not(:where(.storefront *, #preview *, .ai-look *)) {
  background: #eaf3ed; border-color: #7c9f8e;
}
html[data-theme="light"] :is(.theme-workspace, .theme-setup) button:disabled {
  background: #e6ecee; color: #657681; border-color: #d5dfe3; opacity: 1;
}
html[data-theme="light"] :is(.theme-workspace, .theme-setup) :is(input, select, textarea):not(:where(.storefront *, #preview *, .ai-look *)) {
  background: #fff; color: var(--ink); border-color: #aebfc8;
}
html[data-theme="light"] :is(input, textarea)::placeholder { color: #657884; }
html[data-theme="light"] .theme-setup input:disabled { background: #e6ecee !important; color: #657681 !important; }
html[data-theme="light"] :is(.theme-workspace, .theme-setup) input[type="checkbox"] { accent-color: #176247; }
html[data-theme="light"] :is(.theme-workspace, .theme-setup) :is(button, a, input, select, textarea, summary):focus-visible {
  outline-color: #176247;
}
html[data-theme="light"] .theme-setup label { color: var(--ink); }
html[data-theme="light"] :is(.theme-workspace, .theme-setup, .theme-home) .primary,
html[data-theme="light"] .theme-setup .toggle [aria-pressed="true"] {
  background: #176247; color: #fff; border-color: #176247; box-shadow: none;
}
html[data-theme="light"] :is(.theme-workspace, .theme-setup, .theme-home) .primary:hover:not(:disabled) {
  background: #104b35; color: #fff; border-color: #104b35;
}
html[data-theme="light"] :is(.theme-workspace, .theme-setup) button.primary:disabled {
  background: #e0eae4; color: #5c7365; border-color: #c3d3c9;
}
html[data-theme="light"] :is(.topbar, .steps, .actionbar, .selection-tray) {
  background: #fffffff5; border-color: var(--line); box-shadow: none;
}
html[data-theme="light"] :is(.workspace-label, .eyebrow) { color: #526d5e; border-color: var(--line); }
html[data-theme="light"] .steps b { background: #edf2f4; color: var(--muted); border-color: var(--line); }
html[data-theme="light"] .steps :is(button, a)[aria-current="step"] {
  background: #eaf3ed; color: #176247; border-color: #98b5a5;
}
html[data-theme="light"] .steps [aria-current="step"] b { background: #176247; color: #fff; border-color: #176247; }
html[data-theme="light"] :is(.tools nav, .catalog-controls, .settings-panel, .publish-panel, .panel, .batch-card, .brand-settings, .product-logo-settings) {
  background: #fff; border-color: var(--line); box-shadow: 0 8px 24px #17343f06;
}
html[data-theme="light"] .tools nav { box-shadow: 0 12px 35px #17343f20; }
html[data-theme="light"] .theme-workspace .tools nav button { background: transparent; }
html[data-theme="light"] :is(.theme-workspace, .theme-setup) :is(.text-button, .subtle) { background: transparent; color: #176247; }
html[data-theme="light"] .theme-workspace .collection-button.active { background: #eaf3ed; border-color: #98b5a5; color: var(--ink); }
html[data-theme="light"] .collection-button.active small { color: #486654; }
html[data-theme="light"] .product-card:not(.storefront .product-card) { background: #fff; border-color: var(--line); box-shadow: 0 5px 16px #17343f06; }
html[data-theme="light"] .product-card.chosen:not(.storefront .product-card) { border-color: #176247; box-shadow: 0 0 0 1px #176247; }
html[data-theme="light"] .card-category:not(.storefront .card-category) { color: #526d5e; }
html[data-theme="light"] .card-meta strong:not(.storefront .card-meta strong) { color: var(--ink); }
html[data-theme="light"] :is(.logo-upload, .dropzone) { background: #f5f8f6; color: #176247; border-color: #809e8c; }
html[data-theme="light"] .dropzone.dragging { background: #eaf3ed; }
html[data-theme="light"] .dropzone>span:not(.upload-icon) { color: var(--muted); }
html[data-theme="light"] input::file-selector-button { background: #eaf3ed; color: #17343f; border: 1px solid #98b5a5; border-radius: 6px; }
html[data-theme="light"] .color-row output { color: var(--muted); }
html[data-theme="light"] :is(#match-logo-colors, #review-samples, .publish-destination, .artwork-saved, .check, .price-example, .sources, #logo-palette) {
  background: #eaf3ed; color: #24553d; border-color: #b8cfc1;
}
html[data-theme="light"] .status-pill:not(.storefront .status-pill) { background: #eaf3ed; color: #24553d; border-color: #b8cfc1; }
html[data-theme="light"] :is(.status-pill.error, .dialog-error, .finding-warning, #message.error):not(.storefront *) {
  background: #fff1e7; color: #874214; border-color: #d6a67e;
}
html[data-theme="light"] .issues:not(.storefront .issues) { color: #874214; }
html[data-theme="light"] :is(.direction-approval, .sample-decision, .catalog-progress-card, .sample-activity) {
  background: linear-gradient(120deg, #eef5ed, #fff); border-color: #b8cfc1;
}
html[data-theme="light"] :is(.direction-approval h3, #direction-status, #batch-next-step) { color: #24553d; }
html[data-theme="light"] .segmented { background: #eaf0f3; }
html[data-theme="light"] .segmented button[aria-pressed="true"] { background: #fff; color: #176247; border-color: #98b5a5; }
html[data-theme="light"] #notice { background: #eaf3ed; color: #24553d; border-color: #98b5a5; box-shadow: 0 10px 35px #17343f25; }
html[data-theme="light"] dialog { background: #fff; color: var(--ink); border-color: #aebfc8; }
html[data-theme="light"] dialog::backdrop { background: #102d3d99; }
html[data-theme="light"] :is(.activity-top, .activity-meter strong, .activity-slots .is-running .activity-slot-number) { color: #176247; }
html[data-theme="light"] :is(.activity-meter>span, .activity-slot-number) { color: var(--muted); }
html[data-theme="light"] :is(.activity-slots, .activity-slots li, .activity-slot-number) { border-color: var(--line); }
html[data-theme="light"] .activity-slots li { background: #fff; }
html[data-theme="light"] .activity-slots .is-running { background: #eaf3ed; border-color: #98b5a5; }
html[data-theme="light"] .activity-slots :is(.is-ready, .is-approved) .activity-slot-number { background: #176247; color: #fff; }
html[data-theme="light"] .activity-slots .is-failed { border-color: #d6a67e; }
html[data-theme="light"] .publish-jobs .job { background: #fff; border-color: #b8cfc1; }
html[data-theme="light"] #sample-progress,
html[data-theme="light"] #sample-progress::-webkit-progress-bar { background: #e0e9e3; }
html[data-theme="light"] #sample-progress::-webkit-progress-value { background: #176247; }
html[data-theme="light"] #sample-progress::-moz-progress-bar { background: #176247; }

/* Setup choices and findings; the selected website and AI concepts remain independent. */
html[data-theme="light"] .theme-setup .style-card { background: #fff; border-color: var(--line); }
html[data-theme="light"] .theme-setup .style-card:is([aria-pressed="true"], .selected) { background: #eaf3ed; border-color: #176247; }
html[data-theme="light"] :is(.style-card strong, .finding-value, .findings-heading h2, .palette-swatch strong) { color: var(--ink); }
html[data-theme="light"] :is(.style-card small, .finding-label, .finding small, .findings-missing, .findings-sources p) { color: var(--muted); }
html[data-theme="light"] :is(.finding, .palette-swatch) { background: #fff; border-color: var(--line); }
html[data-theme="light"] :is(.finding .finding-current, .findings-missing) { background: #eef2f4; color: var(--muted); }
html[data-theme="light"] .findings-missing strong { color: var(--ink); }
html[data-theme="light"] :is(.finding-used, .product .reason, #store-address, #custom-selected) { color: #176247; }
html[data-theme="light"] .findings-sources article { border-color: var(--line); }
html[data-theme="light"] .preview-shell { background: #e7edef; }
html[data-theme="light"] .browser-bar { background: #fff; color: var(--muted); }
html[data-theme="light"] .style-preview-actions a { color: #176247; }
html[data-theme="light"] .custom-style .check { background: #eaf3ed !important; color: #17343f !important; }
html[data-theme="light"] .custom-style .check small { color: var(--muted); }
html[data-theme="light"] #message:not(:empty):not(.error) { background: #eaf3ed; color: #24553d; }

/* Sample generation, video controls, and website scan. */
html[data-theme="light"] .build-watch { background: #fff; color: var(--ink); border-color: var(--line); }
html[data-theme="light"] .build-video:has(.build-video-player[hidden]),
html[data-theme="light"] .build-video-placeholder { background: #eaf0ed; }
html[data-theme="light"] .build-video-placeholder h2 { color: var(--ink); }
html[data-theme="light"] .build-video-placeholder p { color: var(--muted); }
html[data-theme="light"] .build-film { color: #176247; border-color: #98b5a5; }
html[data-theme="light"] :is(.build-watch-info h2, .build-creation-copy h3, .build-product-arrival h4) { color: var(--ink); }
html[data-theme="light"] :is(.build-watch [data-build-status], .build-email-note, .build-creation-copy>p:last-child) { color: var(--muted); }
html[data-theme="light"] :is(.build-watch .eyebrow, .build-arrivals-heading span, .build-product-arrival small, .build-watch a) { color: #486654; }
html[data-theme="light"] .build-arrivals { border-color: var(--line); }
html[data-theme="light"] .build-product-arrival { background: #f8fafb; border-color: var(--line); }
html[data-theme="light"] .build-product-placeholder { background: radial-gradient(circle, #e1ecd9, #f3f6ee 70%); color: #326841; }
html[data-theme="light"] .build-watch button { background: #176247; color: #fff; border-color: #176247; }
html[data-theme="light"] .build-watch button:hover:not(:disabled) { background: #104b35; color: #fff; }
html[data-theme="light"] .build-watch :is([data-video-sound], .build-motion-toggle) { background: #eaf3ed; color: #176247; border-color: #98b5a5; }
html[data-theme="light"] .build-watch [data-video-sound][aria-pressed="true"] { background: #176247; color: #fff; }
html[data-theme="light"] .build-creation-progress,
html[data-theme="light"] .build-creation-progress::-webkit-progress-bar { background: #e0e9e3; }
html[data-theme="light"] .build-creation-progress::-webkit-progress-value { background: #176247; }
html[data-theme="light"] .build-creation-progress::-moz-progress-bar { background: #176247; }
html[data-theme="light"] .research-progress { --data-lime: #176247; --data-muted: #526773; background: #fff; color: var(--ink); border-color: #b8cfc1; }
html[data-theme="light"] :is(.research-progress .progress-heading h2, .analysis-focus h3, .analysis-feed-heading, .scan-track strong) { color: var(--ink); }
html[data-theme="light"] :is(.analysis-topline, .analysis-focus>p:not(.analysis-label), .analysis-metrics span, .analysis-feed-heading>span:last-child, #analysis-empty, #analysis-events small, .research-progress #research-progress-count, .research-progress .progress-steps small, #scan-music-status) { color: var(--muted); }
html[data-theme="light"] :is(.analysis-focus>a, #analysis-events .discovery-tag, .scan-track-label, .analysis-focus[data-kind="waiting"] h3) { color: #176247; }
html[data-theme="light"] :is(.analysis-stage, .analysis-feed, .analysis-metrics, #analysis-events li) { border-color: var(--line); }
html[data-theme="light"] .analysis-feed { background: #f5f8f6; }
html[data-theme="light"] #analysis-events button { background: transparent; color: var(--ink); }
html[data-theme="light"] #analysis-events button:is(:hover, [aria-pressed="true"]) { background: #eaf3ed; border-color: #98b5a5; }
html[data-theme="light"] .research-progress .progress-steps li { color: var(--ink); }
html[data-theme="light"] .research-progress .is-done .progress-marker { color: #fff; }
html[data-theme="light"] .research-progress .is-warning .progress-marker { color: #874214; }
html[data-theme="light"] .scan-music { background: #eaf3ed; border-color: #b8cfc1; }
html[data-theme="light"] #scan-music-toggle { background: #176247; color: #fff; border-color: #176247; }
html[data-theme="light"] #scan-music-toggle:hover { background: #104b35; }

/* Public homepage. Examples, photos, and their enlargement remain untouched. */
html[data-theme="light"] .theme-home :is(.nav nav, .hero-note, .value-strip, .footer>span, .scene-caption>span) { color: var(--muted); }
html[data-theme="light"] .theme-home :is(.sign-in, .process-grid>li, .design-card) { border-color: var(--line); }
html[data-theme="light"] .theme-home :is(.step-visual, .connection-node) { background: #eaf3ed; border-color: #b8cfc1; }
html[data-theme="light"] .theme-home :is(.discover>span, .approval small, .connection-node small, .connection-lines) { color: #486654; }
html[data-theme="light"] .theme-home .discover>span { border-color: #98b5a5; }
html[data-theme="light"] .theme-home .scene-caption button { color: #176247; border-color: #98b5a5; }
html[data-theme="light"] .theme-home .connection-diagram { background: #f0f5ef; }
html[data-theme="light"] .theme-home .homepage-custom-look { background: #eaf3ed; border-color: #b8cfc1; }
html[data-theme="light"] .theme-home .design-style-dialog { background: #fff; }
html[data-theme="light"] #design-style-close { background: #edf2f4; color: var(--ink); border-color: var(--line); }
html[data-theme="light"] .theme-home .skip { background: #176247; color: #fff; }
html[data-theme="light"] .theme-home .brand-token { --lime: #d1f87e; }

html[data-theme="light"] button.theme-toggle { background: #edf2f4; color: #17343f; border-color: #aebfc8; }
html[data-theme="light"] button.theme-toggle:hover { background: #e0e9ed; border-color: #6b8895; }
html[data-theme="light"] button.theme-toggle:focus-visible { outline-color: #176247; }
@media (max-width: 1280px) { .theme-workspace .workspace-label { display: none; } }
@media (max-width: 1000px) { .theme-home .nav nav { display: none; } }
@media (max-width: 700px) {
  .theme-workspace .topbar { height: auto; padding-top: 12px; padding-bottom: 12px; }
  .theme-workspace .top-actions { flex: 0 0 100%; width: 100%; margin-left: 0; gap: 10px; }
  .theme-workspace .top-actions select { flex: 1 1 190px; max-width: none; }
  .theme-workspace .top-actions .new-site-link { margin-right: auto; }
  .theme-setup .signmall-theme-actions { justify-content: flex-end; gap: 10px; }
  .theme-home .nav { gap: 12px; }
  .theme-home .signmall-theme-actions { gap: 8px; }
  .theme-home .sign-in { padding: 10px 12px; }
  .theme-home .sign-in span { margin-left: 5px; }
}
