:root {
    --omen-ui-bg-landscape: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/backgrounds/bg_landscape_clean.webp");
    --omen-ui-bg-portrait: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/backgrounds/bg_portrait_clean.webp");
    --omen-ui-panel-large: url("../assets/sprites/ui/windows/omen_clean_desk/frames/modal_landscape.webp");
    --omen-ui-panel-card: url("../assets/sprites/ui/windows/omen_clean_desk/cards/content_panel.webp");
    --omen-ui-panel-small: url("../assets/sprites/ui/windows/omen_clean_desk/cards/compact_card.webp");
    --omen-window-button-wide-secondary: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_wide.webp");
    --omen-window-button-wide-secondary-hover: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_wide_hover.webp");
    --omen-window-button-wide-secondary-pressed: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_wide_pressed.webp");
    --omen-window-button-wide-primary: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_wide.webp");
    --omen-window-button-wide-primary-hover: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_wide_hover.webp");
    --omen-window-button-wide-primary-pressed: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_wide_pressed.webp");
    --omen-window-button-medium-secondary: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_medium.webp");
    --omen-window-button-medium-secondary-hover: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_medium_hover.webp");
    --omen-window-button-medium-secondary-pressed: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_medium_pressed.webp");
    --omen-window-button-medium-primary: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_medium.webp");
    --omen-window-button-medium-primary-hover: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_medium_hover.webp");
    --omen-window-button-medium-primary-pressed: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_medium_pressed.webp");
    --omen-window-button-tab-secondary: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_tab.webp");
    --omen-window-button-tab-secondary-hover: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_tab_hover.webp");
    --omen-window-button-tab-secondary-pressed: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_secondary_tab_pressed.webp");
    --omen-window-button-tab-primary: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_tab.webp");
    --omen-window-button-tab-primary-hover: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_tab_hover.webp");
    --omen-window-button-tab-primary-pressed: url("../assets/sprites/ui/windows/omen_clean_desk/buttons/button_primary_tab_pressed.webp");
    --omen-ui-button-wide: var(--omen-window-button-wide-secondary);
    --omen-ui-button-primary: var(--omen-window-button-wide-primary);
    --omen-window-modal-landscape: url("../assets/sprites/ui/windows/omen_clean_desk/frames/modal_landscape.webp");
    --omen-window-modal-portrait: url("../assets/sprites/ui/windows/omen_clean_desk/frames/modal_portrait.webp");
    --omen-window-card-wide: url("../assets/sprites/ui/windows/omen_clean_desk/cards/wide_card.webp");
    --omen-window-card-hero: url("../assets/sprites/ui/windows/omen_clean_desk/cards/hero_card.webp");
    --omen-window-card-compact: url("../assets/sprites/ui/windows/omen_clean_desk/cards/compact_card.webp");
    --omen-window-content-panel: url("../assets/sprites/ui/windows/omen_clean_desk/cards/content_panel.webp");
    --omen-window-button-secondary: var(--omen-window-button-medium-secondary);
    --omen-window-button-primary: var(--omen-window-button-medium-primary);
    --omen-window-close: url("../assets/sprites/ui/windows/eldritch_bestiary_desk/icons/close_round.webp");
    --omen-window-selected: url("../assets/sprites/ui/windows/eldritch_bestiary_desk/icons/selected_round.webp");
    --omen-window-divider: url("../assets/sprites/ui/windows/eldritch_bestiary_desk/decor/divider_cyan.webp");
    --omen-ui-corner-tl: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/corner_tl.webp");
    --omen-ui-corner-tr: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/corner_tr.webp");
    --omen-ui-corner-bl: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/corner_bl.webp");
    --omen-ui-corner-br: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/corner_br.webp");
    --omen-ui-gold: #d7bd82;
    --omen-ui-paper: #e6d0a4;
    --omen-ui-cyan: #58c5c5;
    --omen-ui-red: #9b201d;
    --omen-ui-ink: #130d0b;
}

.omen-ui-shell {
    position: relative;
    min-height: 100%;
    color: var(--omen-ui-paper);
    background: #070504 var(--omen-ui-bg-landscape) center / cover no-repeat;
    font-family: Georgia, "Times New Roman", serif;
}

.omen-ui-panel {
    position: relative;
    color: var(--omen-ui-paper);
    background: transparent var(--omen-ui-panel-large) center / 100% 100% no-repeat;
    filter: drop-shadow(0 22px 38px rgba(0, 0, 0, .62));
}

.omen-ui-panel.is-portrait {
    background-image:
        var(--omen-ui-corner-tl),
        var(--omen-ui-corner-tr),
        var(--omen-ui-corner-bl),
        var(--omen-ui-corner-br),
        radial-gradient(circle at 50% 0%, rgba(88, 197, 197, .14), transparent 36%),
        radial-gradient(circle at 50% 100%, rgba(155, 32, 29, .2), transparent 42%),
        linear-gradient(135deg, rgba(19, 12, 10, .96), rgba(35, 21, 17, .93) 48%, rgba(10, 7, 8, .98));
    background-position:
        left 16px top 14px,
        right 16px top 14px,
        left 16px bottom 14px,
        right 16px bottom 14px,
        center,
        center,
        center;
    background-size:
        112px 112px,
        112px 112px,
        112px 112px,
        112px 112px,
        cover,
        cover,
        cover;
    background-repeat: no-repeat;
    border: 1px solid rgba(215, 189, 130, .58);
    border-radius: 34px;
    box-shadow: inset 0 0 0 2px rgba(88, 197, 197, .1), inset 0 0 46px rgba(0, 0, 0, .72);
}

.omen-ui-card {
    color: var(--omen-ui-paper);
    background: transparent var(--omen-ui-panel-card) center / 100% 100% no-repeat;
}

.omen-ui-button {
    min-height: 58px;
    min-width: 230px;
    border: 0;
    color: var(--omen-ui-paper);
    background: transparent var(--omen-ui-button-wide) center / 100% 100% no-repeat;
    font: 700 20px Georgia, "Times New Roman", serif;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .9), 0 0 10px rgba(215, 189, 130, .35);
    filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .45));
}

.omen-ui-button.is-primary {
    background-image: var(--omen-ui-button-primary);
}

.omen-ui-card-slot,
.omen-ui-preview-slot {
    border: 1px solid rgba(215, 189, 130, .44);
    background:
        radial-gradient(circle at 50% 45%, rgba(88, 197, 197, .16), transparent 42%),
        linear-gradient(135deg, rgba(12, 9, 8, .9), rgba(44, 31, 24, .55));
    box-shadow: inset 0 0 24px rgba(0, 0, 0, .58);
}

.omen-ui-difficulty-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.omen-ui-codex {
    position: relative;
    display: grid;
    gap: 22px;
    padding: 26px;
    background:
        radial-gradient(circle at 20% 15%, rgba(215, 189, 130, .16), transparent 32%),
        radial-gradient(circle at 86% 82%, rgba(88, 197, 197, .1), transparent 34%),
        linear-gradient(90deg, rgba(28, 16, 12, .96), rgba(56, 37, 27, .92) 49%, rgba(33, 19, 15, .96) 51%, rgba(18, 11, 9, .98));
    border: 1px solid rgba(215, 189, 130, .42);
    border-radius: 26px;
    box-shadow: inset 0 0 0 1px rgba(88, 197, 197, .08), inset 0 0 42px rgba(0, 0, 0, .58);
}

@media (orientation: portrait) {
    :root {
        --omen-ui-button-wide: var(--omen-window-button-medium-secondary);
        --omen-ui-button-primary: var(--omen-window-button-medium-primary);
    }

    .omen-ui-shell {
        background-image: var(--omen-ui-bg-portrait);
    }

    .omen-ui-button {
        min-height: 70px;
        min-width: 250px;
        font-size: 25px;
    }

    .omen-ui-codex {
        gap: 14px;
        padding: 22px;
        background:
            radial-gradient(circle at 20% 15%, rgba(215, 189, 130, .16), transparent 32%),
            radial-gradient(circle at 86% 82%, rgba(88, 197, 197, .1), transparent 34%),
            linear-gradient(180deg, rgba(28, 16, 12, .96), rgba(56, 37, 27, .92) 49%, rgba(33, 19, 15, .96) 51%, rgba(18, 11, 9, .98));
    }
}

/* Main menu: first real integration pass for the eldritch bestiary desk sprite set. */
.main-menu-container {
    background-color: #050507;
    background-image:
        linear-gradient(180deg, rgba(3, 0, 4, .22) 0%, rgba(12, 0, 5, .06) 42%, rgba(3, 0, 4, .62) 100%),
        radial-gradient(circle at 50% 18%, rgba(88, 197, 197, .12), transparent 42%),
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/backgrounds/bg_landscape_clean.webp");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.main-menu-container::before {
    opacity: .38;
}

.main-menu-container::after {
    background:
        radial-gradient(circle at 18% 22%, rgba(70, 220, 255, .12), transparent 1px),
        radial-gradient(circle at 80% 62%, rgba(155, 32, 29, .14), transparent 1px),
        radial-gradient(circle at 50% 50%, transparent 0 48%, rgba(0, 0, 0, .48) 74%, rgba(0, 0, 0, .76) 100%);
    background-size: 110px 140px, 150px 180px, cover;
    mix-blend-mode: screen;
    opacity: .5;
}

.card-selection-container {
    background: transparent;
    backdrop-filter: none;
}

.card-selection-container::before {
    content: none;
}

.card-overlay {
    background:
        radial-gradient(circle at 50% 50%, rgba(88, 197, 197, .08), transparent 44%),
        rgba(0, 0, 0, .68);
    backdrop-filter: blur(3px);
}

.menu {
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        linear-gradient(145deg, rgba(20, 13, 10, .96), rgba(5, 8, 11, .98));
}

.card-modal {
    max-width: min(980px, calc(100vw - 28px));
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        radial-gradient(circle at 50% 0%, rgba(88, 197, 197, .14), transparent 42%),
        linear-gradient(145deg, rgba(18, 12, 10, .96), rgba(4, 7, 10, .98));
}

.stats-window {
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        linear-gradient(145deg, rgba(18, 12, 10, .96), rgba(4, 7, 10, .98));
}

.run-setup-modal,
.leaderboard-modal,
.bestiary-modal,
.hero-upgrades-modal,
.achievements-modal,
.skins-menu-panel {
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        radial-gradient(circle at 18% 0%, rgba(215, 189, 130, .12), transparent 34%),
        radial-gradient(circle at 84% 18%, rgba(88, 197, 197, .12), transparent 30%),
        linear-gradient(145deg, rgba(20, 13, 10, .97), rgba(7, 8, 11, .99));
}

.run-setup-primary,
.confirm-button,
.restart-button,
.escape-action.primary {
    background:
        var(--omen-ui-button-primary) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .28), rgba(4, 10, 14, .94));
    color: #fff2d6;
}

.run-setup-primary:hover,
.confirm-button:hover:not(.disabled),
.restart-button:hover,
.escape-action.primary:hover {
    background:
        var(--omen-window-button-wide-primary-hover) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .32), rgba(4, 10, 14, .94));
}

.run-setup-primary:active,
.confirm-button:active:not(.disabled),
.restart-button:active,
.escape-action.primary:active,
.menu-container:not(.main-menu-container) .menu-button:active,
.run-setup-secondary:active,
.card-button:active:not(.disabled),
.game-result-button:active,
.escape-action:active {
    background:
        var(--omen-window-button-wide-secondary-pressed) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(20, 13, 10, .82), rgba(4, 10, 14, .94));
    transform: translateY(2px) scale(.985);
}

.run-setup-primary:active,
.confirm-button:active:not(.disabled),
.restart-button:active,
.escape-action.primary:active {
    background:
        var(--omen-window-button-wide-primary-pressed) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .30), rgba(4, 10, 14, .94));
}

.run-hero-card,
.difficulty-card,
.area-card,
.run-setup-tool-card,
.settings-option,
.escape-menu-section,
.escape-setting-row,
.stats-section,
.result-section,
.result-card-block,
.hero-summary-card,
.result-stat-card,
.card-summary-item,
.stat-row,
.leaderboard-mode-card,
.leaderboard-best-block,
.leaderboard-player-result,
.bestiary-card,
.bestiary-card-class-group,
.achievement-card,
.hero-upgrades-summary,
.hero-upgrade-tree,
.hero-upgrade-node,
.hero-upgrade-point-grid span,
.hero-upgrade-bonus-list span,
.skin-button,
.wave-progress-info,
.empty-state {
    border: 0;
    border-radius: clamp(12px, 1.6vw, 22px);
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .18)),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        radial-gradient(circle at 20% 0%, rgba(88, 197, 197, .10), transparent 38%),
        linear-gradient(145deg, rgba(16, 12, 10, .90), rgba(3, 8, 12, .94));
    box-shadow:
        inset 0 0 18px rgba(0, 0, 0, .28),
        0 10px 22px rgba(0, 0, 0, .32);
}

.run-hero-card:hover,
.difficulty-card:hover,
.area-card:hover,
.run-setup-tool-card:hover,
.run-hero-card.selected,
.difficulty-card.selected,
.area-card.selected,
.hero-upgrade-node:hover:not(:disabled),
.hero-upgrade-node.is-maxed,
.skin-button:hover,
.skin-button.selected,
.achievement-card.is-unlocked {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .36), rgba(0, 0, 0, .14)),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        radial-gradient(circle at 20% 0%, rgba(215, 189, 130, .14), transparent 38%),
        radial-gradient(circle at 85% 18%, rgba(88, 197, 197, .16), transparent 36%),
        linear-gradient(145deg, rgba(24, 16, 12, .92), rgba(4, 12, 16, .96));
    box-shadow:
        0 14px 30px rgba(0, 0, 0, .42),
        0 0 18px rgba(88, 197, 197, .18);
}

.card:not(.has-card-art) {
    border: 0;
    border-radius: 18px;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .38), rgba(0, 0, 0, .16)),
        var(--omen-ui-panel-card) center / 100% 100% no-repeat,
        linear-gradient(145deg, rgba(16, 12, 10, .94), rgba(3, 8, 12, .98));
}

.card.has-card-art {
    border: 0;
    background: transparent;
    box-shadow:
        0 16px 28px rgba(0, 0, 0, .40),
        0 0 18px rgba(88, 197, 197, .10);
}

.card.has-card-art::before {
    border-radius: 18px;
}

.card.selected,
.card:hover {
    box-shadow:
        0 18px 34px rgba(0, 0, 0, .46),
        0 0 22px rgba(88, 197, 197, .22);
}

.close-button {
    color: transparent;
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_close.webp") center / 72% 72% no-repeat,
        radial-gradient(circle at 50% 45%, rgba(88, 197, 197, .18), rgba(4, 10, 14, .74));
}

.close-button:hover {
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_close.webp") center / 78% 78% no-repeat,
        radial-gradient(circle at 50% 45%, rgba(155, 32, 29, .28), rgba(4, 10, 14, .82));
}

.settings-select,
.leaderboard-content,
.bestiary-content,
.stats-content,
.run-setup-content,
.hero-upgrade-tree,
.hero-upgrades-summary,
.skins-menu-panel .skins-container {
    scrollbar-color: rgba(215, 189, 130, .58) rgba(6, 8, 10, .50);
    scrollbar-width: thin;
}

.settings-select {
    border-color: rgba(215, 189, 130, .32);
    background:
        linear-gradient(145deg, rgba(18, 12, 10, .94), rgba(3, 8, 12, .98));
    color: #f1dfba;
}

.toggle-slider {
    border-color: rgba(215, 189, 130, .32);
    background:
        linear-gradient(145deg, rgba(12, 9, 8, .92), rgba(3, 8, 12, .96));
}

input:checked + .toggle-slider {
    background:
        linear-gradient(90deg, rgba(155, 32, 29, .88), rgba(88, 197, 197, .72));
    box-shadow: 0 0 18px rgba(88, 197, 197, .28);
}

@media (orientation: portrait) {

    .run-setup-primary,
    .confirm-button,
    .restart-button,
    .escape-action.primary {
        background:
            var(--omen-ui-button-primary) center / 100% 100% no-repeat,
            linear-gradient(135deg, rgba(155, 32, 29, .28), rgba(4, 10, 14, .94));
    }
}

.run-setup-modal {
    width: min(1040px, calc(100vw - 32px));
    display: flex;
    flex-direction: column;
    max-height: min(92vh, 820px);
}

.run-setup-content {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
}

.run-setup-section h3 {
    margin-bottom: 14px;
    color: #5cf6d5;
    text-shadow: 0 0 14px rgba(88, 197, 197, .34);
}

.run-area-step-overlay .run-setup-header {
    padding-block: 18px 20px;
}

.run-area-step-overlay .run-setup-header h2 {
    font-size: clamp(2.05rem, 4.4vw, 3.35rem);
}

.run-area-step-overlay .run-setup-section {
    margin-bottom: 16px;
}

.run-area-step-overlay .run-setup-section h3 {
    margin-bottom: 10px;
}

.run-hero-grid,
.run-area-grid,
.difficulty-grid,
.run-setup-hub-actions {
    gap: clamp(12px, 1.4vw, 18px);
}

.run-hero-card,
.area-card,
.difficulty-card,
.run-setup-tool-card {
    overflow: hidden;
    border-radius: 20px;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .62), rgba(0, 0, 0, .34)),
        radial-gradient(circle at 18% 0%, rgba(92, 246, 213, .12), transparent 42%),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        linear-gradient(145deg, rgba(12, 11, 10, .96), rgba(3, 9, 13, .98));
}

.area-card {
    min-height: 132px;
    padding: 16px;
}

.difficulty-card {
    min-height: 112px;
    padding: 16px;
}

.difficulty-card p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.run-hero-card:hover,
.difficulty-card:hover,
.area-card:hover,
.run-setup-tool-card:hover,
.run-hero-card.selected,
.difficulty-card.selected,
.area-card.selected {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .54), rgba(0, 0, 0, .24)),
        radial-gradient(circle at 18% 0%, rgba(215, 189, 130, .18), transparent 40%),
        radial-gradient(circle at 88% 20%, rgba(92, 246, 213, .16), transparent 34%),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        linear-gradient(145deg, rgba(22, 15, 10, .97), rgba(4, 12, 16, .98));
}

.run-hero-card.selected::after,
.difficulty-card.selected::after,
.area-card.selected::after {
    content: "";
    position: absolute;
    top: 12px;
    right: 12px;
    width: 32px;
    height: 32px;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_selected.webp") center / contain no-repeat;
    filter: drop-shadow(0 0 12px rgba(92, 246, 213, .5));
}

.run-hero-card-head {
    min-height: 96px;
    margin-bottom: 12px;
}

.run-hero-portrait {
    flex-basis: 104px;
    width: 104px;
    height: 104px;
    border-radius: 22px;
}

.run-hero-preview-canvas {
    width: 104px;
    height: 104px;
}

.run-option-title {
    color: #fff2c4;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .88), 0 0 14px rgba(215, 189, 130, .24);
}

.run-option-role,
.omen-kicker {
    color: #5cf6d5;
    text-shadow: 0 0 12px rgba(92, 246, 213, .42);
}

.run-hero-card p,
.area-card p,
.difficulty-card p,
.run-setup-tool-card span {
    color: rgba(232, 246, 244, .84);
    line-height: 1.45;
}

.run-option-stats {
    gap: 7px;
}

.run-option-stats span,
.area-sigil {
    border-color: rgba(92, 246, 213, .28);
    background: rgba(2, 12, 16, .72);
    color: #f4e8c7;
}

.run-setup-footer {
    flex: 0 0 auto;
    padding: 14px clamp(18px, 2.5vw, 30px) clamp(18px, 2.2vw, 24px);
}

.run-setup-footer .run-setup-primary,
.run-setup-footer .run-setup-secondary {
    min-width: min(220px, 42vw);
}

@media (orientation: portrait) {

    .run-area-step-overlay .run-setup-header h2 {
        font-size: clamp(1.55rem, 8vw, 2.15rem);
    }

    .run-hero-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .run-area-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .difficulty-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    .difficulty-card {
        min-height: 94px;
        padding: 12px 9px;
    }

    .difficulty-card .run-option-title {
        font-size: .88rem;
        line-height: 1.1;
    }

    .difficulty-card p {
        display: none;
    }

    .difficulty-card .run-option-stats {
        gap: 5px;
    }

    .difficulty-card .run-option-stats span:nth-child(n+2) {
        display: none;
    }

    .difficulty-card .run-option-stats span {
        padding: 4px 6px;
        font-size: .64rem;
    }

    .run-setup-hub-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .run-hero-card {
        min-height: 0;
        padding: 12px;
    }

    .run-hero-card-head {
        align-items: center;
        min-height: 72px;
        margin-bottom: 8px;
    }

    .run-hero-portrait,
    .run-hero-preview-canvas {
        width: 76px;
        height: 76px;
    }

    .run-hero-portrait {
        flex-basis: 76px;
        border-radius: 18px;
    }

    .run-hero-card p {
        display: none;
    }

    .run-option-stats span {
        padding: 5px 7px;
        font-size: .68rem;
    }

    .area-card {
        min-height: 112px;
        padding: 12px;
    }

    .area-card-top {
        gap: 8px;
        margin-bottom: 8px;
    }

    .area-sigil {
        min-width: 34px;
        height: 34px;
        font-size: .82rem;
    }

    .area-card .run-option-title {
        font-size: .95rem;
        line-height: 1.12;
    }

    .area-card p {
        display: -webkit-box;
        margin-top: 6px;
        overflow: hidden;
        font-size: .75rem;
        line-height: 1.28;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .area-tags {
        margin-top: 8px;
    }

    .area-tags span {
        padding: 4px 6px;
        font-size: .62rem;
    }

    .run-setup-tool-card {
        min-height: 82px;
        padding: 12px;
    }

    .run-setup-tool-card span {
        display: none;
    }

    .run-setup-footer {
        padding: 12px 16px 16px;
    }

    .run-setup-footer .run-setup-primary,
    .run-setup-footer .run-setup-secondary {
        min-width: 0;
        flex: 1 1 0;
        padding: 11px 12px;
        font-size: .82rem;
    }
}

.card-selection-container {
    background: transparent !important;
    backdrop-filter: none !important;
}

.card-overlay {
    background:
        radial-gradient(circle at 50% 50%, rgba(88, 197, 197, .08), transparent 44%),
        rgba(0, 0, 0, .68) !important;
    backdrop-filter: blur(3px) !important;
}

.run-setup-modal,
.leaderboard-modal,
.bestiary-modal,
.hero-upgrades-modal,
.achievements-modal,
.skins-menu-panel {
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        radial-gradient(circle at 18% 0%, rgba(215, 189, 130, .12), transparent 34%),
        radial-gradient(circle at 84% 18%, rgba(88, 197, 197, .12), transparent 30%),
        linear-gradient(145deg, rgba(20, 13, 10, .97), rgba(7, 8, 11, .99)) !important;
}

.run-hero-card,
.difficulty-card,
.area-card,
.run-setup-tool-card,
.settings-option,
.escape-menu-section,
.escape-setting-row,
.stats-section,
.result-section,
.result-card-block,
.hero-summary-card,
.result-stat-card,
.card-summary-item,
.stat-row,
.leaderboard-mode-card,
.leaderboard-best-block,
.leaderboard-player-result,
.bestiary-card,
.bestiary-card-class-group,
.achievement-card,
.hero-upgrades-summary,
.hero-upgrade-tree,
.hero-upgrade-node,
.hero-upgrade-point-grid span,
.hero-upgrade-bonus-list span,
.skin-button,
.wave-progress-info,
.empty-state {
    border: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .18)),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        radial-gradient(circle at 20% 0%, rgba(88, 197, 197, .10), transparent 38%),
        linear-gradient(145deg, rgba(16, 12, 10, .90), rgba(3, 8, 12, .94)) !important;
    box-shadow:
        inset 0 0 18px rgba(0, 0, 0, .28),
        0 10px 22px rgba(0, 0, 0, .32) !important;
}

.run-setup-primary,
.confirm-button,
.restart-button,
.escape-action.primary {
    background:
        var(--omen-ui-button-primary) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .28), rgba(4, 10, 14, .94)) !important;
}

.main-menu-clean::before,
.main-menu-clean::after {
    opacity: 0 !important;
    background: none !important;
}

.main-menu-clean .main-menu-clean-topbar {
    top: max(16px, env(safe-area-inset-top));
    right: max(18px, env(safe-area-inset-right));
    left: auto;
    z-index: 4;
}

.main-menu-clean .main-menu-clean-currency-stack {
    gap: 8px;
}

.main-menu-clean .main-menu-clean-currency-pill {
    min-width: 138px !important;
    min-height: 38px !important;
    padding: 7px 12px !important;
    border: 1px solid rgba(88, 197, 197, .28) !important;
    border-radius: 12px !important;
    background:
        linear-gradient(135deg, rgba(4, 16, 22, .72), rgba(8, 8, 11, .68)) !important;
    box-shadow:
        inset 0 0 16px rgba(0, 0, 0, .32),
        0 8px 18px rgba(0, 0, 0, .28) !important;
    color: #efe1bd;
}

.main-menu-clean .main-menu-currency-label {
    color: rgba(92, 246, 213, .78);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.main-menu-clean .main-menu-clean-currency-pill strong {
    margin-left: auto;
    color: #fff0c8;
    font-size: .95rem;
}

.main-menu-clean .main-menu-clean-stage {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    padding: clamp(72px, 10vh, 120px) clamp(22px, 4vw, 58px) clamp(24px, 5vh, 48px) !important;
}

.main-menu-clean .main-menu-clean-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
    width: min(600px, 48vw) !important;
    gap: 10px !important;
    align-self: flex-end !important;
    justify-self: auto !important;
}

.main-menu-clean .main-menu-action {
    position: relative;
    min-height: 78px;
    padding: 15px 18px;
    border: 1px solid rgba(88, 197, 197, .28);
    border-radius: 16px;
    background:
        linear-gradient(135deg, rgba(4, 16, 22, .66), rgba(7, 7, 10, .76));
    color: #f1dfba;
    text-align: left;
    cursor: pointer;
    overflow: hidden;
    box-shadow:
        inset 0 0 22px rgba(0, 0, 0, .32),
        0 12px 24px rgba(0, 0, 0, .28);
    transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.main-menu-clean .main-menu-action::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 12% 0%, rgba(92, 246, 213, .12), transparent 36%),
        linear-gradient(90deg, rgba(155, 32, 29, .10), transparent 56%);
    opacity: .72;
    pointer-events: none;
}

.main-menu-clean .main-menu-action:hover {
    transform: translateY(-2px);
    border-color: rgba(92, 246, 213, .48);
    background:
        linear-gradient(135deg, rgba(8, 28, 36, .78), rgba(10, 9, 12, .82));
    box-shadow:
        inset 0 0 24px rgba(0, 0, 0, .30),
        0 16px 28px rgba(0, 0, 0, .34),
        0 0 16px rgba(92, 246, 213, .14);
}

.main-menu-clean .main-menu-action.is-pressing,
.main-menu-clean .main-menu-action:active {
    transform: translateY(1px) scale(.99);
}

.main-menu-clean .main-menu-action .main-menu-action-copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 4px;
}

.main-menu-clean .main-menu-action .main-menu-action-copy strong {
    color: #f6e8c4;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.12rem, 2vw, 1.55rem);
    font-style: italic;
    line-height: 1;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .78);
}

.main-menu-clean .main-menu-action .main-menu-action-copy small {
    color: rgba(224, 248, 250, .66);
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.1;
    text-transform: uppercase;
}

.main-menu-clean #shopBtn {
    order: 99 !important;
    grid-column: 1 / -1 !important;
}

@media (orientation: portrait) {
    .main-menu-clean .main-menu-clean-topbar {
        top: max(12px, env(safe-area-inset-top));
        right: 12px;
    }

    .main-menu-clean .main-menu-clean-currency-pill {
        min-width: 116px !important;
        min-height: 34px !important;
        padding: 6px 9px !important;
    }

    .main-menu-clean .main-menu-currency-label {
        font-size: .54rem;
    }

    .main-menu-clean .main-menu-clean-stage {
        align-items: flex-end !important;
        justify-content: center !important;
        padding: clamp(96px, 17vh, 170px) 18px max(24px, env(safe-area-inset-bottom)) !important;
    }

    .main-menu-clean .main-menu-clean-grid {
        grid-template-columns: 1fr !important;
        width: min(360px, 86vw) !important;
        gap: 8px !important;
    }

    .main-menu-clean .main-menu-action {
        min-height: 64px;
        padding: 12px 15px;
    }

    .main-menu-clean .main-menu-action .main-menu-action-copy strong {
        font-size: clamp(1rem, 5.6vw, 1.38rem);
    }
}

/* Main menu sprite hookup: final clean classes use only the new generated UI kit. */
.main-menu-clean {
    --main-menu-button-idle: var(--omen-window-button-wide-secondary);
    --main-menu-button-hover: var(--omen-window-button-wide-secondary-hover);
    --main-menu-button-pressed: var(--omen-window-button-wide-secondary-pressed);
    --main-menu-button-shop-idle: var(--omen-window-button-wide-primary);
    --main-menu-button-shop-hover: var(--omen-window-button-wide-primary-hover);
    --main-menu-button-shop-pressed: var(--omen-window-button-wide-primary-pressed);
}

.main-menu-clean .main-menu-clean-logo {
    position: absolute;
    left: clamp(34px, 7.2vw, 130px);
    top: clamp(24px, 5vh, 58px);
    z-index: 4;
    width: min(560px, 42vw);
    aspect-ratio: 1120 / 430;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/logos/drawn/logo_lockup_landscape.webp") center / contain no-repeat;
    filter:
        drop-shadow(0 18px 24px rgba(0, 0, 0, .72))
        drop-shadow(0 0 18px rgba(155, 32, 29, .22));
    pointer-events: none;
}

.main-menu-clean .main-menu-clean-topbar {
    position: absolute;
    display: flex;
}

.main-menu-clean .main-menu-clean-currency-stack {
    display: grid;
    gap: 8px;
}

.main-menu-clean .main-menu-clean-currency-pill {
    display: grid;
    grid-template-columns: 30px 1fr auto 24px;
    align-items: center;
    gap: 8px;
    width: 184px;
    min-width: 184px !important;
    min-height: 50px !important;
    padding: 7px 11px 7px 13px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/currency/drawn/currency_panel_small.webp") center / 100% 100% no-repeat !important;
    box-shadow: none !important;
}

.main-menu-clean .main-menu-currency-icon {
    width: 30px;
    height: 30px;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/currency/drawn/crystal_large.webp") center / contain no-repeat;
    filter: drop-shadow(0 0 8px rgba(92, 246, 213, .36));
}

.main-menu-clean .main-menu-currency-icon.coin {
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/currency/drawn/coin_large.webp");
    filter: drop-shadow(0 0 8px rgba(215, 189, 130, .34));
}

.main-menu-clean .main-menu-currency-plus {
    width: 23px;
    height: 23px;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/currency/drawn/plus_button.webp") center / contain no-repeat;
    filter: drop-shadow(0 0 8px rgba(92, 246, 213, .28));
}

.main-menu-clean .main-menu-clean-stage {
    position: absolute;
    inset: 0;
    z-index: 3;
}

.main-menu-clean .main-menu-clean-grid {
    width: min(700px, 50vw) !important;
    gap: 4px 8px !important;
}

.main-menu-clean .main-menu-action {
    --main-menu-icon: none;
    display: grid;
    grid-template-columns: clamp(44px, 4.8vw, 66px) 1fr clamp(18px, 2vw, 28px);
    align-items: center;
    gap: clamp(7px, 1vw, 12px);
    min-height: 0 !important;
    aspect-ratio: 560 / 124;
    padding: clamp(8px, .9vw, 14px) clamp(14px, 1.6vw, 25px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--main-menu-button-idle) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
    filter:
        drop-shadow(0 12px 16px rgba(0, 0, 0, .48))
        drop-shadow(0 0 10px rgba(88, 197, 197, .10));
}

.main-menu-clean .main-menu-action::before {
    content: none !important;
}

.main-menu-clean .main-menu-action:hover {
    background-image: var(--main-menu-button-hover) !important;
    box-shadow: none !important;
    filter:
        drop-shadow(0 16px 20px rgba(0, 0, 0, .56))
        drop-shadow(0 0 16px rgba(88, 197, 197, .18));
}

.main-menu-clean .main-menu-action.is-pressing,
.main-menu-clean .main-menu-action:active {
    background-image: var(--main-menu-button-pressed) !important;
}

.main-menu-clean #shopBtn {
    background-image: var(--main-menu-button-shop-idle) !important;
    aspect-ratio: 790 / 124;
}

.main-menu-clean #shopBtn:hover {
    background-image: var(--main-menu-button-shop-hover) !important;
}

.main-menu-clean #shopBtn.is-pressing,
.main-menu-clean #shopBtn:active {
    background-image: var(--main-menu-button-shop-pressed) !important;
}

.main-menu-clean #modesBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_modes.webp"); }
.main-menu-clean #shopBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_shop.webp"); }
.main-menu-clean #leaderboardBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_records.webp"); }
.main-menu-clean #bestiaryBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_bestiary.webp"); }
.main-menu-clean #achievementsBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_achievements.webp"); }
.main-menu-clean #settingsBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_settings.webp"); }
.main-menu-clean #exitBtn { --main-menu-icon: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_exit.webp"); }

.main-menu-clean .main-menu-action-icon {
    width: clamp(36px, 4.5vw, 58px);
    height: clamp(36px, 4.5vw, 58px);
    background: var(--main-menu-icon) center / contain no-repeat;
    filter:
        drop-shadow(0 5px 8px rgba(0, 0, 0, .72))
        drop-shadow(0 0 10px rgba(88, 197, 197, .30));
}

.main-menu-clean .main-menu-action-arrow {
    justify-self: end;
    width: clamp(16px, 2vw, 26px);
    height: clamp(16px, 2vw, 26px);
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_start.webp") center / contain no-repeat;
    filter: drop-shadow(0 0 9px rgba(255, 246, 208, .40));
}

.main-menu-clean .main-menu-clean-sigil {
    position: absolute;
    left: 50%;
    bottom: max(10px, env(safe-area-inset-bottom));
    z-index: 2;
    width: 56px;
    height: 56px;
    transform: translateX(-50%);
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/logos/drawn/logo_mark_rune_glow.webp") center / contain no-repeat;
    opacity: .9;
    pointer-events: none;
    filter: drop-shadow(0 0 16px rgba(155, 32, 29, .42));
}

@media (orientation: portrait) {
    .main-menu-clean {
        --main-menu-button-idle: var(--omen-window-button-wide-secondary);
        --main-menu-button-hover: var(--omen-window-button-wide-secondary-hover);
        --main-menu-button-pressed: var(--omen-window-button-wide-secondary-pressed);
        --main-menu-button-shop-idle: var(--omen-window-button-wide-primary);
        --main-menu-button-shop-hover: var(--omen-window-button-wide-primary-hover);
        --main-menu-button-shop-pressed: var(--omen-window-button-wide-primary-pressed);
    }

    .main-menu-clean .main-menu-clean-logo {
        left: 50%;
        top: max(clamp(88px, 12vh, 132px), env(safe-area-inset-top));
        width: min(72vw, 340px);
        aspect-ratio: 820 / 460;
        transform: translateX(-50%);
        background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/logos/drawn/logo_lockup_portrait.webp");
    }

    .main-menu-clean .main-menu-clean-currency-stack {
        gap: 6px;
    }

    .main-menu-clean .main-menu-clean-currency-pill {
        grid-template-columns: 24px 1fr auto 20px;
        gap: 5px;
        width: 136px;
        min-width: 136px !important;
        min-height: 42px !important;
        padding: 6px 8px !important;
    }

    .main-menu-clean .main-menu-currency-icon {
        width: 24px;
        height: 24px;
    }

    .main-menu-clean .main-menu-currency-plus {
        width: 19px;
        height: 19px;
    }

    .main-menu-clean .main-menu-clean-stage {
        padding-top: clamp(210px, 28vh, 300px) !important;
    }

    .main-menu-clean .main-menu-clean-grid {
        width: min(370px, 88vw) !important;
    }

    .main-menu-clean .main-menu-action {
        grid-template-columns: 48px 1fr 20px;
        aspect-ratio: 700 / 132;
        padding: 9px 16px !important;
    }

    .main-menu-clean #shopBtn {
        aspect-ratio: 700 / 142;
    }

    .main-menu-clean .main-menu-action-icon {
        width: 48px;
        height: 48px;
    }

    .main-menu-clean .main-menu-clean-sigil {
        display: none;
    }
}

/* Clean window hookup: modes, hero setup, upgrades and skins use the same final UI kit as the main menu. */
.modes-clean-overlay,
.run-setup-clean-overlay,
.hero-upgrades-clean-overlay {
    --clean-window-button-idle: var(--omen-window-button-wide-secondary);
    --clean-window-button-hover: var(--omen-window-button-wide-secondary-hover);
    --clean-window-button-pressed: var(--omen-window-button-wide-secondary-pressed);
    --clean-window-button-primary: var(--omen-window-button-wide-primary);
    --clean-window-button-primary-hover: var(--omen-window-button-wide-primary-hover);
    --clean-window-button-primary-pressed: var(--omen-window-button-wide-primary-pressed);
    position: fixed !important;
    inset: 0 !important;
    z-index: 1000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left)) !important;
    overflow: hidden !important;
    background-color: #030509 !important;
    background-image:
        linear-gradient(180deg, rgba(1, 3, 7, .88), rgba(1, 8, 14, .92)),
        radial-gradient(circle at 50% 18%, rgba(88, 197, 197, .16), transparent 42%),
        var(--omen-ui-bg-landscape) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    backdrop-filter: blur(8px) !important;
}

.modes-clean-overlay::before,
.run-setup-clean-overlay::before,
.hero-upgrades-clean-overlay::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    background-image:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/overlay_vignette_landscape.webp"),
        radial-gradient(circle at 18% 22%, rgba(70, 220, 255, .12), transparent 1px),
        radial-gradient(circle at 82% 70%, rgba(155, 32, 29, .10), transparent 1px) !important;
    background-position: center, center, center !important;
    background-repeat: no-repeat, repeat, repeat !important;
    background-size: cover, 116px 144px, 164px 190px !important;
    opacity: .72 !important;
    pointer-events: none !important;
}

.modes-clean-modal,
.run-setup-clean-modal,
.hero-upgrades-clean-modal,
.skins-clean-panel {
    position: relative !important;
    z-index: 1 !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    color: #eadbb8 !important;
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        radial-gradient(circle at 18% 0%, rgba(215, 189, 130, .12), transparent 34%),
        radial-gradient(circle at 84% 18%, rgba(88, 197, 197, .12), transparent 30%),
        linear-gradient(145deg, #140d0a, #07080b) !important;
    box-shadow:
        0 30px 58px rgba(0, 0, 0, .70),
        0 0 38px rgba(88, 197, 197, .13),
        inset 0 0 46px rgba(0, 0, 0, .42) !important;
}

.modes-clean-modal {
    width: min(760px, calc(100vw - 32px)) !important;
    padding: 0 !important;
}

.run-setup-clean-modal,
.skins-clean-panel {
    display: flex !important;
    flex-direction: column !important;
    width: min(1080px, calc(100vw - 34px)) !important;
    max-height: min(92dvh, 830px) !important;
    overflow: hidden !important;
}

.hero-upgrades-clean-modal {
    display: flex !important;
    flex-direction: column !important;
    width: min(1160px, calc(100vw - 34px)) !important;
    max-height: min(92dvh, 850px) !important;
    overflow: hidden !important;
}

.modes-clean-header,
.run-setup-clean-header,
.hero-upgrades-clean-header,
.skins-clean-header {
    position: relative !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: clamp(18px, 2vw, 26px) clamp(18px, 2.5vw, 32px) !important;
    border: 0 !important;
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/panels/drawn/panel_header.webp") center / 100% 100% no-repeat,
        linear-gradient(90deg, rgba(88, 197, 197, .14), rgba(155, 32, 29, .08), transparent) !important;
}

.modes-clean-header::after,
.run-setup-clean-header::after,
.hero-upgrades-clean-header::after,
.skins-clean-header::after {
    content: "" !important;
    position: absolute !important;
    left: 7% !important;
    right: 7% !important;
    bottom: -22px !important;
    height: 64px !important;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/divider_long.webp") center / contain no-repeat !important;
    opacity: .62 !important;
    pointer-events: none !important;
}

.modes-clean-header h2,
.run-setup-clean-header h2,
.hero-upgrades-clean-header h2,
.skins-clean-header h2 {
    margin: 4px 0 6px !important;
    color: #f3dfb2 !important;
    font-size: clamp(2.05rem, 4.7vw, 3.8rem) !important;
    line-height: .9 !important;
    letter-spacing: .025em !important;
    text-shadow:
        0 2px 0 rgba(14, 8, 8, .95),
        0 0 18px rgba(215, 189, 130, .28),
        0 0 28px rgba(88, 197, 197, .14) !important;
}

.modes-clean-header p,
.run-setup-clean-header p,
.hero-upgrades-clean-header p,
.skins-clean-header p {
    max-width: 720px !important;
    margin: 0 !important;
    color: rgba(224, 248, 250, .82) !important;
    font-size: clamp(.88rem, 1.25vw, 1.02rem) !important;
    line-height: 1.45 !important;
}

.modes-clean-header .close-button,
.run-setup-clean-header .close-button,
.hero-upgrades-clean-header .close-button,
.skins-clean-header .close-button {
    flex: 0 0 auto !important;
}

.modes-clean-list,
.run-setup-clean-content,
.hero-upgrades-clean-content,
.skins-clean-content {
    position: relative !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    padding: clamp(18px, 2vw, 28px) clamp(18px, 2.5vw, 32px) !important;
    overflow-y: auto !important;
    scrollbar-color: rgba(215, 189, 130, .58) rgba(6, 8, 10, .50) !important;
    scrollbar-width: thin !important;
}

.modes-clean-list {
    display: grid !important;
    gap: 12px !important;
    padding-top: clamp(24px, 3vw, 36px) !important;
}

.modes-clean-card,
.run-setup-clean-footer .run-setup-primary,
.run-setup-clean-footer .run-setup-secondary,
.hero-upgrades-clean-actions .run-setup-secondary,
.hero-upgrade-tab,
.hero-upgrade-reset {
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    background:
        var(--clean-window-button-idle) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(20, 13, 10, .82), rgba(4, 10, 14, .94)) !important;
    color: #f1dfba !important;
    box-shadow: none !important;
    text-shadow:
        0 2px 0 rgba(0, 0, 0, .92),
        0 0 14px rgba(88, 197, 197, .22) !important;
    filter:
        drop-shadow(0 12px 18px rgba(0, 0, 0, .48))
        drop-shadow(0 0 12px rgba(88, 197, 197, .12)) !important;
}

.modes-clean-card:hover,
.run-setup-clean-footer .run-setup-primary:hover,
.run-setup-clean-footer .run-setup-secondary:hover,
.hero-upgrades-clean-actions .run-setup-secondary:hover,
.hero-upgrade-tab:hover,
.hero-upgrade-tab.selected,
.hero-upgrade-reset:hover {
    background:
        var(--clean-window-button-hover) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(88, 197, 197, .18), rgba(4, 10, 14, .94)) !important;
    transform: translateY(-2px) !important;
    filter:
        drop-shadow(0 15px 22px rgba(0, 0, 0, .54))
        drop-shadow(0 0 18px rgba(88, 197, 197, .22)) !important;
}

.modes-clean-card:active,
.run-setup-clean-footer .run-setup-primary:active,
.run-setup-clean-footer .run-setup-secondary:active,
.hero-upgrades-clean-actions .run-setup-secondary:active,
.hero-upgrade-tab:active,
.hero-upgrade-reset:active {
    background:
        var(--clean-window-button-pressed) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(20, 13, 10, .82), rgba(4, 10, 14, .94)) !important;
    transform: translateY(2px) scale(.985) !important;
}

.run-setup-clean-footer .run-setup-primary {
    background:
        var(--clean-window-button-primary) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .28), rgba(4, 10, 14, .94)) !important;
    color: #fff2d6 !important;
}

.run-setup-clean-footer .run-setup-primary:hover {
    background:
        var(--clean-window-button-primary-hover) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .32), rgba(4, 10, 14, .94)) !important;
}

.run-setup-clean-footer .run-setup-primary:active {
    background:
        var(--clean-window-button-primary-pressed) center / 100% 100% no-repeat,
        linear-gradient(135deg, rgba(155, 32, 29, .30), rgba(4, 10, 14, .94)) !important;
}

.modes-clean-card {
    display: grid !important;
    grid-template-columns: clamp(54px, 5vw, 72px) 1fr clamp(18px, 2vw, 28px) !important;
    align-items: center !important;
    gap: clamp(10px, 1.4vw, 16px) !important;
    min-height: 100px !important;
    padding: clamp(12px, 1.2vw, 18px) clamp(20px, 2.1vw, 30px) !important;
    text-align: left !important;
    cursor: pointer !important;
}

.modes-clean-icon,
.modes-clean-arrow {
    display: block !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    filter:
        drop-shadow(0 5px 8px rgba(0, 0, 0, .72))
        drop-shadow(0 0 10px rgba(88, 197, 197, .30)) !important;
}

.modes-clean-icon {
    width: clamp(46px, 4.8vw, 66px) !important;
    height: clamp(46px, 4.8vw, 66px) !important;
}

.modes-clean-icon.modes {
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_modes.webp") !important;
}

.modes-clean-icon.start {
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_start.webp") !important;
}

.modes-clean-icon.area {
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_area.webp") !important;
}

.modes-clean-copy {
    display: grid !important;
    gap: 6px !important;
}

.modes-clean-copy strong {
    color: #fff2c4 !important;
    font-size: clamp(1.28rem, 2.6vw, 2rem) !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
}

.modes-clean-copy small {
    color: rgba(224, 248, 250, .78) !important;
    font-size: clamp(.72rem, 1.1vw, .92rem) !important;
    line-height: 1.3 !important;
}

.modes-clean-arrow {
    justify-self: end !important;
    width: clamp(18px, 2vw, 28px) !important;
    height: clamp(18px, 2vw, 28px) !important;
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_start.webp") !important;
}

.run-setup-clean-section {
    margin: 0 0 clamp(16px, 2vw, 24px) !important;
}

.run-setup-clean-section h3,
.hero-upgrades-clean-bonuses h3,
.skin-hero-header h2 {
    color: #5cf6d5 !important;
    text-shadow: 0 0 14px rgba(92, 246, 213, .34) !important;
}

.run-setup-clean-hero-grid,
.run-setup-clean-area-grid,
.run-setup-clean-difficulty-grid,
.run-setup-clean-wave-level-grid,
.run-setup-clean-hub-actions {
    display: grid !important;
    gap: clamp(12px, 1.4vw, 18px) !important;
}

.run-setup-clean-hero-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.run-setup-clean-area-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.run-setup-clean-difficulty-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.run-setup-clean-wave-level-grid {
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr)) !important;
    max-height: min(54vh, 520px) !important;
    overflow-y: auto !important;
    padding-right: 6px !important;
}

.run-setup-clean-hub-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.run-setup-clean-card,
.run-setup-clean-tool-card,
.hero-upgrades-clean-summary,
.hero-upgrades-clean-tree,
.hero-upgrade-node,
.hero-upgrade-point-grid span,
.hero-upgrade-bonus-list span,
.skin-button,
.skins-clean-description {
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .18)),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        radial-gradient(circle at 20% 0%, rgba(88, 197, 197, .10), transparent 38%),
        linear-gradient(145deg, #100c0a, #03080c) !important;
    box-shadow:
        inset 0 0 18px rgba(0, 0, 0, .28),
        0 10px 22px rgba(0, 0, 0, .32) !important;
}

.run-setup-clean-card:hover:not(:disabled),
.run-setup-clean-tool-card:hover,
.run-setup-clean-card.selected,
.hero-upgrade-node:hover:not(:disabled),
.hero-upgrade-node.is-maxed,
.skin-button:hover,
.skin-button.selected {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .36), rgba(0, 0, 0, .14)),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        radial-gradient(circle at 20% 0%, rgba(215, 189, 130, .14), transparent 38%),
        radial-gradient(circle at 85% 18%, rgba(88, 197, 197, .16), transparent 36%),
        linear-gradient(145deg, #18100c, #040c10) !important;
    box-shadow:
        0 14px 30px rgba(0, 0, 0, .42),
        0 0 18px rgba(88, 197, 197, .18) !important;
}

.run-setup-clean-card {
    position: relative !important;
    overflow: hidden !important;
}

.run-setup-clean-hero-card {
    min-height: 260px !important;
}

.run-setup-clean-wave-level-card {
    min-height: 138px !important;
    padding: 16px 18px !important;
}

.run-setup-clean-wave-level-card.is-locked {
    opacity: .48 !important;
    filter: saturate(.42) brightness(.78) !important;
}

.run-setup-clean-wave-level-card.is-locked:hover {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .18)),
        var(--omen-ui-panel-small) center / 100% 100% no-repeat,
        radial-gradient(circle at 20% 0%, rgba(88, 197, 197, .10), transparent 38%),
        linear-gradient(145deg, #100c0a, #03080c) !important;
    box-shadow:
        inset 0 0 18px rgba(0, 0, 0, .28),
        0 10px 22px rgba(0, 0, 0, .32) !important;
}

.run-setup-clean-wave-level-card .run-option-title {
    font-size: clamp(.92rem, 1.2vw, 1.08rem) !important;
}

.run-setup-clean-wave-level-card .run-option-role,
.run-setup-clean-wave-level-card .wave-level-enemies {
    color: rgba(224, 248, 250, .78) !important;
}

.run-setup-clean-card.selected::after {
    content: "" !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 32px !important;
    height: 32px !important;
    background: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_selected.webp") center / contain no-repeat !important;
    filter: drop-shadow(0 0 12px rgba(92, 246, 213, .5)) !important;
}

.run-setup-clean-portrait,
.hero-upgrades-clean-portrait,
.skin-preview-frame {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        radial-gradient(circle at 50% 45%, rgba(88, 197, 197, .14), transparent 44%),
        var(--omen-ui-panel-card) center / 100% 100% no-repeat,
        rgba(2, 8, 12, .58) !important;
    box-shadow: inset 0 0 24px rgba(0, 0, 0, .48) !important;
}

.skin-preview-frame,
.skin-preview-canvas {
    pointer-events: none !important;
}

.run-setup-clean-tool-card {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 64px 1fr !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 112px !important;
    padding: 18px 20px !important;
    text-align: left !important;
}

.run-setup-clean-tool-card::before {
    content: "" !important;
    width: 58px !important;
    height: 58px !important;
    grid-row: span 2 !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    filter:
        drop-shadow(0 5px 8px rgba(0, 0, 0, .72))
        drop-shadow(0 0 10px rgba(88, 197, 197, .30)) !important;
}

.run-setup-clean-tool-card.skins::before {
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_skins.webp") !important;
}

.run-setup-clean-tool-card.upgrades::before {
    background-image: url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_upgrades.webp") !important;
}

.run-setup-clean-tool-card strong {
    align-self: end !important;
    color: #fff2c4 !important;
    font-size: clamp(1rem, 1.8vw, 1.35rem) !important;
    text-transform: uppercase !important;
}

.run-setup-clean-tool-card span {
    align-self: start !important;
    color: rgba(224, 248, 250, .78) !important;
}

.run-setup-clean-footer,
.skins-clean-footer {
    flex: 0 0 auto !important;
    display: flex !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    padding: 14px clamp(18px, 2.5vw, 32px) clamp(18px, 2.2vw, 24px) !important;
}

.run-setup-clean-footer .run-setup-primary,
.run-setup-clean-footer .run-setup-secondary {
    min-width: min(220px, 42vw) !important;
    padding: 13px 22px !important;
}

.hero-upgrades-clean-tabs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-bottom: 16px !important;
}

.hero-upgrade-tab {
    min-height: 78px !important;
    padding: 12px 16px !important;
}

.hero-upgrades-clean-layout {
    display: grid !important;
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr) !important;
    gap: 18px !important;
    min-height: 0 !important;
}

.hero-upgrades-clean-summary,
.hero-upgrades-clean-tree {
    min-height: 0 !important;
    overflow-y: auto !important;
}

.hero-upgrades-clean-tree {
    padding: 18px !important;
}

.hero-upgrade-column {
    min-width: min(300px, 72vw) !important;
}

.hero-upgrade-node {
    min-height: 126px !important;
}

.skins-clean-panel {
    width: min(1120px, calc(100vw - 34px)) !important;
}

.skins-clean-container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
}

.skin-hero-section {
    display: grid !important;
    gap: 12px !important;
}

.skin-hero-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.skin-button {
    min-height: 190px !important;
    padding: 12px !important;
}

.skins-clean-description {
    margin-top: 16px !important;
    padding: 14px 16px !important;
    color: rgba(224, 248, 250, .84) !important;
}

.skins-clean-standalone {
    background-image:
        linear-gradient(180deg, rgba(1, 3, 7, .56), rgba(1, 8, 14, .76)),
        radial-gradient(circle at 50% 18%, rgba(88, 197, 197, .16), transparent 42%),
        var(--omen-ui-bg-landscape) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

@media (orientation: portrait) {
    .modes-clean-overlay,
    .run-setup-clean-overlay,
    .hero-upgrades-clean-overlay {
        --clean-window-button-idle: var(--omen-window-button-wide-secondary);
        --clean-window-button-hover: var(--omen-window-button-wide-secondary-hover);
        --clean-window-button-pressed: var(--omen-window-button-wide-secondary-pressed);
        --clean-window-button-primary: var(--omen-window-button-wide-primary);
        --clean-window-button-primary-hover: var(--omen-window-button-wide-primary-hover);
        --clean-window-button-primary-pressed: var(--omen-window-button-wide-primary-pressed);
        padding: max(12px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
        background-image:
            linear-gradient(180deg, rgba(1, 3, 7, .88), rgba(1, 8, 14, .92)),
            radial-gradient(circle at 50% 18%, rgba(88, 197, 197, .14), transparent 42%),
            var(--omen-ui-bg-portrait) !important;
    }

    .modes-clean-overlay::before,
    .run-setup-clean-overlay::before,
    .hero-upgrades-clean-overlay::before {
        background-image:
            url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/overlay_vignette_portrait.webp"),
            radial-gradient(circle at 18% 22%, rgba(70, 220, 255, .12), transparent 1px),
            radial-gradient(circle at 82% 70%, rgba(155, 32, 29, .10), transparent 1px) !important;
    }

    .modes-clean-modal,
    .run-setup-clean-modal,
    .hero-upgrades-clean-modal,
    .skins-clean-panel {
        width: min(96vw, 430px) !important;
        max-height: 94dvh !important;
    }

    .modes-clean-header,
    .run-setup-clean-header,
    .hero-upgrades-clean-header,
    .skins-clean-header {
        padding: 17px 18px 14px !important;
    }

    .modes-clean-header::after,
    .run-setup-clean-header::after,
    .hero-upgrades-clean-header::after,
    .skins-clean-header::after {
        left: 12% !important;
        right: 12% !important;
        bottom: -18px !important;
        height: 48px !important;
    }

    .modes-clean-header h2,
    .run-setup-clean-header h2,
    .hero-upgrades-clean-header h2,
    .skins-clean-header h2 {
        font-size: clamp(1.35rem, 6.8vw, 1.85rem) !important;
        letter-spacing: .01em !important;
    }

    .modes-clean-header p,
    .run-setup-clean-header p,
    .hero-upgrades-clean-header p,
    .skins-clean-header p {
        max-width: 310px !important;
        font-size: .86rem !important;
        line-height: 1.32 !important;
    }

    .modes-clean-list,
    .run-setup-clean-content,
    .hero-upgrades-clean-content,
    .skins-clean-content {
        padding: 16px 15px !important;
    }

    .modes-clean-card {
        grid-template-columns: 48px 1fr 18px !important;
        min-height: 82px !important;
        padding: 10px 15px !important;
    }

    .modes-clean-icon {
        width: 48px !important;
        height: 48px !important;
    }

    .modes-clean-copy strong {
        font-size: clamp(1.02rem, 5.5vw, 1.46rem) !important;
    }

    .modes-clean-copy small {
        font-size: .62rem !important;
    }

    .run-setup-clean-hero-grid,
    .skin-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .run-setup-clean-area-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
    }

    .run-setup-clean-difficulty-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .run-setup-clean-hub-actions,
    .hero-upgrades-clean-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
    }

    .run-setup-clean-hero-card {
        min-height: 0 !important;
        padding: 12px !important;
    }

    .run-setup-clean-card-head {
        min-height: 72px !important;
        margin-bottom: 8px !important;
    }

    .run-setup-clean-portrait,
    .run-setup-clean-portrait .run-hero-preview-canvas {
        width: 76px !important;
        height: 76px !important;
    }

    .run-setup-clean-hero-card p {
        display: none !important;
    }

    .run-setup-clean-area-card {
        min-height: 112px !important;
        padding: 12px !important;
    }

    .run-setup-clean-difficulty-card {
        min-height: 94px !important;
        padding: 12px 9px !important;
    }

    .run-setup-clean-difficulty-card p {
        display: none !important;
    }

    .run-setup-clean-difficulty-card .run-option-stats span:nth-child(n+2) {
        display: none !important;
    }

    .run-setup-clean-tool-card {
        grid-template-columns: 44px 1fr !important;
        min-height: 82px !important;
        padding: 12px !important;
    }

    .run-setup-clean-tool-card::before {
        width: 42px !important;
        height: 42px !important;
    }

    .run-setup-clean-tool-card span {
        display: none !important;
    }

    .run-setup-clean-footer,
    .skins-clean-footer {
        padding: 12px 16px 16px !important;
    }

    .run-setup-clean-footer .run-setup-primary,
    .run-setup-clean-footer .run-setup-secondary {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        padding: 11px 12px !important;
        font-size: .82rem !important;
    }

    .hero-upgrades-clean-layout {
        grid-template-columns: 1fr !important;
    }

    .hero-upgrades-clean-summary {
        max-height: none !important;
    }

    .skin-button {
        min-height: 170px !important;
    }
}

/* Geometry repair pass: generated art is decorative, layout is controlled by CSS. */
.modes-clean-modal,
.run-setup-clean-modal,
.hero-upgrades-clean-modal,
.skins-clean-panel {
    box-sizing: border-box !important;
    border: 1px solid rgba(92, 246, 213, .26) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(92, 246, 213, .10), transparent 34%),
        radial-gradient(circle at 88% 16%, rgba(155, 32, 29, .12), transparent 34%),
        linear-gradient(145deg, rgba(14, 10, 9, .98), rgba(4, 10, 14, .99)) !important;
    box-shadow:
        0 32px 60px rgba(0, 0, 0, .72),
        0 0 34px rgba(92, 246, 213, .12),
        inset 0 0 0 1px rgba(215, 189, 130, .16),
        inset 0 0 48px rgba(0, 0, 0, .52) !important;
}

.run-setup-clean-modal,
.skins-clean-panel {
    width: min(1120px, calc(100vw - 44px)) !important;
    height: min(820px, calc(100dvh - 42px)) !important;
    max-height: calc(100dvh - 42px) !important;
}

.hero-upgrades-clean-modal {
    width: min(1180px, calc(100vw - 44px)) !important;
    height: min(840px, calc(100dvh - 42px)) !important;
    max-height: calc(100dvh - 42px) !important;
}

.modes-clean-header,
.run-setup-clean-header,
.hero-upgrades-clean-header,
.skins-clean-header {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    padding: clamp(16px, 1.8vw, 24px) clamp(20px, 2.4vw, 32px) 14px !important;
    background:
        linear-gradient(90deg, rgba(92, 246, 213, .12), rgba(155, 32, 29, .07), transparent),
        rgba(0, 0, 0, .24) !important;
}

.modes-clean-header::after,
.run-setup-clean-header::after,
.hero-upgrades-clean-header::after,
.skins-clean-header::after {
    bottom: -15px !important;
    height: 44px !important;
    opacity: .46 !important;
}

.modes-clean-header h2,
.run-setup-clean-header h2,
.hero-upgrades-clean-header h2,
.skins-clean-header h2 {
    margin: 3px 0 6px !important;
    font-size: clamp(1.9rem, 4vw, 3.1rem) !important;
    line-height: .92 !important;
}

.run-setup-clean-content,
.hero-upgrades-clean-content,
.skins-clean-content {
    margin: 0 clamp(14px, 1.7vw, 22px) !important;
    padding: clamp(16px, 1.8vw, 22px) !important;
    border: 1px solid rgba(92, 246, 213, .11) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(92, 246, 213, .07), transparent 38%),
        rgba(1, 7, 10, .78) !important;
}

.run-setup-clean-content {
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(14px, 1.6vw, 20px) !important;
}

.run-setup-clean-section {
    margin: 0 !important;
}

.run-setup-clean-section h3 {
    margin: 0 0 12px !important;
}

.run-setup-clean-footer,
.skins-clean-footer {
    flex: 0 0 auto !important;
    min-height: 74px !important;
    margin-top: 0 !important;
    padding: 12px clamp(20px, 2.4vw, 32px) clamp(14px, 2vw, 22px) !important;
    border-top: 1px solid rgba(92, 246, 213, .12) !important;
    background: linear-gradient(180deg, rgba(0, 0, 0, .06), rgba(0, 0, 0, .34)) !important;
}

.run-setup-clean-card,
.run-setup-clean-tool-card,
.hero-upgrades-clean-summary,
.hero-upgrades-clean-tree,
.hero-upgrade-node,
.hero-upgrade-point-grid span,
.hero-upgrade-bonus-list span,
.skin-hero-section,
.skin-button,
.skins-clean-description {
    border: 1px solid rgba(92, 246, 213, .16) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(92, 246, 213, .09), transparent 38%),
        linear-gradient(145deg, rgba(12, 13, 13, .94), rgba(2, 9, 12, .98)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(215, 189, 130, .06),
        inset 0 0 22px rgba(0, 0, 0, .32),
        0 12px 24px rgba(0, 0, 0, .30) !important;
}

.run-setup-clean-card:hover,
.run-setup-clean-tool-card:hover,
.run-setup-clean-card.selected,
.hero-upgrade-node:hover:not(:disabled),
.hero-upgrade-node.is-maxed,
.skin-button:hover,
.skin-button.selected {
    border-color: rgba(215, 189, 130, .42) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(215, 189, 130, .12), transparent 38%),
        radial-gradient(circle at 88% 20%, rgba(92, 246, 213, .10), transparent 36%),
        linear-gradient(145deg, rgba(18, 15, 12, .97), rgba(2, 11, 15, .99)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(215, 189, 130, .10),
        0 14px 28px rgba(0, 0, 0, .38),
        0 0 18px rgba(92, 246, 213, .14) !important;
}

.run-setup-clean-hero-grid,
.run-setup-clean-area-grid,
.run-setup-clean-difficulty-grid,
.run-setup-clean-hub-actions {
    align-items: stretch !important;
}

.run-setup-clean-hero-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: 244px !important;
    padding: 16px !important;
}

.run-setup-clean-card-head {
    display: flex !important;
    align-items: center !important;
    min-height: 96px !important;
    margin: 0 0 12px !important;
}

.run-setup-clean-hero-card p {
    flex: 1 1 auto !important;
    margin: 0 !important;
}

.run-setup-clean-hero-card .run-option-stats {
    margin-top: 12px !important;
}

.run-setup-clean-portrait,
.run-setup-clean-portrait .run-hero-preview-canvas {
    flex: 0 0 96px !important;
    width: 96px !important;
    height: 96px !important;
}

.run-setup-clean-tool-card {
    border-radius: 18px !important;
}

.hero-upgrades-clean-content {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

.hero-upgrades-clean-tabs {
    flex: 0 0 auto !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
}

.hero-upgrades-clean-layout {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    grid-template-columns: minmax(250px, 300px) minmax(0, 1fr) !important;
}

.hero-upgrades-clean-summary,
.hero-upgrades-clean-tree {
    max-height: none !important;
    border-radius: 18px !important;
}

.hero-upgrades-clean-tree {
    display: flex !important;
    align-items: stretch !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 16px !important;
}

.hero-upgrade-column {
    flex: 0 0 calc((142px * var(--upgrade-node-columns, 1)) + (10px * (var(--upgrade-node-columns, 1) - 1))) !important;
    min-width: calc((142px * var(--upgrade-node-columns, 1)) + (10px * (var(--upgrade-node-columns, 1) - 1))) !important;
}

.hero-upgrade-node-grid {
    grid-template-columns: repeat(var(--upgrade-node-columns, 1), minmax(142px, 1fr)) !important;
    gap: 8px !important;
}

.hero-upgrade-node {
    min-height: 106px !important;
    padding: 10px !important;
}

.skins-clean-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.skins-clean-container {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
}

.skin-hero-section {
    padding: 14px !important;
}

.skin-hero-grid {
    grid-template-columns: repeat(5, minmax(120px, 1fr)) !important;
}

.skin-button {
    display: grid !important;
    justify-items: center !important;
    align-content: start !important;
    min-height: 168px !important;
    padding: 12px 10px !important;
    gap: 8px !important;
}

.skin-preview-frame,
.skins-menu-panel .skin-preview-frame,
.skin-preview-canvas,
.skins-menu-panel .skin-preview-canvas {
    width: 82px !important;
    height: 82px !important;
}

.skins-clean-description {
    flex: 0 0 auto !important;
    margin: 0 !important;
}

@media (orientation: portrait) {
    .run-setup-clean-modal,
    .hero-upgrades-clean-modal,
    .skins-clean-panel {
        width: calc(100vw - 20px) !important;
        height: calc(100dvh - 24px) !important;
        max-height: calc(100dvh - 24px) !important;
        border-radius: 20px !important;
    }

    .modes-clean-header,
    .run-setup-clean-header,
    .hero-upgrades-clean-header,
    .skins-clean-header {
        padding: 14px 16px 10px !important;
    }

    .modes-clean-header h2,
    .run-setup-clean-header h2,
    .hero-upgrades-clean-header h2,
    .skins-clean-header h2 {
        font-size: clamp(1.25rem, 6.1vw, 1.65rem) !important;
        line-height: .96 !important;
    }

    .modes-clean-header p,
    .run-setup-clean-header p,
    .hero-upgrades-clean-header p,
    .skins-clean-header p {
        font-size: .82rem !important;
    }

    .run-setup-clean-content,
    .hero-upgrades-clean-content,
    .skins-clean-content {
        margin: 0 10px !important;
        padding: 12px !important;
    }

    .run-setup-clean-hero-grid {
        grid-template-columns: 1fr !important;
    }

    .run-setup-clean-hero-card {
        min-height: 0 !important;
        padding: 12px !important;
    }

    .run-setup-clean-card-head {
        min-height: 76px !important;
        gap: 12px !important;
    }

    .run-setup-clean-portrait,
    .run-setup-clean-portrait .run-hero-preview-canvas {
        flex-basis: 72px !important;
        width: 72px !important;
        height: 72px !important;
    }

    .run-setup-clean-hub-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .run-setup-clean-tool-card {
        grid-template-columns: 36px minmax(0, 1fr) !important;
        min-height: 70px !important;
        padding: 10px !important;
    }

    .run-setup-clean-tool-card::before {
        width: 34px !important;
        height: 34px !important;
    }

    .run-setup-clean-tool-card strong {
        min-width: 0 !important;
        overflow: hidden !important;
        font-size: .72rem !important;
        line-height: 1.12 !important;
        text-overflow: ellipsis !important;
    }

    .run-setup-clean-footer,
    .skins-clean-footer {
        min-height: 64px !important;
        padding: 10px 14px 12px !important;
    }

    .run-setup-clean-footer .run-setup-primary,
    .run-setup-clean-footer .run-setup-secondary {
        min-height: 42px !important;
    }

    .hero-upgrades-clean-tabs {
        grid-template-columns: 1fr !important;
    }

    .hero-upgrade-tab {
        min-height: 56px !important;
    }

    .hero-upgrades-clean-layout {
        grid-template-columns: 1fr !important;
        overflow-y: auto !important;
    }

    .hero-upgrades-clean-summary {
        overflow: visible !important;
    }

    .hero-upgrades-clean-tree {
        min-height: 260px !important;
    }

    .skin-hero-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .skin-button {
        min-height: 148px !important;
    }
}

/* Final cleanup for clean modal screens: no old menu bleed-through, no translucent structural panels. */
body.clean-window-open #uiContainer > .main-menu-clean {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

.modes-clean-overlay,
.run-setup-clean-overlay,
.hero-upgrades-clean-overlay {
    opacity: 1 !important;
    background:
        linear-gradient(180deg, rgba(1, 3, 7, .96), rgba(1, 8, 14, .98)),
        radial-gradient(circle at 50% 18%, rgba(92, 246, 213, .12), transparent 42%),
        var(--omen-ui-bg-landscape) center / cover no-repeat,
        #030509 !important;
}

.modes-clean-modal,
.run-setup-clean-modal,
.hero-upgrades-clean-modal,
.skins-clean-panel {
    background:
        radial-gradient(circle at 18% 0%, rgba(92, 246, 213, .10), transparent 34%),
        radial-gradient(circle at 88% 16%, rgba(155, 32, 29, .12), transparent 34%),
        linear-gradient(145deg, #0e0a09, #03090d) !important;
}

.run-setup-clean-content,
.hero-upgrades-clean-content,
.skins-clean-content {
    background:
        radial-gradient(circle at 50% 0%, rgba(92, 246, 213, .07), transparent 38%),
        #01070a !important;
}

.run-setup-clean-card,
.run-setup-clean-tool-card,
.hero-upgrades-clean-summary,
.hero-upgrades-clean-tree,
.hero-upgrade-node,
.hero-upgrade-point-grid span,
.hero-upgrade-bonus-list span,
.skin-hero-section,
.skin-button,
.skins-clean-description {
    background:
        radial-gradient(circle at 18% 0%, rgba(92, 246, 213, .08), transparent 38%),
        linear-gradient(145deg, #0b0d0d, #02080b) !important;
}

@media (orientation: portrait) {
    .modes-clean-overlay,
    .run-setup-clean-overlay,
    .hero-upgrades-clean-overlay {
        background:
            linear-gradient(180deg, rgba(1, 3, 7, .96), rgba(1, 8, 14, .98)),
            radial-gradient(circle at 50% 18%, rgba(92, 246, 213, .12), transparent 42%),
            var(--omen-ui-bg-portrait) center / cover no-repeat,
            #030509 !important;
    }
}

/* Neural window sprite pass: use generated concept assets, CSS only positions content. */
.modes-clean-modal,
.run-setup-clean-modal,
.hero-upgrades-clean-modal,
.skins-clean-panel {
    border: 0 !important;
    border-radius: 0 !important;
    padding: clamp(24px, 2.3vw, 34px) !important;
    background:
        var(--omen-ui-panel-large) center / 100% 100% no-repeat,
        linear-gradient(145deg, #0a0706, #02070a) !important;
    box-shadow:
        0 34px 64px rgba(0, 0, 0, .76),
        0 0 34px rgba(92, 246, 213, .10) !important;
}

.modes-clean-header,
.run-setup-clean-header,
.hero-upgrades-clean-header,
.skins-clean-header {
    padding: 0 0 clamp(14px, 1.6vw, 20px) !important;
    background: transparent !important;
}

.modes-clean-header::after,
.run-setup-clean-header::after,
.hero-upgrades-clean-header::after,
.skins-clean-header::after {
    left: 30% !important;
    right: 30% !important;
    bottom: -12px !important;
    height: 42px !important;
    background: var(--omen-window-divider) center / contain no-repeat !important;
    opacity: .82 !important;
}

.modes-clean-header .close-button,
.run-setup-clean-header .close-button,
.hero-upgrades-clean-header .close-button,
.skins-clean-header .close-button {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    background: var(--omen-window-close) center / contain no-repeat !important;
    box-shadow: none !important;
}

.modes-clean-list,
.run-setup-clean-content,
.hero-upgrades-clean-content,
.skins-clean-content {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .64), rgba(0, 0, 0, .72)),
        var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
}

.run-setup-clean-card,
.run-setup-clean-tool-card,
.hero-upgrades-clean-summary,
.hero-upgrades-clean-tree,
.skin-hero-section,
.skins-clean-description {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .18)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
    box-shadow:
        0 12px 28px rgba(0, 0, 0, .34),
        0 0 16px rgba(92, 246, 213, .06) !important;
}

.run-setup-clean-hero-card {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .18), rgba(0, 0, 0, .28)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
}

.skin-button {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .06), rgba(0, 0, 0, .16)),
        var(--omen-window-card-hero) center / 100% 100% no-repeat !important;
}

.run-setup-clean-difficulty-card,
.hero-upgrade-node,
.hero-upgrade-point-grid span,
.hero-upgrade-bonus-list span {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .06), rgba(0, 0, 0, .18)),
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
}

.run-setup-clean-card:hover,
.run-setup-clean-tool-card:hover,
.run-setup-clean-card.selected,
.hero-upgrade-node:hover:not(:disabled),
.hero-upgrade-node.is-maxed,
.skin-button:hover,
.skin-button.selected {
    filter: brightness(1.12) saturate(1.08) !important;
    box-shadow:
        0 15px 30px rgba(0, 0, 0, .46),
        0 0 18px rgba(215, 189, 130, .12),
        0 0 22px rgba(92, 246, 213, .10) !important;
}

.run-setup-clean-card:hover,
.run-setup-clean-card.selected,
.run-setup-clean-tool-card:hover {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .16), rgba(0, 0, 0, .26)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
}

.run-setup-clean-hero-card:hover,
.run-setup-clean-hero-card.selected {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .18), rgba(0, 0, 0, .28)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
}

.run-setup-clean-difficulty-card:hover,
.run-setup-clean-difficulty-card.selected,
.hero-upgrade-node:hover:not(:disabled),
.hero-upgrade-node.is-maxed {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .20)),
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
}

.skin-button:hover,
.skin-button.selected {
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .20)),
        var(--omen-window-card-hero) center / 100% 100% no-repeat !important;
}

.run-setup-clean-card.selected::after {
    background: var(--omen-window-selected) center / contain no-repeat !important;
}

.run-setup-clean-footer .run-setup-primary,
.run-setup-clean-footer .run-setup-secondary,
.hero-upgrades-clean-actions .run-setup-secondary,
.hero-upgrade-tab,
.hero-upgrade-reset {
    min-height: 58px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        var(--omen-window-button-secondary) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
}

.run-setup-clean-footer .run-setup-primary {
    background-image: var(--omen-window-button-primary) !important;
}

.run-area-step-overlay .run-setup-clean-content {
    gap: 12px !important;
    padding: 18px 22px 14px !important;
}

.run-area-step-overlay .run-setup-clean-section h3 {
    margin-bottom: 8px !important;
}

.run-area-step-overlay .run-setup-clean-area-grid {
    gap: 11px !important;
}

.run-area-step-overlay .run-setup-clean-area-card {
    min-height: 126px !important;
    padding: 15px 18px !important;
}

.run-area-step-overlay .run-setup-clean-difficulty-card {
    min-height: 88px !important;
    padding: 14px 16px !important;
}

.run-area-step-overlay .run-setup-clean-difficulty-card p {
    display: none !important;
}

.hero-upgrades-clean-layout {
    gap: 12px !important;
    grid-template-columns: minmax(230px, 280px) minmax(0, 1fr) !important;
}

.hero-upgrades-clean-summary {
    gap: 9px !important;
    padding: 14px !important;
}

.hero-upgrades-clean-portrait,
.hero-upgrades-clean-portrait .run-hero-preview-canvas {
    width: 92px !important;
    height: 92px !important;
}

.hero-upgrades-clean-summary p,
.hero-upgrade-note {
    font-size: .86rem !important;
    line-height: 1.3 !important;
}

.hero-upgrade-note {
    display: none !important;
}

.hero-upgrade-point-grid {
    gap: 6px !important;
}

.hero-upgrade-point-grid span {
    min-height: 62px !important;
    padding: 8px !important;
}

.hero-upgrade-point-grid strong {
    font-size: 1.08rem !important;
}

.hero-upgrade-point-grid small {
    font-size: .66rem !important;
}

.hero-upgrades-clean-bonuses {
    gap: 6px !important;
}

.hero-upgrade-actions.hero-upgrades-clean-actions {
    gap: 6px !important;
    margin-top: 0 !important;
}

.hero-upgrade-actions.hero-upgrades-clean-actions .run-setup-secondary {
    min-height: 42px !important;
    font-size: .72rem !important;
    line-height: 1.05 !important;
}

@media (orientation: portrait) {
    .modes-clean-modal,
    .run-setup-clean-modal,
    .hero-upgrades-clean-modal,
    .skins-clean-panel {
        padding: 20px 16px 16px !important;
        background-image: var(--omen-window-modal-portrait), linear-gradient(145deg, #0a0706, #02070a) !important;
    }

    .modes-clean-header::after,
    .run-setup-clean-header::after,
    .hero-upgrades-clean-header::after,
    .skins-clean-header::after {
        left: 20% !important;
        right: 20% !important;
    }

    .run-setup-clean-content,
    .hero-upgrades-clean-content,
    .skins-clean-content {
        margin: 0 !important;
        background:
            linear-gradient(145deg, rgba(0, 0, 0, .70), rgba(0, 0, 0, .78)),
            var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
    }

    .modes-clean-header h2,
    .run-setup-clean-header h2,
    .hero-upgrades-clean-header h2,
    .skins-clean-header h2 {
        font-size: clamp(1.52rem, 8.4vw, 2.25rem) !important;
        line-height: .94 !important;
    }

    .hero-upgrades-clean-content {
        display: block !important;
        overflow-y: auto !important;
    }

    .hero-upgrades-clean-layout {
        display: block !important;
        overflow: visible !important;
    }

    .hero-upgrades-clean-summary {
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
        gap: 10px 14px !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 16px !important;
        background:
            linear-gradient(145deg, rgba(0, 0, 0, .64), rgba(0, 0, 0, .74)),
            var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
    }

    .hero-upgrades-clean-summary > p,
    .hero-upgrades-clean-point-grid,
    .hero-upgrades-clean-bonuses,
    .hero-upgrades-clean-actions,
    .hero-upgrade-note {
        grid-column: 1 / -1 !important;
    }

    .hero-upgrades-clean-actions {
        margin-top: 4px !important;
    }

    .hero-upgrade-actions.hero-upgrades-clean-actions .run-setup-secondary {
        min-height: 46px !important;
    }

    .hero-upgrades-clean-tree {
        margin-top: 12px !important;
        min-height: 0 !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
    }
}

/* Clean hub windows: settings, leaderboard, achievements, and bestiary. */
.leaderboard-clean-overlay,
.achievements-clean-overlay,
.bestiary-clean-overlay,
.settings-clean-container {
    background:
        linear-gradient(180deg, rgba(1, 3, 7, .94), rgba(1, 8, 14, .96)),
        radial-gradient(circle at 50% 18%, rgba(92, 246, 213, .13), transparent 42%),
        var(--omen-ui-bg-landscape) center / cover no-repeat,
        #030509 !important;
}

.leaderboard-clean-overlay::before,
.achievements-clean-overlay::before,
.bestiary-clean-overlay::before,
.settings-clean-container::before {
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/overlay_vignette_landscape.webp") center / cover no-repeat,
        radial-gradient(circle at 20% 24%, rgba(92, 246, 213, .12), transparent 24%),
        radial-gradient(circle at 82% 72%, rgba(155, 32, 29, .10), transparent 28%) !important;
    opacity: .72 !important;
}

.leaderboard-clean-modal,
.achievements-clean-modal,
.bestiary-clean-modal,
.settings-clean-panel {
    width: min(1180px, calc(100vw - 34px)) !important;
    max-height: min(91vh, 860px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(12px, 1.4vw, 18px) !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: clamp(24px, 2.2vw, 34px) !important;
    background:
        var(--omen-window-modal-landscape) center / 100% 100% no-repeat,
        linear-gradient(145deg, #0a0706, #02070a) !important;
    box-shadow:
        0 34px 64px rgba(0, 0, 0, .76),
        0 0 34px rgba(92, 246, 213, .10) !important;
}

.settings-clean-panel {
    width: min(760px, calc(100vw - 34px)) !important;
}

.leaderboard-clean-header,
.achievements-clean-header,
.bestiary-clean-header,
.settings-clean-header {
    position: relative !important;
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    min-height: 0 !important;
    padding: 0 0 clamp(14px, 1.6vw, 20px) !important;
    border: 0 !important;
    background: transparent !important;
}

.settings-clean-header {
    justify-content: center !important;
    text-align: center !important;
}

.leaderboard-clean-header::after,
.achievements-clean-header::after,
.bestiary-clean-header::after,
.settings-clean-header::after {
    content: "" !important;
    position: absolute !important;
    left: 30% !important;
    right: 30% !important;
    bottom: -12px !important;
    height: 42px !important;
    background: var(--omen-window-divider) center / contain no-repeat !important;
    opacity: .82 !important;
    pointer-events: none !important;
}

.leaderboard-clean-header h2,
.achievements-clean-header h2,
.bestiary-clean-header h2,
.settings-clean-header h1 {
    margin: 0 !important;
    color: #f3dfb2 !important;
    font-size: clamp(1.8rem, 4.1vw, 3.35rem) !important;
    line-height: .95 !important;
    text-shadow:
        0 2px 0 rgba(14, 8, 8, .95),
        0 0 18px rgba(215, 189, 130, .28),
        0 0 28px rgba(92, 246, 213, .14) !important;
}

.leaderboard-clean-header p,
.achievements-clean-header p,
.bestiary-clean-header p,
.settings-clean-header p {
    max-width: 780px !important;
    margin: 8px 0 0 !important;
    color: rgba(230, 208, 164, .76) !important;
    font-size: clamp(.9rem, 1.2vw, 1rem) !important;
    line-height: 1.35 !important;
}

.leaderboard-clean-header .close-button,
.achievements-clean-header .close-button,
.bestiary-clean-header .close-button {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    background: var(--omen-window-close) center / contain no-repeat !important;
    box-shadow: none !important;
}

.leaderboard-clean-content,
.achievements-clean-content,
.bestiary-clean-content,
.settings-clean-menu {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: clamp(18px, 2vw, 24px) !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .64), rgba(0, 0, 0, .72)),
        var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
    scrollbar-color: rgba(215, 189, 130, .58) rgba(6, 8, 10, .50) !important;
    scrollbar-width: thin !important;
}

.settings-clean-menu {
    display: grid !important;
    gap: 12px !important;
    overflow: visible !important;
}

.leaderboard-scoring-note,
.achievements-note,
.bestiary-note {
    border: 0 !important;
    border-radius: 0 !important;
    padding: 14px 18px !important;
    color: rgba(230, 208, 164, .82) !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .10), rgba(0, 0, 0, .22)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
}

.leaderboard-mode-grid,
.achievement-grid,
.bestiary-grid {
    gap: clamp(12px, 1.4vw, 18px) !important;
}

.leaderboard-mode-card,
.leaderboard-best-block,
.leaderboard-player-result,
.leaderboard-wave-tools,
.achievement-card,
.bestiary-card,
.bestiary-card-class-group,
.settings-option {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .06), rgba(0, 0, 0, .18)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
    box-shadow:
        0 12px 28px rgba(0, 0, 0, .34),
        0 0 16px rgba(92, 246, 213, .06) !important;
}

.achievement-card,
.bestiary-card {
    min-height: 0 !important;
}

.achievement-card.is-unlocked,
.bestiary-card:hover,
.leaderboard-mode-card:hover {
    filter: brightness(1.08) saturate(1.06) !important;
    box-shadow:
        0 15px 30px rgba(0, 0, 0, .46),
        0 0 18px rgba(215, 189, 130, .12),
        0 0 22px rgba(92, 246, 213, .10) !important;
}

.leaderboard-row {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .18)),
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
}

.leaderboard-row-head {
    color: #f3dfb2 !important;
}

.leaderboard-wave-tools {
    border: 0 !important;
    border-radius: 0 !important;
    margin-bottom: 14px !important;
}

.leaderboard-wave-tools select {
    border: 0 !important;
    border-radius: 0 !important;
    color: #f3dfb2 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .24), rgba(0, 0, 0, .34)),
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
}

.leaderboard-tabs,
.bestiary-tabs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(8px, 1vw, 12px) !important;
    margin: 2px 0 4px !important;
}

.leaderboard-tab,
.bestiary-tab {
    min-height: 58px !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #e6d0a4 !important;
    background:
        var(--omen-window-button-secondary) center / 100% 100% no-repeat !important;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .86) !important;
    filter: drop-shadow(0 10px 16px rgba(0, 0, 0, .42)) !important;
    cursor: pointer !important;
}

.leaderboard-tab strong,
.bestiary-tab strong,
.bestiary-tab small {
    display: block !important;
}

.bestiary-tab small {
    margin-top: 2px !important;
    color: rgba(92, 246, 213, .78) !important;
    font-size: .74rem !important;
    letter-spacing: .08em !important;
}

.leaderboard-tab.is-active,
.leaderboard-tab:hover,
.bestiary-tab.is-active,
.bestiary-tab:hover {
    color: #fff2d6 !important;
    background:
        var(--omen-window-button-primary) center / 100% 100% no-repeat !important;
    filter:
        drop-shadow(0 12px 18px rgba(0, 0, 0, .46))
        drop-shadow(0 0 18px rgba(92, 246, 213, .16)) !important;
}

.leaderboard-tab-panels,
.bestiary-tab-panels {
    min-height: 0 !important;
}

.leaderboard-tab-panel:not(.is-active),
.bestiary-tab-panel:not(.is-active) {
    display: none !important;
}

.bestiary-section {
    margin: 0 !important;
    padding: 0 !important;
}

.bestiary-section-title {
    margin: 0 0 14px !important;
}

.bestiary-card-icon.has-card-art-preview {
    background: transparent !important;
}

.bestiary-card-icon.has-card-art-preview img {
    filter: drop-shadow(0 10px 18px rgba(0, 0, 0, .42)) !important;
}

.achievement-section {
    margin: 18px 0 0 !important;
}

.achievement-seal {
    background:
        radial-gradient(circle at 50% 45%, rgba(92, 246, 213, .18), rgba(0, 0, 0, .42)),
        var(--omen-window-selected) center / contain no-repeat !important;
}

.settings-option {
    min-height: 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 14px 18px !important;
    color: #f0dcad !important;
}

.settings-clean-footer {
    flex: 0 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    padding-top: 4px !important;
}

.settings-clean-footer .menu-button {
    min-width: min(280px, 70vw) !important;
    min-height: 58px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        var(--omen-window-button-secondary) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
}

body.clean-window-open #uiContainer > .main-menu-clean {
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (orientation: portrait) {
    .leaderboard-clean-overlay,
    .achievements-clean-overlay,
    .bestiary-clean-overlay,
    .settings-clean-container {
        background:
            linear-gradient(180deg, rgba(1, 3, 7, .95), rgba(1, 8, 14, .98)),
            radial-gradient(circle at 50% 18%, rgba(92, 246, 213, .12), transparent 42%),
            var(--omen-ui-bg-portrait) center / cover no-repeat,
            #030509 !important;
    }

    .leaderboard-clean-overlay::before,
    .achievements-clean-overlay::before,
    .bestiary-clean-overlay::before,
    .settings-clean-container::before {
        background:
            url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/overlay_vignette_portrait.webp") center / cover no-repeat,
            radial-gradient(circle at 20% 24%, rgba(92, 246, 213, .10), transparent 24%),
            radial-gradient(circle at 82% 72%, rgba(155, 32, 29, .09), transparent 28%) !important;
    }

    .leaderboard-clean-modal,
    .achievements-clean-modal,
    .bestiary-clean-modal,
    .settings-clean-panel {
        width: min(94vw, 760px) !important;
        max-height: 92vh !important;
        padding: 20px 16px 16px !important;
        background:
            var(--omen-window-modal-portrait) center / 100% 100% no-repeat,
            linear-gradient(145deg, #0a0706, #02070a) !important;
    }

    .leaderboard-clean-header,
    .achievements-clean-header,
    .bestiary-clean-header {
        gap: 12px !important;
    }

    .leaderboard-clean-header::after,
    .achievements-clean-header::after,
    .bestiary-clean-header::after,
    .settings-clean-header::after {
        left: 20% !important;
        right: 20% !important;
    }

    .leaderboard-clean-header h2,
    .achievements-clean-header h2,
    .bestiary-clean-header h2,
    .settings-clean-header h1 {
        font-size: clamp(1.45rem, 7.2vw, 2.35rem) !important;
    }

    .leaderboard-clean-header p,
    .achievements-clean-header p,
    .bestiary-clean-header p,
    .settings-clean-header p {
        display: none !important;
    }

    .leaderboard-clean-content,
    .achievements-clean-content,
    .bestiary-clean-content,
    .settings-clean-menu {
        padding: 16px 14px !important;
        background:
            linear-gradient(145deg, rgba(0, 0, 0, .70), rgba(0, 0, 0, .78)),
            var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
    }

    .leaderboard-tabs,
    .bestiary-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    .leaderboard-tab,
    .bestiary-tab {
        min-height: 52px !important;
        font-size: .78rem !important;
        letter-spacing: .025em !important;
    }

    .bestiary-tab small {
        font-size: .66rem !important;
    }

    .leaderboard-mode-grid,
    .achievement-grid,
    .bestiary-grid {
        grid-template-columns: 1fr !important;
    }

    .settings-option {
        min-height: 58px !important;
        padding: 12px 14px !important;
        gap: 12px !important;
    }
}

/* Final clean pass for the remaining in-game windows and HUD. */
.escape-clean-overlay,
.result-clean-overlay,
.stats-clean-overlay,
.hub-clean-overlay {
    background:
        linear-gradient(180deg, rgba(1, 3, 7, .80), rgba(1, 8, 14, .88)),
        radial-gradient(circle at 50% 18%, rgba(92, 246, 213, .14), transparent 42%),
        var(--omen-ui-bg-landscape) center / cover no-repeat,
        #030509 !important;
    backdrop-filter: blur(7px) !important;
}

.escape-clean-overlay::before,
.result-clean-overlay::before,
.stats-clean-overlay::before,
.hub-clean-overlay::before {
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/decor/drawn/overlay_vignette_landscape.webp") center / cover no-repeat,
        radial-gradient(circle at 18% 22%, rgba(92, 246, 213, .10), transparent 24%),
        radial-gradient(circle at 82% 70%, rgba(155, 32, 29, .10), transparent 28%) !important;
    opacity: .64 !important;
}

.escape-clean-modal,
.result-clean-modal,
.stats-clean-window,
.hub-clean-modal {
    border: 0 !important;
    border-radius: 0 !important;
    padding: clamp(22px, 2.1vw, 34px) !important;
    background:
        var(--omen-window-modal-landscape) center / 100% 100% no-repeat,
        linear-gradient(145deg, #0a0706, #02070a) !important;
    box-shadow:
        0 34px 64px rgba(0, 0, 0, .76),
        0 0 34px rgba(92, 246, 213, .10) !important;
}

.escape-clean-modal {
    width: min(680px, calc(100vw - 34px)) !important;
    max-height: min(91vh, 820px) !important;
}

.stats-clean-window,
.result-clean-modal {
    width: min(1060px, calc(100vw - 34px)) !important;
    max-height: min(91vh, 840px) !important;
    overflow: hidden !important;
}

.hub-clean-modal {
    width: min(720px, calc(100vw - 34px)) !important;
}

.stats-clean-window,
.hub-clean-modal {
    z-index: 2600 !important;
    opacity: 1 !important;
    color: #f3dfb2 !important;
    filter: brightness(1.18) contrast(1.08) !important;
}

.escape-clean-header,
.stats-clean-header,
.hub-clean-header,
.result-clean-crest {
    position: relative !important;
    padding: 0 0 clamp(14px, 1.6vw, 20px) !important;
    border: 0 !important;
    background: transparent !important;
}

.escape-clean-header::after,
.stats-clean-header::after,
.hub-clean-header::after,
.result-clean-crest::after {
    content: "" !important;
    position: absolute !important;
    left: 26% !important;
    right: 26% !important;
    bottom: -12px !important;
    height: 42px !important;
    background: var(--omen-window-divider) center / contain no-repeat !important;
    opacity: .82 !important;
    pointer-events: none !important;
}

.escape-clean-header h2,
.stats-clean-header h3,
.hub-clean-header h2,
.result-clean-crest .game-result-title {
    margin: 0 !important;
    color: #f3dfb2 !important;
    font-size: clamp(1.72rem, 4.3vw, 3.25rem) !important;
    line-height: .95 !important;
    text-shadow:
        0 2px 0 rgba(14, 8, 8, .95),
        0 0 18px rgba(215, 189, 130, .28),
        0 0 28px rgba(92, 246, 213, .14) !important;
}

.escape-clean-header p,
.hub-clean-header p,
.hub-clean-body p,
.result-subtitle {
    color: rgba(230, 208, 164, .76) !important;
    line-height: 1.35 !important;
}

.escape-clean-header .close-button,
.stats-clean-header .close-button {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    background: var(--omen-window-close) center / contain no-repeat !important;
    box-shadow: none !important;
}

.escape-clean-body,
.stats-clean-content,
.hub-clean-body {
    max-height: calc(91vh - 150px) !important;
    min-height: 0 !important;
    overflow: auto !important;
    margin-top: 4px !important;
    padding: clamp(16px, 1.8vw, 22px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .64), rgba(0, 0, 0, .72)),
        var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
    scrollbar-color: rgba(215, 189, 130, .58) rgba(6, 8, 10, .50) !important;
    scrollbar-width: thin !important;
}

.stats-clean-content {
    max-height: calc(91vh - 130px) !important;
    background:
        linear-gradient(145deg, rgba(2, 5, 7, .82), rgba(0, 0, 0, .90)),
        var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
}

.hub-clean-body {
    background:
        linear-gradient(145deg, rgba(2, 5, 7, .80), rgba(0, 0, 0, .88)),
        var(--omen-window-content-panel) center / 100% 100% no-repeat !important;
}

.escape-clean-section,
.escape-setting-row,
.stats-section,
.hero-summary-card,
.result-section,
.result-card-block,
.result-stat-card,
.card-summary-item,
.hub-clean-body .run-setup-primary,
.wave-progress-info {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .18)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
    box-shadow:
        0 12px 28px rgba(0, 0, 0, .34),
        0 0 16px rgba(92, 246, 213, .06) !important;
}

.result-stat-card,
.stat-row,
.hero-summary-metrics span,
.escape-shop-placeholder {
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .18)),
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
}

.escape-setting-row input[type="checkbox"] {
    accent-color: #5cf6d5 !important;
}

.escape-clean-actions,
.result-clean-buttons {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
    gap: 10px !important;
}

.escape-action,
.game-result-button,
.hub-clean-body .run-setup-primary {
    min-height: 58px !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #f3dfb2 !important;
    background:
        var(--omen-window-button-secondary) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .86) !important;
}

.escape-action.primary,
.game-result-button.restart-button,
.hub-clean-body .run-setup-primary {
    color: #fff2d6 !important;
    background:
        var(--omen-window-button-primary) center / 100% 100% no-repeat !important;
}

.escape-action:hover,
.game-result-button:hover,
.hub-clean-body .run-setup-primary:hover {
    transform: translateY(-2px) !important;
    filter:
        drop-shadow(0 12px 18px rgba(0, 0, 0, .44))
        drop-shadow(0 0 18px rgba(92, 246, 213, .14)) !important;
}

.result-clean-modal {
    overflow-y: auto !important;
    scrollbar-color: rgba(215, 189, 130, .58) rgba(6, 8, 10, .50) !important;
    scrollbar-width: thin !important;
}

.result-clean-crest {
    text-align: center !important;
}

.result-run-badges span {
    border: 0 !important;
    border-radius: 0 !important;
    padding: 8px 14px !important;
    background:
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
    color: #5cf6d5 !important;
}

.stats-toggle-button {
    width: 52px !important;
    height: 52px !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: transparent !important;
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_heroes.webp") center / 58% 58% no-repeat,
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
    filter:
        drop-shadow(0 10px 18px rgba(0, 0, 0, .45))
        drop-shadow(0 0 12px rgba(92, 246, 213, .16)) !important;
}

.stats-toggle-button:hover {
    transform: translateY(-2px) !important;
    filter:
        drop-shadow(0 12px 20px rgba(0, 0, 0, .48))
        drop-shadow(0 0 18px rgba(92, 246, 213, .24)) !important;
}

.card-selection-clean-container {
    background: transparent !important;
    backdrop-filter: none !important;
}

.card-selection-clean-container .card-overlay {
    background:
        radial-gradient(circle at 50% 48%, rgba(0, 0, 0, .26), transparent 42%),
        rgba(0, 0, 0, .18) !important;
    backdrop-filter: none !important;
}

.card-clean-modal {
    width: min(1040px, calc(100vw - 24px)) !important;
    max-height: min(94vh, 840px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    overflow: visible !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.card-clean-title {
    margin: 0 !important;
    color: #f3dfb2 !important;
    font-size: clamp(1.65rem, 4.4vw, 3.2rem) !important;
    line-height: .95 !important;
    text-shadow:
        0 2px 0 rgba(14, 8, 8, .95),
        0 0 18px rgba(215, 189, 130, .32),
        0 0 28px rgba(92, 246, 213, .18) !important;
}

.card-clean-subtitle {
    width: fit-content !important;
    max-width: min(760px, calc(100vw - 32px)) !important;
    margin: 0 auto 4px !important;
    padding: 10px 22px !important;
    color: #5cf6d5 !important;
    background:
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
}

.card-clean-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(190px, 1fr)) !important;
    gap: clamp(10px, 1.5vw, 18px) !important;
    margin: 0 !important;
}

.card-clean-grid .card {
    min-height: clamp(300px, 48vh, 430px) !important;
    padding: clamp(16px, 1.4vw, 22px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background:
        linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .22)),
        var(--omen-window-card-hero) center / 100% 100% no-repeat !important;
    box-shadow:
        0 16px 30px rgba(0, 0, 0, .44),
        0 0 18px rgba(92, 246, 213, .08) !important;
}

.card-clean-grid .card.has-card-art {
    width: min(24vw, 260px) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    aspect-ratio: 2 / 3 !important;
    justify-self: center !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: drop-shadow(0 18px 26px rgba(0, 0, 0, .58)) !important;
}

.card-clean-grid .card-art-image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    pointer-events: none !important;
    filter: drop-shadow(0 16px 28px rgba(0, 0, 0, .45)) !important;
}

.card-clean-grid .card:hover,
.card-clean-grid .card.selected {
    transform: translateY(-4px) !important;
    filter: brightness(1.08) saturate(1.05) !important;
    box-shadow:
        0 20px 36px rgba(0, 0, 0, .52),
        0 0 24px rgba(92, 246, 213, .18) !important;
}

.card-clean-grid .card.selected::after {
    content: "" !important;
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    width: 54px !important;
    height: 54px !important;
    background: var(--omen-window-selected) center / contain no-repeat !important;
    pointer-events: none !important;
}

.card-clean-grid .card-checkmark {
    display: none !important;
}

.card-clean-grid .card-number,
.card-clean-grid .card-rarity,
.card-clean-grid .card-type-icon,
.card-clean-grid .card-name,
.card-clean-grid .card-description {
    z-index: 2 !important;
}

.card-clean-buttons {
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 0 !important;
}

.card-clean-buttons .card-button {
    min-width: min(280px, 42vw) !important;
    min-height: 58px !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #f3dfb2 !important;
    background:
        var(--omen-window-button-secondary) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
}

.card-clean-buttons .confirm-button:not(.disabled) {
    color: #fff2d6 !important;
    background:
        var(--omen-window-button-primary) center / 100% 100% no-repeat !important;
}

.card-clean-buttons .card-button.disabled {
    opacity: .56 !important;
    filter: grayscale(.35) brightness(.72) !important;
}

.hud-clean-container {
    width: min(184px, calc(100vw - 24px)) !important;
    padding: 8px 9px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background:
        linear-gradient(145deg, rgba(1, 7, 11, .72), rgba(1, 4, 7, .58)) !important;
    box-shadow:
        0 10px 22px rgba(0, 0, 0, .26),
        inset 0 0 0 1px rgba(92, 246, 213, .13) !important;
    backdrop-filter: blur(5px) !important;
}

.hud-clean-container .hud-label {
    color: rgba(92, 246, 213, .78) !important;
    font-size: .5rem !important;
    letter-spacing: .08em !important;
}

.hud-clean-container .hud-value {
    color: #f3dfb2 !important;
    font-size: .7rem !important;
}

.hud-clean-container .hud-row {
    min-height: 19px !important;
    padding: 3px 0 !important;
    border-bottom-color: rgba(92, 246, 213, .06) !important;
}

.hud-clean-container .hud-health-card {
    padding-bottom: 5px !important;
    border-bottom-color: rgba(92, 246, 213, .10) !important;
}

.hud-clean-container .health-bar {
    height: 4px !important;
    background: rgba(0, 0, 0, .42) !important;
}

.experience-clean-container {
    width: min(280px, calc(100vw - 80px)) !important;
    padding: 2px !important;
    border: 0 !important;
    background: rgba(0, 0, 0, .34) !important;
    box-shadow:
        0 8px 20px rgba(0, 0, 0, .24),
        inset 0 0 0 1px rgba(123, 237, 159, .18) !important;
}

.experience-clean-container .experience-bottom-track {
    height: 5px !important;
}

/* Combat HUD final pass: compact, readable and touch-friendly. */
.hud-clean-container {
    top: max(10px, env(safe-area-inset-top)) !important;
    left: max(10px, env(safe-area-inset-left)) !important;
    width: min(320px, calc(100vw - 124px)) !important;
    padding: 10px 12px 9px !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background:
        linear-gradient(145deg, rgba(0, 7, 10, .88), rgba(0, 0, 0, .74)),
        var(--omen-window-card-wide) center / 100% 100% no-repeat !important;
    box-shadow:
        0 14px 26px rgba(0, 0, 0, .36),
        0 0 18px rgba(92, 246, 213, .08) !important;
    backdrop-filter: blur(4px) !important;
}

.hud-clean-container::before,
.hud-clean-container::after {
    content: none !important;
    display: none !important;
}

.hud-clean-container .hud-health-card {
    padding: 0 0 7px !important;
    border-bottom: 1px solid rgba(92, 246, 213, .15) !important;
}

.hud-clean-container .hud-health-top {
    margin-bottom: 6px !important;
}

.hud-clean-container .hud-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 4px 8px !important;
    margin-top: 7px !important;
}

.hud-clean-container .hud-row {
    display: block !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.hud-clean-container .hud-wave-row {
    grid-column: span 3 !important;
    display: none !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    padding-top: 5px !important;
    border-top: 1px solid rgba(215, 189, 130, .15) !important;
}

.hud-clean-container .hud-wave-row[style*="grid"] {
    display: grid !important;
}

.hud-clean-container .hud-label {
    display: block !important;
    margin-bottom: 2px !important;
    color: rgba(92, 246, 213, .78) !important;
    font-size: .47rem !important;
    letter-spacing: .11em !important;
}

.hud-clean-container .hud-value {
    display: block !important;
    color: #f3dfb2 !important;
    font-size: .84rem !important;
    line-height: 1 !important;
    text-align: left !important;
}

.hud-clean-container .hud-health-card .hud-value {
    text-align: right !important;
}

.hud-clean-container .health-bar {
    height: 5px !important;
    background: rgba(0, 0, 0, .48) !important;
}

.hud-clean-container .health-fill {
    background:
        linear-gradient(90deg, #df3050 0%, #e9b15b 52%, #5cf6d5 100%) !important;
    box-shadow: 0 0 12px rgba(92, 246, 213, .30) !important;
}

.hud-action-cluster {
    position: fixed !important;
    top: max(12px, env(safe-area-inset-top)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    z-index: 620 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    pointer-events: auto !important;
}

.hud-action-button,
.hud-action-cluster .stats-toggle-button {
    position: static !important;
    top: auto !important;
    right: auto !important;
    display: grid !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    opacity: 1 !important;
    cursor: pointer !important;
    background:
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
    filter:
        drop-shadow(0 10px 18px rgba(0, 0, 0, .45))
        drop-shadow(0 0 12px rgba(92, 246, 213, .12)) !important;
    transition: transform .16s ease, filter .16s ease !important;
}

.hud-action-button:hover,
.hud-action-cluster .stats-toggle-button:hover {
    transform: translateY(-2px) !important;
    filter:
        drop-shadow(0 13px 22px rgba(0, 0, 0, .52))
        drop-shadow(0 0 18px rgba(92, 246, 213, .22)) !important;
}

.hud-action-button:active,
.hud-action-cluster .stats-toggle-button:active {
    transform: translateY(1px) scale(.96) !important;
}

.hud-pause-button span {
    width: 17px !important;
    height: 19px !important;
    background:
        linear-gradient(90deg, #f3dfb2 0 34%, transparent 34% 66%, #f3dfb2 66% 100%) !important;
    filter: drop-shadow(0 0 8px rgba(243, 223, 178, .24)) !important;
}

.hud-action-cluster .stats-toggle-button {
    background:
        url("../assets/sprites/ui/main_menu/eldritch_bestiary_desk/icons/drawn/glyphs/128/icon_heroes.webp") center / 54% 54% no-repeat,
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
}

.hud-action-cluster .stats-toggle-button span {
    display: none !important;
}

.experience-clean-container {
    width: min(300px, calc(100vw - 112px)) !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    padding: 2px !important;
    border-radius: 999px !important;
    background: rgba(0, 0, 0, .40) !important;
}

.experience-clean-container .experience-bottom-track {
    height: 5px !important;
    background: rgba(2, 16, 9, .86) !important;
}

.experience-clean-container .experience-bottom-fill {
    background: linear-gradient(90deg, #1fbf68 0%, #7bed9f 100%) !important;
    box-shadow: 0 0 14px rgba(123, 237, 159, .45) !important;
}

#omenReportButton {
    right: max(12px, env(safe-area-inset-right)) !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    padding: 7px 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(145deg, rgba(0, 7, 10, .62), rgba(0, 0, 0, .70)),
        var(--omen-window-card-compact) center / 100% 100% no-repeat !important;
    color: rgba(243, 223, 178, .84) !important;
    font-family: var(--omen-font-ui), var(--omen-font-body), serif !important;
    font-size: 10px !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
    filter: drop-shadow(0 8px 14px rgba(0, 0, 0, .36)) !important;
}

@media (orientation: portrait) {
    .escape-clean-overlay,
    .result-clean-overlay,
    .stats-clean-overlay,
    .hub-clean-overlay {
        background:
            linear-gradient(180deg, rgba(1, 3, 7, .82), rgba(1, 8, 14, .90)),
            radial-gradient(circle at 50% 18%, rgba(92, 246, 213, .12), transparent 42%),
            var(--omen-ui-bg-portrait) center / cover no-repeat,
            #030509 !important;
    }

    .escape-clean-modal,
    .result-clean-modal,
    .stats-clean-window,
    .hub-clean-modal {
        width: min(94vw, 760px) !important;
        max-height: 92vh !important;
        padding: 20px 16px 16px !important;
        background:
            var(--omen-window-modal-portrait) center / 100% 100% no-repeat,
            linear-gradient(145deg, #0a0706, #02070a) !important;
    }

    .escape-clean-header::after,
    .stats-clean-header::after,
    .hub-clean-header::after,
    .result-clean-crest::after {
        left: 20% !important;
        right: 20% !important;
    }

    .escape-clean-header h2,
    .stats-clean-header h3,
    .hub-clean-header h2,
    .result-clean-crest .game-result-title {
        font-size: clamp(1.45rem, 7.2vw, 2.35rem) !important;
    }

    .card-clean-modal {
        width: min(96vw, 520px) !important;
        height: 100dvh !important;
        max-height: none !important;
        justify-content: flex-start !important;
        overflow: hidden !important;
        padding: max(12px, env(safe-area-inset-top)) 0 max(10px, env(safe-area-inset-bottom)) !important;
        scrollbar-width: none !important;
    }

    .card-clean-title {
        padding: 0 10px !important;
        font-size: clamp(1.45rem, 8vw, 2.15rem) !important;
        line-height: 1.02 !important;
    }

    .card-clean-subtitle {
        max-width: calc(100vw - 36px) !important;
        padding: 8px 18px !important;
        font-size: .82rem !important;
    }

    .card-clean-grid {
        display: flex !important;
        grid-template-columns: none !important;
        flex: 1 1 auto !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 14px !important;
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 8px max(18px, calc((100vw - min(76vw, 270px)) / 2)) 14px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    .card-clean-grid::-webkit-scrollbar {
        display: none !important;
    }

    .card-clean-grid .card,
    .card-clean-grid .card.has-card-art {
        flex: 0 0 min(76vw, 270px) !important;
        width: min(76vw, 270px) !important;
        min-height: 0 !important;
        scroll-snap-align: center !important;
    }

    .card-clean-buttons {
        position: sticky !important;
        bottom: 0 !important;
        flex: 0 0 auto !important;
        width: min(96vw, 430px) !important;
        margin: 0 auto !important;
        padding: 8px 10px 0 !important;
        background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .50)) !important;
    }

    .card-clean-buttons .card-button {
        min-width: 0 !important;
        flex: 1 1 0 !important;
        font-size: .76rem !important;
    }

    .hud-clean-container {
        width: min(196px, calc(100vw - 126px)) !important;
        padding: 8px 9px !important;
    }

    .hud-clean-container .hud-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .hud-clean-container .hud-wave-row {
        grid-column: span 2 !important;
    }

    .hud-action-cluster {
        gap: 6px !important;
    }

    .hud-action-button,
    .hud-action-cluster .stats-toggle-button {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
    }

    .experience-clean-container {
        width: min(300px, calc(100vw - 86px)) !important;
    }

    #omenReportButton {
        bottom: max(42px, calc(env(safe-area-inset-bottom) + 42px)) !important;
    }
}

/* Final neural button lock: this sits last so old window rules cannot repaint over the new sprites. */
.menu-container:not(.main-menu-container) .menu-button,
.run-setup-primary,
.run-setup-secondary,
.card-button,
.game-result-button,
.escape-action,
.settings-clean-footer .menu-button,
.hero-upgrade-reset,
.hero-upgrades-clean-actions .run-setup-secondary,
.hub-clean-body .run-setup-primary {
    box-sizing: border-box !important;
    display: inline-grid !important;
    place-items: center !important;
    min-height: clamp(50px, 6vh, 64px) !important;
    padding: 10px clamp(22px, 3vw, 38px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    color: #f3dfb2 !important;
    background: var(--omen-window-button-medium-secondary) center / 100% 100% no-repeat !important;
    box-shadow: none !important;
    line-height: 1.06 !important;
    text-align: center !important;
    text-wrap: balance;
    white-space: normal !important;
    overflow: visible !important;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .88), 0 0 10px rgba(92, 246, 213, .12) !important;
}

.run-setup-primary,
.confirm-button:not(.disabled),
.restart-button,
.escape-action.primary,
.game-result-button.restart-button,
.hub-clean-body .run-setup-primary {
    color: #fff2d6 !important;
    background: var(--omen-window-button-medium-primary) center / 100% 100% no-repeat !important;
}

.menu-container:not(.main-menu-container) .menu-button:hover,
.run-setup-secondary:hover,
.card-button:hover:not(.disabled),
.game-result-button:hover,
.escape-action:hover,
.settings-clean-footer .menu-button:hover,
.hero-upgrade-reset:hover,
.hero-upgrades-clean-actions .run-setup-secondary:hover {
    background: var(--omen-window-button-medium-secondary-hover) center / 100% 100% no-repeat !important;
    transform: translateY(-2px) !important;
    filter:
        drop-shadow(0 12px 18px rgba(0, 0, 0, .42))
        drop-shadow(0 0 16px rgba(92, 246, 213, .14)) !important;
}

.run-setup-primary:hover,
.confirm-button:hover:not(.disabled),
.restart-button:hover,
.escape-action.primary:hover,
.game-result-button.restart-button:hover,
.hub-clean-body .run-setup-primary:hover {
    background: var(--omen-window-button-medium-primary-hover) center / 100% 100% no-repeat !important;
}

.menu-container:not(.main-menu-container) .menu-button:active,
.run-setup-secondary:active,
.card-button:active:not(.disabled),
.game-result-button:active,
.escape-action:active,
.settings-clean-footer .menu-button:active,
.hero-upgrade-reset:active,
.hero-upgrades-clean-actions .run-setup-secondary:active {
    background: var(--omen-window-button-medium-secondary-pressed) center / 100% 100% no-repeat !important;
    transform: translateY(2px) scale(.985) !important;
}

.run-setup-primary:active,
.confirm-button:active:not(.disabled),
.restart-button:active,
.escape-action.primary:active,
.game-result-button.restart-button:active,
.hub-clean-body .run-setup-primary:active {
    background: var(--omen-window-button-medium-primary-pressed) center / 100% 100% no-repeat !important;
}

.modes-clean-card {
    min-height: clamp(84px, 11vh, 106px) !important;
    padding: clamp(12px, 1.3vw, 18px) clamp(22px, 2.4vw, 34px) !important;
    background: var(--omen-window-button-wide-secondary) center / 100% 100% no-repeat !important;
}

.modes-clean-card:hover,
.modes-clean-card.selected {
    background: var(--omen-window-button-wide-primary-hover) center / 100% 100% no-repeat !important;
}

.modes-clean-card:active {
    background: var(--omen-window-button-wide-primary-pressed) center / 100% 100% no-repeat !important;
}

.leaderboard-tab,
.bestiary-tab {
    box-sizing: border-box !important;
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
    min-height: clamp(50px, 6vh, 60px) !important;
    padding: 8px clamp(12px, 1.4vw, 20px) !important;
    background: var(--omen-window-button-tab-secondary) center / 100% 100% no-repeat !important;
    line-height: 1.05 !important;
    overflow: visible !important;
}

.leaderboard-tab:hover,
.leaderboard-tab.is-active,
.bestiary-tab:hover,
.bestiary-tab.is-active {
    background: var(--omen-window-button-tab-primary-hover) center / 100% 100% no-repeat !important;
}

.leaderboard-tab:active,
.bestiary-tab:active {
    background: var(--omen-window-button-tab-primary-pressed) center / 100% 100% no-repeat !important;
}

.hero-upgrade-tab {
    background: var(--omen-window-button-medium-secondary) center / 100% 100% no-repeat !important;
}

.hero-upgrade-tab:hover,
.hero-upgrade-tab.selected {
    background: var(--omen-window-button-medium-primary-hover) center / 100% 100% no-repeat !important;
}

.card-clean-buttons .card-button {
    min-width: min(300px, 43vw) !important;
}

.achievement-seal {
    box-sizing: border-box !important;
    overflow: visible !important;
    padding: clamp(2px, .35vw, 4px) !important;
    isolation: isolate !important;
}

.achievement-seal img {
    width: 96% !important;
    height: 96% !important;
    margin: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translateY(-8px) !important;
}

.achievement-result-icon {
    box-sizing: border-box !important;
    padding: 4px !important;
    object-position: center center !important;
}

@media (orientation: portrait) {
    .menu-container:not(.main-menu-container) .menu-button,
    .run-setup-primary,
    .run-setup-secondary,
    .card-button,
    .game-result-button,
    .escape-action,
    .settings-clean-footer .menu-button,
    .hero-upgrade-reset,
    .hero-upgrades-clean-actions .run-setup-secondary,
    .hub-clean-body .run-setup-primary {
        min-height: 50px !important;
        padding: 9px 16px !important;
        font-size: clamp(.72rem, 2.5vw, .86rem) !important;
    }

    .modes-clean-card {
        min-height: 76px !important;
        padding: 10px 18px !important;
    }

    .leaderboard-tab,
    .bestiary-tab {
        min-height: 48px !important;
        padding: 7px 8px !important;
    }

    .leaderboard-tab strong,
    .bestiary-tab strong {
        font-size: .78rem !important;
    }

    .bestiary-tab small {
        font-size: .62rem !important;
    }

    .achievement-seal {
        padding: 3px !important;
    }
}

/* Absolute final pass: no cyan button aura, compact centered shop button. */
.menu-container:not(.main-menu-container) .menu-button,
.run-setup-primary,
.run-setup-secondary,
.card-button,
.game-result-button,
.escape-action,
.settings-clean-footer .menu-button,
.hero-upgrade-reset,
.hero-upgrades-clean-actions .run-setup-secondary,
.hub-clean-body .run-setup-primary,
.modes-clean-card,
.leaderboard-tab,
.bestiary-tab,
.hero-upgrade-tab {
    box-shadow: none !important;
    filter: drop-shadow(0 10px 15px rgba(0, 0, 0, .42)) !important;
}

.menu-container:not(.main-menu-container) .menu-button:hover,
.run-setup-secondary:hover,
.card-button:hover:not(.disabled),
.game-result-button:hover,
.escape-action:hover,
.settings-clean-footer .menu-button:hover,
.hero-upgrade-reset:hover,
.hero-upgrades-clean-actions .run-setup-secondary:hover,
.run-setup-primary:hover,
.confirm-button:hover:not(.disabled),
.restart-button:hover,
.escape-action.primary:hover,
.game-result-button.restart-button:hover,
.hub-clean-body .run-setup-primary:hover,
.modes-clean-card:hover,
.modes-clean-card.selected,
.leaderboard-tab:hover,
.leaderboard-tab.is-active,
.bestiary-tab:hover,
.bestiary-tab.is-active,
.hero-upgrade-tab:hover,
.hero-upgrade-tab.selected {
    box-shadow: none !important;
    filter: drop-shadow(0 12px 18px rgba(0, 0, 0, .48)) !important;
}

.main-menu-clean .main-menu-action,
.main-menu-clean .main-menu-action:hover,
.main-menu-clean .main-menu-action.is-pressing,
.main-menu-clean .main-menu-action:active {
    box-shadow: none !important;
    filter: drop-shadow(0 10px 14px rgba(0, 0, 0, .50)) !important;
}

.main-menu-clean .main-menu-action-icon {
    width: clamp(27px, 3vw, 38px) !important;
    height: clamp(27px, 3vw, 38px) !important;
    align-self: center !important;
    filter: drop-shadow(0 4px 7px rgba(0, 0, 0, .76)) !important;
}

.main-menu-clean .main-menu-action-copy {
    transform: translateY(-3px) !important;
}

.main-menu-clean .main-menu-action-copy strong {
    font-size: clamp(.84rem, 1.1vw, 1.04rem) !important;
}

.main-menu-clean .main-menu-action-copy small {
    margin-top: -1px !important;
    font-size: clamp(.43rem, .54vw, .56rem) !important;
}

.main-menu-clean #shopBtn {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(340px, calc((100% - 12px) / 2)) !important;
    grid-template-columns: clamp(27px, 3vw, 38px) minmax(0, max-content) !important;
    justify-content: center !important;
    gap: clamp(8px, .8vw, 12px) !important;
    padding: clamp(7px, .72vw, 10px) clamp(24px, 2.2vw, 34px) !important;
}

.main-menu-clean #shopBtn .main-menu-action-arrow {
    display: none !important;
}

.main-menu-clean #shopBtn .main-menu-action-copy {
    justify-items: center !important;
    text-align: center !important;
    transform: translateY(-2px) !important;
}

@media (orientation: landscape) and (max-height: 560px), (orientation: landscape) and (max-width: 980px) {
    .main-menu-clean .main-menu-action-icon {
        width: 28px !important;
        height: 28px !important;
    }

    .main-menu-clean .main-menu-action-copy {
        transform: translateY(-2px) !important;
    }

    .main-menu-clean #shopBtn {
        width: min(246px, calc((100% - 7px) / 2)) !important;
        grid-template-columns: 28px minmax(0, max-content) !important;
    }
}

@media (orientation: landscape) {
    .main-menu-clean #shopBtn {
        order: initial !important;
        grid-column: auto !important;
        justify-self: stretch !important;
        width: auto !important;
        aspect-ratio: 560 / 124 !important;
        grid-template-columns: clamp(27px, 3vw, 38px) minmax(0, 1fr) clamp(18px, 2vw, 28px) !important;
        justify-content: initial !important;
        gap: clamp(7px, 1vw, 12px) !important;
        padding: clamp(8px, .9vw, 14px) clamp(14px, 1.6vw, 25px) !important;
    }

    .main-menu-clean #shopBtn .main-menu-action-arrow {
        display: block !important;
    }

    .main-menu-clean #shopBtn .main-menu-action-copy {
        justify-items: start !important;
        text-align: left !important;
        transform: translateY(-3px) !important;
    }
}

@media (orientation: portrait) {
    .main-menu-clean .main-menu-action-icon {
        width: 34px !important;
        height: 34px !important;
    }

    .main-menu-clean .main-menu-action-copy {
        transform: translateY(-2px) !important;
    }

    .main-menu-clean #shopBtn {
        width: 100% !important;
        grid-template-columns: 34px minmax(0, 1fr) 17px !important;
        justify-content: initial !important;
        gap: clamp(7px, .85vw, 11px) !important;
        padding: 8px 24px 8px 18px !important;
    }

    .main-menu-clean #shopBtn .main-menu-action-arrow {
        display: block !important;
    }

    .main-menu-clean #shopBtn .main-menu-action-copy {
        justify-items: start !important;
        text-align: left !important;
        transform: translateY(-2px) !important;
    }

    .main-menu-clean #shopBtn .main-menu-action-icon {
        transform: translate(7px, -2px) !important;
    }
}
/* Portrait hub final lock: compact centered buttons without right arrows. */
@media (orientation: portrait) {
    .main-menu-clean .main-menu-clean-grid {
        width: min(312px, 72vw) !important;
    }

    .main-menu-clean .main-menu-action,
    .main-menu-clean #shopBtn {
        width: 100% !important;
        grid-template-columns: 34px minmax(0, max-content) !important;
        justify-content: center !important;
        gap: 10px !important;
        padding: 8px 20px !important;
    }

    .main-menu-clean .main-menu-action-arrow,
    .main-menu-clean #shopBtn .main-menu-action-arrow {
        display: none !important;
    }

    .main-menu-clean .main-menu-action-icon,
    .main-menu-clean #shopBtn .main-menu-action-icon {
        transform: translate(0, -2px) !important;
    }

    .main-menu-clean .main-menu-action-copy,
    .main-menu-clean #shopBtn .main-menu-action-copy {
        justify-items: center !important;
        text-align: center !important;
        transform: translateY(-2px) !important;
    }
}

/* Window polish pass: remove old cyan trim and make card text readable. */
.omen-kicker {
    color: rgba(215, 189, 130, .82) !important;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .82), 0 0 10px rgba(215, 189, 130, .16) !important;
}

.modes-clean-header .omen-kicker,
.leaderboard-clean-header .omen-kicker,
.achievements-clean-header .omen-kicker,
.bestiary-clean-header .omen-kicker,
.settings-clean-header .omen-kicker,
.escape-clean-header .omen-kicker {
    display: none !important;
}

.modes-clean-header::after,
.run-setup-clean-header::after,
.hero-upgrades-clean-header::after,
.skins-clean-header::after,
.leaderboard-clean-header::after,
.achievements-clean-header::after,
.bestiary-clean-header::after,
.settings-clean-header::after,
.escape-clean-header::after,
.stats-clean-header::after,
.hub-clean-header::after,
.result-clean-crest::after {
    content: none !important;
    display: none !important;
    background: none !important;
}

.run-setup-clean-section h3,
.run-area-step-overlay .run-setup-clean-section h3,
.escape-clean-section h3,
.hero-upgrades-clean-bonuses h3,
.settings-clean-group h3 {
    color: #d7bd82 !important;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .82), 0 0 10px rgba(215, 189, 130, .16) !important;
}

.card-clean-subtitle {
    color: #eadbb8 !important;
    font-size: clamp(.92rem, 1.45vw, 1.08rem) !important;
    font-weight: 800 !important;
    letter-spacing: .045em !important;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .86), 0 0 10px rgba(215, 189, 130, .16) !important;
}

.card-clean-grid .card.has-card-art .card-name {
    top: 9.8% !important;
    left: 25% !important;
    right: 25% !important;
    height: 7.6% !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    padding: 0 3.6% !important;
    color: #2b170d !important;
    font-size: clamp(.62rem, 1.06vw, .92rem) !important;
    font-weight: 900 !important;
    line-height: 1.02 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    text-wrap: balance !important;
    text-shadow: 0 1px 0 rgba(255, 238, 200, .42) !important;
}

.card-clean-grid .card.has-card-art .card-description {
    left: 14.8% !important;
    right: 14.8% !important;
    bottom: 9.6% !important;
    height: 16.2% !important;
    box-sizing: border-box !important;
    display: block !important;
    overflow: hidden !important;
    padding: 4.2% 6% 1.8% !important;
    color: #2b170d !important;
    font-size: clamp(.62rem, 1.08vw, .9rem) !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    text-shadow: 0 1px 0 rgba(255, 238, 200, .52), 0 0 1px rgba(43, 23, 13, .55) !important;
    -webkit-text-stroke: .16px rgba(43, 23, 13, .45) !important;
    -webkit-line-clamp: unset !important;
}

.card-clean-grid .card.has-card-art .card-rarity {
    display: none !important;
}

.card-clean-grid .card.has-card-art .card-type-icon {
    display: none !important;
}

@media (orientation: portrait) {
    .card-clean-grid .card.has-card-art .card-name {
        font-size: clamp(.72rem, 3.5vw, 1rem) !important;
    }

    .card-clean-grid .card.has-card-art .card-description {
        font-size: clamp(.68rem, 3.05vw, .94rem) !important;
    }
}

@media (max-height: 620px) and (orientation: landscape) {
    .card-clean-grid .card.has-card-art .card-name {
        font-size: clamp(.58rem, 2.5vh, .78rem) !important;
    }

    .card-clean-grid .card.has-card-art .card-description {
        font-size: clamp(.54rem, 2.2vh, .72rem) !important;
        line-height: 1.12 !important;
    }
}
