/* Shared editable-palette support for public utilities and admin operations. */

body[class*="theme-"] .hero,
body[class*="theme-"] .shop-preview,
body[class*="theme-"] .quote-panel,
body[class*="theme-"] .page-hero {
    background: var(--theme-header-bg);
}

body[class*="theme-"] .intro-band,
body[class*="theme-"] .service-card,
body[class*="theme-"] .gallery-card,
body[class*="theme-"] .product-card,
body[class*="theme-"] .quote-section,
body[class*="theme-"] .expectation-card,
body[class*="theme-"] .product-detail__placeholder,
body[class*="theme-"] .product-gallery__main-wrap,
body[class*="theme-"] .product-gallery__grid button,
body[class*="theme-"] .admin-actions,
body[class*="theme-"] .admin-theme,
body[class*="theme-"] .admin-editor,
body[class*="theme-"] .admin-item,
body[class*="theme-"] .admin-stl-upload__current,
body[class*="theme-"] .admin-image-add button,
body[class*="theme-"] .admin-upload-controls button,
body[class*="theme-"] .admin-stl-upload__controls button,
body[class*="theme-"] .admin-stl-preview__header,
body[class*="theme-"] .admin-stl-preview__header button {
    background: var(--theme-surface);
}

body[class*="theme-"] .section--muted,
body[class*="theme-"] .callout,
body[class*="theme-"] .admin-upload-guidance,
body[class*="theme-"] .admin-image-fields,
body[class*="theme-"] .admin-product-images,
body[class*="theme-"] .admin-stl-upload,
body[class*="theme-"] .admin-viewer__toggle {
    background: var(--theme-surface-muted);
}

body[class*="theme-"] .admin-description__toolbar,
body[class*="theme-"] .admin-description__surface,
body[class*="theme-"] .admin-form input:not([type="file"]),
body[class*="theme-"] .admin-form textarea,
body[class*="theme-"] .admin-form select,
body[class*="theme-"] .admin-ui-control,
body[class*="theme-"] .quote-panel input:not([type="checkbox"]),
body[class*="theme-"] .quote-panel textarea,
body[class*="theme-"] .admin-login__form input,
body[class*="theme-"] .admin-upload-dropzone {
    background: var(--theme-surface-input);
}

body[class*="theme-"] .admin-main input[type="file"]:not([data-image-upload-input]):not([data-page-image-upload-input]) {
    border-color: var(--line);
    background: var(--theme-surface-input);
    color: var(--ink);
}

body[class*="theme-"] .expectation-card,
body[class*="theme-"] .faq-list,
body[class*="theme-"] .faq-list details {
    border-color: var(--line);
}

body[class*="theme-"] .faq-list summary { color: var(--ink); }
body[class*="theme-"] .expectation-card > p:last-child,
body[class*="theme-"] .faq-layout__intro > p:not(.eyebrow),
body[class*="theme-"] .faq-list details p { color: var(--slate); }

body[class*="theme-"] .share-controls__actions button,
body[class*="theme-"] .share-controls__actions a,
body[class*="theme-"] .admin-quote-filters a,
body[class*="theme-"] .admin-quote-card > div > a,
body[class*="theme-"] .admin-search-verification__links a,
body[class*="theme-"] .admin-etsy-settings__actions button,
body[class*="theme-"] .admin-quote-template-picker button {
    border-color: var(--line);
    color: var(--ink);
}

body[class*="theme-"] .cookie-banner,
body[class*="theme-"] .admin-privacy,
body[class*="theme-"] .admin-analytics,
body[class*="theme-"] .admin-quote-card,
body[class*="theme-"] .admin-operations-card,
body[class*="theme-"] .admin-recycle,
body[class*="theme-"] .admin-activity-log,
body[class*="theme-"] .admin-backup-create,
body[class*="theme-"] .admin-backup-library,
body[class*="theme-"] .admin-task-library,
body[class*="theme-"] .theme-library,
body[class*="theme-"] .theme-editor,
body[class*="theme-"] .admin-content-health-duplicate-dialog {
    border-color: var(--line);
    background: var(--theme-surface);
    color: var(--ink);
}

body[class*="theme-"] .cookie-banner p:not(.eyebrow),
body[class*="theme-"] .cookie-banner__details,
body[class*="theme-"] .admin-privacy > div > p:last-child,
body[class*="theme-"] .admin-privacy__note,
body[class*="theme-"] .admin-analytics__heading > p:last-child,
body[class*="theme-"] .admin-analytics__metrics span,
body[class*="theme-"] .admin-analytics__metrics small,
body[class*="theme-"] .admin-analytics__details p,
body[class*="theme-"] .admin-analytics__details li,
body[class*="theme-"] .admin-quote-card > div > p:not(.eyebrow),
body[class*="theme-"] .admin-quote-card__date,
body[class*="theme-"] .admin-quote-card__follow-up,
body[class*="theme-"] .admin-operations-card > div > p:last-child,
body[class*="theme-"] .admin-backup-create > div > p:last-child,
body[class*="theme-"] .admin-recycle__note,
body[class*="theme-"] .admin-task-card p,
body[class*="theme-"] .admin-recycle-card p,
body[class*="theme-"] .admin-backup-card p,
body[class*="theme-"] .admin-task-card small,
body[class*="theme-"] .admin-recycle-card small,
body[class*="theme-"] .admin-activity-log time,
body[class*="theme-"] .admin-activity-log span,
body[class*="theme-"] .admin-activity-log small,
body[class*="theme-"] .admin-analytics-ranking small,
body[class*="theme-"] .admin-analytics-chart small,
body[class*="theme-"] .admin-content-health-duplicate-dialog header p:not(.eyebrow),
body[class*="theme-"] .admin-content-health-duplicate-status,
body[class*="theme-"] .theme-library__heading p,
body[class*="theme-"] .theme-library__item p,
body[class*="theme-"] .theme-editor__controls > p,
body[class*="theme-"] .theme-editor__tokens small,
body[class*="theme-"] .theme-editor__description > span {
    color: var(--slate);
}

body[class*="theme-"] .quote-panel .quote-attachments,
body[class*="theme-"] .quote-attachments {
    border-color: var(--line);
    background: var(--theme-surface-muted);
}

body[class*="theme-"] .quote-attachments small,
body[class*="theme-"] .quote-attachments legend span,
body[class*="theme-"] .quote-attachments__dropzone > span:not(.quote-attachments__browse),
body[class*="theme-"] .quote-attachments__item span {
    color: var(--slate);
}

body[class*="theme-"] .quote-attachments__dropzone {
    border-color: var(--line);
    background: var(--theme-surface-input);
    color: var(--ink);
}

body[class*="theme-"] .quote-attachments__browse,
body[class*="theme-"] .quote-attachments__item {
    border-color: var(--line);
    background: var(--theme-surface);
    color: var(--ink);
}

body[class*="theme-"] .quote-attachments__item strong { color: var(--ink); }

body[class*="theme-"] .quote-attachments__dropzone:hover,
body[class*="theme-"] .quote-attachments__dropzone:focus-visible,
body[class*="theme-"] .quote-attachments__dropzone.is-dragover {
    border-color: var(--teal-deep);
    background: color-mix(in srgb, var(--teal) 13%, var(--theme-surface-input));
}

body[class*="theme-"] .quote-attachments__dropzone:hover .quote-attachments__browse,
body[class*="theme-"] .quote-attachments__dropzone:focus-visible .quote-attachments__browse,
body[class*="theme-"] .quote-attachments__dropzone.is-dragover .quote-attachments__browse {
    border-color: var(--teal-deep);
    color: var(--teal-deep);
}

body[class*="theme-"] .quote-attachments__item button,
body[class*="theme-"] .admin-quote-delete > button,
body[class*="theme-"] .admin-content-health-duplicate-status.is-error { color: var(--theme-danger); }
body[class*="theme-"] .quote-attachments__status { color: var(--theme-success); }
body[class*="theme-"] .quote-attachments__status.is-error,
body[class*="theme-"] .admin-task-card small.is-overdue,
body[class*="theme-"] .admin-quote-card__follow-up.is-due { color: var(--theme-danger); }

body[class*="theme-"] .admin-privacy__fields label,
body[class*="theme-"] .admin-etsy-settings__fields label,
body[class*="theme-"] .admin-listing-schedule { color: var(--ink); }

body[class*="theme-"] .admin-privacy__fields select,
body[class*="theme-"] .admin-etsy-settings__fields input,
body[class*="theme-"] .theme-editor__meta input,
body[class*="theme-"] .theme-editor__meta select,
body[class*="theme-"] .theme-editor__description textarea,
body[class*="theme-"] .theme-editor__tokens input[type="color"] {
    border-color: var(--line);
    background: var(--theme-surface-input);
    color: var(--ink);
}

body[class*="theme-"] .admin-analytics__metrics article,
body[class*="theme-"] .admin-analytics__details section,
body[class*="theme-"] .admin-quote-details dl > div,
body[class*="theme-"] .admin-quote-details section,
body[class*="theme-"] .admin-quote-attachments li,
body[class*="theme-"] .admin-operations-list a,
body[class*="theme-"] .admin-operations-list--marketplace .admin-marketplace-issue,
body[class*="theme-"] .admin-task-card,
body[class*="theme-"] .admin-recycle-card,
body[class*="theme-"] .admin-backup-card,
body[class*="theme-"] .admin-quote-template-picker,
body[class*="theme-"] .admin-content-health-duplicate-list li,
body[class*="theme-"] .admin-content-health-duplicate-trigger,
body[class*="theme-"] .theme-library__item,
body[class*="theme-"] .theme-editor__controls,
body[class*="theme-"] .theme-editor__hero-images {
    border-color: var(--line);
    background: var(--theme-surface-muted);
}

body[class*="theme-"] .admin-quote-attachments li,
body[class*="theme-"] .admin-marketplace-issue button,
body[class*="theme-"] .admin-quote-template-picker button,
body[class*="theme-"] .admin-content-health-duplicate-list__actions button,
body[class*="theme-"] .theme-editor__tokens label,
body[class*="theme-"] .theme-editor__hero-choice {
    border-color: var(--line);
    background: var(--theme-surface);
}

body[class*="theme-"] .admin-dashboard-panel__titlebar {
    border-color: var(--line);
    background: var(--theme-surface-muted);
    color: var(--ink);
}

body[class*="theme-"] .admin-ui-reference__section,
body[class*="theme-"] .admin-ui-reference__panel,
body[class*="theme-"] .admin-ui-popover,
body[class*="theme-"] .admin-ui-dialog {
    border-color: var(--line);
    background: var(--theme-surface);
    color: var(--ink);
}

body[class*="theme-"] .admin-ui-check-row,
body[class*="theme-"] .admin-ui-toggle-row,
body[class*="theme-"] .admin-ui-dialog > .admin-ui-actions {
    border-color: var(--line);
    background: var(--theme-surface-muted);
    color: var(--ink);
}

body[class*="theme-"] .admin-ui-field__label,
body[class*="theme-"] .admin-ui-reference__section-heading h2,
body[class*="theme-"] .admin-ui-reference__panel h2,
body[class*="theme-"] .admin-ui-check-row strong,
body[class*="theme-"] .admin-ui-toggle-row strong,
body[class*="theme-"] .admin-ui-dialog h2 { color: var(--ink); }

body[class*="theme-"] .admin-ui-field__qualifier,
body[class*="theme-"] .admin-ui-field__help,
body[class*="theme-"] .admin-ui-reference__section-heading p:not(.eyebrow),
body[class*="theme-"] .admin-ui-reference__panel > p:not(.eyebrow),
body[class*="theme-"] .admin-ui-check-row small,
body[class*="theme-"] .admin-ui-toggle-row small,
body[class*="theme-"] .admin-ui-popover p,
body[class*="theme-"] .admin-ui-dialog p:not(.eyebrow) { color: var(--slate); }

body[class*="theme-"] .admin-dashboard-panel__grip,
body[class*="theme-"] .admin-dashboard-panel__collapse,
body[class*="theme-"] .admin-viewer__options > summary::after,
body[class*="theme-"] .admin-content-health-duplicate-dialog header > button { color: var(--teal-deep); }

body[class*="theme-"] .admin-dashboard-panel__collapse:hover,
body[class*="theme-"] .admin-dashboard-panel__collapse:focus-visible,
body[class*="theme-"] .admin-content-health-duplicate-dialog header > button:hover,
body[class*="theme-"] .admin-content-health-duplicate-dialog header > button:focus-visible,
body[class*="theme-"] .admin-marketplace-issue button:hover,
body[class*="theme-"] .admin-marketplace-issue button:focus-visible {
    border-color: var(--teal-deep);
    background: var(--teal-deep);
    color: var(--white);
}

body[class*="theme-"] .admin-quote-card__status,
body[class*="theme-"] .admin-task-card__status--done,
body[class*="theme-"] .admin-marketplace-summary .is-healthy,
body[class*="theme-"] .admin-operations-card__success,
body[class*="theme-"] .admin-content-health-duplicate-list__retained {
    border-color: color-mix(in srgb, var(--theme-success) 58%, var(--line));
    background: color-mix(in srgb, var(--theme-success) 17%, var(--theme-surface));
    color: var(--ink);
}

body[class*="theme-"] .admin-quote-card__status--in_progress,
body[class*="theme-"] .admin-task-card__status--in_progress,
body[class*="theme-"] .admin-marketplace-check__progress {
    border-color: color-mix(in srgb, var(--theme-info) 58%, var(--line));
    background: color-mix(in srgb, var(--theme-info) 17%, var(--theme-surface));
    color: var(--ink);
}

body[class*="theme-"] .admin-quote-card__status--replied {
    background: color-mix(in srgb, var(--violet) 18%, var(--theme-surface));
    color: var(--ink);
}

body[class*="theme-"] .admin-quote-card__status--closed,
body[class*="theme-"] .admin-task-card__priority,
body[class*="theme-"] .admin-recycle-card > div > span,
body[class*="theme-"] .admin-backup-card > div > span,
body[class*="theme-"] .admin-marketplace-summary span,
body[class*="theme-"] .admin-operations-card__metrics span {
    background: var(--theme-surface-muted);
    color: var(--ink);
}

body[class*="theme-"] .admin-item__status--scheduled,
body[class*="theme-"] .admin-marketplace-summary .is-warning,
body[class*="theme-"] .admin-task-card__priority--high {
    border-color: color-mix(in srgb, var(--theme-warning) 58%, var(--line));
    background: color-mix(in srgb, var(--theme-warning) 19%, var(--theme-surface));
    color: var(--ink);
}

body[class*="theme-"] .admin-item__schedule,
body[class*="theme-"] .admin-operations-list li.is-warning a {
    border-color: var(--theme-warning);
    color: var(--theme-warning);
}

body[class*="theme-"] .admin-marketplace-summary .is-error,
body[class*="theme-"] .admin-operations-list li.is-error a,
body[class*="theme-"] .admin-operations-list--marketplace li.is-error .admin-marketplace-issue {
    border-color: var(--theme-danger);
    background: color-mix(in srgb, var(--theme-danger) 16%, var(--theme-surface));
    color: var(--ink);
}

body[class*="theme-"] .admin-operations-list li.is-notice a,
body[class*="theme-"] .admin-operations-list--marketplace li.is-warning .admin-marketplace-issue { border-color: var(--theme-info); }

body[class*="theme-"] .admin-content-health-duplicate-list__actions button:hover,
body[class*="theme-"] .admin-content-health-duplicate-list__actions button:focus-visible,
body[class*="theme-"] .admin-content-health-duplicate-list__actions.is-confirming button:first-child {
    border-color: var(--theme-danger);
    background: var(--theme-danger);
    color: var(--white);
}

body[class*="theme-"] .admin-content-health-duplicate-list__actions button[data-content-health-duplicate-remove-cancel] { color: var(--teal-deep); }

body[class*="theme-"] .admin-activity-log li,
body[class*="theme-"] .admin-analytics-chart,
body[class*="theme-"] .admin-analytics-ranking li,
body[class*="theme-"] .admin-quote-card footer,
body[class*="theme-"] .admin-quote-editor__form,
body[class*="theme-"] .cookie-banner__details { border-color: var(--line); }

body[class*="theme-"] .theme-editor__preview-interface {
    display: grid;
    gap: 9px;
    margin-top: 22px;
    padding: 11px;
    border: 1px solid var(--preview-line);
    border-radius: 6px;
    background: color-mix(in srgb, var(--preview-surface) 82%, var(--preview-paper));
}

body[class*="theme-"] .theme-editor__preview-interface > span {
    color: var(--preview-ink);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

body[class*="theme-"] .theme-editor__preview-interface > div {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

body[class*="theme-"] .theme-editor__preview-interface i {
    padding: 4px 6px;
    border-radius: 99px;
    color: var(--preview-ink);
    font-size: .58rem;
    font-style: normal;
    font-weight: 820;
}

body[class*="theme-"] .theme-editor__preview-interface .is-success { background: color-mix(in srgb, var(--preview-success) 20%, var(--preview-surface)); }
body[class*="theme-"] .theme-editor__preview-interface .is-warning { background: color-mix(in srgb, var(--preview-warning) 22%, var(--preview-surface)); }
body[class*="theme-"] .theme-editor__preview-interface .is-danger { background: color-mix(in srgb, var(--preview-danger) 20%, var(--preview-surface)); }
body[class*="theme-"] .theme-editor__preview-interface .is-info { background: color-mix(in srgb, var(--preview-info) 20%, var(--preview-surface)); }
