/*
  Final UI polish layer.
  This file is loaded after page-specific CSS, so it normalizes layout,
  spacing and dark surfaces across old templates without rewriting them.
*/

*,
*::before,
*::after {
    letter-spacing: 0 !important;
}

:root {
    --ui-bg: #0d1117;
    --ui-bg-soft: #111821;
    --ui-surface: rgba(23, 29, 38, 0.96);
    --ui-surface-2: rgba(29, 37, 48, 0.96);
    --ui-surface-3: rgba(36, 46, 60, 0.96);
    --ui-border: rgba(255, 255, 255, 0.1);
    --ui-border-strong: rgba(255, 255, 255, 0.16);
    --ui-text: #f4f7fb;
    --ui-muted: #a5afbd;
    --ui-faint: #748092;
    --ui-gold: #f2b32d;
    --ui-gold-strong: #ffd46d;
    --ui-blue: #62a1ff;
    --ui-green: #41d18a;
    --ui-red: #ff6b5f;
    --ui-shadow: 0 18px 46px rgba(0, 0, 0, 0.28);
    --ui-radius: 8px;
}

html,
body {
    min-width: 320px;
    background: var(--ui-bg);
}

body {
    color: var(--ui-text);
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.024) 1px, transparent 1px),
        linear-gradient(180deg, #101822 0%, #0d1117 46%, #10131a 100%);
    background-size: 80px 80px, auto;
}

body,
button,
input,
select,
textarea {
    text-rendering: optimizeLegibility;
}

img,
video,
iframe {
    max-width: 100%;
}

.container,
.site-mgmt__container,
.pub-section .container,
.aliases-section .container,
.edit-dlc-section .container {
    width: min(100%, 1280px);
}

.main-content {
    padding-bottom: 30px;
}

.main-content.with-sidebar {
    padding-left: 270px;
}

body.page-catalog .header-wrapper--catalog-search {
    display: grid !important;
    grid-template-columns: auto minmax(220px, 1fr) minmax(280px, 480px) auto !important;
    align-items: center;
    gap: 16px !important;
}

body.page-catalog .header-wrapper--catalog-search .logo {
    min-width: 0;
}

body.page-catalog .header-wrapper--catalog-search .desktop-nav {
    min-width: 0;
    width: 100%;
}

body.page-catalog .header-wrapper--catalog-search .main-nav ul {
    justify-content: flex-start !important;
    gap: 8px !important;
}

body.page-catalog .header-wrapper--catalog-search .nav-link {
    min-height: 40px;
    padding: 0 10px;
    font-size: 12px;
}

body.page-catalog .header-wrapper--catalog-search .header-search {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-self: stretch !important;
}

body.page-catalog .header-wrapper--catalog-search .header-actions {
    justify-self: end;
    margin-left: 0 !important;
}

body.page-catalog .header-wrapper--catalog-search .header-login-link,
body.page-catalog .header-wrapper--catalog-search .header-account-link {
    padding: 0 12px;
}

@media (max-width: 1200px) {
    body.page-catalog .header-wrapper--catalog-search {
        grid-template-columns: auto minmax(220px, 1fr) auto !important;
    }

    body.page-catalog .header-wrapper--catalog-search .desktop-nav {
        display: none !important;
    }
}

.app-page,
.main-catalog,
.profile-section,
.admin-section,
.products-section,
.product-detail-section,
.dlc-detail-page,
.pub-section,
.aliases-section,
.edit-dlc-section,
.site-mgmt {
    background: transparent !important;
}

.app-page,
.main-catalog,
.pub-section,
.aliases-section,
.edit-dlc-section,
.site-mgmt {
    padding-top: clamp(18px, 3vw, 34px) !important;
}

.app-page-title,
.app-section-title,
.catalog-title-copy h1,
.profile-header h1,
.admin-header h1,
.pub-page-header h1,
.aliases-header h1,
.site-mgmt__hero-title,
.site-mgmt__card-title,
.pub-card-title,
.pub-dlc-name,
.alias-card-name {
    color: var(--ui-text) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
}

.app-page-subtitle,
.app-section-subtitle,
.catalog-search-query,
.site-mgmt__hero-subtitle,
.site-mgmt__card-desc,
.pub-page-header p,
.aliases-header p,
.pub-form-hint,
.alias-card-game,
.alias-card-visibility,
.app-code-meta,
.app-list-meta,
.app-inline-note {
    color: var(--ui-muted) !important;
}

.app-card,
.app-choice-card,
.app-card-note,
.app-modal-box,
.catalog-empty-state,
.filters-sidebar,
.form-section,
.product-gallery,
.product-info,
.admin-header,
.admin-table,
.profile-tabs,
.admin-tabs,
.auth-container,
.card,
.bg-white,
.site-mgmt__card,
.site-mgmt__stat,
.site-mgmt__tabs,
.site-mgmt__hero-metric,
.site-mgmt__action,
.pub-card,
.alias-card,
.edit-dlc-card,
.pub-table-wrap,
.pub-stat-card,
.pub-tabs,
.pub-price-option,
.pub-mgmt__card,
.pub-mgmt__stat,
.release-card,
.news-card {
    color: var(--ui-text) !important;
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.card.bg-white,
.bg-white.text-dark,
.text-dark {
    color: var(--ui-text) !important;
}

.app-card,
.site-mgmt__card,
.pub-card,
.alias-card,
.edit-dlc-card {
    padding: clamp(16px, 2.3vw, 26px) !important;
}

.app-card + .app-card,
.pub-card + .pub-card,
.site-mgmt__card + .site-mgmt__card {
    margin-top: 16px;
}

.app-stack {
    gap: 16px !important;
}

.app-stack--lg {
    gap: 20px !important;
}

.app-card-link,
.alias-card,
.pub-dlc-head,
.site-mgmt__card--toggle,
.app-choice-card {
    min-width: 0;
}

.app-thumb,
.app-thumb--sm,
.alias-card-icon,
.pub-dlc-icon,
.pub-icon-preview,
.catalog-title-icon,
.app-icon-chip,
.app-choice-icon,
.site-mgmt__stat-icon {
    border-radius: var(--ui-radius) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: var(--ui-border) !important;
}

.btn,
.app-hero-btn,
.auth-submit,
.auth-secondary-link,
.auth-inline-btn,
.dlc-btn-block,
.site-mgmt__btn,
.pub-btn,
.pub-mgmt__btn,
.add-to-cart-btn,
.btn-cart,
button[type="submit"],
input[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 12px 18px;
    border-radius: var(--ui-radius) !important;
    font-weight: 900 !important;
    line-height: 1.1;
    white-space: normal;
    text-align: center;
    transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.btn:hover,
.app-hero-btn:hover,
.auth-submit:hover,
.site-mgmt__btn:hover,
.pub-btn:hover,
.pub-mgmt__btn:hover,
.add-to-cart-btn:hover,
.btn-cart:hover {
    transform: translateY(-1px);
}

.btn-sm,
.site-mgmt__btn--sm,
.pub-mgmt__btn,
.pub-delete-pool-key-btn {
    min-height: 38px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
}

.btn-primary,
.app-hero-btn,
.auth-submit,
.dlc-btn-primary,
.site-mgmt__btn--primary,
.pub-btn-primary,
.pub-mgmt__btn--primary,
.add-to-cart-btn,
.btn-cart,
input[type="submit"].pub-btn-primary {
    color: #14171d !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 52%, #d08b1d 100%) !important;
    border-color: rgba(255, 212, 109, 0.7) !important;
    box-shadow: 0 14px 28px rgba(242, 179, 45, 0.18) !important;
}

.btn-outline,
.btn-secondary,
.dlc-btn-secondary,
.auth-secondary-link,
.auth-inline-btn,
.site-mgmt__btn--outline,
.pub-btn-outline,
.pub-mgmt__btn--outline {
    color: var(--ui-text) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: var(--ui-border-strong) !important;
}

.btn-danger,
.site-mgmt__btn--danger,
.pub-mgmt__btn--danger {
    color: #ffd1cc !important;
    background: rgba(255, 107, 95, 0.12) !important;
    border-color: rgba(255, 107, 95, 0.34) !important;
}

.btn-success,
.site-mgmt__btn--success {
    color: #d7ffe9 !important;
    background: rgba(65, 209, 138, 0.14) !important;
    border-color: rgba(65, 209, 138, 0.34) !important;
}

.app-input,
.app-select,
.app-textarea,
.form-control,
.form-select,
.form-group input,
.form-group textarea,
.form-group select,
.site-mgmt__input,
.pub-input,
.pub-textarea,
.pub-select,
.edit-dlc-card input[type="text"],
.edit-dlc-card input[type="number"],
.edit-dlc-card input[type="url"],
.edit-dlc-card select,
.edit-dlc-card textarea,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="url"],
input[type="search"],
textarea,
select {
    min-height: 50px;
    color: var(--ui-text) !important;
    background: rgba(10, 14, 20, 0.86) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: none !important;
}

textarea,
.pub-textarea,
.app-textarea {
    min-height: 112px;
}

input::placeholder,
textarea::placeholder {
    color: var(--ui-faint) !important;
}

.app-input:focus,
.app-select:focus,
.app-textarea:focus,
.form-control:focus,
.form-select:focus,
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus,
.site-mgmt__input:focus,
.pub-input:focus,
.pub-textarea:focus,
.pub-select:focus,
input:focus,
textarea:focus,
select:focus {
    outline: none !important;
    border-color: rgba(255, 212, 109, 0.62) !important;
    box-shadow: 0 0 0 4px rgba(242, 179, 45, 0.13) !important;
}

label,
.form-label,
.pub-form-label,
.site-mgmt__form-label,
.form-group label {
    color: #dfe5ee !important;
    font-weight: 800 !important;
}

.app-table-wrap,
.site-mgmt__table-wrap,
.pub-table-wrap,
.admin-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

table,
.app-table,
.pub-table,
.site-mgmt__table,
.admin-table table {
    color: var(--ui-text) !important;
    background: transparent !important;
}

th,
td,
.app-table th,
.app-table td,
.pub-table th,
.pub-table td,
.site-mgmt__table th,
.site-mgmt__table td,
.admin-table th,
.admin-table td {
    border-color: var(--ui-border) !important;
}

th,
.app-table th,
.pub-table th,
.site-mgmt__table th,
.admin-table th {
    color: #dbe2ec !important;
    background: rgba(255, 255, 255, 0.055) !important;
}

td,
.app-table td,
.pub-table td,
.site-mgmt__table td,
.admin-table td {
    color: var(--ui-muted) !important;
    background: rgba(255, 255, 255, 0.02) !important;
}

tbody tr:hover td,
.admin-table tr:hover {
    background: rgba(255, 255, 255, 0.05) !important;
}

.app-code-field {
    display: flex;
    align-items: stretch;
    min-width: 0;
    overflow: visible;
    background: linear-gradient(180deg, rgba(10, 15, 22, 0.98), rgba(13, 19, 28, 0.98)) !important;
    border: 1px solid rgba(255, 212, 109, 0.18) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

.app-code-text {
    min-height: 54px;
    color: #fff6d8 !important;
    background: transparent !important;
    font-size: 14px;
    line-height: 1.45;
    word-break: break-word;
}

.app-code-text .app-link {
    color: #9fc5ff !important;
}

.app-code-action,
.app-dropdown-trigger {
    min-width: 54px;
    color: var(--ui-gold-strong) !important;
    background: rgba(255, 255, 255, 0.055) !important;
    border-color: var(--ui-border) !important;
}

.app-dropdown-menu {
    overflow: hidden;
    color: var(--ui-text) !important;
    background: #171d26 !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.app-dropdown-item {
    min-height: 42px;
    color: var(--ui-text) !important;
}

.app-dropdown-item:hover {
    background: rgba(255, 255, 255, 0.07) !important;
}

.app-dropdown-item--danger {
    color: #ffb3ac !important;
}

.key-row {
    padding: 14px;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: rgba(255, 255, 255, 0.035);
}

.key-row + .key-row {
    margin-top: 12px;
}

.key-mobile-actions .btn {
    min-height: 46px !important;
}

.catalog-header,
.site-mgmt__hero,
.app-page-header,
.pub-page-header,
.aliases-header {
    margin-bottom: clamp(18px, 3vw, 28px) !important;
}

.catalog-games-grid,
.catalog-dlcs-grid,
.dlcs-grid,
.products-grid,
.site-mgmt__stats,
.pub-stats-grid {
    align-items: stretch;
}

.catalog-game-card,
.catalog-dlc-card,
.dlc-card,
.product-card {
    border-radius: var(--ui-radius) !important;
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    box-shadow: var(--ui-shadow) !important;
}

.catalog-dlc-content,
.dlc-info,
.product-info {
    color: var(--ui-text) !important;
    background: transparent !important;
}

.catalog-game-name,
.catalog-dlc-title,
.dlc-name,
.product-title {
    color: var(--ui-text) !important;
}

.catalog-dlc-desc,
.catalog-dlc-game,
.dlc-game,
.product-meta {
    color: var(--ui-muted) !important;
}

.dlc-card,
.dlc-text-card,
.dlc-desc-block,
.dlc-disclaimer-yellow,
.dlc-updating-warning,
.dlc-dmca,
.dlc-purchase-card,
.dlc-support-card {
    color: var(--ui-text) !important;
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.site-mgmt__tabs,
.pub-tabs {
    gap: 8px;
    padding: 8px;
}

.site-mgmt__tab,
.pub-tab-btn,
.app-tab,
.tab-btn {
    min-height: 44px;
    border-radius: var(--ui-radius) !important;
    color: var(--ui-muted) !important;
    background: transparent !important;
}

.site-mgmt__tab.active,
.pub-tab-btn.active,
.app-tab.is-active,
.tab-btn.active,
.admin-tabs .tab-btn.active {
    color: #14171d !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 100%) !important;
    box-shadow: 0 10px 20px rgba(242, 179, 45, 0.16) !important;
}

.site-mgmt__hero {
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background:
        linear-gradient(135deg, rgba(242, 179, 45, 0.12), rgba(98, 161, 255, 0.09)),
        rgba(19, 25, 34, 0.94);
    box-shadow: var(--ui-shadow);
}

.site-mgmt__hero-metrics {
    min-width: min(100%, 440px);
}

.site-mgmt__stat {
    min-height: 112px;
}

.site-mgmt__stat-value,
.pub-stat-value {
    color: var(--ui-text) !important;
    font-weight: 900 !important;
}

.site-mgmt__status-note--ok {
    color: #8ef0bd !important;
}

.site-mgmt__status-note--fail {
    color: #ffb3ac !important;
}

.site-mgmt__alert--error,
.pub-flash--error,
.aliases-flash--error,
.app-pill--danger {
    color: #ffd1cc !important;
    background: rgba(255, 107, 95, 0.12) !important;
    border-color: rgba(255, 107, 95, 0.34) !important;
}

.site-mgmt__alert--success,
.pub-flash--success,
.aliases-flash--success,
.app-pill--success {
    color: #d7ffe9 !important;
    background: rgba(65, 209, 138, 0.12) !important;
    border-color: rgba(65, 209, 138, 0.32) !important;
}

.site-mgmt__alert--info,
.site-mgmt__alert--warning,
.pub-flash--info,
.aliases-flash--info,
.app-pill--warning {
    color: #fff0bd !important;
    background: rgba(242, 179, 45, 0.12) !important;
    border-color: rgba(242, 179, 45, 0.32) !important;
}

.pub-section,
.aliases-section,
.edit-dlc-section {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.page-catalog .site-announcement {
    background: linear-gradient(90deg, rgba(242, 179, 45, 0.96) 0%, rgba(209, 136, 28, 0.96) 100%) !important;
    color: #14171d !important;
}

body.page-catalog .site-announcement-inner {
    min-height: 52px;
    gap: 16px;
    padding-top: 2px;
    padding-bottom: 2px;
    font-weight: 900;
}

body.page-catalog .site-announcement span {
    color: #14171d !important;
}

body.page-catalog .site-announcement a {
    color: #14171d !important;
    border-color: rgba(20, 23, 29, 0.28) !important;
    background: rgba(255, 255, 255, 0.34) !important;
}

body.page-catalog .site-announcement a:hover {
    background: rgba(255, 255, 255, 0.56) !important;
}

body.page-catalog .catalog-games-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 220px)) !important;
    justify-content: start;
    gap: 16px !important;
}

body.page-catalog .catalog-game-card {
    min-height: 160px !important;
    border-radius: 8px !important;
    overflow: hidden;
}

body.page-catalog .catalog-game-thumb {
    max-width: none !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: auto !important;
}

body.page-catalog .catalog-game-thumb img {
    width: 100% !important;
    height: 100% !important;
}

body.page-catalog .catalog-game-name {
    padding: 0 16px 16px;
    max-width: none !important;
    color: #fff !important;
    font-size: 18px !important;
}

.alias-card-actions,
.site-mgmt__list-actions,
.site-mgmt__withdrawal-actions,
.app-inline-actions,
.form-actions {
    gap: 10px !important;
}

.alias-card-actions .btn,
.site-mgmt__list-actions .site-mgmt__btn,
.site-mgmt__withdrawal-actions .site-mgmt__btn {
    flex-shrink: 0;
}

.pub-table code,
.site-mgmt code,
.app-card code,
code {
    color: #fff1bd !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border-radius: 6px;
    padding: 2px 5px;
}

.badge:not(.bg-white),
.app-pill,
.catalog-dlc-tag,
.site-mgmt__badge {
    border-radius: 999px !important;
}

.badge.bg-white {
    color: #14171d !important;
    background: var(--ui-gold) !important;
}

.flash-message {
    color: var(--ui-text) !important;
    background: #171d26 !important;
    border-color: var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.main-content [style*="background: #fff"],
.main-content [style*="background:#fff"],
.main-content [style*="background: white"],
.main-content [style*="background:white"],
.main-content [style*="background: var(--white)"],
.main-content [style*="background:var(--white)"],
.main-content [style*="background: #fafafa"],
.main-content [style*="background:#fafafa"],
.main-content [style*="background: var(--gray-50)"],
.main-content [style*="background:var(--gray-50)"],
.main-content [style*="background-color: #ffffff"],
.main-content [style*="background-color:#ffffff"],
.main-content [style*="background-color: #fff"],
.main-content [style*="background-color:#fff"],
.main-content [style*="background-color: white"],
.main-content [style*="background-color:white"] {
    color: var(--ui-text) !important;
    background: var(--ui-surface) !important;
    border-color: var(--ui-border) !important;
}

.main-content [style*="background: linear-gradient(45deg, #6F46B9 0%, #8350E3 100%)"],
.main-content [style*="background: linear-gradient(135deg, #6F46B9 0%, #8350E3 100%)"],
.main-content [style*="background: linear-gradient(45deg,#6F46B9 0%,#8350E3 100%)"],
.main-content [style*="background: linear-gradient(135deg,#6F46B9 0%,#8350E3 100%)"] {
    background:
        linear-gradient(135deg, rgba(242, 179, 45, 0.18) 0%, rgba(98, 161, 255, 0.1) 100%),
        var(--ui-surface) !important;
}

.main-content [style*="color: #333"],
.main-content [style*="color:#333"],
.main-content [style*="color: #666"],
.main-content [style*="color:#666"],
.main-content [style*="color: var(--text-secondary)"],
.main-content [style*="color:var(--text-secondary)"] {
    color: var(--ui-muted) !important;
}

.main-content [style*="color: var(--text-primary)"],
.main-content [style*="color:var(--text-primary)"],
.main-content [style*="color: #1a1a1a"],
.main-content [style*="color:#1a1a1a"] {
    color: var(--ui-text) !important;
}

.main-content [style*="border-radius: 6.5px"],
.main-content [style*="border-radius:6.5px"],
.main-content [style*="border-radius: 12px"],
.main-content [style*="border-radius:12px"],
.main-content [style*="border-radius: 16px"],
.main-content [style*="border-radius:16px"],
.main-content [style*="border-radius: 18px"],
.main-content [style*="border-radius:18px"],
.main-content [style*="border-radius: 20px"],
.main-content [style*="border-radius:20px"],
.main-content [style*="border-radius: 24px"],
.main-content [style*="border-radius:24px"] {
    border-radius: var(--ui-radius) !important;
}

.main-content [style*="box-shadow"],
.main-content .shadow,
.main-content .shadow-lg {
    box-shadow: var(--ui-shadow) !important;
}

.main-content a[style*="background"],
.main-content button[style*="background"],
.main-content input[type="submit"][style*="background"] {
    min-height: 46px;
    color: #14171d !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 52%, #d08b1d 100%) !important;
    border: 1px solid rgba(255, 212, 109, 0.7) !important;
}

.main-content button[style*="background: none"],
.main-content button[style*="background:none"] {
    color: #ffb3ac !important;
    background: rgba(255, 107, 95, 0.1) !important;
    border-color: rgba(255, 107, 95, 0.32) !important;
}

.main-content .alert,
.main-content .alert-success,
.main-content .alert-danger,
.main-content .alert-warning,
.main-content .alert-info {
    color: var(--ui-text) !important;
    background: var(--ui-surface-2) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
}

.main-content .text-black,
.main-content .text-dark {
    color: var(--ui-text) !important;
}

.pub-stats-page,
.pub-mgmt,
.balance-payment-result,
.error-section {
    background: transparent !important;
}

.pub-stat-card-new,
.pub-period,
.balance-tx-block,
.release-item,
.release-upload-zone,
.pub-news-item,
.release-history-item,
.pub-mgmt__card,
.pub-mgmt__stat,
.pub-price-option,
.pub-card,
.admin-info,
.admin-table,
.pub-select-wrapper,
.pub-select {
    color: var(--ui-text) !important;
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.pub-stat-card-new--highlight {
    color: #14171d !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 100%) !important;
}

.pub-stat-card-new--highlight .pub-stat-label,
.pub-stat-card-new--highlight .pub-stat-value,
.pub-stat-card-new--highlight .pub-stat-sub {
    color: #14171d !important;
}

.pub-period-row strong,
.pub-mgmt__stat-value,
.pub-mgmt__title,
.pub-mgmt__card-title,
.pub-mgmt__dlc-name {
    color: var(--ui-text) !important;
}

.pub-period-row span,
.pub-mgmt__subtitle,
.pub-mgmt__stat-label,
.pub-mgmt__dlc-meta,
.pub-mgmt__back,
.release-history-date,
.release-history-text,
.release-file-item,
.news-delete-btn {
    color: var(--ui-muted) !important;
}

.pub-mgmt__dlc-row,
.pub-mgmt__attach-form,
.pub-dlc-block,
.pub-card-title {
    border-color: var(--ui-border) !important;
}

.pub-toggle-slider {
    background: rgba(255, 255, 255, 0.16) !important;
}

.pub-toggle-slider::after {
    background: #f6f8fb !important;
}

.pub-toggle-input:checked + .pub-toggle-slider {
    background: var(--ui-gold) !important;
}

.footer {
    background:
        linear-gradient(180deg, rgba(13, 17, 23, 0), rgba(8, 11, 16, 0.96) 30%, #080b10) !important;
}


.aliases-page {
    background: transparent !important;
}

.aliases-page .aliases-summary,
.aliases-page .aliases-flash,
.aliases-page .aliases-card,
.aliases-page .aliases-empty {
    color: var(--ui-text) !important;
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.aliases-page .aliases-summary {
    padding: 12px 16px;
    gap: 8px;
}

.aliases-page .aliases-flash--error {
    color: #ffd1cc !important;
    background: rgba(255, 107, 95, 0.12) !important;
    border-color: rgba(255, 107, 95, 0.34) !important;
}

.aliases-page .aliases-flash--success {
    color: #d7ffe9 !important;
    background: rgba(65, 209, 138, 0.12) !important;
    border-color: rgba(65, 209, 138, 0.34) !important;
}

.aliases-page .aliases-flash--info {
    color: #fff0bd !important;
    background: rgba(242, 179, 45, 0.12) !important;
    border-color: rgba(242, 179, 45, 0.32) !important;
}

.aliases-page .aliases-thumb {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid var(--ui-border) !important;
}

.aliases-page .aliases-empty i {
    color: var(--ui-gold) !important;
    background: rgba(242, 179, 45, 0.12) !important;
}

.balance-page {
    background: transparent !important;
}

.balance-page .balance-tx-block {
    color: var(--ui-text) !important;
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.balance-page .balance-tx-block strong,
.balance-page .balance-tx-block div,
.balance-page .balance-tx-block time {
    color: var(--ui-text) !important;
}

.balance-page .balance-tx-block [style*="color: #27ae60"] {
    color: #8ef0bd !important;
}

.balance-page .balance-tx-list {
    gap: 14px !important;
}

@media (max-width: 1180px) {
    .main-content.with-sidebar {
        padding-left: 248px;
    }

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

    .site-mgmt__hero {
        align-items: stretch;
        flex-direction: column;
    }

    .site-mgmt__hero-metrics {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 768px) {
    body {
        padding-bottom: calc(74px + env(safe-area-inset-bottom));
    }

    .container,
    .auth-wrap,
    .site-mgmt__container,
    .pub-section .container,
    .aliases-section .container,
    .edit-dlc-section .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .main-content,
    .main-content.with-sidebar {
        padding-left: 0 !important;
        padding-bottom: 18px;
    }

    body.page-catalog .header-wrapper--catalog-search {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 8px !important;
    }

    body.page-catalog .header-wrapper--catalog-search .header-search {
        grid-column: 1 / -1;
        order: 20;
        height: 46px;
        margin-top: 8px;
    }

    body.page-catalog .header-wrapper--catalog-search .header-actions {
        justify-self: end;
    }

    .app-page,
    .main-catalog,
    .site-mgmt,
    .pub-section,
    .aliases-section,
    .edit-dlc-section {
        padding-top: 16px !important;
    }

    .app-page-title,
    .site-mgmt__hero-title,
    .catalog-title-copy h1 {
        font-size: clamp(24px, 8vw, 32px) !important;
    }

    .app-card,
    .site-mgmt__card,
    .pub-card,
    .alias-card,
    .edit-dlc-card {
        padding: 16px !important;
    }

    .app-card-link,
    .app-card-link--between,
    .site-mgmt__card--toggle,
    .app-choice-card {
        align-items: flex-start;
    }

    .app-card-link--between,
    .site-mgmt__card--toggle {
        flex-direction: column;
    }

    .btn,
    .app-hero-btn,
    .auth-submit,
    .auth-secondary-link,
    .auth-inline-btn,
    .dlc-btn-block,
    .site-mgmt__btn,
    .pub-btn,
    .pub-mgmt__btn,
    .add-to-cart-btn,
    .btn-cart,
    button[type="submit"],
    input[type="submit"] {
        min-height: 48px;
        padding: 12px 14px;
        font-size: 14px;
    }

    .btn-block,
    .app-hero-btn,
    .auth-submit,
    .dlc-btn-block {
        width: 100%;
    }

    .app-inline-actions,
    .form-actions,
    .site-mgmt__actions,
    .site-mgmt__form-row,
    .alias-card-actions,
    .pub-inline-form,
    .key-mobile-actions {
        display: grid !important;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .app-inline-actions > *,
    .form-actions > *,
    .site-mgmt__actions > *,
    .site-mgmt__form-row > *,
    .alias-card-actions > *,
    .pub-inline-form > *,
    .key-mobile-actions > * {
        width: 100% !important;
        max-width: none !important;
    }

    .catalog-header {
        align-items: flex-start;
        flex-direction: column;
    }

    body.page-catalog .site-announcement {
        font-size: 11px;
    }

    body.page-catalog .site-announcement-inner {
        min-height: 44px;
        gap: 10px;
    }

    body.page-catalog .site-announcement span {
        line-height: 1.25;
    }

    .catalog-title-row {
        align-items: flex-start;
    }

    .catalog-title-icon {
        width: 42px;
        height: 42px;
        flex: 0 0 42px;
    }

    .catalog-games-grid,
    .catalog-dlcs-grid,
    .dlcs-grid,
    .products-grid,
    .site-mgmt__stats,
    .pub-stats-grid,
    .site-mgmt__field-grid,
    .site-mgmt__config-grid,
    .site-mgmt__option-grid {
        grid-template-columns: 1fr !important;
    }

    body.page-catalog .catalog-games-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    body.page-catalog .catalog-game-card {
        min-height: 136px !important;
    }

    .site-mgmt__hero-metrics {
        grid-template-columns: 1fr !important;
    }

    .site-mgmt__tabs,
    .pub-tabs-wrapper {
        overflow-x: auto;
        flex-wrap: nowrap;
        scrollbar-width: none;
    }

    .site-mgmt__tabs::-webkit-scrollbar,
    .pub-tabs-wrapper::-webkit-scrollbar {
        display: none;
    }

    .site-mgmt__tab,
    .pub-tab-btn {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .alias-card {
        display: grid !important;
        grid-template-columns: 54px minmax(0, 1fr);
        align-items: center;
    }

    .alias-card-actions {
        grid-column: 1 / -1;
        border-top: 1px solid var(--ui-border) !important;
        padding-top: 12px;
    }

    .app-code-field,
    .key-row .app-code-field {
        flex-direction: column;
        overflow: hidden;
    }

    .app-code-text {
        width: 100%;
        white-space: normal !important;
        word-break: break-all;
    }

    .app-code-action,
    .app-dropdown-trigger {
        width: 100%;
        min-height: 44px;
        border-left: 0 !important;
        border-top: 1px solid var(--ui-border) !important;
    }

    .app-dropdown-menu {
        position: static;
        width: 100%;
        margin-top: 8px;
    }

    .app-cart-item {
        grid-template-columns: 76px minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    .app-cart-thumb {
        width: 76px !important;
        height: 76px !important;
        border-radius: var(--ui-radius) !important;
    }

    .app-cart-total {
        grid-column: 1 / -1;
        text-align: left !important;
    }

    .app-table,
    .pub-table,
    .site-mgmt__table,
    .admin-table table {
        min-width: 720px;
    }

    .auth-card,
    .auth-container {
        padding: 20px !important;
    }
}

@media (max-width: 420px) {
    .container,
    .site-mgmt__container,
    .pub-section .container,
    .aliases-section .container,
    .edit-dlc-section .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .header-account-link {
        max-width: 102px;
    }

    .app-card,
    .site-mgmt__card,
    .pub-card,
    .alias-card,
    .edit-dlc-card {
        padding: 14px !important;
    }

    .site-announcement span {
        line-height: 1.25;
    }

    body.page-catalog .catalog-games-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Site-wide finishing pass: old inline pages, Bootstrap utilities and mobile edge cases. */
:root {
    --ui-page-pad: clamp(18px, 4vw, 48px);
}

body {
    overflow-x: hidden;
}

body::before {
    content: '';
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(circle at 12% 12%, rgba(242, 179, 45, 0.11), transparent 28%),
        radial-gradient(circle at 88% 18%, rgba(98, 161, 255, 0.10), transparent 28%),
        radial-gradient(circle at 50% 100%, rgba(65, 209, 138, 0.06), transparent 30%);
}

.header {
    background: rgba(9, 12, 17, 0.9) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(18px);
}

.header-wrapper {
    min-width: 0;
}

.logo a,
.header-actions,
.desktop-nav,
.header-search {
    min-width: 0;
}

.header-search {
    min-height: 48px;
}

.header-search-input {
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.header-lang-menu {
    background: #171d26 !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.header-lang-option:hover,
.header-lang-option.active {
    color: var(--ui-gold-strong) !important;
    background: rgba(242, 179, 45, 0.12) !important;
}

.mobile-menu-btn {
    flex: 0 0 auto;
}

.mobile-menu {
    max-width: min(86vw, 360px);
}

.mobile-nav-list li a {
    min-height: 50px;
}

.site-announcement {
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.18);
}

.main-content {
    position: relative;
}

.container-parent,
.section,
.auth-section,
.admin-section,
.error-section,
.balance-payment-result {
    background: transparent !important;
}

.container-parent {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    border-block: 1px solid rgba(255, 255, 255, 0.04);
}

.container-parent[style*="background: url"],
.container-parent[style*="background-image"],
.container-parent[style*="linear-gradient"] {
    background-size: cover !important;
    background-position: center !important;
}

.container-parent[style*="background: url"]::before,
.container-parent[style*="background-image"]::before,
.container-parent[style*="linear-gradient"]::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(10, 13, 18, 0.92) 0%, rgba(10, 13, 18, 0.62) 48%, rgba(10, 13, 18, 0.32) 100%),
        radial-gradient(circle at 20% 20%, rgba(242, 179, 45, 0.18), transparent 30%);
}

.container-parent > .container {
    position: relative;
    z-index: 1;
}

.page-about .container-parent:first-of-type,
.page-cooperation .container-parent:first-of-type {
    padding-top: clamp(32px, 6vw, 76px) !important;
    padding-bottom: clamp(32px, 6vw, 76px) !important;
}

.page-about .container-parent:not([style*="background"]),
.page-cooperation .container-parent:not([style*="background"]) {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
        rgba(15, 20, 28, 0.54) !important;
}

.page-about h1,
.page-about h2,
.page-cooperation h1,
.page-cooperation h2,
.page-policy h1,
.page-policy h2,
.page-policy h3,
.page-terms h1,
.page-terms h2,
.page-terms h3,
.page-procedure h1,
.page-procedure h2,
.page-procedure h3,
.page-report h1,
.page-report h2,
.page-contacts h1,
.page-contacts h2,
.page-contacts h3 {
    color: var(--ui-text) !important;
    font-weight: 900 !important;
    line-height: 1.08;
}

.page-about h1,
.page-cooperation h1 {
    font-size: clamp(32px, 5vw, 58px) !important;
    letter-spacing: -0.03em !important;
}

.page-about h2,
.page-cooperation h2 {
    font-size: clamp(26px, 4vw, 44px) !important;
    letter-spacing: -0.025em !important;
}

.page-about p,
.page-about .opacity-75,
.page-cooperation p,
.page-cooperation .opacity-75,
.page-policy p,
.page-terms p,
.page-procedure p,
.page-contacts p,
.page-report .text-secondary {
    color: var(--ui-muted) !important;
}

.page-about .badge.bg-white,
.page-cooperation .badge.bg-white,
.badge.text-black.bg-white {
    color: #17120a !important;
    background: linear-gradient(135deg, #fff2bc, var(--ui-gold)) !important;
    border: 1px solid rgba(255, 212, 109, 0.56) !important;
    border-radius: 999px !important;
    box-shadow: 0 10px 24px rgba(242, 179, 45, 0.18) !important;
}

.page-cooperation ul li {
    padding: 10px 12px;
    margin-bottom: 8px !important;
    color: var(--ui-text);
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
}

.page-cooperation .card,
.page-report .rounded,
.page-report .shadow-lg,
.page-policy .container.py-4,
.page-terms .container.py-4,
.page-procedure .container.py-4,
.page-contacts .dlc-text-card,
.error-content {
    color: var(--ui-text) !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.02)),
        var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.page-report .rounded,
.page-policy .container.py-4,
.page-terms .container.py-4,
.page-procedure .container.py-4,
.page-contacts .dlc-text-card {
    padding: clamp(18px, 3vw, 34px) !important;
    margin-top: clamp(18px, 4vw, 44px) !important;
    margin-bottom: clamp(18px, 4vw, 44px) !important;
}

.page-policy .container.py-4,
.page-terms .container.py-4,
.page-procedure .container.py-4 {
    max-width: 980px;
    line-height: 1.72;
}

.page-policy h1,
.page-terms h1,
.page-procedure h1 {
    margin-top: 0.8em;
    margin-bottom: 0.45em;
    font-size: clamp(28px, 4vw, 42px) !important;
}

.page-policy h3,
.page-terms h3,
.page-procedure h3 {
    margin-top: 1.35em;
    font-size: clamp(20px, 2.5vw, 26px) !important;
}

.page-policy p,
.page-terms p,
.page-procedure p {
    margin-bottom: 1rem;
    overflow-wrap: anywhere;
}

.page-policy a,
.page-terms a,
.page-procedure a,
.page-contacts a,
.page-report a {
    color: var(--ui-gold-strong) !important;
}

.form-floating > label {
    color: var(--ui-faint) !important;
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
    color: var(--ui-gold-strong) !important;
}

.form-floating > .form-control,
.form-floating > .form-select {
    min-height: 58px;
    padding-top: 1.55rem !important;
}

.form-floating > textarea.form-control {
    min-height: 150px;
}

.form-control,
.form-select {
    color-scheme: dark;
}

.form-select option,
select option {
    color: #f4f7fb;
    background: #111821;
}

.h-captcha {
    max-width: 100%;
    overflow: hidden;
    border-radius: var(--ui-radius);
}

.h-captcha iframe {
    max-width: 100%;
}

.bg-primary,
.bg-dark,
.bg-white,
.rounded-3,
.shadow,
.shadow-lg {
    border-radius: var(--ui-radius) !important;
}

.main-content .bg-primary {
    color: #14171d !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 100%) !important;
}

.main-content .bg-dark {
    background: rgba(10, 14, 20, 0.96) !important;
    border: 1px solid var(--ui-border) !important;
}

.main-content .text-primary {
    color: var(--ui-gold-strong) !important;
}

.main-content .text-secondary,
.text-muted,
[style*="color: var(--text-muted)"] {
    color: var(--ui-muted) !important;
}

.main-content strong,
.main-content b {
    color: #f8fbff;
}

.app-grid,
.app-grid--sidebar,
.app-grid--stats-2,
.app-grid--stats-3,
.admin-stats,
.analytics-grid,
.quick-actions,
.pub-stats-grid-new,
.pub-periods,
.pub-mgmt__stats {
    min-width: 0;
}

.app-grid--sidebar {
    align-items: start;
}

.app-summary-panel {
    position: sticky;
    top: 104px;
}

.app-card--hero,
.app-card--hero-orange,
.app-card--hero-blue,
.app-card--hero-purple,
.app-card--hero-dark,
.app-hero {
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 12%, rgba(242, 179, 45, 0.23), transparent 34%),
        linear-gradient(135deg, rgba(98, 161, 255, 0.16), rgba(255, 255, 255, 0.035)),
        #161d27 !important;
}

.app-hero-value,
.app-hero-title,
.app-stat-value,
.app-list-amount,
.app-balance-amount {
    color: var(--ui-text) !important;
    font-weight: 900 !important;
}

.app-kicker,
.app-stat-label,
.app-choice-title,
.app-list-title,
.app-cart-title,
.app-summary-line--total {
    color: #f6f8fb !important;
    font-weight: 900 !important;
}

.app-choice-desc,
.app-hero-meta,
.app-form-note,
.app-cart-meta,
.app-summary-line,
.app-empty p {
    color: var(--ui-muted) !important;
}

.app-choice-card,
.app-card-link,
.app-card-note,
.app-notice,
.app-list-row,
.app-empty,
.app-tabbar,
.app-input-group,
.admin-info,
.stat-card,
.quick-action-btn,
.analytics-card,
.table-header,
.pub-empty,
.aliases-empty {
    color: var(--ui-text) !important;
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
}

.app-choice-card,
.app-list-row,
.app-card-link {
    min-width: 0;
}

.app-choice-card--active,
.app-choice-card.selected,
.withdrawal-method-option.selected {
    border-color: rgba(255, 212, 109, 0.58) !important;
    background: rgba(242, 179, 45, 0.105) !important;
}

.app-choice-end,
.app-list-side {
    min-width: 0;
}

.app-choice-icon img,
.app-thumb img,
.app-cart-thumb img,
.product-thumb,
.pub-mgmt__dlc-icon img,
.catalog-game-thumb img,
.catalog-dlc-image img {
    object-fit: cover;
}

.app-notice--info,
.app-pill--warning {
    color: #fff0bd !important;
    background: rgba(242, 179, 45, 0.12) !important;
    border-color: rgba(242, 179, 45, 0.32) !important;
}

.app-notice--success,
.app-list-amount--positive,
.text-success {
    color: #8ef0bd !important;
}

.app-notice--error,
.text-danger {
    color: #ffb3ac !important;
}

.app-pill,
.badge,
.badge-count,
.verified,
.pending,
.rejected,
[class*="status-"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 28px;
    padding: 5px 10px;
    border-radius: 999px !important;
    border: 1px solid var(--ui-border);
    color: var(--ui-text) !important;
    background: rgba(255, 255, 255, 0.065) !important;
    font-weight: 800;
}

.verified,
.badge.verified,
.status-paid,
.status-completed,
.status-approved {
    color: #d7ffe9 !important;
    background: rgba(65, 209, 138, 0.14) !important;
    border-color: rgba(65, 209, 138, 0.34) !important;
}

.pending,
.badge.pending,
.status-pending {
    color: #fff0bd !important;
    background: rgba(242, 179, 45, 0.12) !important;
    border-color: rgba(242, 179, 45, 0.32) !important;
}

.rejected,
.badge.rejected,
.status-cancelled,
.status-rejected,
.status-failed {
    color: #ffd1cc !important;
    background: rgba(255, 107, 95, 0.12) !important;
    border-color: rgba(255, 107, 95, 0.34) !important;
}

.catalog-container {
    width: min(100%, 1480px) !important;
}

.catalog-header {
    padding: clamp(16px, 3vw, 24px);
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background:
        linear-gradient(135deg, rgba(242, 179, 45, 0.13), rgba(98, 161, 255, 0.08)),
        rgba(20, 26, 36, 0.82);
    box-shadow: var(--ui-shadow);
}

.catalog-title-icon {
    color: #17120a !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 100%) !important;
    border: 1px solid rgba(255, 212, 109, 0.58) !important;
    border-radius: var(--ui-radius) !important;
}

body.page-catalog .catalog-games-grid {
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)) !important;
}

body.page-catalog .catalog-game-card {
    position: relative;
    justify-content: flex-end;
    min-height: 210px !important;
    padding: 0 !important;
    color: #fff !important;
    text-decoration: none !important;
    overflow: hidden;
    isolation: isolate;
}

body.page-catalog .catalog-game-card::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(4, 6, 10, 0.04) 20%, rgba(4, 6, 10, 0.78) 100%);
}

body.page-catalog .catalog-game-thumb {
    position: absolute;
    inset: 0;
    max-width: none !important;
    border-radius: 0 !important;
}

body.page-catalog .catalog-game-thumb img {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: transform 0.28s ease;
}

body.page-catalog .catalog-game-card:hover .catalog-game-thumb img {
    transform: scale(1.055);
}

body.page-catalog .catalog-game-name {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 0 !important;
    margin: 0;
    padding: 18px !important;
    text-align: left;
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.55);
}

body.page-catalog .catalog-game-badge {
    z-index: 3;
    top: 12px !important;
    right: 12px !important;
    color: #15120a !important;
    background: linear-gradient(135deg, #fff4c4, var(--ui-gold)) !important;
}

.catalog-dlc-card {
    overflow: hidden;
}

.catalog-dlc-card,
.dlc-product-card,
.download-block,
.download-item,
.download-card,
.game-dlc-empty {
    color: var(--ui-text) !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
        var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.catalog-dlc-image {
    background: rgba(255, 255, 255, 0.055) !important;
}

.catalog-dlc-title,
.dlc-card-title,
.download-card-title,
.download-block-title,
.download-item-title,
.game-dlc-empty h3 {
    color: var(--ui-text) !important;
}

.catalog-dlc-game,
.catalog-dlc-desc,
.dlc-card-desc,
.download-card-meta,
.download-block-subtitle,
.download-item-meta,
.download-file-meta,
.game-dlc-empty p {
    color: var(--ui-muted) !important;
}

.dlcs-cards-grid {
    align-items: stretch;
}

.dlc-product-card {
    overflow: hidden;
}

.dlc-card-image,
.download-thumb {
    background: rgba(255, 255, 255, 0.055) !important;
}

.download-file-link:hover,
.catalog-dlc-card:hover,
.dlc-product-card:hover {
    border-color: rgba(255, 212, 109, 0.35) !important;
    transform: translateY(-2px);
}

.game-dlc-hero,
.legacy-games-hero {
    border-radius: var(--ui-radius) !important;
}

.catalog-dlc-rating--inline {
    color: #fff4c4 !important;
    background: rgba(10, 14, 20, 0.78) !important;
    border: 1px solid rgba(255, 212, 109, 0.2);
}

.catalog-dlc-open {
    min-height: 44px;
    border-radius: var(--ui-radius) !important;
}

.dlc-custom-select::after {
    filter: invert(1) sepia(1) saturate(0.4);
}

.dlc-tabs {
    border-color: var(--ui-border) !important;
}

.dlc-tab-btn {
    min-height: 46px;
    color: var(--ui-muted) !important;
    border-radius: var(--ui-radius) var(--ui-radius) 0 0 !important;
}

.dlc-tab-btn.active,
.dlc-tab-btn:hover {
    color: var(--ui-gold-strong) !important;
    background: rgba(242, 179, 45, 0.1) !important;
}

.dlc-dots-item,
.dlc-card-dots-dropdown,
.dlc-card-dots-dropdown a,
.dlc-card-dots-dropdown button {
    color: var(--ui-text) !important;
}

.dlc-card-dots-dropdown {
    background: #171d26 !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    box-shadow: var(--ui-shadow) !important;
}

.dlc-dots-item:hover,
.dlc-card-dots-dropdown a:hover,
.dlc-card-dots-dropdown button:hover {
    background: rgba(255, 255, 255, 0.07) !important;
}

.dlc-footer-links a,
.dlc-desc-links a,
.dlc-app-disclaimer-text a {
    color: var(--ui-gold-strong) !important;
}

.dlc-app-disclaimer-text {
    color: #ffb3ac !important;
    border-color: var(--ui-border) !important;
}

.dlc-to-pay-row,
.dlc-app-period-label,
.dlc-to-pay-row .dlc-to-pay-label,
.dlc-to-pay-row .dlc-to-pay-sum {
    color: var(--ui-text) !important;
    border-color: var(--ui-border) !important;
}

.vpn-import-btn,
.dlc-btn-pay {
    min-height: 48px;
    color: #14171d !important;
    background: linear-gradient(135deg, #fff4c4 0%, var(--ui-gold) 100%) !important;
    border: 1px solid rgba(255, 212, 109, 0.7) !important;
    border-radius: var(--ui-radius) !important;
    font-weight: 900 !important;
}

.admin-section {
    padding: var(--ui-page-pad) 0 !important;
    background: transparent !important;
}

.admin-header,
.admin-tabs,
.admin-table,
.admin-info,
.stat-card,
.quick-action-btn,
.analytics-card,
.table-header {
    box-shadow: var(--ui-shadow) !important;
}

.admin-actions,
.shop-actions,
.quick-actions,
.table-header {
    display: flex;
    flex-wrap: wrap;
    gap: 12px !important;
    align-items: center;
}

.admin-actions .btn,
.shop-actions .btn,
.quick-actions .quick-action-btn {
    min-height: 46px;
}

.admin-table {
    padding: 0 !important;
}

.admin-table h3,
.table-header h3,
.analytics-card h3,
.admin-info h3,
.stat-content h3 {
    color: var(--ui-text) !important;
    font-weight: 900 !important;
}

.admin-table table,
.pub-mgmt__table {
    min-width: 760px;
}

.admin-table img,
.product-thumb {
    border-radius: var(--ui-radius);
}

.btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    color: var(--ui-gold-strong) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
}

.pub-section,
.pub-stats-page,
.pub-mgmt {
    background: transparent !important;
}

.pub-card,
.pub-mgmt__card,
.pub-mgmt__stat,
.pub-stat-card-new,
.pub-period,
.site-mgmt__card {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
        var(--ui-surface) !important;
}

.pub-stats-header__title,
.pub-mgmt__title,
.pub-card-title,
.site-mgmt__card-title,
.pub-period-label {
    color: var(--ui-text) !important;
}

.pub-stats-header__sub,
.pub-stat-label,
.pub-stat-sub,
.pub-period-row span,
.pub-form-hint,
.pub-mgmt__subtitle,
.pub-mgmt__dlc-meta {
    color: var(--ui-muted) !important;
}

.pub-icon-upload,
.pub-toggle-label,
.pub-inline-form,
.pub-price-option,
.release-upload-zone,
.release-history-item,
.release-file-item,
.pub-form-group[style*="background"],
.pub-card [style*="background: #fafafa"],
.pub-card [style*="background:#fafafa"],
.pub-card [style*="background: #ffffff"],
.pub-card [style*="background:#ffffff"] {
    color: var(--ui-text) !important;
    background: rgba(255, 255, 255, 0.045) !important;
    border-color: var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
}

.pub-delete-option-btn,
.pub-delete-pool-key-btn {
    min-width: 38px;
    min-height: 38px !important;
}

.news-delete-btn,
.release-delete-btn,
.pub-mgmt__btn,
.pub-btn,
.btn {
    min-height: 44px;
}

.pub-select-wrapper select,
.pub-select {
    color: var(--ui-text) !important;
    background: rgba(10, 14, 20, 0.86) !important;
}

.pub-select-wrapper span {
    color: var(--ui-muted) !important;
}

.pub-select-wrapper select option,
.pub-select option {
    color: #f4f7fb !important;
    background: #111821 !important;
}

.balance-page .balance-tx-block,
.release-history-item,
.pub-news-item,
.pub-mgmt__card,
.pub-mgmt__stat,
.pub-card,
.admin-info,
.admin-table {
    overflow: hidden;
}

.pub-delete-option-btn:hover {
    background: rgba(255, 107, 95, 0.12) !important;
}

.balance-payment-result .container,
.page-order-confirmation .auth-section .container,
.page-token-history .main-catalog .container,
.page-api .main-catalog .container {
    width: min(100%, 620px);
}

.page-api .main-catalog .container,
.page-token-history .main-catalog .container {
    width: min(100%, 980px);
}

.page-order-confirmation code,
.key-row code,
.key-history-text,
.pub-card code {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.copy-key-btn {
    min-height: 38px !important;
    padding: 8px 12px !important;
    border-radius: var(--ui-radius) !important;
}

.error-section {
    min-height: calc(100vh - 180px) !important;
}

.error-content {
    max-width: 620px;
    margin: 0 auto;
}

.error-icon {
    color: var(--ui-gold) !important;
    text-shadow: 0 18px 36px rgba(242, 179, 45, 0.18);
}

.error-title,
.error-subtitle {
    color: var(--ui-text) !important;
}

.error-description {
    color: var(--ui-muted) !important;
}

.footer {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.footer a:hover {
    color: var(--ui-gold-strong) !important;
}

@media (max-width: 1200px) {
    body.page-catalog .header-wrapper--catalog-search {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
    }
}

@media (max-width: 900px) {
    .app-summary-panel {
        position: static;
    }

    .app-grid--sidebar {
        grid-template-columns: 1fr !important;
    }

    .page-about .row,
    .page-cooperation .row {
        gap: 18px;
    }
}

@media (max-width: 768px) {
    .header-wrapper {
        min-height: auto;
    }

    .logo-mark-wrap {
        width: 42px !important;
        height: 42px !important;
    }

    .logo-note {
        display: none;
    }

    .header-search-link,
    .header-cart-link,
    .header-login-link,
    .header-account-link,
    .header-lang-toggle {
        min-height: 40px;
    }

    .header-search-link,
    .header-cart-link {
        width: 40px;
    }

    .header-login-link,
    .header-account-link {
        padding: 0 10px !important;
        font-size: 12px !important;
    }

    .header-account-link {
        max-width: 122px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .container-parent {
        border-radius: 0;
    }

    .container-parent[style*="background"]::before {
        background: linear-gradient(180deg, rgba(10, 13, 18, 0.90), rgba(10, 13, 18, 0.68));
    }

    .page-about h1,
    .page-cooperation h1 {
        font-size: clamp(30px, 10vw, 42px) !important;
    }

    .page-about .d-grid .btn,
    .page-cooperation .d-grid .btn,
    .page-cooperation form .btn {
        width: 100%;
    }

    .page-cooperation .card-body {
        padding: 18px !important;
    }

    .page-cooperation ul {
        width: 100%;
    }

    .page-policy .container.py-4,
    .page-terms .container.py-4,
    .page-procedure .container.py-4,
    .page-report .rounded,
    .page-contacts .dlc-text-card {
        padding: 16px !important;
    }

    body.page-catalog .catalog-games-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.page-catalog .catalog-game-card {
        min-height: 160px !important;
    }

    body.page-catalog .catalog-game-name {
        padding: 14px !important;
        font-size: 15px !important;
    }

    .catalog-dlcs-grid {
        grid-template-columns: 1fr !important;
    }

    .catalog-dlc-image {
        aspect-ratio: 16 / 10 !important;
    }

    .dlc-card-inner,
    .pub-icon-upload,
    .shop-info-header,
    .pub-mgmt__header,
    .pub-mgmt__dlc-row,
    .pub-mgmt__attach-form,
    .admin-actions,
    .shop-actions,
    .table-header,
    .quick-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .dlc-card-icon {
        width: 72px !important;
        height: 72px !important;
    }

    .dlc-card-dots-wrap {
        top: 4px;
        right: 4px;
    }

    .dlc-purchase-row,
    .dlc-pay-form,
    .dlc-to-pay-row {
        display: grid !important;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .dlc-pay-form .dlc-btn-pay,
    .dlc-purchase-row > *,
    .vpn-import-btn {
        width: 100% !important;
    }

    .app-cart-actions,
    .app-list-row,
    .app-card-link--between,
    .pub-period-row {
        align-items: flex-start !important;
    }

    .app-choice-card {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }

    .app-choice-end {
        justify-content: space-between;
        width: 100%;
    }

    .app-list-row {
        display: grid !important;
        grid-template-columns: 1fr;
    }

    .app-list-side {
        align-items: flex-start !important;
        width: 100%;
    }

    .admin-stats,
    .analytics-grid,
    .pub-stats-grid-new,
    .pub-periods,
    .pub-mgmt__stats {
        grid-template-columns: 1fr !important;
    }

    .admin-tabs {
        overflow-x: auto;
        flex-wrap: nowrap !important;
        scrollbar-width: none;
    }

    .admin-tabs::-webkit-scrollbar {
        display: none;
    }

    .admin-tabs .tab-btn {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .admin-actions .btn,
    .shop-actions .btn,
    .quick-action-btn,
    .pub-mgmt__btn,
    .pub-mgmt__actions form,
    .pub-mgmt__dlc-row form,
    .pub-mgmt__attach-form select,
    .pub-mgmt__attach-form button {
        width: 100% !important;
        justify-content: center;
    }

    .page-order-confirmation [style*="display: flex"],
    .balance-payment-result [style*="display: inline-block"] {
        max-width: 100%;
    }

    .balance-payment-result a[style*="display: inline-block"] {
        display: flex !important;
        width: 100%;
        margin-top: 10px;
    }

    .balance-payment-result span[style*="margin"] {
        display: none !important;
    }

    .error-content {
        padding: 28px 18px !important;
    }
}

@media (max-width: 480px) {
    .header-actions {
        gap: 5px !important;
    }

    .header-search-link,
    .header-cart-link {
        width: 38px;
    }

    .header-lang-toggle {
        padding: 0 7px !important;
    }

    .header-lang-toggle i {
        display: none;
    }

    .header-login-link {
        display: none !important;
    }

    .header-account-link {
        max-width: 104px;
    }

    body.page-catalog .catalog-games-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.page-catalog .catalog-game-card {
        min-height: 150px !important;
    }

    .catalog-header,
    .app-card,
    .admin-header,
    .admin-tabs,
    .admin-table,
    .pub-card,
    .site-mgmt__card {
        border-radius: 7px !important;
    }
}

@media (max-width: 360px) {
    body.page-catalog .catalog-games-grid {
        grid-template-columns: 1fr !important;
    }

    body.page-catalog .catalog-game-card {
        min-height: 180px !important;
    }
}

/* Final catalog header/search guard: this page has an extra search form in the header. */
body.page-catalog .header-wrapper--catalog-search {
    display: grid !important;
    grid-template-columns: minmax(150px, auto) minmax(250px, 1fr) minmax(320px, 520px) auto !important;
    align-items: center !important;
    column-gap: 14px !important;
    row-gap: 10px !important;
}

body.page-catalog .header-wrapper--catalog-search .mobile-menu-btn {
    display: none !important;
}

body.page-catalog .header-wrapper--catalog-search .logo,
body.page-catalog .header-wrapper--catalog-search .desktop-nav,
body.page-catalog .header-wrapper--catalog-search .header-actions,
body.page-catalog .header-wrapper--catalog-search .catalog-header-search {
    min-width: 0 !important;
}

body.page-catalog .header-wrapper--catalog-search .desktop-nav {
    display: block !important;
}

body.page-catalog .header-wrapper--catalog-search .desktop-nav ul {
    justify-content: flex-start !important;
    gap: 8px !important;
}

body.page-catalog .header-wrapper--catalog-search .catalog-header-search {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 46px !important;
    height: 46px !important;
    justify-self: stretch !important;
    flex: none !important;
    overflow: hidden;
}

.header-search-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #98a2b3;
    cursor: pointer;
    flex: 0 0 28px;
}

.header-search-submit:hover,
.header-search-submit:focus-visible {
    color: var(--ui-gold-strong);
    background: rgba(242, 179, 45, 0.1);
    outline: none;
}

body.page-catalog .header-wrapper--catalog-search .header-search-input {
    flex: 1 1 auto;
    min-width: 0 !important;
}

body.page-catalog .header-wrapper--catalog-search .header-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    justify-self: end !important;
    margin-left: 0 !important;
    white-space: nowrap;
}

@media (max-width: 1200px) {
    body.page-catalog .header-wrapper--catalog-search {
        grid-template-columns: auto minmax(118px, auto) minmax(260px, 1fr) auto !important;
    }

    body.page-catalog .header-wrapper--catalog-search .mobile-menu-btn {
        display: flex !important;
    }

    body.page-catalog .header-wrapper--catalog-search .desktop-nav {
        display: none !important;
    }
}

@media (max-width: 900px) {
    body.page-catalog .header-wrapper--catalog-search {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
    }

    body.page-catalog .header-wrapper--catalog-search .catalog-header-search {
        grid-column: 1 / -1 !important;
        order: 20;
        margin-top: 4px !important;
    }

    body.page-catalog .header-wrapper--catalog-search .header-actions {
        grid-column: 3;
    }
}

@media (max-width: 768px) {
    body.page-catalog .header-wrapper--catalog-search .catalog-header-search {
        display: flex !important;
        height: 46px !important;
        min-height: 46px !important;
        margin-top: 8px !important;
    }
}

@media (max-width: 480px) {
    body.page-catalog .header-wrapper--catalog-search {
        column-gap: 8px !important;
    }

    body.page-catalog .header-wrapper--catalog-search .catalog-header-search {
        padding: 0 12px !important;
    }
}

/* Compact catalog search: keep only the magnifier in the header. */
.header-search-popover {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
}

.header-search-popover > summary.header-search-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    min-height: 42px;
    padding: 0;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.header-search-popover > summary.header-search-link::-webkit-details-marker {
    display: none;
}

.header-search-popover > summary.header-search-link::marker {
    content: "";
}

.header-search-popover[open] > summary.header-search-link {
    border-color: rgba(242, 179, 45, 0.34);
    background: rgba(242, 179, 45, 0.1);
    color: var(--ui-gold-strong);
}

.header-search-panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    gap: 8px;
    width: min(320px, calc(100vw - 28px));
    min-height: 48px;
    padding: 8px 10px 8px 14px;
    border: 1px solid var(--ui-border-strong);
    border-radius: 10px;
    background: rgba(17, 24, 33, 0.98);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34);
}

.header-search-panel-input {
    flex: 1 1 auto;
    min-width: 0;
    height: 30px;
    padding: 0;
    border: 0;
    outline: none;
    color: var(--ui-text);
    background: transparent;
    font: inherit;
    font-size: 14px;
}

.header-search-panel-input::placeholder {
    color: var(--ui-muted);
}

.header-search-panel-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 8px;
    color: #15130c;
    background: linear-gradient(135deg, var(--ui-gold-strong), var(--ui-gold));
    cursor: pointer;
    flex: 0 0 34px;
}

@media (max-width: 768px) {
    .header-search-popover > summary.header-search-link {
        width: 40px;
        min-height: 40px;
    }

    .header-search-panel {
        right: -8px;
        width: min(300px, calc(100vw - 24px));
    }
}

/* Final override: catalog header search must occupy only one icon slot. */
body.page-catalog .header-wrapper {
    display: flex !important;
    grid-template-columns: none !important;
}

body.page-catalog .header-actions .header-search-popover {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
}

body.page-catalog .header-actions .header-search-popover > summary.header-search-link,
body.page-catalog .header-actions > .header-search-link {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    flex: 0 0 42px !important;
}

body.page-catalog .header-search-popover:not([open]) .header-search-panel {
    display: none !important;
}

body.page-catalog .header-search-popover[open] .header-search-panel {
    display: flex !important;
}

body.page-catalog .header-search-panel {
    width: min(270px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
}

@media (max-width: 768px) {
    body.page-catalog .header-actions .header-search-popover,
    body.page-catalog .header-actions .header-search-popover > summary.header-search-link,
    body.page-catalog .header-actions > .header-search-link {
        width: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;
        height: 40px !important;
        min-height: 40px !important;
        flex-basis: 40px !important;
    }
}
