/* Landing-only dark theme: keep card art and the Coliseo visual system untouched. */
html[data-theme-enabled][data-theme='dark'] .app-landing {
    --lairen-ivory: var(--theme-bg);
    --lairen-paper: var(--theme-surface);
    --lairen-ink: var(--theme-text);
    --lairen-purple: var(--theme-accent);
    --lairen-brass: var(--theme-gold);
    --lairen-line: var(--theme-border);
    color: var(--theme-text);
    background: var(--theme-bg);
}

html[data-theme-enabled][data-theme='dark'] .app-landing :is(h1, h2, h3, h4, h5, h6) { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(p, small, .text-muted, .form-label) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(a:not(.btn), .catalog-page-size) { color: var(--theme-accent); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(a:not(.btn)):hover { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing :focus-visible { outline-color: var(--theme-gold) !important; }

/* Campaign art keeps its contrast in both appearance modes. */
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner h2 { color:var(--war-ivory); }
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner__eyebrow { color:var(--war-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner__lead { color:var(--war-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner .clan-war-banner__enter,
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner .clan-war-banner__enter:hover { color:var(--war-night); }
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner :is(small, .clan-war-banner__fallback) { color:var(--war-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner .clan-war-banner__directory { color:var(--war-ivory); }
html[data-theme-enabled][data-theme='dark'] .app-landing .clan-war-banner .clan-war-banner__directory:hover { color:var(--war-gold); }

/* Library half of the hero receives a plum veil for readable ivory type. */
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero { background-color: var(--theme-bg); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__library-art::after {
    background: linear-gradient(90deg, color-mix(in srgb, var(--theme-bg) 94%, transparent), color-mix(in srgb, var(--theme-bg) 78%, transparent) 54%, transparent);
}
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__eyebrow { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero h1 { color: var(--theme-text); text-shadow: 0 2px 16px color-mix(in srgb, var(--theme-bg) 84%, transparent); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__lead { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__search {
    background: var(--theme-input); border-color: var(--theme-border);
    box-shadow: 0 5px 18px color-mix(in srgb, var(--theme-bg) 68%, transparent);
}
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__search :is(input, input::placeholder) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__search > i { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__search button { background: var(--theme-action); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__support {
    border-color: var(--theme-gold); background: linear-gradient(115deg, var(--theme-action), var(--theme-surface)); color: var(--theme-on-action);
    box-shadow: 0 5px 18px color-mix(in srgb, var(--theme-bg) 65%, transparent);
}
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__support :is(i, small) { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__support:hover { background: linear-gradient(115deg, var(--theme-raised), var(--theme-action)); color: var(--theme-on-action); }

html[data-theme-enabled][data-theme='dark'] .app-landing :is(.community-section, .promo-carousel-section, .catalog-section) { background: var(--theme-bg); }
html[data-theme-enabled][data-theme='dark'] .app-landing .section-heading > span,
html[data-theme-enabled][data-theme='dark'] .app-landing .catalog-section-heading::before { background: linear-gradient(90deg, transparent, var(--theme-gold), transparent); }

/* Catalogue tabs, search and filter controls. */
html[data-theme-enabled][data-theme='dark'] .app-landing #catalogTabs { background: var(--theme-surface); border-color: var(--theme-border); box-shadow: inset 0 1px color-mix(in srgb, var(--theme-text) 10%, transparent); }
html[data-theme-enabled][data-theme='dark'] .app-landing #catalogTabs .nav-link { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing #catalogTabs .nav-link:hover { background: var(--theme-raised); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing #catalogTabs .nav-link.active { background: var(--theme-action); border-color: var(--theme-gold); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar { background: var(--theme-surface); border-color: var(--theme-border); box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--theme-text) 4%, transparent); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar :is(#searchInput, .form-select, .accordion-button, .form-check-label) { background-color: var(--theme-input); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar :is(#searchInput, .form-select)::placeholder { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar .accordion-button:not(.collapsed),
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar .accordion-item:has(input:checked) .accordion-button { background: var(--theme-raised); border-color: var(--theme-accent); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar .accordion-collapse { background: var(--theme-surface); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar .form-check-label::after { border-color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar .form-check-input:checked + .form-check-label { background: var(--theme-action); border-color: var(--theme-gold); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar .form-check-input:checked + .form-check-label::after { background: var(--theme-gold); border-color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar #clearFilters,
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-mobile-toggle { border-color: var(--theme-border); background: var(--theme-surface); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .filters-sidebar :is(.form-label, .deck-catalog-controls label, #decksResultsInfo) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing #catalog .page-link { background: var(--theme-surface); border-color: var(--theme-border); color: var(--theme-accent); }
html[data-theme-enabled][data-theme='dark'] .app-landing #catalog .active .page-link { background: var(--theme-action); border-color: var(--theme-gold); color: var(--theme-on-action); }

/* Catalogued cards retain their artwork, with only their supporting panels recolored. */
html[data-theme-enabled][data-theme='dark'] .app-landing .card-image-wrapper { background: var(--theme-input); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.card-name, .landing-comment-username) { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.card-set, .card-condition, .landing-rating-info, .landing-rating-avg, .landing-comment-date, .landing-comment-text, .landing-comment-empty, .landing-comment-login, .card-no-listings) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-card-tabs { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-card-tabs .landing-tab { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-card-tabs .landing-tab.active { color: var(--theme-accent); border-bottom-color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-comment-item,
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-comment-form { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-comment-form input { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .landing-comment-form button { background: var(--theme-action); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.price-usd, .sellers-info, .deck-value-amount, .lot-price-panel strong) { color: var(--theme-gold); }

/* Merchant, lot and deck panels. */
html[data-theme-enabled][data-theme='dark'] .app-landing :is(#sellers-container .seller-card, .promo-carousel-card, .public-deck-card, #lots-container .lot-card) {
    background: linear-gradient(135deg, var(--theme-raised), var(--theme-surface)) !important;
    border-color: var(--theme-border); color: var(--theme-text);
    box-shadow: inset 0 0 0 4px color-mix(in srgb, var(--theme-text) 3%, transparent), 0 5px 15px color-mix(in srgb, var(--theme-bg) 55%, transparent);
}
html[data-theme-enabled][data-theme='dark'] .app-landing :is(#sellers-container .seller-name, #sellers-container .seller-location, .promo-card-info strong, .promo-offer small, .public-deck-card .deck-title a, .public-deck-card .deck-description, .public-deck-card .deck-author-name, .public-deck-card .deck-stat-label, .public-deck-card .rating-info, .lot-content h3, .lot-description, .lot-unit-price, .lot-price-label, .lot-price-usd) { color: var(--theme-text); text-shadow: none; }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(#sellers-container .seller-stats, .public-deck-card .deck-winrate, .lot-price-panel) { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.public-deck-link, .lot-detail-link, .store-preview__cta) { background: var(--theme-action); border-color: var(--theme-gold); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.public-deck-link, .lot-detail-link, .store-preview__cta):hover { background: var(--theme-raised); color: var(--theme-on-action); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.public-deck-card .tribe-badge, .lot-art-badge, .promo-offer) { background: var(--theme-input); border-color: var(--theme-border); color: var(--theme-accent); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.public-deck-card .deck-rating, .public-deck-card .deck-stats, .promo-card-promos) { border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.deck-star--filled, .rating-average) { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .deck-star--empty { color: var(--theme-muted); }

/* Community cards and local store surfaces. */
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section :is(.tournament-landing-card, .league-landing-card, .store-preview, .community-empty) { background: var(--theme-surface); border-color: var(--theme-border); color: var(--theme-text); box-shadow: 0 4px 14px color-mix(in srgb, var(--theme-bg) 55%, transparent); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section :is(.tournament-landing-content, .league-landing-card-content) { background: var(--theme-surface); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section :is(.tournament-landing-content p, .league-landing-card-content p, .store-preview__detail small) { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section .community-status--active { background: var(--theme-raised); color: var(--theme-accent); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section .community-status--open { background: color-mix(in srgb, var(--theme-gold) 18%, var(--theme-surface)); color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section .store-preview__map { background: linear-gradient(25deg, var(--theme-raised), var(--theme-input) 48%, var(--theme-surface)); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-section :is(.store-preview__detail strong, .store-preview__detail em) { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.stores-modal-content, .store-list-item) { background: var(--theme-surface); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .store-list-item > button { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .store-list-item > button span { color: var(--theme-muted); }

html[data-theme-enabled][data-theme='dark'] .app-landing .footer { background: var(--theme-input) !important; border-top: 1px solid var(--theme-border); color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .footer-brand { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-footer-shell nav a, html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-footer-shell > small, html[data-theme-enabled][data-theme='dark'] .app-landing .footer-brand small { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-footer-shell nav a:hover { color: var(--theme-gold); }

@media (max-width: 767.98px) {
    html[data-theme-enabled][data-theme='dark'] .app-landing .luminous-hero__library-art::after {
        background: linear-gradient(180deg, color-mix(in srgb, var(--theme-bg) 90%, transparent), color-mix(in srgb, var(--theme-bg) 65%, transparent) 55%, transparent);
    }
}

html[data-theme-enabled][data-theme='dark'] .app-landing a.hero-coliseum__enter, html[data-theme-enabled][data-theme='dark'] .app-landing a.hero-coliseum__enter:hover { color: #302037; }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(.promo-offer b, .promo-card-cta) { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing .promo-card-info small { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing .price-range { background: var(--theme-raised); border-color: var(--theme-border); }
html[data-theme-enabled][data-theme='dark'] .app-landing .price-ars { color: var(--theme-text); }
html[data-theme-enabled][data-theme='dark'] .app-landing .community-column__header button { color: var(--theme-accent); }

html[data-theme-enabled][data-theme='dark'] .app-landing #sellers-container .seller-stat-value,
html[data-theme-enabled][data-theme='dark'] .app-landing .public-deck-card .deck-stat-value { color: var(--theme-gold); }
html[data-theme-enabled][data-theme='dark'] .app-landing #sellers-container .seller-stat-label { color: var(--theme-muted); }
html[data-theme-enabled][data-theme='dark'] .app-landing :is(#decksResultsInfo, .public-deck-card .deck-value-usd, .public-deck-card .deck-value-label, .public-deck-card .rating-count) { color: var(--theme-muted); }
