/* Dark commerce dashboard surfaces. Artwork and art-type badge palettes stay intact. */
html[data-theme-enabled][data-theme='dark'] body:has(:is(.inventory, .listing-editor, .lots-page, .lot-editor-page)),
html[data-theme-enabled][data-theme='dark'] main:has(:is(.inventory, .listing-editor, .lots-page, .lot-editor-page)) {
  background: var(--theme-bg);
  color: var(--theme-text);
}

html[data-theme-enabled][data-theme='dark'] .dashboard-home .sidebar {
  background: var(--theme-surface);
  border-right: 1px solid var(--theme-border);
}
html[data-theme-enabled][data-theme='dark'] .dashboard-home .sidebar .nav-link { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .dashboard-home .sidebar .nav-link:hover { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .dashboard-home .sidebar-section-toggle { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .dashboard-home .sidebar-section-toggle:hover { background: transparent; color: var(--theme-text); }

html[data-theme-enabled][data-theme='dark'] :is(.inventory, .listing-editor, .lots-page, .lot-editor-page) {
  color: var(--theme-text);
}
html[data-theme-enabled][data-theme='dark'] :is(.inventory, .listing-editor, .lots-page, .lot-editor-page) a { color: var(--theme-accent); }
html[data-theme-enabled][data-theme='dark'] :is(.inventory, .listing-editor, .lots-page, .lot-editor-page) :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid var(--theme-gold);
  outline-offset: 3px;
}

/* Listings index, filters, dialogs and empty states. */
html[data-theme-enabled][data-theme='dark'] .inventory {
  --ink: var(--theme-text);
  --plum: var(--theme-accent);
  --line: var(--theme-border);
  --paper: var(--theme-surface);
  background: var(--theme-bg);
}
html[data-theme-enabled][data-theme='dark'] .inventory :is(button, input, select, textarea) {
  background: var(--theme-input);
  border-color: var(--theme-border);
  color: var(--theme-text);
}
html[data-theme-enabled][data-theme='dark'] .inventory :is(input, textarea)::placeholder { color: var(--theme-muted); opacity: 1; }
html[data-theme-enabled][data-theme='dark'] .inventory :is(input, select, textarea):focus {
  border-color: var(--theme-gold);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-gold) 22%, transparent);
}
html[data-theme-enabled][data-theme='dark'] .inventory :is(.listing-card, .inventory-list-card) { background: var(--theme-surface); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .inventory .listing-card__img { background: var(--theme-raised); }
html[data-theme-enabled][data-theme='dark'] .inventory .art-bubble { border-color: var(--theme-surface); }
html[data-theme-enabled][data-theme='dark'] .inventory .art-more { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .inventory :is(.inventory-empty, .inventory-footer nav a, .inventory-state) { border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .inventory .inventory-state { background: var(--theme-raised); }
html[data-theme-enabled][data-theme='dark'] .inventory .inventory-state.available { background: #254936; color: #d5f3dd; }
html[data-theme-enabled][data-theme='dark'] .inventory :is(.inventory-primary, button[aria-pressed=true]) { background: var(--theme-action); border-color: var(--theme-accent); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .inventory :is(.inventory-primary, button[aria-pressed=true]):hover { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .inventory dialog {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: 0 16px 56px rgb(0 0 0 / 58%);
}
html[data-theme-enabled][data-theme='dark'] .inventory dialog::backdrop { background: rgb(0 0 0 / 66%); }
html[data-theme-enabled][data-theme='dark'] .inventory .dialog-close { background: transparent; color: var(--theme-text); }

/* Listing creation and management. */
html[data-theme-enabled][data-theme='dark'] .listing-editor {
  --ink: var(--theme-text);
  --plum: var(--theme-accent);
  --gold: var(--theme-gold);
  --paper: var(--theme-surface);
  --line: var(--theme-border);
  --lavender: var(--theme-raised);
  --lavender-line: var(--theme-border);
  background: var(--theme-bg);
}
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.editor-toolbar, .selected-card) { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(small, .selected-card p, .catalog-results p, .empty-listings) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(input, select, textarea, .secondary-action, .art-choice) {
  background: var(--theme-input);
  border-color: var(--theme-border);
  color: var(--theme-text);
}
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(input, textarea)::placeholder { color: var(--theme-muted); opacity: 1; }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(input, select, textarea):focus {
  border-color: var(--theme-gold);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-gold) 22%, transparent);
}
html[data-theme-enabled][data-theme='dark'] .listing-editor .catalog-card { background: var(--theme-surface); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.catalog-card img, .selected-card img) { background: var(--theme-raised); }
html[data-theme-enabled][data-theme='dark'] .listing-editor .primary-action { background: var(--theme-action); border-color: var(--theme-accent); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .listing-editor .primary-action:hover { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .listing-editor .delete-action { background: var(--theme-input); border-color: #d88691; color: #ffd7dc; }
html[data-theme-enabled][data-theme='dark'] .listing-editor .variant-columns { background: var(--theme-raised); color: var(--theme-text); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .listing-editor .listing-card { background: var(--theme-surface); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .listing-editor .listing-card:has(> .row-editor:not([hidden])) {
  background: linear-gradient(180deg, color-mix(in srgb, var(--theme-raised) 85%, var(--theme-accent)) 0, var(--theme-raised) 75px, var(--theme-surface) 100%);
  border-color: var(--theme-border);
}
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.new-variant, .optional-details) { background: var(--theme-raised); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.publication-identity strong, .listing-actions, .new-variant > .optional-details) { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.editor-status.error, .char-counter.text-danger) { color: #ffb4bd !important; }
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.editor-status.success, .char-counter.text-success) { color: #a9e7ba !important; }
html[data-theme-enabled][data-theme='dark'] .listing-editor .listing-image-dialog,
html[data-theme-enabled][data-theme='dark'] .listing-editor .card-dialog {
  background: var(--theme-surface);
  border-color: var(--theme-border);
  color: var(--theme-text);
  box-shadow: 0 24px 80px rgb(0 0 0 / 62%);
}
html[data-theme-enabled][data-theme='dark'] .listing-editor :is(.listing-image-dialog, .card-dialog)::backdrop { background: rgb(0 0 0 / 66%); }

/* Lot management cards and the lot editor. */
html[data-theme-enabled][data-theme='dark'] .lots-page { background: var(--theme-bg); }
html[data-theme-enabled][data-theme='dark'] .lots-page :is(.lots-heading, .lots-summary > div) { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .lots-page :is(.lots-heading p, .lots-summary dt, .lot-description, .lot-price-label, .lot-price-usd, .lot-unit-price, .text-muted) { color: var(--theme-muted) !important; }
html[data-theme-enabled][data-theme='dark'] .lots-page .lots-summary > div { background: var(--theme-surface); }
html[data-theme-enabled][data-theme='dark'] .lots-page .lots-summary dd,
html[data-theme-enabled][data-theme='dark'] .lots-page .lot-price-panel strong { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .lots-page .btn-primary { background: var(--theme-action); border-color: var(--theme-accent); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .lots-page .btn-primary:hover { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lots-page .lot-card { background: linear-gradient(135deg, var(--theme-raised), var(--theme-surface)); border-color: var(--theme-border); box-shadow: inset 0 0 0 4px rgb(255 255 255 / 3%), 0 5px 15px rgb(0 0 0 / 32%); }
html[data-theme-enabled][data-theme='dark'] .lots-page .lot-content h3 { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lots-page :is(.lot-price-panel, .lot-management-status) { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lots-page .lot-management-status.is-active { background: #254936; border-color: #4b8a62; color: #d5f3dd; }
html[data-theme-enabled][data-theme='dark'] .lots-page :is(.btn-outline-secondary, .btn-outline-danger) { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lots-page .btn-outline-danger { border-color: #d88691; color: #ffd7dc; }

html[data-theme-enabled][data-theme='dark'] .lot-editor-page {
  --lot-ink: var(--theme-text);
  --lot-plum: var(--theme-accent);
  --lot-plum-dark: var(--theme-action);
  --lot-gold: var(--theme-gold);
  --lot-gold-soft: var(--theme-raised);
  --lot-cream: var(--theme-surface);
  --lot-muted: var(--theme-muted);
  --lot-line: var(--theme-border);
  background: var(--theme-bg);
}
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(.lot-editor-heading, .card-header, .card-body > .d-flex.justify-content-between) { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .card { background: var(--theme-surface); border-color: var(--theme-border); box-shadow: 0 3px 12px rgb(0 0 0 / 28%); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .card-header { background: linear-gradient(90deg, var(--theme-raised), var(--theme-surface)) !important; color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(.form-control, .lot-editor-cancel) { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .form-control::placeholder { color: var(--theme-muted); opacity: 1; }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .form-control:focus { border-color: var(--theme-gold); box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-gold) 22%, transparent); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(#highlightedArtsDisplay, .art-picker-panel, .lot-edit-bar) { background: var(--theme-raised); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(.search-card-img-wrap, .known-art-item.selected) { background: var(--theme-raised); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(.art-picker-option:hover, .art-picker-option-active, .known-art-item.selected) { background-color: color-mix(in srgb, var(--theme-accent) 16%, var(--theme-raised)); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(.lot-editor-save, #btnAddToLot) { background: var(--theme-action); border-color: var(--theme-accent); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page :is(#btnExportImage, .btn-outline-secondary, .btn-outline-primary) { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .btn-outline-danger { background: var(--theme-input); border-color: #d88691; color: #ffd7dc; }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .form-check-input { background-color: var(--theme-input); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .form-check-input:checked { background-color: var(--theme-action); border-color: var(--theme-accent); }
html[data-theme-enabled][data-theme='dark'] .lot-editor-page .text-muted { color: var(--theme-muted) !important; }
/* Profile editor, including the Select2 city field appended outside the form. */
html[data-theme-enabled][data-theme='dark'] body:has(.profile-editor),
html[data-theme-enabled][data-theme='dark'] main:has(.profile-editor) { background: var(--theme-bg); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .profile-editor {
  --home-ink: var(--theme-text);
  --home-amethyst: var(--theme-accent);
  --home-paper: var(--theme-surface);
  --home-muted: var(--theme-muted);
  --home-line: var(--theme-border);
  background: var(--theme-bg);
  color: var(--theme-text);
}
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(.profile-panel, .profile-savebar) { background: var(--theme-surface); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(.profile-help, small, #profileStatus) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(.profile-secondary, input:not([type=checkbox]), textarea, select) {
  background: var(--theme-input);
  border-color: var(--theme-border);
  color: var(--theme-text);
}
html[data-theme-enabled][data-theme='dark'] .profile-editor input[readonly] { background: var(--theme-raised); color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(input, textarea)::placeholder { color: var(--theme-muted); opacity: 1; }
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(input, textarea, select):focus { border-color: var(--theme-gold); box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-gold) 22%, transparent); }
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(.profile-shipping, .profile-optional) { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .profile-editor .profile-secondary:hover:not(:disabled) { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .profile-editor #currentAvatar { border-color: var(--theme-surface); box-shadow: 0 2px 8px rgb(0 0 0 / 38%); }
html[data-theme-enabled][data-theme='dark'] .profile-editor .home-button { background: var(--theme-action); border-color: var(--theme-accent); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .profile-editor :is(#profileError, [data-error=true]) { color: #ffb4bd; border-color: #d88691; }
html[data-theme-enabled][data-theme='dark'] .profile-editor .select2-container .select2-selection,
html[data-theme-enabled][data-theme='dark'] body:has(.profile-editor) :is(.select2-dropdown, .select2-search__field, .select2-results__option) {
  background: var(--theme-input);
  border-color: var(--theme-border);
  color: var(--theme-text);
}
html[data-theme-enabled][data-theme='dark'] body:has(.profile-editor) .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--theme-action); color: var(--theme-on-action); }
