/* Custom colors override interface paint only, never uploaded images or ratings. */
:root[data-custom-theme=true]{color:var(--text);background:var(--bg)}
:root[data-custom-theme=true] button{background:var(--surface);color:var(--text);border-color:var(--border)}
:root[data-custom-theme=true] button:hover:not(:disabled){background:var(--panel)}
:root[data-custom-theme=true] :is(button.primary,.rating button.chosen,.auth-tabs button[aria-pressed=true]){background:var(--brand-color);color:var(--accent-contrast);border-color:var(--brand-color)}
:root[data-custom-theme=true] :is(button.primary,.rating button.chosen,.auth-tabs button[aria-pressed=true]):hover:not(:disabled){background:var(--brand-color);filter:brightness(.95)}
:root[data-custom-theme=true] .brand,:root[data-custom-theme=true] footer button{background:transparent}
:root[data-custom-theme=true] .player-studio button{background:var(--paint-29294f,#29294f);color:var(--paint-e1e1ef,#e1e1ef);border-color:var(--paint-4b4b72,#4b4b72)}
:root[data-custom-theme=true] .player-studio .play-circle{background:var(--studio-mint);color:var(--paint-10103c,#10103c);border:0}
:root[data-custom-theme=true] .player-studio .player-tool[aria-pressed=true]{background:var(--paint-bfbfff20,#bfbfff20);color:var(--studio-mint)}
.theme-editor{max-width:1000px}.theme-editor>p{max-width:760px}.theme-presets{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.theme-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.theme-mode{margin:0;padding:20px;border:1px solid var(--border);border-radius:16px;min-width:0}.theme-mode legend{padding:0 8px;font-weight:700;font-size:19px}
.theme-color-field{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;align-items:center;margin-bottom:14px}.theme-color-field label{grid-column:1/-1;font-size:13px}.theme-color-field input[type=color]{width:42px;height:40px;padding:3px;cursor:pointer}.theme-color-field input[type=text]{width:100%;font-family:ui-monospace,monospace;min-width:0}
.theme-preview{background:var(--preview-bg);color:var(--preview-text);border:1px solid var(--preview-border);border-radius:14px;padding:20px;margin-top:20px;overflow-wrap:anywhere}.theme-preview h3{font-size:23px;margin:0 0 12px}.theme-preview p{font-size:14px;margin-bottom:16px;color:var(--preview-text)}.theme-preview .preview-surface{padding:16px;border-radius:10px;background:var(--preview-surface);margin-bottom:16px}.theme-preview .preview-link{color:var(--preview-accent);font-size:14px;text-decoration:underline}.theme-preview .preview-button{display:inline-block;padding:10px 15px;border-radius:9px;background:var(--preview-brand);color:var(--preview-ink);font-weight:700;font-size:14px}.theme-contrast{font-size:13px;margin:12px 0 0}.theme-contrast.is-error{color:var(--danger);font-weight:700}.theme-save-row{margin:24px 0;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.theme-save-row .muted{font-size:13px}.theme-editor [role=status]{min-height:24px}
@media(max-width:760px){.theme-modes{grid-template-columns:minmax(0,1fr)}}
