:root[data-theme=dark]{color-scheme:dark;--page:#111827;--panel:#172033;--raised:#1e293b;--ink:#f1f5f9;--muted:#b6c2d3;--link:#b4adff;--line:#3c4960;--surface:#172033;--white:#1e293b;--primary:#b4adff;--primary-dark:#c4b5fd;--focus:#c4b5fd}
:root[data-theme=light]{color-scheme:light}
html[data-theme=dark] body{background:var(--page);color:var(--ink)}
html[data-theme=dark] :is(.site-header,.dashboard-header,.editor-header,.site-footer,.experience-footer,.template-section,.platform-section,.feature-section,.how-section,.pricing-section,.final-cta){background:var(--page);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.start-form,.template-card,.feature-card,.platform-card,.pricing-card,.plan-card,.plan-request-card,.account-panel,.account-card,.admin-card,.admin-stat,.project-card,.project-gate,.brand-card,.slide-sidebar,.properties-panel,.editor-details,.photo-controls,.photo-editor-heading,.photo-editor-footer,.ai-dialog,.account-dialog,.assistant-dialog,.design-ai-dialog,.share-dialog,.photo-editor,.format-editor,.format-data-panel){background:var(--raised);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.canvas-workspace,.canvas-stage,.upload-zone,.ai-preview,.ai-result,.assistant-preview,.share-item,.photo-preview-column,.brand-preview,.empty-state,.project-save-bar,.dashboard-empty,.admin-settings,.account-summary,.plan-note){background:var(--panel);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(input:not([type=color]):not([type=checkbox]):not([type=radio]),textarea,select){background:var(--panel);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(input,textarea)::placeholder{color:#a2afc3}
html[data-theme=dark] :is(.button-outline,.button-quiet,.icon-button,.page-actions button,.slide-item,.text-button){background:transparent;color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.button-outline,.button-quiet,.icon-button,.page-actions button):hover{background:#334155;color:#fff}
html[data-theme=dark] .button-primary{color:#fff;background:#4f46e5}
html[data-theme=dark] :is(.field-help,.sidebar-note,.workspace-note,.plan-description,.account-note,.project-meta,.muted,.eyebrow,.panel-label,.panel-heading span,.workspace-toolbar span,.preview-controls,.faq-count){color:var(--muted)}
html[data-theme=dark] :is(.site-nav a,.field-help a,.workspace-note a,.account-panel a,.admin-card a,.plan-card a:not(.button),.pricing-card a:not(.button)){color:var(--link)}
html[data-theme=dark] :is(dialog,dialog header,dialog footer){background:var(--raised);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(dialog button:not(.button-primary),dialog label,dialog summary,dialog h2,dialog h3){color:var(--ink)}
html[data-theme=dark] dialog p{color:var(--muted)}
html[data-theme=dark] :is(th,td,.admin-table,.admin-stats,.project-card-footer){border-color:var(--line)}
html[data-theme=dark] th{background:var(--panel);color:var(--ink)}
html[data-theme=dark] :is(.overflow-note,.missing-photo){background:#422e13;color:#fde68a;border-color:#a16207}
html[data-theme=dark] .toast{background:#f1f5f9;color:#172033}
html[data-theme=dark] .slide-item[aria-pressed=true]{background:#30325a;border-color:#a5a0ff}
html[data-theme=dark] #save-status[data-state=saved]::before{color:#86efac}
html[data-theme=dark] #save-status[data-state=saving]::before,html[data-theme=dark] #save-status[data-state=pending]::before{color:#fcd34d}
html[data-theme=dark] #save-status[data-state=error]::before{color:#fca5a5}
/* Theme does not filter canvases, images, photo previews, or change design colors. */
html[data-theme=dark] :is(.price-card,.plans-page .price-card,.summary-projects,.summary-quota,.quick-action:not(.featured),.format-tile:not(.active-format),.catalog-card,.brand-form,.project-empty,.feature-grid article){background:var(--raised);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.plans-page .plan-summary,.plans-page .plan-request-box,.account-tabs,.ai-account-bar,.ai-status,.plan-notice,.workspace-nav a:hover){background:var(--panel);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.site-header nav,.platform-section h2,.platform-row,.editor-details summary,.field label:not(.upload-zone),.start-form>label,.summary-quota strong){color:var(--ink)}
html[data-theme=dark] :is(.plans-page .price-card p,.plans-page .price-card li,.price-card p,.feature-grid p,.audience p,.catalog-card p,.format-tile:not(.active-format) span,.plan-pending,.plan-help,.account-small,.account-story li,.summary-note,.summary-projects>span,.summary-quota>div>span,.summary-projects>p>span,.summary-quota .summary-note,.project-card time,.dashboard-footnote,.ai-intro,.ai-data-note,.ai-dialog .field-help,.ai-actions>span,.ai-result li p,#ai-caption,#brand-status,.field label>span,.panel-label>span,.upload-zone>span:last-child,.start-form-bottom>span,.hero-notes,.showcase-heading,.showcase-count){color:var(--muted)}
html[data-theme=dark] :is(.workspace-nav [aria-current=page],.account-tabs button[aria-pressed=true]){background:#333052;color:var(--link)}
html[data-theme=dark] .account-tabs button{color:var(--muted)}
html[data-theme=dark] .template-use{background:var(--raised);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .account-code{background:var(--panel);color:var(--link)}
html[data-theme=dark] :is(.account-notice,.project-save-bar>div){background:#422e13;color:#fde68a!important}
html[data-theme=dark] :is(.dashboard-error,.plan-notice.is-error){background:#4b1e2c;color:#fecdd3}
html[data-theme=dark] :is(.saved-badge,.admin-message){background:#123d31;color:#a7f3d0}
html[data-theme=dark] :is(.photo-controls output,.showcase-action){color:var(--link)}
html[data-theme=dark] .photo-editor [data-close]{background:var(--panel);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .photo-controls fieldset{border-color:var(--line)}
html[data-theme=dark] .photo-editor [data-overflow]{color:#fda4af}
html[data-theme=dark] .gradient-text{background:linear-gradient(100deg,#b4adff,#c4b5fd,#f9a8d4);background-clip:text;-webkit-background-clip:text;color:transparent}
