/* ==========================================
   БАЗА — КИБЕРПАНК
   ========================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

@font-face {
    font-family: 'Montserrat';
    src: url('Montserrat-VariableFont_wght.ttf') format('truetype');
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}
:root { --font-site: 'Montserrat', sans-serif; }
button, input, select, textarea, optgroup { font-family: inherit; }

body {
    font-family: var(--font-site);
    background: #0a0a12;
    color: #e0e0e0;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    user-select: none;
}

.screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transition: opacity 0.6s ease;
}

.screen.active {
    display: flex;
}

/* ==========================================
   ВЕРХНЕЕ МЕНЮ (КИБЕРПАНК)
   ========================================== */
.main-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    padding: 0 30px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    justify-content: normal;
    background: #0a0a12;
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(0, 212, 255, 0.15);
    z-index: 1000;
    box-shadow: 0 0 40px rgba(0, 212, 255, 0.05);
}

.header-brand {
    display: flex;
    align-items: center;
    gap: 10px;
}

.header-brand .brand-icon {
    font-size: 1.4rem;
    filter: drop-shadow(0 0 10px var(--warm-72676261283235352c203231352c20302c20302e3329,rgba(255, 215, 0, 0.3)));
}

.header-brand .brand-name {
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 3px;
    background: linear-gradient(90deg, var(--warm-23666664373030,#ffd700), #ff6b35);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.header-nav {
    display: flex;
    gap: 30px;
    align-items: center;
}

.header-nav .nav-link {
    color: #666;
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 1.5px;
    transition: all 0.3s;
    padding: 4px 0;
    border-bottom: 2px solid transparent;
    position: relative;
}

.header-nav .nav-link::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, #00d4ff, #ff2e63);
    transition: width .65s cubic-bezier(.25,.1,.25,1);
}

.header-nav .nav-link:hover {
    color: #aaa;
}

.header-nav .nav-link:hover::after {
    width: 100%;
}

.header-nav .nav-link.active {
    color: #fff;
    border-bottom-color: #00d4ff;
    text-shadow: 0 0 20px rgba(0, 212, 255, 0.2);
}

.header-nav .nav-link.active::after {
    width: 100%;
}

.header-nav .nav-link.disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

.header-reroll {
    display: flex;
    align-items: center;
    gap: 6px;
    background: var(--warm-72676261283235352c203231352c20302c20302e303829,rgba(255, 215, 0, 0.08));
    border: 1px solid var(--warm-72676261283235352c203231352c20302c20302e313529,rgba(255, 215, 0, 0.15));
    border-radius: 20px;
    padding: 4px 14px 4px 10px;
    color: inherit;
    font: inherit;
}

.header-reroll .reroll-icon {
    font-size: 0.9rem;
}

.header-reroll .reroll-count {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--warm-23666664373030,#ffd700);
    text-shadow: 0 0 20px var(--warm-72676261283235352c203231352c20302c20302e3229,rgba(255, 215, 0, 0.2));
}

/* ==========================================
   ПАРТИКЛЫ
   ========================================== */
#particlesCanvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    opacity: 0.6;
}

#screen-main .main-center {
    position: relative;
    z-index: 1;
}

/* ==========================================
   ГЛАВНЫЙ ЭКРАН
   ========================================== */
#screen-main {
    background: radial-gradient(ellipse at center, #0d0d20 0%, #0a0a12 100%);
}

/* Хардкор: все фоновые частицы превращаются в поднимающиеся искры. */
body.hardcore-mode .roulette-particle,
body.hardcore-mode .final-particle {
    background: #ff6a2b;
    box-shadow: 0 0 9px #ff6a2b, 0 0 22px rgba(255, 49, 46, .58);
    animation-name: hardcore-ember-float;
    animation-timing-function: linear;
}
body.hardcore-mode .page-particle {
    background: #ff6a2b;
    box-shadow: 0 0 9px #ff6a2b, 0 0 22px rgba(255, 49, 46, .58);
    animation-name: hardcore-page-ember;
    animation-timing-function: linear;
}
@keyframes hardcore-ember-float {
    0% { transform: translate3d(0, 58px, 0) scale(.28); opacity: 0; }
    12% { opacity: .78; }
    58% { transform: translate3d(calc(var(--drift-x) * .45), -130px, 0) scale(.92); opacity: .72; }
    100% { transform: translate3d(var(--drift-x), -300px, 0) scale(.25); opacity: 0; }
}
@keyframes hardcore-page-ember {
    0% { transform: translate3d(0, 54px, 0) scale(.3); opacity: 0; }
    14% { opacity: .68; }
    60% { transform: translate3d(var(--x2), -110px, 0) scale(.9); opacity: .64; }
    100% { transform: translate3d(var(--x3), -270px, 0) scale(.25); opacity: 0; }
}

.mode-orb { position: absolute; left: clamp(14px, var(--orb-left, 10%), calc(100% - 38px)); top: clamp(14px, var(--orb-top, 68%), calc(100% - 38px)); z-index: 2; width: 24px; height: 24px; padding: 0; border: 1px solid rgba(255, 71, 87, .82); border-radius: 50%; opacity: .56; background: radial-gradient(circle at 32% 28%, #ff9da7, #ef4444 58%, #781c2b); cursor: pointer; box-shadow: 0 0 13px rgba(255, 71, 87, .68), 0 0 30px rgba(255, 40, 60, .25); animation: mode-orb-drift 120s linear infinite; transition: opacity .25s ease, box-shadow .25s ease, background .3s ease, border-color .3s ease; }
.mode-orb:hover { opacity: .95; box-shadow: 0 0 18px rgba(255, 71, 87, .95), 0 0 42px rgba(255, 40, 60, .42); }
.mode-orb.is-hardcore { border-color: rgba(57, 191, 255, .85); background: radial-gradient(circle at 32% 28%, #b2f4ff, #2594d9 58%, #153b7e); box-shadow: 0 0 13px rgba(57, 191, 255, .72), 0 0 30px rgba(0, 120, 255, .25); }
.mode-orb.is-hardcore:hover { box-shadow: 0 0 18px rgba(57, 191, 255, .95), 0 0 42px rgba(0, 120, 255, .42); }
@keyframes mode-orb-drift {
    0%, 100% { transform: translate(0, 0); }
    14% { transform: translate(-1.5vw, -2vh); }
    31% { transform: translate(2vw, -3vh); }
    48% { transform: translate(2.5vw, -1vh); }
    65% { transform: translate(1vw, 2.5vh); }
    82% { transform: translate(-2vw, 2vh); }
    93% { transform: translate(-1vw, -.8vh); }
}

body.hardcore-mode #screen-main { background: radial-gradient(ellipse at center, #311019 0%, #10080c 64%, #09090f 100%); }
body.hardcore-mode #particlesCanvas { opacity: .9; filter: drop-shadow(0 0 5px rgba(255, 85, 36, .42)); }
body.hardcore-mode .main-header { border-color: rgba(255, 71, 87, .42); box-shadow: 0 0 40px rgba(255, 71, 87, .12); }
body.hardcore-mode .main-title { background-image: linear-gradient(135deg, #ff3446, #ff8a3d, #ffd4bd); text-shadow: 0 0 60px rgba(255, 71, 87, .22); }
body.hardcore-mode .main-subtitle { color: #e99a9f; text-shadow: 0 0 30px rgba(255, 71, 87, .22); }
body.hardcore-mode .btn-main { background: linear-gradient(145deg, #ff3146, #9d1526); box-shadow: 0 0 80px rgba(255, 49, 70, .32), inset 0 0 40px rgba(255,255,255,.07); }
body.hardcore-mode .btn-main::before { background: linear-gradient(135deg, #ff1f37, #ff8a3d, #9d1526); }
body.hardcore-mode .btn-main .btn-main-text { white-space: normal; }
body.hardcore-mode .btn-main .btn-main-sub { letter-spacing: 1.5px; }
body.hardcore-mode .category-plate { border-color: rgba(255, 71, 87, .45); background: rgba(255, 49, 70, .08); }
body.hardcore-mode .progress-dot.active, body.hardcore-mode .progress-dot.done { color: #ff4757; }
body.hardcore-mode .header-reroll { border-color: rgba(255, 71, 87, .3); }
body.hardcore-mode .header-brand .brand-name { background-image: linear-gradient(90deg, #ff5867, #ff1f37); }
body.hardcore-mode .header-nav .nav-link.active { border-bottom-color: #ff4757; text-shadow: 0 0 20px rgba(255, 71, 87, .35); }
body.hardcore-mode .header-nav .nav-link::after { background: linear-gradient(90deg, #ff1f37, #ff8a3d); }
body.hardcore-mode .btn-accept { background: linear-gradient(135deg, #ff4657, #b31528); box-shadow: 0 0 40px rgba(255, 71, 87, .22); }
body.hardcore-mode .btn-accept:hover:not(:disabled) { box-shadow: 0 0 60px rgba(255, 71, 87, .38); }
body.hardcore-mode .roulette-particle, body.hardcore-mode .final-particle, body.hardcore-mode .page-particle { background: #ff4757; box-shadow: 0 0 12px #ff4757, 0 0 24px rgba(255, 71, 87, .42); }

.main-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    width: 100%;
    box-sizing: border-box;
    padding-inline: 24px;
}

.main-title {
    max-width: 100%;
    font-size: 4.5rem;
    font-weight: 900;
    background: linear-gradient(135deg, #00d4ff, #a855f7, #ff2e63);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: 8px;
    text-align: center;
    animation: shimmer 3s ease-in-out infinite;
    text-shadow: 0 0 60px rgba(0, 212, 255, 0.1);
}

@keyframes shimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.main-subtitle {
    color: #666;
    font-size: 1.1rem;
    letter-spacing: 6px;
    margin-top: -20px;
    max-width: 100%;
    text-align: center;
    line-height: 1.45;
    overflow-wrap: break-word;
    text-shadow: 0 0 30px rgba(0, 212, 255, 0.05);
}

.btn-main {
    width: 280px;
    height: 280px;
    box-sizing: border-box;
    padding: 0;
    border-radius: 50%;
    border: none;
    background: linear-gradient(145deg, #00d4ff, #a855f7);
    color: #fff;
    cursor: pointer;
    transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease;
    box-shadow: 0 0 80px rgba(0, 212, 255, 0.2), inset 0 0 40px rgba(255, 255, 255, 0.05);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
}

.btn-main::before {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    background: linear-gradient(135deg, #00d4ff, #a855f7, #ff2e63);
    background-size: 200% 200%;
    animation: shimmer 3s ease-in-out infinite;
    z-index: -1;
    filter: blur(30px);
    opacity: 0.4;
    transform: scale(1);
    transition: opacity .35s ease, transform .35s cubic-bezier(.22,1,.36,1);
}

.btn-main:hover {
    transform: scale(1.05);
    box-shadow: 0 0 120px rgba(0, 212, 255, 0.3);
}

.btn-main:active {
    transform: scale(0.95);
}

.btn-main .btn-main-text {
    font-size: 2.2rem;
    font-weight: 900;
    letter-spacing: 4px;
    text-shadow: 0 2px 30px rgba(0, 0, 0, 0.4);
    width: 88%;
    text-align: center;
    line-height: 1.25;
}
.btn-main:hover::before { opacity:.58; transform:scale(1.03); }

.btn-main .btn-main-sub {
    font-size: 0.8rem;
    opacity: 0.8;
    margin-top: 5px;
    letter-spacing: 2px;
    width: 80%;
    text-align: center;
}

/* ==========================================
   ЭКРАН ВЫБОРА
   ========================================== */
#screen-select {
    background: radial-gradient(ellipse at 50% 40%, #0d0d20 0%, #0a0a12 100%);
    justify-content: flex-start;
    padding-top: 70px;
    overflow: hidden;
}

.roulette-particles,
.final-particles {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    opacity: 0.82;
}

.roulette-particle,
.final-particle {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background: #00d4ff;
    box-shadow: 0 0 12px #00d4ff, 0 0 24px rgba(168, 85, 247, 0.5);
    opacity: 0;
    animation: roulette-particle-float var(--duration) ease-in-out var(--delay) infinite;
    animation-play-state: running;
}

#screen-select.is-spinning .roulette-particle {
    animation-play-state: running;
}

#screen-select.is-spinning .roulette-particles {
    opacity: 1;
}

.final-particles {
    opacity: 0.38;
}

.final-particle {
    background: #2ed573;
    box-shadow: 0 0 10px #2ed573, 0 0 20px rgba(0, 212, 255, 0.35);
}

@keyframes roulette-particle-float {
    0%, 100% { transform: translate3d(0, 0, 0) scale(0.35); opacity: 0; }
    15%, 85% { opacity: 0.48; }
    50% { transform: translate3d(var(--drift-x), var(--drift-y), 0) scale(1); opacity: 0.7; }
}

#screen-select .selected-items,
#screen-select .select-container {
    position: relative;
    z-index: 1;
}

.selected-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    padding: 8px 20px;
    height: 56px;
    flex: 0 0 56px;
    box-sizing: border-box;
    max-width: 95%;
}

.selected-items .selected-chip {
    background: rgba(0, 212, 255, 0.08);
    border: 1px solid rgba(0, 212, 255, 0.2);
    border-radius: 22px;
    padding: 6px 18px;
    font-size: 0.85rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
    animation: slideUp 0.3s ease;
    cursor: pointer;
    transition: all 0.2s ease;
    color: #00d4ff;
}

.selected-items .selected-chip .chip-icon {
    font-size: 0.85rem;
}

.selected-items .selected-chip:hover {
    background: var(--warm-72676261283235352c203231352c20302c20302e313229,rgba(255, 215, 0, 0.12));
    border-color: var(--warm-23666664373030,#ffd700);
    transform: scale(1.05);
    box-shadow: 0 0 30px var(--warm-72676261283235352c203231352c20302c20302e303529,rgba(255, 215, 0, 0.05));
}

.select-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    width: 96%;
    max-width: 1100px;
    padding: 5px 20px;
    flex: 1;
    justify-content: center;
}

.category-plate {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(0, 212, 255, 0.08);
    border-radius: 16px;
    padding: 14px 40px;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: all 0.4s ease;
    min-width: 260px;
    justify-content: center;
    backdrop-filter: blur(10px);
}

.category-plate .category-icon {
    font-size: 1.8rem;
}

.category-plate .category-name {
    font-size: 1.6rem;
    font-weight: 700;
    color: #fff;
    letter-spacing: 1px;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.03);
}

.category-plate.done {
    border-color: rgba(0, 212, 255, 0.3);
    background: rgba(0, 212, 255, 0.05);
}

.category-plate.done .category-name {
    color: #00d4ff;
}

.wheel-wrapper {
    width: 100%;
    max-width: 1100px;
    position: relative;
}

.wheel-container {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(135deg, #11111d, #0d0d18);
    border-radius: 20px;
    border: 1px solid rgba(0, 212, 255, 0.05);
    padding: 30px 10px;
    min-height: 220px;
    box-shadow: inset 0 0 60px rgba(0, 212, 255, 0.02);
}

.wheel-container.has-selection-glow {
    border-color: rgba(var(--selection-color-rgb), 0.55);
    box-shadow: inset 0 0 80px rgba(var(--selection-color-rgb), 0.12), 0 0 38px rgba(var(--selection-color-rgb), 0.3);
}

.wheel-container.spin-impact {
    animation: wheel-stop-impact 0.5s ease-out forwards;
}

@keyframes wheel-stop-impact {
    0% {
        border-color: rgba(var(--selection-color-rgb), 0.05);
        box-shadow: inset 0 0 60px rgba(var(--selection-color-rgb), 0.02), 0 0 0 rgba(var(--selection-color-rgb), 0);
    }
    100% {
        border-color: rgba(var(--selection-color-rgb), 0.55);
        box-shadow: inset 0 0 80px rgba(var(--selection-color-rgb), 0.12), 0 0 38px rgba(var(--selection-color-rgb), 0.3);
    }
}

.wheel-container::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 5%;
    width: 90%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 212, 255, 0.1), transparent);
    pointer-events: none;
}

.wheel-track {
    display: flex;
    gap: 16px;
    padding: 0 15px;
    will-change: transform;
    backface-visibility: hidden;
    transform: translateZ(0);
    align-items: center;
    justify-content: center;
}

.wheel-item {
    flex: 0 0 140px !important;
    aspect-ratio: 1 / 1;
    border-radius: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    color: #888;
    text-align: center;
    padding: 12px 8px;
    word-break: break-word;
    flex-shrink: 0;
    will-change: transform;
    backface-visibility: hidden;
    transform: translateZ(0);
    font-size: 1rem !important;
    background: rgba(255, 255, 255, 0.03);
    border: 2px solid rgba(255, 255, 255, 0.04);
    transition: all 0.3s ease;
    min-height: 140px;
    min-width: 140px;
}

.wheel-item.active {
    background: rgba(0, 212, 255, 0.08);
    border-color: #00d4ff;
    box-shadow: 0 0 50px rgba(0, 212, 255, 0.08), inset 0 0 30px rgba(0, 212, 255, 0.02);
    color: #fff;
    transform: scale(1.06);
}

.wheel-pointer {
    position: absolute;
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 3rem;
    color: var(--warm-23666664373030,#ffd700);
    text-shadow: 0 0 30px var(--warm-72676261283235352c203231352c20302c20302e3629,rgba(255, 215, 0, 0.6)), 0 0 60px var(--warm-72676261283235352c203231352c20302c20302e3229,rgba(255, 215, 0, 0.2));
    pointer-events: none;
    line-height: 1;
}

.action-buttons {
    display: flex;
    gap: 18px;
    margin-top: 6px;
    align-items: center;
    position: relative;
}

.btn-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 44px;
    border-radius: 14px;
    border: none;
    font-size: 1.4rem;
    font-weight: 700;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, opacity .2s ease;
    letter-spacing: 1px;
    min-width: 180px;
    box-sizing: border-box;
    line-height: 1;
}

.btn-accept {
    background: linear-gradient(135deg, #00d4ff, #0088cc);
    color: #fff;
    box-shadow: 0 0 40px rgba(0, 212, 255, 0.1);
    width: 240px;
    min-width: 240px;
    height: 56px;
    gap: 9px;
    white-space: nowrap;
}

.btn-accept:hover:not(:disabled) {
    box-shadow: 0 0 60px rgba(0, 212, 255, 0.2);
}

.btn-accept:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    transform: none;
}

.btn-reroll {
    background: var(--warm-72676261283235352c203231352c20302c20302e303629,rgba(255, 215, 0, 0.06));
    border: 2px solid var(--warm-72676261283235352c203231352c20302c20302e3229,rgba(255, 215, 0, 0.2));
    color: var(--warm-23666664373030,#ffd700);
    padding: 12px 20px;
    border-radius: 14px;
    font-size: 1.3rem;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, opacity .2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: auto;
    justify-content: center;
    height: 56px;
}

.btn-reroll:hover:not(:disabled) {
    background: var(--warm-72676261283235352c203231352c20302c20302e3129,rgba(255, 215, 0, 0.1));
    box-shadow: 0 0 40px var(--warm-72676261283235352c203231352c20302c20302e303529,rgba(255, 215, 0, 0.05));
}

/* Подсветка без сдвига границы наведения и масштабирования текста. */
.btn-accept, .btn-reroll { transform: none; }
.btn-accept:focus-visible, .btn-reroll:focus-visible { outline: 2px solid var(--warm-23653162643638,#e1bd68); outline-offset: 4px; }

.btn-reroll:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    transform: none;
}

.btn-reroll .reroll-badge-small {
    background: var(--warm-72676261283235352c203231352c20302c20302e313229,rgba(255, 215, 0, 0.12));
    border-radius: 50%;
    padding: 0px 10px;
    font-size: 0.9rem;
    font-weight: 700;
    min-width: 24px;
    text-align: center;
    color: var(--warm-23666664373030,#ffd700);
    line-height: 1.6;
}

.btn-action.hidden {
    display: none;
}

.progress-indicator {
    display: flex;
    gap: 12px;
    margin-top: 6px;
}

.progress-dot {
    font-size: 1.4rem;
    color: #333;
    transition: all 0.4s ease;
}

.progress-dot.done {
    color: #00d4ff;
    text-shadow: 0 0 20px rgba(0, 212, 255, 0.2);
}

.progress-dot.active {
    color: var(--warm-23666664373030,#ffd700);
    transform: scale(1.3);
    text-shadow: 0 0 30px var(--warm-72676261283235352c203231352c20302c20302e3229,rgba(255, 215, 0, 0.2));
}

/* ==========================================
   ИТОГОВЫЙ ЭКРАН
   ========================================== */
#screen-final {
    background: radial-gradient(ellipse at 50% 40%, #0d0d20 0%, #0a0a12 100%);
    padding: 20px;
    padding-top: 70px;
    overflow-y: auto;
}

.final-container {
    position: relative;
    z-index: 1;
    max-width: 100%;
    width: 100%;
    height: 100%;
    max-height: 100vh;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(0, 212, 255, 0.04);
    border-radius: 20px;
    padding: 30px 40px;
    overflow-y: auto;
    scrollbar-width: none;
}

.final-container::-webkit-scrollbar {
    display: none;
}

.final-title {
    font-size: 2rem;
    text-align: center;
    color: #fff;
    margin-bottom: 20px;
    letter-spacing: 3px;
}

.final-summary {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: min(100%, 1400px);
    margin: 0 auto 16px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 12px;
    padding: 12px 16px;
}

.final-summary .item {
    display: grid;
    /* Равные боковые колонки удерживают значение строго в центре блока. */
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 6px 0;
    gap: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.final-summary .item:last-child {
    border-bottom: none;
}

.final-summary .item .label {
    font-size: 0.85rem;
    color: #555;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 600;
    text-align: left;
    white-space: nowrap;
}

.final-summary .item .value {
    font-size: 1rem;
    font-weight: 700;
    color: #eee;
    text-align: center;
    white-space: nowrap;
}

.final-summary .item .desc {
    font-size: 0.95rem;
    color: #888;
    font-style: italic;
    text-align: right;
    white-space: normal;
    word-wrap: break-word;
    line-height: 1.3;
}

/* ==========================================
   ЗАДАНИЯ
   ========================================== */
.quests-container {
    display: flex;
    gap: 16px;
    margin: 12px 0;
    justify-content: center;
    flex-wrap: nowrap;
    flex: 1;
    min-height: 180px;
}

.quest-slot {
    flex: 1;
    min-width: 0;
    max-width: 33.33%;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(0, 212, 255, 0.05);
    border-radius: 16px;
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: all 0.3s;
    min-height: 180px;
}

.quest-slot:hover {
    border-color: rgba(0, 212, 255, 0.12);
    background: rgba(0, 212, 255, 0.02);
}

.quest-slot .quest-number {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--warm-23666664373030,#ffd700);
    background: var(--warm-72676261283235352c203231352c20302c20302e303829,rgba(255, 215, 0, 0.08));
    padding: 2px 14px;
    border-radius: 12px;
    display: inline-block;
    margin-bottom: 8px;
}

.quest-slot .quest-title {
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 6px;
    word-break: break-word;
}

.quest-slot .quest-desc {
    font-size: 0.8rem;
    color: #999;
    margin-bottom: 12px;
    flex: 0 0 2.7em;
    line-height: 1.35;
    word-break: break-word;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.quest-slot .quest-images {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 12px;
    width: 100%;
}

.quest-slot .quest-thumb {
    width: min(300px, 100%);
    aspect-ratio: 16 / 9;
    height: auto;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid rgba(255, 255, 255, 0.04);
    transition: all 0.3s;
    background: #1a1a2e;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: #555;
    flex: 0 1 300px;
    min-width: 70px;
}

.quest-slot .quest-thumb:hover {
    border-color: #00d4ff;
    transform: scale(1.02);
    box-shadow: 0 0 30px rgba(0, 212, 255, 0.05);
}

.quest-slot .quest-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quest-slot .quest-reroll {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid var(--warm-72676261283235352c203231352c20302c20302e3229,rgba(255, 215, 0, 0.2));
    background: var(--warm-72676261283235352c203231352c20302c20302e303429,rgba(255, 215, 0, 0.04));
    color: var(--warm-23666664373030,#ffd700);
    font-size: 1rem;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.quest-slot .quest-reroll:hover {
    background: var(--warm-72676261283235352c203231352c20302c20302e313229,rgba(255, 215, 0, 0.12));
    transform: scale(1.1);
}

/* Текстовые задания без скриншотов */
.quest-slot.quest-text-only {
    min-height: 0;
    align-self: flex-start;
    justify-content: flex-start;
}

.quest-slot.quest-text-only .quest-desc {
    flex: 0 0 auto;
    margin-bottom: 14px;
}

.quest-slot.quest-text-only .quest-reroll {
    margin-top: 14px;
}

/* ==========================================
   КНОПКИ ИТОГОВ
   ========================================== */
.btn-get-quests {
    width: 100%;
    max-width: 280px;
    padding: 14px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--warm-23666664373030,#ffd700), var(--warm-23663061353030,#f0a500));
    color: #0a0a12;
    font-size: 1.2rem;
    font-weight: 900;
    cursor: pointer;
    transition: all 0.3s;
    letter-spacing: 2px;
    margin: 10px auto;
    display: block;
}

.btn-get-quests:hover {
    transform: scale(1.02);
    box-shadow: 0 0 40px var(--warm-72676261283235352c203231352c20302c20302e313529,rgba(255, 215, 0, 0.15));
}

.btn-get-quests.hidden {
    display: none;
}

.btn-final-done {
    width: 100%;
    max-width: 280px;
    padding: 14px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #ff2e63, #e63946);
    color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s;
    letter-spacing: 2px;
    margin: 10px auto;
    display: block;
}

.btn-final-done:hover {
    transform: scale(1.02);
    box-shadow: 0 0 40px rgba(255, 46, 99, 0.15);
}

.btn-final-done.hidden {
    display: none;
}

/* ==========================================
   ЭКРАН НАГРАДЫ
   ========================================== */
#screen-reward {
    background: radial-gradient(ellipse at 50% 40%, #0d0d20 0%, #0a0a12 100%);
    padding-top: 70px;
}

.reward-container {
    position: relative;
    z-index: 1;
    max-width: 480px;
    width: 100%;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(0, 212, 255, 0.04);
    border-radius: 20px;
    padding: 30px 28px;
}

.reward-title {
    font-size: 1.4rem;
    text-align: center;
    color: var(--warm-23666664373030,#ffd700);
    margin-bottom: 20px;
    letter-spacing: 2px;
}

.reward-grid {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
}

.reward-item {
    display: flex;
    align-items: center;
    justify-content: normal;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.04);
    border-radius: 10px;
    padding: 10px 16px;
    transition: all 0.3s;
    cursor: pointer;
}

.reward-item:hover {
    background: rgba(0, 212, 255, 0.02);
    border-color: rgba(0, 212, 255, 0.08);
}

.reward-item .reward-label {
    font-size: 0.85rem;
    color: #ccc;
    display: flex;
    align-items: center;
    gap: 8px;
}

.reward-item .reward-label .r-icon {
    font-size: 0.95rem;
}

.reward-item .reward-value {
    font-size: 0.8rem;
    font-weight: 700;
    color: #666;
    transition: all 0.3s;
    min-width: 30px;
    text-align: center;
}

.reward-item .reward-check {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid #444;
    background: transparent;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.75rem;
    color: #444;
    transition: all 0.3s;
    flex-shrink: 0;
}

.reward-item .reward-check.checked {
    border-color: #00d4ff;
    background: #00d4ff;
    color: #fff;
    box-shadow: 0 0 30px rgba(0, 212, 255, 0.1);
}

.reward-item.done .reward-value {
    color: #00d4ff;
}

.btn-reward-finish {
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--warm-23666664373030,#ffd700), var(--warm-23663061353030,#f0a500));
    color: #0a0a12;
    font-size: 1.2rem;
    font-weight: 900;
    cursor: pointer;
    transition: all 0.3s;
    letter-spacing: 2px;
}

.btn-reward-finish:hover {
    transform: scale(1.02);
    box-shadow: 0 0 40px var(--warm-72676261283235352c203231352c20302c20302e313529,rgba(255, 215, 0, 0.15));
}

.btn-disable-item { position: absolute; left: calc(100% + 18px); top: 50%; min-width: 132px; padding: 12px 18px; border: 2px solid rgba(255, 90, 90, .42); background: rgba(255, 71, 87, .09); color: #ff8d99; font-size: .88rem; transform: translateY(-50%); white-space: nowrap; }
.btn-disable-item:hover { border-color: #ff5969; background: rgba(255, 71, 87, .18); color: #fff; }
.btn-disable-item.hidden { display: none; }

.reward-rate { color: var(--warm-23666664373030,#ffd700); font-weight: 700; margin-left: auto; }
.reward-input { width: 64px; margin-left: 14px; padding: 6px; color: #fff; background: #10101d; border: 1px solid #303047; border-radius: 7px; text-align: center; }
.quest-reward input { width: 20px; height: 20px; accent-color: #00d4ff; }
.quest-reward { display:flex !important; }.quest-reward input { margin-left:auto; }
.survival-choice { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 0; }
.survival { padding: 12px; border-radius: 10px; background: transparent; color: #ddd; border: 1px solid #444; font-weight: 800; cursor: pointer; }
.survival.survived.selected { border-color: #2ed573; background: rgba(46,213,115,.14); color: #2ed573; }
.survival.died.selected { border-color: #ff4757; background: rgba(255,71,87,.14); color: #ff4757; }
.reward-total { text-align: center; color: var(--warm-23666664373030,#ffd700); font-weight: 900; letter-spacing: 1px; margin: 16px 0; }
.page-screen { padding: 80px 20px 30px; overflow-y: auto; align-items: flex-start; }
.page-container { width: min(900px,100%); margin: 0 auto; background: rgba(16,16,29,.82); border: 1px solid rgba(0,212,255,.12); border-radius: 18px; padding: 28px; }
.page-container h2 { text-align:center; margin-bottom: 24px; color:#fff; letter-spacing:2px; }
.history-list { display:flex; flex-direction:column; gap:10px; }
.stats-best-raid { margin-top:32px; }
.stats-best-raid h3 { margin:0 0 16px; color:var(--warm-23653863623833,#e8cb83); font-size:clamp(18px,2vw,24px); font-weight:800; }
.history-item[role="button"]:focus-visible { outline:2px solid var(--warm-23653863623833,#e8cb83); outline-offset:4px; }
.history-item { display:grid; grid-template-columns: 180px 1fr auto; gap:12px; align-items:center; padding:14px; border-radius:10px; background:rgba(255,255,255,.03); }
.history-item small { grid-column: 1 / -1; color:#777; }
.history-item strong { color:var(--warm-23666664373030,#ffd700); }
.empty-state { color:#888; text-align:center; }
.stats-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:22px; }
.stats-grid div { padding:18px; border-radius:12px; background:rgba(0,212,255,.05); text-align:center; }.stats-grid b{display:block;font-size:1.7rem;color:#00d4ff}.stats-grid span{color:#aaa;font-size:.8rem}
.btn-danger { width:100%; padding:13px; background:rgba(255,71,87,.12); border:1px solid #ff4757; border-radius:10px; color:#ff6875; font-weight:800; cursor:pointer; }
.btn-danger { transition: border-color .35s ease, background .35s ease, color .35s ease, box-shadow .35s ease; }
.btn-danger:hover { animation:none; background:rgba(255,71,87,.22); color:#fff; box-shadow:0 0 28px rgba(255,71,87,.55), inset 0 0 18px rgba(255,71,87,.16); }
@keyframes reset-danger-glow { from { box-shadow: 0 0 8px rgba(255,71,87,.25); } to { box-shadow: 0 0 28px rgba(255,71,87,.8), inset 0 0 14px rgba(255,71,87,.16); } }

/* Подсказки заданий, подробности рейда и библиотека */
.header-reroll { cursor: pointer; position: relative; }
.quest-reward-name { padding: 0; border: 0; background: none; color: var(--quest-color); font: inherit; font-weight: 800; cursor: pointer; }
.quest-hover-card { position: fixed; z-index: 2000; width: min(460px, calc(100vw - 24px)); max-height: min(720px, calc(100vh - 88px)); overflow: auto; opacity: 0; visibility: hidden; transform: translateY(-8px) scale(.98); pointer-events: none; transition: opacity .16s ease, visibility .16s ease, transform .16s ease; }
.quest-hover-card.visible { opacity: 1; visibility: visible; transform: translateY(0) scale(1); pointer-events: auto; }
.quest-reward button.quest-reward-name { width:max-content; max-width:calc(100% - 36px); height:auto; flex:0 1 auto; min-width:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; color:inherit; font:inherit; font-weight:800; text-align:left; cursor:pointer; }
.quest-reward button.quest-reward-name:focus-visible { outline:2px solid var(--warm-23653162643638,#e1bd68); outline-offset:4px; }
.quest-preview-close { position:sticky; top:8px; float:right; z-index:1; margin:8px 8px -44px 0; width:36px; height:36px; border:1px solid var(--warm-23616639353562,#af955b); border-radius:8px; background:#17150f; color:var(--warm-23663564633963,#f5dc9c); font-size:24px; cursor:pointer; }
.quest-preview-close + .quest-popup-card .quest-popup-head { padding-right:38px; }
#questHoverCard .quest-popup-card { background:linear-gradient(145deg,#211e16,#100f0c)!important; }
.quest-preview-backdrop { position:fixed; inset:0; z-index:1999; background:rgba(0,0,0,.72); backdrop-filter:blur(3px); }
.quest-preview-backdrop[hidden] { display:none; }
#questHoverCard.is-dialog { z-index:2000; border-radius:14px; background:#100f0c; box-shadow:0 24px 70px #000a; }
.quest-popup-card { border: 1px solid rgba(180,180,195,.35); background: linear-gradient(150deg, #171827, #0d0e17); border-radius: 14px; padding: 15px; box-shadow: 0 16px 38px rgba(0,0,0,.5); }
.quest-popup-card.quest-rare { border-color: rgba(57,191,255,.75); box-shadow: 0 0 28px rgba(57,191,255,.18), 0 16px 38px rgba(0,0,0,.5); }
.quest-popup-card.quest-hardcore { border-color: rgba(255,101,115,.88); box-shadow: 0 0 30px rgba(255,67,83,.24), 0 16px 38px rgba(0,0,0,.5); }
.quest-popup-head { display:flex; align-items:center; gap:10px; color:var(--warm-23666664373030,#ffd700); font-size:.73rem; font-weight:900; letter-spacing:.8px; }
.quest-popup-head em { font-style:normal; color:#a7a7b8; }.quest-rare .quest-popup-head em { color:#39bfff; }.quest-hardcore .quest-popup-head em { color:#ff6573; }
.quest-card-status { margin-left:auto; font-size:.64rem; }.quest-card-status.completed { color:#2ed573; }.quest-card-status.failed { color:#ff6573; }
.quest-popup-card h3 { margin:10px 0 5px; color:#fff; font-size:1rem; }.quest-popup-card p { margin:0; color:#b9bac7; font-size:.82rem; line-height:1.45; }
.quest-popup-bonus { display:block; margin-top:10px; color:var(--warm-23666664373030,#ffd700); font-weight:800; font-size:.72rem; }
.quest-popup-images { display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }.quest-popup-images button { width:calc(50% - 4px); aspect-ratio:16/9; border:1px solid rgba(0,212,255,.4); border-radius:8px; background:#111; overflow:hidden; padding:0; cursor:pointer; }.quest-popup-images img { width:100%; height:100%; object-fit:cover; }
.quest-hover-card .quest-popup-images { flex-direction:column; gap:12px; }
.quest-hover-card .quest-popup-images button { width:100%; aspect-ratio:auto; flex-shrink:0; }
.quest-hover-card .quest-popup-images img { display:block; width:100%; height:auto; object-fit:contain; }
.history-item { cursor:pointer; border:1px solid rgba(0,212,255,.16); transition:.2s; }.history-item.history-survived:hover { border-color:#2ed573; box-shadow:0 0 24px rgba(46,213,115,.32); }.history-item.history-died:hover { border-color:#ff4757; box-shadow:0 0 24px rgba(255,71,87,.32); }.history-items span { cursor:default; }
.raid-detail-modal { position:fixed; z-index:1200; inset:0; display:none; place-items:center; padding:28px; background:rgba(3,4,10,.78); backdrop-filter:blur(8px); }.raid-detail-modal.active { display:grid; }.raid-detail-panel { position:relative; width:min(1120px,100%); max-height:calc(100vh - 56px); overflow:auto; border:1px solid rgba(0,212,255,.34); border-radius:18px; padding:26px; background:#10111d; }.raid-detail-close { position:absolute; top:12px; right:12px; width:34px; height:34px; border:1px solid #4c4d64; border-radius:9px; background:#181927; color:#fff; cursor:pointer; }.raid-detail-panel h2 { text-align:center; margin:0; }.raid-detail-meta,.raid-detail-kills { text-align:center; color:#aaa; margin:10px 0; }.raid-detail-quests { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:20px; }.raid-detail-quests .quest-popup-card { min-width:0; }.raid-detail-quests .quest-popup-images button { width:100%; }
.quest-map-tabs { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-bottom:18px; }.quest-map-tabs button { padding:8px 12px; border:1px solid #323449; border-radius:8px; background:#171826; color:#bbb; cursor:pointer; }.quest-map-tabs button.active { color:#fff; border-color:#00d4ff; background:rgba(0,212,255,.1); }.quest-library { display:flex; flex-direction:column; gap:7px; }.quest-library-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; width:100%; padding:12px 14px; border:1px solid rgba(255,255,255,.09); border-radius:9px; background:rgba(255,255,255,.025); color:#fff; text-align:left; cursor:pointer; }.quest-library-row.quest-rare { border-color:rgba(57,191,255,.75); box-shadow:0 0 16px rgba(57,191,255,.13); }.quest-library-row.quest-hardcore { border-color:rgba(255,71,87,.86); box-shadow:0 0 20px rgba(255,71,87,.2); }.quest-library-row:hover { background:rgba(0,212,255,.05); }.quest-library-row span { color:#aeb0bb; font-size:.78rem; }.quest-library-row.done span { color:#2ed573; }.quest-library-locked { padding:13px; color:#7f8190; letter-spacing:4px; text-align:center; }.quest-library-inline-detail { margin:-2px 10px 8px; animation:inline-quest-open .2s ease-out; }.quest-library-inline-detail .quest-popup-card { border-radius:0 0 13px 13px; }.quest-completion-count { text-align:center; color:#9da0ae; }.hidden { display:none !important; }@keyframes inline-quest-open{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.reset-prompt { position:fixed; z-index:1300; padding:9px 12px; border:1px solid rgba(255,71,87,.65); border-radius:8px; background:#23131a; color:#ff8c98; font-size:.78rem; opacity:0; transform:translateY(5px); pointer-events:none; transition:.15s; }.reset-prompt.visible { opacity:1; transform:translateY(0); }
.theme-settings { margin:0 0 26px; padding:16px; border:1px solid rgba(0,212,255,.14); border-radius:14px; background:rgba(255,255,255,.02); }.theme-settings h3 { margin:0 0 12px; text-align:center; letter-spacing:1px; }.theme-choices { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; }.theme-choice { display:flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid #34364e; border-radius:9px; background:#151624; color:#c8c9d2; cursor:pointer; }.theme-choice.active { border-color:#00d4ff; color:#fff; box-shadow:0 0 16px rgba(0,212,255,.18); }.theme-choice:disabled { opacity:.38; cursor:not-allowed; }.theme-preview { width:14px; height:14px; border-radius:50%; background:#00d4ff; box-shadow:0 0 12px #00d4ff; }.theme-preview.violet{background:#ae6cff;box-shadow:0 0 12px #ae6cff}.theme-preview.gold{background:var(--warm-23666664333563,#ffd35c);box-shadow:0 0 12px var(--warm-23666664333563,#ffd35c)}.theme-preview.red{background:#ff4b5c;box-shadow:0 0 12px #ff4b5c}.theme-preview.light{filter:brightness(1.6)}.theme-lock-note{text-align:center;color:#ff9ba4;font-size:.78rem;margin:12px 0 0}
body[data-theme$="-day"] .page-screen,body[data-theme$="-day"] #screen-main,body[data-theme$="-day"] #screen-select,body[data-theme$="-day"] #screen-final,body[data-theme$="-day"] #screen-reward{filter:brightness(1.17) saturate(1.04)}
body[data-theme^="violet"]{--theme-accent:#ae6cff}body[data-theme^="violet"] .header-nav .nav-link.active,body[data-theme^="violet"] .quest-map-tabs button.active{border-color:#ae6cff}body[data-theme^="violet"] .theme-choice.active{border-color:#ae6cff;box-shadow:0 0 16px rgba(174,108,255,.22)}
body[data-theme^="gold"]{--theme-accent:var(--warm-23666664333563,#ffd35c)}body[data-theme^="gold"] .header-nav .nav-link.active,body[data-theme^="gold"] .quest-map-tabs button.active{border-color:var(--warm-23666664333563,#ffd35c)}body[data-theme^="gold"] .theme-choice.active{border-color:var(--warm-23666664333563,#ffd35c);box-shadow:0 0 16px var(--warm-72676261283235352c3231312c39322c2e323229,rgba(255,211,92,.22))}
body.hardcore-mode[data-theme] .header-nav .nav-link.active,body.hardcore-mode[data-theme] .quest-map-tabs button.active{border-color:#ff4757}body.hardcore-mode[data-theme] .theme-choice.active{border-color:#ff4757;box-shadow:0 0 16px rgba(255,71,87,.24)}
@media (max-width: 850px) { .raid-detail-quests { grid-template-columns:1fr; }.quest-library-row { grid-template-columns:1fr; gap:4px; }.quest-popup-images button { width:100%; } }
.header-reroll { justify-self: end; }
.header-nav { justify-self: center; }
.reward-item.counter { display:grid; grid-template-columns:1fr 34px 64px 34px; gap:6px; justify-content:normal; }
.reward-item.counter { gap:0; }.reward-item.counter .reward-input { margin:0 !important; border-radius:0; }.reward-item.counter button:first-of-type { border-radius:7px 0 0 7px; }.reward-item.counter button:last-of-type { border-radius:0 7px 7px 0; }
.rules p { background:rgba(255,255,255,.025); border:1px solid rgba(0,212,255,.08); border-radius:10px; padding:14px 16px; margin:10px 0; border-bottom:1px solid rgba(0,212,255,.08); }.rules p b{color:#00d4ff;display:block;margin-bottom:5px}
.history-item .status-survived { color:#2ed573; }.history-item .status-died { color:#ff4757; }
  .history-item-hardcore { border-color: rgba(255, 71, 87, .75) !important; box-shadow: inset 0 0 28px rgba(255, 49, 70, .06), 0 0 18px rgba(255, 71, 87, .12); }
.stats-grid small { display:block; margin-top:5px; color:#888; font-size:.68rem; }
.page-screen::before { content:none; }.page-container{position:relative;z-index:1}
.page-screen { padding-top:100px !important; justify-content:flex-start !important; }.stats-grid div { background:rgba(150,150,165,.13); border:1px solid rgba(255,255,255,.08); }.stats-grid div:nth-child(2){background:rgba(46,213,115,.16);border-color:rgba(46,213,115,.38)}.stats-grid div:nth-child(3){background:rgba(255,71,87,.16);border-color:rgba(255,71,87,.38)}.stats-grid b,.stats-grid span{color:#fff}.stats-grid small{color:#d0d0d0}

/* Редкости заданий */
.quest-rarity { margin: -2px 0 9px; font-size: .62rem; font-weight: 900; letter-spacing: 1.1px; color: #a7a7b8; }
.quest-slot.quest-common { border-color: rgba(180, 180, 195, .18); }
.quest-slot.quest-rare { border-color: rgba(0, 174, 255, .72); background: rgba(0, 126, 255, .06); box-shadow: 0 0 26px rgba(0, 174, 255, .16); }
.quest-slot.quest-rare .quest-rarity { color: #39bfff; text-shadow: 0 0 12px rgba(0, 174, 255, .45); }
.quest-slot.quest-hardcore { border-color: rgba(255, 67, 83, .9); background: rgba(255, 49, 67, .06); animation: quest-hardcore-glow 2.6s ease-in-out infinite; }
.quest-slot.quest-hardcore .quest-rarity { color: #ff6573; text-shadow: 0 0 14px rgba(255, 67, 83, .7); }
.quest-slot .quest-reroll { width: auto; min-width: 72px; padding: 0 10px; gap: 5px; }
.quest-slot .quest-reroll small { font-size: .7rem; font-weight: 900; }
.reward-quest-rare .reward-label small { color: #39bfff; }
.reward-quest-hardcore .reward-label small { color: #ff6573; }
@keyframes quest-hardcore-glow { 0%,100% { box-shadow: 0 0 15px rgba(255, 49, 67, .2), inset 0 0 20px rgba(255, 49, 67, .025); } 50% { box-shadow: 0 0 36px rgba(255, 49, 67, .46), inset 0 0 30px rgba(255, 49, 67, .08); } }

/* Интерактивные правила */
.rules-guide { max-width: 1040px; }
.rules-lead { margin: -8px 0 24px; color: #9d9dac; text-align: center; }
.rules-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.rule-card { min-height: 180px; padding: 22px 18px; border: 1px solid rgba(115, 170, 255, .2); border-radius: 16px; color: #fff; background: linear-gradient(145deg, rgba(30, 31, 53, .95), rgba(12, 13, 27, .96)); text-align: left; cursor: pointer; transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease; display: flex; flex-direction: column; align-items: flex-start; }
.rule-card:hover { transform: translateY(-5px); border-color: rgba(0, 212, 255, .65); background: linear-gradient(145deg, rgba(30, 45, 73, .98), rgba(12, 13, 29, .98)); box-shadow: 0 16px 34px rgba(0, 120, 255, .16), 0 0 26px rgba(0, 212, 255, .08); }
.rule-card:focus-visible { outline: 2px solid #00d4ff; outline-offset: 3px; }
.rule-card:last-child { grid-column: 2; }
.rule-icon { font-size: 1.8rem; margin-bottom: auto; filter: drop-shadow(0 0 10px rgba(0, 212, 255, .3)); }
.rule-card b { margin-top: 18px; font-size: 1.06rem; letter-spacing: .3px; }
.rule-card small { margin-top: 8px; color: #a9a9ba; line-height: 1.45; font-size: .78rem; }
.rules-modal { position: fixed; inset: 0; z-index: 3000; display: none; align-items: center; justify-content: center; gap: 16px; padding: 20px; background: rgba(3, 4, 12, .76); backdrop-filter: blur(10px); }
.rules-modal.active { display: flex; animation: rules-modal-in .2s ease both; }
.rules-modal-panel { position: relative; width: min(620px, calc(100vw - 160px)); max-height: min(700px, calc(100vh - 40px)); overflow-y: auto; overflow-x: hidden; padding: 32px; border: 1px solid rgba(0, 212, 255, .38); border-radius: 20px; background: linear-gradient(145deg, #191a2c, #0d0e1c); box-shadow: 0 24px 90px rgba(0, 0, 0, .55), 0 0 45px rgba(0, 174, 255, .12); }
.rules-modal-panel { scrollbar-width: thin; scrollbar-color: #00bde8 #101321; }
.rules-modal-panel::-webkit-scrollbar { width: 10px; }
.rules-modal-panel::-webkit-scrollbar-track { margin: 14px 0; border-radius: 10px; background: #101321; }
.rules-modal-panel::-webkit-scrollbar-thumb { border: 2px solid #101321; border-radius: 10px; background: linear-gradient(#3ae7ff, #1678c7); box-shadow: 0 0 12px rgba(0, 212, 255, .55); }
.rules-modal-panel::-webkit-scrollbar-thumb:hover { background: linear-gradient(#70f0ff, #209aff); }
.rules-modal-panel h3 { margin: 0 36px 18px 0; font-size: 1.45rem; letter-spacing: .5px; color: #fff; }
.rules-modal-panel p { margin: 0 0 14px; color: #c5c5d1; line-height: 1.62; }
.rules-modal-panel ul { margin: 0; padding-left: 21px; color: #c5c5d1; line-height: 1.7; }
.rules-modal-panel li::marker { color: #00d4ff; }
.rules-modal-panel strong { color: #fff; }
.modifier-reference { margin-top: 24px; padding-top: 18px; border-top: 1px solid rgba(0, 212, 255, .18); }
.modifier-reference h4 { margin: 0 0 12px; color: #fff; font-size: 1rem; letter-spacing: .4px; }
.modifier-reference h4 small { margin-left: 5px; color: #7f849b; font-size: .72rem; font-weight: 600; }
.modifier-list { display: grid; gap: 7px; }
.modifier-entry { padding: 10px 12px; border: 1px solid rgba(255,255,255,.06); border-radius: 9px; background: rgba(255,255,255,.035); }
.modifier-entry b { display: block; font-size: .86rem; }
.modifier-entry span { display: block; margin-top: 4px; color: #a9a9ba; font-size: .77rem; line-height: 1.42; }
.category-browser { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 22px; }
.category-browser-button { min-height: 52px; padding: 8px 10px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; color: #dfe6ee; background: rgba(255,255,255,.04); cursor: pointer; text-align: left; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 7px; transition: .2s ease; }
.category-browser-button span { font-size: .76rem; font-weight: 700; }
.category-browser-button small { color: #8990a2; font-size: .67rem; }
.category-browser-button:hover, .category-browser-button.active { border-color: rgba(0,212,255,.7); color: #fff; background: rgba(0, 174, 255, .11); box-shadow: 0 0 18px rgba(0, 212, 255, .1); }
.category-reference-area { min-height: 52px; }
.category-reference-hint { margin-top: 16px !important; padding: 13px; border: 1px dashed rgba(0, 212, 255, .22); border-radius: 10px; color: #8f98aa !important; font-size: .8rem; text-align: center; }
.rules-modal-close { position: absolute; top: 16px; right: 16px; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; color: #d7d7e4; background: rgba(255,255,255,.04); cursor: pointer; font-size: 1rem; transition: .2s ease; }
.rules-modal-close:hover { color: #fff; border-color: #ff6573; background: rgba(255, 71, 87, .13); }
.rules-modal-nav { position: static; flex: 0 0 42px; width: 42px; height: 58px; border: 1px solid rgba(0, 212, 255, .28); border-radius: 12px; color: #d9f8ff; background: rgba(10, 14, 30, .78); font-size: 2.1rem; line-height: 1; cursor: pointer; transition: .2s ease; }
.rules-modal-nav:hover { color: #fff; border-color: #00d4ff; background: rgba(0, 174, 255, .2); box-shadow: 0 0 24px rgba(0, 212, 255, .2); }
.rules-modal-content-swap { animation: rules-content-swap .22s ease both; }
@keyframes rules-content-swap { from { opacity: 0; transform: translateX(10px); } to { opacity: 1; transform: translateX(0); } }
@keyframes rules-modal-in { from { opacity: 0; } to { opacity: 1; } }
@media (max-width: 760px) { .rules-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rule-card:last-child { grid-column: auto; } .rule-card { min-height: 155px; } .rules-modal { gap: 10px; padding: 12px; } .rules-modal-panel { width: min(620px, calc(100vw - 128px)); } .rules-modal-nav { flex-basis: 34px; width: 34px; height: 50px; font-size: 1.8rem; } }
@media (max-width: 480px) { .rules-grid { grid-template-columns: 1fr; } .rule-card { min-height: 135px; } .rules-modal-panel { padding: 25px 20px; } .category-browser { grid-template-columns: 1fr; } }
.page-container { width:min(1600px,100%); }.history-item header b { color:#e0e0e0; }.rules { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.rules h2 { grid-column:1 / -1; }.rules p { margin:0; min-height:120px; border-radius:4px; }.rules p:last-child { grid-column:1 / -1; min-height:auto; }
@media(max-width:700px){.rules{grid-template-columns:1fr}.rules p:last-child{grid-column:auto}}
.rules p { color:#bbb; line-height:1.65; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.06); }
.reward-item.counter button { width:34px; height:32px; border:1px solid #3b3b55; border-radius:7px; background:#171724; color:#fff; font-size:1.25rem; cursor:pointer; }
.reward-item.counter .reward-input { appearance:textfield; -moz-appearance:textfield; margin:0 7px; }.reward-item.counter .reward-input::-webkit-outer-spin-button,.reward-item.counter .reward-input::-webkit-inner-spin-button{appearance:none;margin:0}
.reward-result { min-height:300px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; text-align:center; }.reward-result small{color:#888;letter-spacing:2px}.reward-result b{font-size:4rem;color:var(--warm-23666664373030,#ffd700);text-shadow:0 0 36px var(--warm-72676261283235352c3231352c302c2e333229,rgba(255,215,0,.32))}.reward-result span{font-weight:800;letter-spacing:3px;color:#fff}
.page-container{width:min(1400px,100%)}.history-item{display:block;border:1px solid rgba(0,212,255,.14);background:linear-gradient(135deg,rgba(20,20,35,.92),rgba(10,10,18,.9));padding:18px}.history-item header{display:flex;justify-content:space-between;gap:14px}.history-items{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.history-items span{padding:6px 9px;background:rgba(255,255,255,.05);border-radius:7px;color:#aaa}.history-item footer{display:flex;gap:12px;align-items:center;color:#bbb;flex-wrap:wrap}.history-item footer small{margin-left:auto}.stats-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:700px){.stats-grid{grid-template-columns:repeat(2,1fr)}.history-item header{align-items:flex-start;flex-direction:column}.history-item footer small{margin-left:0;width:100%}.reward-result b{font-size:3rem}}

/* Центрирование содержимого карточек истории. */
.history-item { position: relative; }
.history-item header {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}
.history-item header b {
    grid-column: 2;
    text-align: center;
}
.history-item header strong {
    grid-column: 3;
    justify-self: end;
}
.history-items { justify-content: center; }
.history-item footer { justify-content: center; }
.history-item footer small {
    position: absolute;
    right: 18px;
    bottom: 18px;
    margin-left: 0;
}
@media(max-width:700px){
    .history-item header { display:flex; flex-direction:column; }
    .history-item header strong { justify-self:auto; }
    .history-item footer small { position:static; width:100%; text-align:center; margin-top:4px; }
}

/* Отдельные частицы движутся по разным траекториям, а не общей сеткой. */
.page-particle-layer {
    position: absolute;
    inset: 60px 0 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}
.page-particle {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background: var(--color);
    box-shadow: 0 0 8px var(--color);
    opacity: 0;
    animation: page-particle-drift var(--duration) ease-in-out var(--delay) infinite;
}
@keyframes page-particle-drift {
    0%, 100% { transform: translate(0, 0) scale(.45); opacity: 0; }
    12% { opacity: .45; }
    31% { transform: translate(var(--x1), var(--y1)) scale(1); opacity: .7; }
    57% { transform: translate(var(--x2), var(--y2)) scale(.65); opacity: .35; }
    79% { transform: translate(var(--x3), var(--y3)) scale(1.1); opacity: .62; }
    92% { opacity: .35; }
}

/* ==========================================
   ГАЛЕРЕЯ
   ========================================== */
.hint-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.92);
    backdrop-filter: blur(20px);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 4000;
}

.hint-modal.active {
    display: flex;
}

.hint-modal .hint-close {
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 2.5rem;
    color: #fff;
    cursor: pointer;
    transition: all 0.3s;
    z-index: 10;
    background: none;
    border: none;
}

.hint-modal .hint-close:hover {
    transform: rotate(90deg);
    color: #ff2e63;
}

.hint-modal .hint-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.04);
    border: 2px solid rgba(255, 255, 255, 0.06);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 1.5rem;
    color: #fff;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.hint-modal .hint-nav:hover {
    background: rgba(0, 212, 255, 0.08);
    border-color: #00d4ff;
}

.hint-modal .hint-nav#hintPrev {
    left: 30px;
}

.hint-modal .hint-nav#hintNext {
    right: 30px;
}

.hint-modal .hint-nav.hidden {
    display: none;
}

.hint-modal img {
    max-width: 85%;
    max-height: 80vh;
    border-radius: 12px;
    border: 2px solid var(--warm-72676261283235352c203231352c20302c20302e313529,rgba(255, 215, 0, 0.15));
    box-shadow: 0 0 80px var(--warm-72676261283235352c203231352c20302c20302e303329,rgba(255, 215, 0, 0.03));
}

.hint-modal .hint-label {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    color: #888;
    font-size: 0.85rem;
    background: rgba(0, 0, 0, 0.6);
    padding: 8px 24px;
    border-radius: 20px;
    letter-spacing: 1px;
}

/* ==========================================
   АНИМАЦИИ
   ========================================== */
@keyframes animPop {
    0% { transform: scale(0.5); opacity: 0; }
    30% { transform: scale(1.3); opacity: 1; }
    70% { transform: scale(1); opacity: 1; }
    100% { transform: scale(1.2); opacity: 0; }
}

@keyframes slideUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes floatRight {
    0% { opacity: 1; transform: translateX(0) scale(0.5); }
    100% { opacity: 0; transform: translateX(60px) scale(1.3); }
}

.reroll-animation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 999;
    pointer-events: none;
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(4px);
}

.reroll-animation:not(.hidden) {
    display: flex;
}

.anim-plus {
    font-size: 8rem;
    font-weight: 900;
    color: var(--warm-23666664373030,#ffd700);
    text-shadow: 0 0 80px var(--warm-72676261283235352c203231352c20302c20302e3629,rgba(255, 215, 0, 0.6));
    animation: animPop 1.5s ease forwards;
}

/* ==========================================
   ТУЛТИП
   ========================================== */
.tooltip {
    position: fixed;
    display: none;
    background: rgba(10, 10, 18, 0.95);
    border: 1px solid rgba(0, 212, 255, 0.15);
    border-radius: 12px;
    padding: 12px 16px;
    max-width: 280px;
    box-shadow: 0 0 40px rgba(0, 212, 255, 0.03);
    z-index: 1400;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

.tooltip.active {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.tooltip .tooltip-icon {
    font-size: 1.5rem;
    flex-shrink: 0;
    margin-top: 2px;
}

.tooltip .tooltip-content {
    display: flex;
    flex-direction: column;
}

.tooltip .tooltip-name {
    font-size: 0.95rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 3px;
}

.tooltip .tooltip-desc {
    font-size: 0.8rem;
    color: #999;
    line-height: 1.4;
}

/* ==========================================
   АДАПТИВ
   ========================================== */
@media (max-width: 900px) {
    .wheel-item {
        flex: 0 0 110px !important;
        min-height: 110px;
        min-width: 110px;
        font-size: 0.85rem !important;
    }
    .wheel-container {
        min-height: 170px;
        padding: 20px 8px;
    }
}

@media (max-width: 700px) {
    .main-header { padding: 0 15px; height: 50px; }
    .header-brand .brand-name { font-size: 0.7rem; letter-spacing: 2px; }
    .header-nav { gap: 15px; }
    .header-nav .nav-link { font-size: 0.7rem; }
    .header-reroll { padding: 2px 10px 2px 6px; }
    .header-reroll .reroll-count { font-size: 0.9rem; }
    
    .main-title { font-size: 2.8rem; }
    .btn-main { width: 200px; height: 200px; }
    .btn-main .btn-main-text { font-size: 1.6rem; }
    .category-plate .category-name { font-size: 1.2rem; }
    .category-plate { padding: 10px 20px; min-width: 180px; }
    .wheel-item {
        flex: 0 0 80px !important;
        min-height: 80px;
        min-width: 80px;
        font-size: 0.7rem !important;
        border-radius: 12px;
        padding: 8px 4px;
    }
    .wheel-container {
        min-height: 130px;
        padding: 15px 6px;
    }
    .wheel-pointer { font-size: 2.2rem; }
    .btn-action { padding: 10px 24px; font-size: 1rem; min-width: 120px; }
    .btn-reroll { font-size: 1rem; padding: 8px 14px; height: 44px; }
    .selected-items .selected-chip { font-size: 0.7rem; padding: 4px 12px; }
    .final-summary .item {
        grid-template-columns: 1fr auto 1fr;
        gap: 4px 8px;
        padding: 6px 0;
    }
    .final-summary .item .label { font-size: 0.7rem; }
    .final-summary .item .value { font-size: 0.8rem; }
    .final-summary .item .desc { font-size: 0.8rem; }
    .quest-slot .quest-thumb { width: 80px; height: 60px; min-width: 50px; }
    #screen-select { padding-top: 60px; }
    #screen-final { padding-top: 60px; }
    #screen-reward { padding-top: 60px; }
}

@media (max-width: 480px) {
    .main-header { padding: 0 10px; height: 44px; }
    .header-brand .brand-name { font-size: 0.6rem; letter-spacing: 1px; }
    .header-brand .brand-icon { font-size: 1rem; }
    .header-nav { gap: 10px; }
    .header-nav .nav-link { font-size: 0.6rem; }
    .header-reroll .reroll-count { font-size: 0.8rem; }
    .header-reroll .reroll-icon { font-size: 0.7rem; }
    
    .main-title { font-size: 2rem; letter-spacing: 4px; }
    .btn-main { width: 160px; height: 160px; }
    .btn-main .btn-main-text { font-size: 1.2rem; }
    .wheel-item {
        flex: 0 0 60px !important;
        min-height: 60px;
        min-width: 60px;
        font-size: 0.5rem !important;
        border-radius: 10px;
        padding: 4px 2px;
    }
    .wheel-container {
        min-height: 100px;
        padding: 10px 4px;
        border-radius: 14px;
    }
    .wheel-track { gap: 8px; padding: 0 8px; }
    .wheel-pointer { font-size: 1.8rem; bottom: -4px; }
    .action-buttons { flex-direction: column; gap: 8px; }
    .btn-action { padding: 10px 16px; width: 160px; font-size: 0.9rem; min-width: unset; }
    .btn-disable-item { position: static; width: 160px; transform: none; }
    .btn-reroll { font-size: 0.9rem; padding: 6px 12px; height: 38px; }
    .select-container { gap: 12px; padding: 0 10px; }
    .category-plate { padding: 8px 14px; min-width: 120px; }
    .category-plate .category-name { font-size: 0.9rem; }
    .category-plate .category-icon { font-size: 1.2rem; }
    .selected-items .selected-chip { font-size: 0.55rem; padding: 2px 8px; gap: 3px; }
    .selected-items .selected-chip .chip-icon { font-size: 0.6rem; }
    .final-container { padding: 12px; }
    .final-title { font-size: 1.2rem; }
    .final-summary .item {
        grid-template-columns: 1fr;
        gap: 2px;
        padding: 8px 0;
        text-align: center;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    }
    .final-summary .item .label {
        text-align: center;
        font-size: 0.6rem;
        color: #555;
        white-space: normal;
    }
    .final-summary .item .value {
        text-align: center;
        font-size: 0.85rem;
        white-space: normal;
    }
    .final-summary .item .desc {
        text-align: center;
        font-size: 0.65rem;
        white-space: normal;
    }
    .quests-container { flex-direction: column; align-items: center; }
    .quest-slot { max-width: 100%; width: 100%; min-height: 140px; padding: 14px 12px; }
    .quest-slot .quest-thumb { width: 100%; height: 80px; min-width: 50px; }
    .quest-slot .quest-title { font-size: 0.9rem; }
    .quest-slot .quest-desc { font-size: 0.75rem; }
    .btn-get-quests, .btn-final-done { font-size: 1rem; padding: 12px; max-width: 100%; }
    .reward-container { padding: 20px 16px; }
    .reward-title { font-size: 1.2rem; }
    .hint-modal .hint-nav { width: 38px; height: 38px; font-size: 1rem; }
    .hint-modal .hint-nav#hintPrev { left: 8px; }
    .hint-modal .hint-nav#hintNext { right: 8px; }
    .hint-modal img { max-width: 95%; max-height: 70vh; }
    #screen-select { padding-top: 50px; }
    #screen-final { padding-top: 50px; }
    #screen-reward { padding-top: 50px; }
}

/* Переопределение после базовых анимаций: искры видны на любом экране хардкора. */
body.hardcore-mode .roulette-particle,
body.hardcore-mode .final-particle {
    animation-name: hardcore-ember-float;
    animation-timing-function: linear;
}
body.hardcore-mode .page-particle {
    animation-name: hardcore-page-ember;
    animation-timing-function: linear;
}

/* Палитры: цвет меняет не только яркость, а фон, акценты и ключевые поверхности. */
.theme-day-switch { display:flex; align-items:center; justify-content:center; gap:10px; margin:15px auto 2px; color:#b9bdcb; font-size:.82rem; font-weight:800; }
.theme-day-switch input { position:absolute; opacity:0; }
.theme-day-switch i { position:relative; width:42px; height:22px; border:1px solid #4b5068; border-radius:999px; background:#11131e; cursor:pointer; transition:.25s ease; }
.theme-day-switch i::after { content:''; position:absolute; top:3px; left:3px; width:14px; height:14px; border-radius:50%; background:#96a0b7; transition:.25s ease; }
.theme-day-switch input:checked + i { border-color:var(--warm-23666664333563,#ffd35c); background:var(--warm-72676261283235352c3231312c39322c2e3229,rgba(255,211,92,.2)); box-shadow:0 0 14px var(--warm-72676261283235352c3231312c39322c2e323529,rgba(255,211,92,.25)); }
.theme-day-switch input:checked + i::after { transform:translateX(19px); background:var(--warm-23666666316230,#fff1b0); }
.item-hover-tip { position:fixed; z-index:2500; max-width:260px; padding:8px 10px; border:1px solid rgba(0,212,255,.35); border-radius:8px; background:rgba(10,11,20,.96); color:#d9dce6; font-size:.75rem; line-height:1.35; box-shadow:0 8px 26px rgba(0,0,0,.4); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .12s ease; }
.item-hover-tip.visible { opacity:1; visibility:visible; }

body:not(.hardcore-mode)[data-theme^="violet"] { --theme-tint:#a855f7; --theme-tint-rgb:168,85,247; }
body:not(.hardcore-mode)[data-theme^="gold"] { --theme-tint:var(--warm-23666664333563,#ffd35c); --theme-tint-rgb:255,211,92; }
body:not(.hardcore-mode)[data-theme^="cyan"] { --theme-tint:#00d4ff; --theme-tint-rgb:0,212,255; }
body:not(.hardcore-mode)[data-theme] .main-header { border-bottom-color:rgba(var(--theme-tint-rgb),.36); }
body:not(.hardcore-mode)[data-theme] .header-nav .nav-link.active { border-color:var(--theme-tint); color:#fff; }
body:not(.hardcore-mode)[data-theme] .page-container,
body:not(.hardcore-mode)[data-theme] .reward-container,
body:not(.hardcore-mode)[data-theme] .final-container { border-color:rgba(var(--theme-tint-rgb),.3); box-shadow:0 0 35px rgba(var(--theme-tint-rgb),.08); }
body:not(.hardcore-mode)[data-theme] .theme-choice.active,
body:not(.hardcore-mode)[data-theme] .settings-tab.active,
body:not(.hardcore-mode)[data-theme] .quest-map-tabs button.active { border-color:var(--theme-tint); box-shadow:0 0 16px rgba(var(--theme-tint-rgb),.25); }
body:not(.hardcore-mode)[data-theme] .main-title { background:linear-gradient(90deg,var(--theme-tint),#fff 47%,var(--theme-tint)); -webkit-background-clip:text; background-clip:text; color:transparent; }
body:not(.hardcore-mode)[data-theme] .btn-main { background:radial-gradient(circle at 30% 25%,#fff, var(--theme-tint) 24%, color-mix(in srgb,var(--theme-tint) 56%,#14243b) 75%); box-shadow:0 0 40px rgba(var(--theme-tint-rgb),.35); }
body:not(.hardcore-mode)[data-theme$="-day"] #screen-main,
body:not(.hardcore-mode)[data-theme$="-day"] #screen-select,
body:not(.hardcore-mode)[data-theme$="-day"] #screen-final,
body:not(.hardcore-mode)[data-theme$="-day"] #screen-reward,
body:not(.hardcore-mode)[data-theme$="-day"] .page-screen { background:radial-gradient(ellipse at 50% 0%,rgba(var(--theme-tint-rgb),.22),transparent 55%),#182039 !important; }
body:not(.hardcore-mode)[data-theme$="-day"] .page-container,
body:not(.hardcore-mode)[data-theme$="-day"] .reward-container,
body:not(.hardcore-mode)[data-theme$="-day"] .final-container { background:rgba(30,35,57,.9); }
body.hardcore-mode[data-theme="hardcore-night"] #screen-main,
body.hardcore-mode[data-theme="hardcore-night"] .page-screen { background:radial-gradient(ellipse at 50% 0%,rgba(182,24,40,.2),transparent 55%),#10070b !important; }
body.hardcore-mode[data-theme="hardcore-day"] #screen-main,
body.hardcore-mode[data-theme="hardcore-day"] .page-screen { background:radial-gradient(ellipse at 50% 0%,rgba(255,78,92,.38),transparent 58%),#4a1420 !important; }
body.hardcore-mode[data-theme="hardcore-day"] .page-container,
body.hardcore-mode[data-theme="hardcore-day"] .reward-container,
body.hardcore-mode[data-theme="hardcore-day"] .final-container { background:rgba(82,22,32,.88); border-color:rgba(255,105,115,.5); }

/* Достижения */
.achievements-page { max-width: 1340px; }
.achievements-summary { margin: -9px auto 20px; display: grid; justify-items: center; gap: 13px; }
.achievements-progress { width: min(620px, 100%); margin: 0; color: #aeb3c6; text-align: center; font-size: .88rem; }
.achievement-claim-all { min-height: 42px; padding: 10px 17px; border: 1px solid var(--warm-72676261283234302c3231312c3133392c2e363829,rgba(240,211,139,.68)); border-radius: 10px; color: var(--warm-23313831333061,#18130a); background: linear-gradient(135deg, var(--warm-23663264633964,#f2dc9d), var(--warm-23633439343338,#c49438)); font: inherit; font-size: .73rem; font-weight: 950; letter-spacing: .8px; cursor: pointer; box-shadow: 0 10px 26px var(--warm-72676261283230322c3136312c37392c2e313829,rgba(202,161,79,.18)); transition: transform .2s ease, filter .2s ease; }
.achievement-claim-all span { margin-left: 7px; color: var(--warm-23346433353063,#4d350c); }
.achievement-claim-all:hover { transform: translateY(-2px); filter: brightness(1.08); }
.achievements-list { display: flex; flex-direction: column; gap: 9px; }
.achievements-hidden, .achievements-empty { margin: 8px 0 0; color: #777d91; text-align: center; font-size: .82rem; letter-spacing: .2px; }
.achievements-hidden { padding: 13px; border: 1px dashed rgba(255,255,255,.12); border-radius: 11px; background: rgba(255,255,255,.018); }

/* Настройки доступных предметов */
.settings-page { max-width: 1040px; }
.settings-lead { margin: -9px 0 23px; color: #a6aab9; text-align: center; }
.sound-settings{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:16px 18px;border:1px solid var(--warm-72676261283232352c3138392c3130342c2e323829,rgba(225,189,104,.28));border-radius:12px;background:linear-gradient(135deg,var(--warm-726762612834332c33372c32352c2e373229,rgba(43,37,25,.72)),rgba(15,14,11,.86))}.sound-settings h3{margin:0 0 5px;color:var(--warm-23656565346365,#eee4ce);font-size:16px}.sound-settings p{margin:0;color:var(--warm-23396339343835,#9c9485);font-size:12px;line-height:1.45}.sound-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;white-space:nowrap}.sound-toggle input{position:absolute;opacity:0;pointer-events:none}.sound-toggle span{position:relative;width:44px;height:24px;border:1px solid var(--warm-23363535623435,#655b45);border-radius:999px;background:#17150f;transition:.2s}.sound-toggle span::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--warm-23386338333732,#8c8372);transition:.2s}.sound-toggle input:checked+span{border-color:var(--warm-23623939353437,#b99547);background:var(--warm-23336333313139,#3c3119);box-shadow:0 0 14px var(--warm-236337613334633333,#c7a34c33)}.sound-toggle input:checked+span::after{left:23px;background:var(--warm-23663063653738,#f0ce78)}.sound-toggle b{color:var(--warm-23643863363965,#d8c69e);font-size:12px}.sound-toggle input:focus-visible+span{outline:2px solid var(--warm-23653463323663,#e4c26c);outline-offset:3px}@media(max-width:560px){.sound-settings{align-items:flex-start;flex-direction:column}.sound-toggle{align-self:stretch;justify-content:space-between}}
.settings-tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-bottom: 18px; }
.settings-tab { padding: 10px 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 9px; background: rgba(255,255,255,.035); color: #adb1c1; font: inherit; font-size: .78rem; font-weight: 800; cursor: pointer; transition: .2s ease; }
.settings-tab:hover, .settings-tab.active { border-color: rgba(0,212,255,.72); background: rgba(0,174,255,.13); color: #fff; box-shadow: 0 0 17px rgba(0,174,255,.12); }
.settings-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.settings-item { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 66px; padding: 12px 14px; border: 1px solid color-mix(in srgb, var(--item-color) 30%, rgba(255,255,255,.08)); border-radius: 12px; background: rgba(255,255,255,.03); cursor: pointer; transition: opacity .2s ease, border-color .2s ease, background .2s ease; }
.settings-item:hover { border-color: var(--item-color); background: color-mix(in srgb, var(--item-color) 8%, rgba(255,255,255,.03)); }
.settings-item.disabled { opacity: .42; filter: grayscale(.55); }
.settings-item-info { min-width: 0; display: grid; grid-template-columns: 9px minmax(0, 1fr); column-gap: 9px; align-items: center; }
.settings-item-info i { grid-row: 1 / 3; width: 8px; height: 8px; border-radius: 50%; background: var(--item-color); box-shadow: 0 0 10px var(--item-color); }
.settings-item-info b { overflow: hidden; color: #f1f2f5; font-size: .88rem; text-overflow: ellipsis; white-space: nowrap; }
.settings-item-info small { overflow: hidden; margin-top: 4px; color: #858a9c; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.settings-item input { position: absolute; opacity: 0; pointer-events: none; }
.settings-check { flex: 0 0 auto; width: 21px; height: 21px; border: 1px solid #535a6c; border-radius: 5px; background: #11121e; transition: .2s ease; }
.settings-item input:checked + .settings-check { border-color: #2ed573; background: #2ed573; box-shadow: 0 0 14px rgba(46,213,115,.38); }
.settings-item input:checked + .settings-check::after { content: '✓'; display: grid; height: 100%; color: #07120b; place-items: center; font-size: .9rem; font-weight: 900; }
@media(max-width:700px) { .settings-items { grid-template-columns: 1fr; } .settings-tab { font-size: .72rem; } }
.achievement-item { display: grid; grid-template-columns: 80px minmax(0, 1fr) auto; align-items: center; gap: 20px; min-height: 108px; padding: 16px 21px; border: 1px solid rgba(255,255,255,.07); border-radius: 15px; background: rgba(255,255,255,.028); color: #757888; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.achievement-item.unlocked { color: #fff; border-color: var(--warm-72676261283235352c203231352c20302c202e333229,rgba(255, 215, 0, .32)); background: linear-gradient(90deg, var(--warm-72676261283235352c3231352c302c2e303929,rgba(255,215,0,.09)), rgba(255,255,255,.025)); box-shadow: inset 3px 0 0 var(--warm-23666664373030,#ffd700); }
.achievement-item.unlocked:hover { transform: translateX(3px); border-color: var(--warm-72676261283235352c3231352c302c2e3729,rgba(255,215,0,.7)); }
.achievement-icon { display: grid; place-items: center; box-sizing: border-box; width: 76px; height: 76px; border-radius: 16px; background: rgba(255,255,255,.055); font-size: 2.25rem; filter: grayscale(1) opacity(.55); }
.achievement-item.unlocked .achievement-icon { background: var(--warm-72676261283235352c3231352c302c2e313329,rgba(255,215,0,.13)); filter: drop-shadow(0 0 9px var(--warm-72676261283235352c3231352c302c2e333629,rgba(255,215,0,.36))); }
.achievement-item b, .achievement-item small { display: block; }
.achievement-item b { font-size: 1.08rem; }
.achievement-item small { margin-top: 5px; color: #8d90a0; font-size: .86rem; }
.achievement-item.unlocked small { color: #c2c4cf; }
.achievement-item em { color: #747887; font-size: .62rem; font-style: normal; font-weight: 900; letter-spacing: .7px; }
.achievement-item.unlocked em { color: var(--warm-23666664373030,#ffd700); }
.achievement-action { display: flex; min-width: 114px; flex-direction: column; align-items: flex-end; gap: 7px; }
.achievement-claim { padding: 9px 13px; border: 1px solid color-mix(in srgb, var(--achievement-color) 65%, transparent); border-radius: 9px; background: color-mix(in srgb, var(--achievement-color) 15%, transparent); color: #fff; font: inherit; font-size: .78rem; font-weight: 900; letter-spacing: .45px; cursor: pointer; transition: transform .18s ease, background .18s ease; }
.achievement-claim:hover { transform: translateY(-1px); background: color-mix(in srgb, var(--achievement-color) 28%, transparent); }
.achievement-reward { color: #7e8496; font-size: .59rem; font-weight: 800; letter-spacing: .45px; }
.achievement-toasts { position: fixed; right: 22px; bottom: 22px; z-index: 6000; display: flex; flex-direction: column; gap: 9px; width: min(330px, calc(100vw - 32px)); pointer-events: none; }
.achievement-toast { display: grid; grid-template-columns: 42px 1fr; align-items: center; gap: 10px; padding: 11px 13px; border: 1px solid var(--warm-72676261283235352c3231352c302c2e353829,rgba(255,215,0,.58)); border-radius: 11px; background: linear-gradient(135deg, var(--warm-726762612833332c32392c31382c2e393629,rgba(33,29,18,.96)), rgba(14,15,27,.97)); box-shadow: 0 12px 34px rgba(0,0,0,.42), 0 0 25px var(--warm-72676261283235352c3231352c302c2e313429,rgba(255,215,0,.14)); opacity: 0; transform: translateX(36px); transition: opacity .35s ease, transform .35s ease; }
.achievement-toast.visible { opacity: 1; transform: translateX(0); }
.achievement-toast > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 9px; background: var(--warm-72676261283235352c3231352c302c2e313429,rgba(255,215,0,.14)); font-size: 1.25rem; }
.achievement-toast small, .achievement-toast b { display: block; }
.achievement-toast small { color: var(--warm-23666664373030,#ffd700); font-size: .6rem; letter-spacing: 1px; }
.achievement-toast b { margin-top: 3px; color: #fff; font-size: .88rem; }
@media(max-width:700px) { .achievements-page { max-width: 100%; } .achievement-item { grid-template-columns: 62px minmax(0,1fr); gap: 13px; min-height: 88px; padding: 12px 14px; } .achievement-icon { width: 58px; height: 58px; border-radius: 13px; font-size: 1.8rem; } .achievement-action { grid-column: 2; align-items: flex-start; } .achievement-toasts { right: 12px; bottom: 12px; } }

/* Прогресс и редкости уровней достижений. */
.achievements-progress span { display: block; margin-bottom: 9px; }
.achievements-progress b { color: var(--warm-23666664373030,#ffd700); }
.achievements-bar { height: 8px; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 999px; background: rgba(255,255,255,.06); box-shadow: inset 0 1px 4px rgba(0,0,0,.35); }
.achievements-bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #00d4ff, #a855f7, var(--warm-23666664373030,#ffd700)); box-shadow: 0 0 13px rgba(168,85,247,.65); transition: width .55s cubic-bezier(.22, 1, .36, 1); }
.achievement-item.unlocked { border-color: color-mix(in srgb, var(--achievement-color) 52%, transparent); background: linear-gradient(90deg, color-mix(in srgb, var(--achievement-color) 12%, transparent), rgba(255,255,255,.025)); box-shadow: inset 3px 0 0 var(--achievement-color); }
.achievement-item.unlocked:hover { border-color: var(--achievement-color); }
.achievement-item.unlocked .achievement-icon { border: 0; background: transparent; box-shadow: none; filter: none; }
.achievement-icon:has(img) { overflow: hidden; background: #11121b; }
.achievement-icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.achievement-item.unlocked em { color: var(--achievement-color); }
.achievement-item em { font-size: .76rem; letter-spacing: .9px; }
.achievement-item .achievement-description { color: #aeb2c0; }
.achievement-item .achievement-progress-text { margin-top: 3px; color: #6f7486; font-size: .7rem; }
.achievement-item.unlocked .achievement-progress-text { color: color-mix(in srgb, var(--achievement-color) 72%, #d8d8df); }
.achievement-toast { border-color: var(--achievement-color, var(--warm-23666664373030,#ffd700)); box-shadow: 0 12px 34px rgba(0,0,0,.42), 0 0 25px color-mix(in srgb, var(--achievement-color, var(--warm-23666664373030,#ffd700)) 18%, transparent); }
.achievement-toast > span { background: color-mix(in srgb, var(--achievement-color, var(--warm-23666664373030,#ffd700)) 16%, transparent); }
.achievement-toast small { color: var(--achievement-color, var(--warm-23666664373030,#ffd700)); }

/* Оформления: каждый стиль окрашивает все акценты сайта одним языком. */
body:not(.hardcore-mode)[data-theme^="cyan"] { --skin-a:#00e5ff; --skin-b:#a855f7; --skin-rgb:0,229,255; --skin-bg:#070a1a; }
body:not(.hardcore-mode)[data-theme^="cyber"] { --skin-a:#00d4ff; --skin-b:#ff2e63; --skin-rgb:0,212,255; --skin-bg:#0a0a12; }
body:not(.hardcore-mode)[data-theme^="whitegold"] { --skin-a:#fffdf4; --skin-b:var(--warm-23643461623466,#d4ab4f); --skin-rgb:255,242,201; --skin-bg:#15130f; }
body:not(.hardcore-mode)[data-theme^="wood"] { --skin-a:#d98b49; --skin-b:#6d351c; --skin-rgb:217,139,73; --skin-bg:#19100a; }
.theme-preview.cyber { background:#00d4ff; box-shadow:0 0 12px #00d4ff; }
.theme-preview.whitegold { background:linear-gradient(135deg,#fffdf4 35%,var(--warm-23643461623466,#d4ab4f) 36%); box-shadow:0 0 12px var(--warm-23656164323864,#ead28d); }
.theme-preview.wood { background:linear-gradient(135deg,#d98b49,#6d351c); box-shadow:0 0 12px #b66534; }
body:not(.hardcore-mode)[data-theme] .header-brand .brand-name { background:linear-gradient(90deg,var(--skin-a),var(--skin-b)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
body:not(.hardcore-mode)[data-theme] .main-header { background:color-mix(in srgb,var(--skin-bg) 92%,#171a29); border-bottom-color:rgba(var(--skin-rgb),.5); box-shadow:0 0 32px rgba(var(--skin-rgb),.12); }
body:not(.hardcore-mode)[data-theme] .header-nav .nav-link.active { border-bottom-color:var(--skin-a); text-shadow:0 0 16px rgba(var(--skin-rgb),.38); }
body:not(.hardcore-mode)[data-theme] .header-nav .nav-link::after { background:linear-gradient(90deg,var(--skin-a),var(--skin-b)); }
body:not(.hardcore-mode)[data-theme] .btn-accept { background:linear-gradient(135deg,var(--skin-a),var(--skin-b)); box-shadow:0 0 38px rgba(var(--skin-rgb),.3); }
body:not(.hardcore-mode)[data-theme] .btn-accept:hover:not(:disabled) { box-shadow:0 0 58px rgba(var(--skin-rgb),.48); }
body:not(.hardcore-mode)[data-theme] .roulette-particle,
body:not(.hardcore-mode)[data-theme] .final-particle,
body:not(.hardcore-mode)[data-theme] .page-particle { background:var(--skin-a) !important; box-shadow:0 0 11px var(--skin-a),0 0 23px rgba(var(--skin-rgb),.42); }
body:not(.hardcore-mode)[data-theme^="cyan"] .roulette-particle:nth-child(3n),
body:not(.hardcore-mode)[data-theme^="cyan"] .final-particle:nth-child(3n),
body:not(.hardcore-mode)[data-theme^="cyan"] .page-particle:nth-child(3n) { background:var(--skin-b) !important; box-shadow:0 0 12px var(--skin-b); }
body:not(.hardcore-mode)[data-theme^="cyan"] .page-screen,
body:not(.hardcore-mode)[data-theme^="cyan"] #screen-main,
body:not(.hardcore-mode)[data-theme^="cyan"] #screen-select,
body:not(.hardcore-mode)[data-theme^="cyan"] #screen-final,
body:not(.hardcore-mode)[data-theme^="cyan"] #screen-reward { background:radial-gradient(ellipse at 25% 15%,rgba(0,229,255,.12),transparent 42%),radial-gradient(ellipse at 78% 80%,rgba(168,85,247,.12),transparent 48%),#070a1a !important; }
body:not(.hardcore-mode)[data-theme^="whitegold"] .page-screen,
body:not(.hardcore-mode)[data-theme^="whitegold"] #screen-main,
body:not(.hardcore-mode)[data-theme^="whitegold"] #screen-select,
body:not(.hardcore-mode)[data-theme^="whitegold"] #screen-final,
body:not(.hardcore-mode)[data-theme^="whitegold"] #screen-reward { background:radial-gradient(ellipse at 50% 0%,var(--warm-72676261283235352c3234342c3230342c2e313529,rgba(255,244,204,.15)),transparent 53%),radial-gradient(ellipse at 90% 90%,var(--warm-72676261283139362c3135312c36352c2e313429,rgba(196,151,65,.14)),transparent 52%),#17130e !important; }
body:not(.hardcore-mode)[data-theme^="wood"] .page-screen,
body:not(.hardcore-mode)[data-theme^="wood"] #screen-main,
body:not(.hardcore-mode)[data-theme^="wood"] #screen-select,
body:not(.hardcore-mode)[data-theme^="wood"] #screen-final,
body:not(.hardcore-mode)[data-theme^="wood"] #screen-reward { background:radial-gradient(ellipse at 15% 0%,rgba(217,139,73,.19),transparent 48%),repeating-linear-gradient(112deg,var(--warm-72676261283235352c3139362c3132382c2e30323529,rgba(255,196,128,.025)) 0 2px,transparent 2px 17px),#19100a !important; }
body:not(.hardcore-mode)[data-theme^="whitegold"] .page-container,
body:not(.hardcore-mode)[data-theme^="whitegold"] .reward-container,
body:not(.hardcore-mode)[data-theme^="whitegold"] .final-container { background:linear-gradient(135deg,rgba(255,253,244,.08),var(--warm-726762612839312c37302c33332c2e313629,rgba(91,70,33,.16))); }
body:not(.hardcore-mode)[data-theme^="wood"] .page-container,
body:not(.hardcore-mode)[data-theme^="wood"] .reward-container,
body:not(.hardcore-mode)[data-theme^="wood"] .final-container { background:linear-gradient(135deg,rgba(92,48,23,.42),rgba(24,13,9,.9)); border-color:rgba(217,139,73,.35); }
body:not(.hardcore-mode)[data-theme^="wood"] .theme-settings,
body:not(.hardcore-mode)[data-theme^="wood"] .settings-item { background:rgba(74,37,18,.35); }
body:not(.hardcore-mode)[data-theme$="-day"] .main-header { background:color-mix(in srgb,var(--skin-a) 24%,#e6e8ef); border-bottom-color:color-mix(in srgb,var(--skin-b) 68%,#fff); box-shadow:0 0 26px rgba(var(--skin-rgb),.3); }
body:not(.hardcore-mode)[data-theme$="-day"] .header-nav .nav-link { color:#50576a; }
body:not(.hardcore-mode)[data-theme$="-day"] .header-nav .nav-link.active { color:#151824; }
body.hardcore-mode[data-theme="hardcore-night"] .main-header { background:#16070a; border-bottom-color:rgba(255,71,87,.5); }
body.hardcore-mode[data-theme="hardcore-day"] .main-header { background:#722330; border-bottom-color:#ff96a1; box-shadow:0 0 28px rgba(255,75,92,.48); }

.raid-loadout,.raid-reward-breakdown { margin:18px 0 0; padding:20px; border:1px solid rgba(0,212,255,.19); border-radius:13px; background:rgba(255,255,255,.025); }
.raid-loadout h3,.raid-reward-breakdown h3 { margin:0 0 15px; color:#e9ebf1; font-size:.96rem; letter-spacing:1.25px; text-align:center; }
.raid-loadout > div { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.raid-loadout span { padding:7px 9px; border-radius:7px; background:rgba(255,255,255,.055); color:#aaaeba; font-size:.78rem; }
.raid-reward-parts { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:10px; }
.raid-reward-parts > span { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; padding:13px 14px; border-radius:8px; background:rgba(255,255,255,.04); color:#c2c4cd; font-size:.9rem; line-height:1.35; }
.raid-reward-parts > span > b { min-width:0; overflow-wrap:anywhere; }
.raid-reward-parts em { display:inline-flex; align-items:center; justify-content:flex-end; gap:7px; min-width:0; color:var(--warm-23666664373030,#ffd700); font-style:normal; font-weight:900; font-size:clamp(.82rem,2.7vw,.96rem); white-space:nowrap; }
.raid-reward-parts em i { color:var(--warm-23386638333636,#8f8366); font-style:normal; font-weight:500; }
.raid-reward-empty { grid-column:1/-1; justify-content:center !important; color:#888 !important; }
.raid-reward-breakdown p { margin:14px 0 0; color:var(--warm-23666664373030,#ffd700); font-size:.88rem; line-height:1.55; font-weight:800; text-align:center; }
.raid-reward-modifiers { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-top:16px; }
.raid-reward-modifiers > span { display:inline-flex; align-items:center; min-height:32px; padding:6px 10px; border:1px solid var(--warm-72676261283232362c3139302c39332c2e323529,rgba(226,190,93,.25)); border-radius:999px; background:var(--warm-72676261283231342c3137312c35372c2e303829,rgba(214,171,57,.08)); color:var(--warm-23663163663730,#f1cf70); font-size:.84rem; line-height:1.35; font-weight:800; white-space:nowrap; }
.raid-reward-breakdown > strong { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-top:18px; padding-top:14px; border-top:1px solid var(--warm-72676261283235352c3231352c302c2e313829,rgba(255,215,0,.18)); color:#c9cad1; font-size:1rem; text-align:right; }
.raid-reward-breakdown > strong b { color:var(--warm-23666664373030,#ffd700); font-size:clamp(1.15rem,4vw,1.38rem); white-space:nowrap; }
.raid-market-items { margin-top:18px; padding-top:16px; border-top:1px solid var(--warm-72676261283231322c3138302c3130362c2e3229,rgba(212,180,106,.2)); }
.raid-market-items h4 { margin:0 0 14px; font-size:.86rem; line-height:1.45; letter-spacing:.7px; color:var(--warm-23643462343661,#d4b46a); text-align:left; }
.raid-market-items-list { display:grid; gap:12px; }
.raid-market-item { display:flex; align-items:center; gap:14px; min-width:0; }
.raid-market-item > .market-item-art { flex:0 0 68px; width:68px; height:68px; margin:0; }
.raid-market-item .market-item-image,.raid-market-item .market-symbol { width:100%; height:100%; object-fit:contain; }
.raid-market-item > div { min-width:0; }
.raid-market-item b { font-size:.96rem; color:var(--warm-23663165646532,#f1ede2); overflow-wrap:anywhere; }
.raid-reward-breakdown .raid-market-item p { margin:6px 0 0; font-size:.86rem; line-height:1.55; color:var(--warm-23626362386164,#bcb8ad); font-weight:400; text-align:left; overflow-wrap:anywhere; }
@media(max-width:700px){.raid-reward-parts{grid-template-columns:1fr}.raid-loadout,.raid-reward-breakdown{padding:12px}.raid-reward-modifiers span{white-space:normal;text-align:center}.raid-reward-breakdown>strong{align-items:flex-end}.raid-reward-breakdown>strong b{white-space:normal}}

/* Карточки заданий: скриншот — фон всей карточки, а не отдельная миниатюра. */
.quests-container { align-items:stretch; min-height:350px; }
.quest-slot { position:relative; min-height:350px; height:350px; padding:0; overflow:hidden; isolation:isolate; background:#151625; }
.quest-slot.quest-text-only { min-height:350px; height:350px; align-self:stretch; justify-content:initial; }
.quest-image-layer { position:absolute; inset:0; z-index:-2; background:radial-gradient(circle at 50% 0%,rgba(32,36,61,.7),transparent 58%),linear-gradient(145deg,#181a2b,#10111b); }
.quest-has-image { cursor:zoom-in; }
.quest-has-image .quest-image-layer { background-image:linear-gradient(180deg,rgba(4,5,12,.12) 0%,rgba(5,6,14,.22) 42%,rgba(5,6,14,.42) 100%),var(--quest-image); background-position:center; background-size:cover; filter:saturate(.92) contrast(1.04); transition:transform .45s ease,filter .45s ease; }
.quest-has-image:hover .quest-image-layer { transform:scale(1.045); filter:saturate(1.1) contrast(1.08); }
.quest-text-only .quest-image-layer { background:radial-gradient(circle at 50% 13%,rgba(0,212,255,.16),transparent 35%),linear-gradient(150deg,rgba(30,32,54,.98),rgba(12,13,24,.98)); }
.quest-card-content { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; width:100%; height:100%; padding:18px 16px 16px; text-align:center; }
.quest-has-image .quest-card-content::before { content:''; position:absolute; top:13px; left:50%; z-index:-1; width:min(92%,420px); height:132px; transform:translateX(-50%); border:1px solid rgba(0,0,0,.18); border-radius:14px; background:linear-gradient(180deg,rgba(4,5,12,.68),rgba(4,5,12,.26)); backdrop-filter:blur(2px); box-shadow:0 6px 22px rgba(0,0,0,.28); }
.quest-slot .quest-number { margin-bottom:6px; }
.quest-slot .quest-rarity { margin-bottom:10px; text-shadow:0 1px 6px #000; }
.quest-slot .quest-title { max-width:92%; margin:0 0 7px; text-shadow:0 2px 8px rgba(0,0,0,.9); }
.quest-slot .quest-desc { max-width:94%; margin:0; color:#d7d9e0; text-shadow:0 2px 7px rgba(0,0,0,.95); }
.quest-slot .quest-reroll,.quest-slot.quest-text-only .quest-reroll { margin-top:auto; }
.quest-slot .quest-images { display:none; }
@media(max-width:700px){.quests-container{min-height:0}.quest-slot,.quest-slot.quest-text-only{height:330px;min-height:330px}}

/* ==========================================
   БАЗОВОЕ ОФОРМЛЕНИЕ — БЕЛОЕ ЗОЛОТО
   ========================================== */
body:not(.hardcore-mode) {
    background: #0e0d0b;
    color: var(--warm-23663466316538,#f4f1e8);
}
body:not(.hardcore-mode) #screen-main,
body:not(.hardcore-mode) #screen-select,
body:not(.hardcore-mode) #screen-final,
body:not(.hardcore-mode) #screen-reward,
body:not(.hardcore-mode) .page-screen {
    background:
        radial-gradient(ellipse at 50% -12%, var(--warm-72676261283235352c203234362c203231392c202e313629,rgba(255, 246, 219, .16)), transparent 48%),
        radial-gradient(ellipse at 88% 92%, var(--warm-72676261283230342c203136332c2038332c202e313229,rgba(204, 163, 83, .12)), transparent 50%),
        #0e0d0b !important;
}

/* Чёрный рынок и восстановление предметов в настройках. */
.settings-items { display: block; }
.settings-items-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.settings-restore-row { display: flex; justify-content: flex-end; margin: 0 0 12px; }
.btn-restore-settings {
    border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e353829,rgba(229,202,142,.58)); border-radius: 9px; padding: 9px 14px;
    background: rgba(255,255,255,.045); color: var(--warm-23663164393966,#f1d99f); font: inherit; font-size: 11px;
    font-weight: 800; letter-spacing: .7px; cursor: pointer; transition: .2s ease;
}
.btn-restore-settings:hover { background: var(--warm-72676261283231312c3137302c37392c2e313629,rgba(211,170,79,.16)); box-shadow: 0 0 16px var(--warm-72676261283231382c3137372c38352c2e313829,rgba(218,177,85,.18)); }
.settings-item.market-locked { opacity: .72; filter: grayscale(.4); cursor: not-allowed; }
.settings-item.market-locked .settings-check { border-color: var(--warm-72676261283232392c3230322c3134322c2e323829,rgba(229,202,142,.28)); background: rgba(0,0,0,.16); }
.market-page { max-width: 1240px; }
.market-page h2, .market-lead, .market-inventory-title { text-align: center; }
.market-lead { color: var(--warm-23626462376161,#bdb7aa); margin: -8px 0 24px; }
.market-offers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.market-card, .inventory-card {
    border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e333229,rgba(229,202,142,.32)); border-radius: 15px;
    background: linear-gradient(135deg, rgba(255,255,255,.065), rgba(255,255,255,.018));
    padding: 18px; color: var(--warm-23663265656533,#f2eee3);
}
.market-card { min-height: 194px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.market-card > span { font-size: 32px; line-height: 1; }
.market-card > .market-item-art { position: relative; width: 100%; height: 112px; margin: 0 0 4px; display: grid; place-items: center; font-size: 0; }
.market-card > .market-item-art::after { content: ''; position: absolute; right: 10%; bottom: 2px; left: 10%; height: 1px; background: linear-gradient(90deg, transparent, var(--warm-72676261283232392c3230322c3134322c2e343829,rgba(229,202,142,.48)), transparent); box-shadow: 0 7px 15px var(--warm-72676261283232392c3230322c3134322c2e313229,rgba(229,202,142,.12)); }
.market-item-image { display: block; max-width: 100%; width: auto; height: 76px; object-fit: contain; filter: drop-shadow(0 12px 13px rgba(0,0,0,.55)) drop-shadow(0 0 9px var(--warm-72676261283232392c3230322c3134322c2e313229,rgba(229,202,142,.12))); transition: transform .22s ease, filter .22s ease; }
.market-card:hover .market-item-image { transform: translateY(-3px) scale(1.04); filter: drop-shadow(0 14px 15px rgba(0,0,0,.62)) drop-shadow(0 0 13px var(--warm-72676261283232392c3230322c3134322c2e3229,rgba(229,202,142,.2))); }
.market-card h3 { margin: 10px 0 6px; font-size: 17px; }
.market-card p, .inventory-card p { margin: 0; color: var(--warm-23626462386162,#bdb8ab); font-size: 13px; line-height: 1.42; }
.market-card button, .inventory-card button {
    margin-top: auto; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e373229,rgba(229,202,142,.72)); background: var(--warm-72676261283230372c3136362c37322c2e313229,rgba(207,166,72,.12));
    color: var(--warm-23663564393836,#f5d986); border-radius: 8px; padding: 9px 12px; font-weight: 800; font-size: 11px; cursor: pointer;
}
.market-card button:hover, .inventory-card button:hover { background: var(--warm-72676261283230372c3136362c37322c2e323529,rgba(207,166,72,.25)); }
.market-card button:disabled, .inventory-card button:disabled { opacity: .45; cursor: not-allowed; }
.market-inventory-title { margin: 34px 0 14px; font-size: 16px; letter-spacing: 1px; }
.market-inventory { display: grid; gap: 10px; }
.inventory-card { display: flex; gap: 13px; align-items: center; }
.inventory-card > span { display: inline-grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; font-size: 27px; line-height: 1; }
.inventory-card > div { flex: 1; }
.inventory-card b { display:block; margin-bottom: 4px; }
.inventory-card small { display:block; margin-top: 6px; color: var(--warm-23646663313735,#dfc175); }
.inventory-card aside { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.inventory-card button { margin: 0; }
.reward-talisman-note { flex: 0 0 100%; color: var(--warm-23653463353733,#e4c573); text-align: center; font-weight: 800; font-size: 12px; padding: 2px 0 7px; }
@media (max-width: 720px) {
    .settings-items-grid, .market-offers { grid-template-columns: 1fr; }
    .inventory-card { align-items: flex-start; flex-wrap: wrap; }
    .inventory-card aside { width: 100%; justify-content: flex-start; }
}

/* Шесть предложений в строку: компактные карточки с читаемыми иконками. */
.market-offers { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.market-card { min-height: 280px; padding: 16px 12px; gap: 0; border-radius: 14px; }
.market-card > span { min-height: 112px; display: grid; place-items: center; font-size: 42px; }
.market-card .market-item-image { width: 100%; max-width: 160px; height: 104px; object-fit: contain; }
.market-card h3 { font-size: 16px; line-height: 1.3; margin: 10px 0 8px; overflow-wrap: anywhere; }
.market-card p { font-size: 13px; line-height: 1.45; margin-bottom: 16px; }
.market-card button { width: 100%; min-height: 42px; padding: 10px 7px; font-size: 12px; border-radius: 9px; line-height: 1.35; }
.market-card.purchased { opacity: .72; border-color: rgba(117, 210, 149, .5); }
.market-card.purchased button { color: #79d99a; border-color: rgba(102, 210, 139, .5); background: rgba(66, 179, 105, .11); }
.market-info { display: inline-grid; place-items: center; position: relative; width: 24px; height: 24px; margin-left: 9px; vertical-align: 2px; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e373829,rgba(229,202,142,.78)); border-radius: 50%; color: var(--warm-23656664353864,#efd58d); font: 800 15px/1 var(--font-site); cursor: help; }
.market-info-popup { position: absolute; top: calc(100% + 9px); left: 50%; z-index: 90; width: 300px; padding: 12px 14px; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e343629,rgba(229,202,142,.46)); border-radius: 10px; background: rgba(15,14,12,.97); color: var(--warm-23653965336435,#e9e3d5); text-align: left; font: 400 12px/1.45 var(--font-site); letter-spacing: 0; opacity: 0; transform: translate(-50%, -5px); pointer-events: none; transition: opacity .18s ease, transform .18s ease; }
.market-info:hover .market-info-popup, .market-info:focus .market-info-popup { opacity: 1; transform: translate(-50%, 0); }
.market-card button[title] { position: relative; }
@media (max-width: 1250px) {
    .market-offers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .market-offers { grid-template-columns: 1fr; }
}

/* Контракт: выбор карты без ручного ввода. */
.map-contract-modal { position: fixed; inset: 0; z-index: 3300; display: none; align-items: center; justify-content: center; padding: 28px; background: rgba(3,3,6,.8); backdrop-filter: blur(9px); }
.map-contract-modal.active { display: flex; animation: rules-modal-in .2s ease both; }
.map-contract-panel { display: flex; flex-direction: column; width: min(1180px, 100%); max-height: calc(100vh - 56px); box-sizing: border-box; overflow: hidden; padding: 28px; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e3529,rgba(229,202,142,.5)); border-radius: 18px; background: linear-gradient(145deg, rgba(32,28,21,.97), rgba(11,11,10,.98)); box-shadow: 0 24px 90px rgba(0,0,0,.62), 0 0 44px var(--warm-72676261283230382c3136362c37362c2e313429,rgba(208,166,76,.14)); }
.map-contract-panel h2 { margin: 0; text-align: center; color: var(--warm-23663064313861,#f0d18a); font-size: 23px; letter-spacing: 1px; }
.map-contract-panel > p { margin: 8px 0 24px; color: var(--warm-23633863316166,#c8c1af); text-align: center; }
.map-contract-choices { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); flex: 1; min-width: 0; overflow: hidden; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e333529,rgba(229,202,142,.35)); border-radius: 12px; background: #13110d; }
.map-contract-choices.scrollable { overflow-y: auto; overflow-x: hidden; }
.map-contract-choices.compact { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.map-contract-choices.compact .map-contract-choice { min-height: 106px; }
.map-contract-choices.compact .map-contract-choice span { top: 14px; font-size: 14px; line-height: 1.15; }
.map-contract-choices.compact .map-contract-choice b { bottom: 12px; min-width: 104px; padding: 8px 21px; font-size: 10px; white-space: nowrap; }
.map-contract-choice { position: relative; min-width: 0; min-height: 210px; overflow: hidden; border: 0; border-right: 2px solid var(--warm-72676261283232392c3230322c3134322c2e343529,rgba(229,202,142,.45)); background: linear-gradient(135deg, rgba(255,255,255,.055), var(--warm-72676261283139302c3134352c35382c2e303429,rgba(190,145,58,.04))); color: var(--warm-23663365656531,#f3eee1); cursor: pointer; transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.map-contract-choice::after { content: ''; position: absolute; top: -10%; right: -24px; width: 3px; height: 120%; background: var(--warm-72676261283232392c3230322c3134322c2e3529,rgba(229,202,142,.5)); transform: skewX(-9deg); }
.map-contract-choice:last-child { border-right: 0; }
.map-contract-choice span { position: absolute; top: 26px; left: 15px; right: 15px; font-weight: 900; font-size: 16px; text-align: center; }
.map-contract-choice b { position: absolute; bottom: 23px; left: 50%; transform: translateX(-50%); padding: 9px 14px; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e373229,rgba(229,202,142,.72)); border-radius: 8px; color: var(--warm-23663164333864,#f1d38d); font-size: 11px; letter-spacing: .7px; }
.map-contract-choice:hover { z-index: 2; transform: scale(1.035); background: linear-gradient(135deg, rgba(255,255,255,.11), var(--warm-72676261283230312c3135332c35392c2e313629,rgba(201,153,59,.16))); box-shadow: 0 0 26px var(--warm-72676261283232352c3138322c38382c2e323229,rgba(225,182,88,.22)); }
.map-contract-choice:hover b { background: var(--warm-72676261283230392c3136352c37322c2e313729,rgba(209,165,72,.17)); }
.map-contract-cancel { display: block; margin: 22px auto 0; padding: 10px 20px; border: 1px solid rgba(255,255,255,.25); border-radius: 9px; background: rgba(255,255,255,.045); color: var(--warm-23646564386361,#ded8ca); font-weight: 800; letter-spacing: .6px; cursor: pointer; transition: .2s ease; }
.map-contract-cancel:hover { border-color: rgba(255,100,110,.75); color: #ffb5bb; background: rgba(185,39,50,.12); }
.market-notice { position: fixed; z-index: 3600; left: 50%; top: 88px; max-width: min(520px, calc(100vw - 36px)); padding: 14px 20px; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e3729,rgba(229,202,142,.7)); border-radius: 12px; background: rgba(18,16,12,.97); color: var(--warm-23663464646230,#f4ddb0); text-align: center; font-weight: 800; box-shadow: 0 12px 42px rgba(0,0,0,.48), 0 0 28px var(--warm-72676261283231302c3136382c37352c2e313829,rgba(210,168,75,.18)); opacity: 0; pointer-events: none; transform: translate(-50%, -16px); transition: opacity .22s ease, transform .22s ease; }
.market-notice.visible { opacity: 1; transform: translate(-50%, 0); }
.market-card { position: relative; }
.market-seal { position: absolute; top: 10px; right: 11px; z-index: 2; font-size: 18px; filter: drop-shadow(0 0 6px var(--warm-72676261283233302c3139342c39322c2e363529,rgba(230,194,92,.65))); }
.market-card.sealed { border-color: var(--warm-72676261283232392c3230322c3134322c2e383529,rgba(229,202,142,.85)); box-shadow: inset 0 0 0 1px var(--warm-72676261283232392c3230322c3134322c2e313829,rgba(229,202,142,.18)), 0 0 18px var(--warm-72676261283232392c3230322c3134322c2e3129,rgba(229,202,142,.1)); }
.final-effect-note { grid-column: 1 / -1; margin: 8px 0 0; color: var(--warm-23653963613738,#e9ca78); font-size: 13px; font-weight: 800; text-align: center; }
@media (max-width: 760px) { .map-contract-panel { padding: 18px; } .map-contract-choices { grid-template-columns: repeat(2, minmax(0, 1fr)); } .map-contract-choice { min-height: 150px; } }

/* Уведомление о наградах за достижения и две отдельные кнопки очистки профиля. */
.nav-achievements { position: relative; }
.achievement-badge { display: inline-grid; place-items: center; min-width: 16px; height: 16px; margin-left: 4px; padding: 0 4px; border-radius: 999px; background: var(--warm-23643961653463,#d9ae4c); color: var(--warm-23313831333061,#18130a); font-size: .62rem; font-weight: 900; line-height: 1; box-shadow: 0 0 10px var(--warm-72676261283232362c203138372c2038332c202e3629,rgba(226, 187, 83, .6)); vertical-align: middle; }
.achievement-badge.hidden { display: none; }
.reset-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.btn-reset-quests { border-color: var(--warm-72676261283232302c203138342c2038372c202e3829,rgba(220, 184, 87, .8)) !important; color: var(--warm-23663264323765,#f2d27e) !important; }
.btn-danger-profile { border-color: rgba(255, 76, 87, .8) !important; color: #ffb4ba !important; }
@media (max-width: 700px) { .reset-actions { grid-template-columns: 1fr; } }

/* Временно закрытые для теста карты видны в настройках, но включить их нельзя. */
.settings-item.temporarily-locked {
    opacity: .58;
    cursor: not-allowed;
    filter: grayscale(.35);
}
.settings-item.temporarily-locked:hover {
    border-color: rgba(180,180,188,.24) !important;
    background: rgba(255,255,255,.025) !important;
}
.settings-item.temporarily-locked .settings-item-info small { color: var(--warm-23623961343737,#b9a477); }
.settings-item.temporarily-locked .settings-check {
    border-color: var(--warm-72676261283230352c203137312c2039342c202e353829,rgba(205, 171, 94, .58));
    background: var(--warm-726762612839312c2037302c2033302c202e323829,rgba(91, 70, 30, .28));
    box-shadow: none;
}
.settings-item.temporarily-locked .settings-check::after {
    content: '🔒';
    display: grid;
    height: 100%;
    place-items: center;
    font-size: .7rem;
    filter: none;
}
body:not(.hardcore-mode) .main-header {
    background: rgba(16, 15, 12, .78);
    border-bottom-color: var(--warm-72676261283232352c203139342c203132352c202e333829,rgba(225, 194, 125, .38));
    box-shadow: 0 10px 36px rgba(0, 0, 0, .2), 0 1px 18px var(--warm-72676261283232322c203139302c203131392c202e303829,rgba(222, 190, 119, .08));
}
body:not(.hardcore-mode) .header-brand .brand-name {
    background-image: linear-gradient(90deg, #fffdf6, var(--warm-23643661653535,#d6ae55), var(--warm-23666666336366,#fff3cf));
}
body:not(.hardcore-mode) .header-nav .nav-link { color: var(--warm-23616161343939,#aaa499); }
body:not(.hardcore-mode) .header-nav .nav-link:hover,
body:not(.hardcore-mode) .header-nav .nav-link.active { color: #fffdf6; }
body:not(.hardcore-mode) .header-nav .nav-link.active { border-bottom-color: var(--warm-23643962353635,#d9b565); }
body:not(.hardcore-mode) .header-nav .nav-link::after { border: 0; background: linear-gradient(90deg, var(--warm-23666666376463,#fff7dc), var(--warm-23633939633364,#c99c3d), var(--warm-23666666376463,#fff7dc)); }
body:not(.hardcore-mode) .page-container,
body:not(.hardcore-mode) .reward-container,
body:not(.hardcore-mode) .final-container,
body:not(.hardcore-mode) .category-plate {
    background: linear-gradient(135deg, rgba(255,255,255,.075), var(--warm-72676261283137352c3133372c36342c2e303729,rgba(175,137,64,.07)));
    border-color: var(--warm-72676261283232392c203230322c203134322c202e333429,rgba(229, 202, 142, .34));
    box-shadow: 0 18px 55px rgba(0,0,0,.25), inset 0 1px rgba(255,255,255,.08);
}
body:not(.hardcore-mode) .main-title {
    background-image: linear-gradient(100deg, #fffdf7, var(--warm-23643761643531,#d7ad51) 48%, var(--warm-23666666336431,#fff3d1));
    text-shadow: 0 0 36px var(--warm-72676261283232302c203138322c2039382c202e313729,rgba(220, 182, 98, .17));
}
body:not(.hardcore-mode) .main-subtitle { color: var(--warm-23633862666165,#c8bfae); }
body:not(.hardcore-mode) .btn-main,
body:not(.hardcore-mode) .btn-accept {
    background: linear-gradient(145deg, var(--warm-23666666616630,#fffaf0), var(--warm-23643461613530,#d4aa50) 48%, var(--warm-23386636393239,#8f6929));
    color: var(--warm-23313631313061,#16110a);
    box-shadow: 0 0 45px var(--warm-72676261283231312c203137302c2038302c202e3329,rgba(211, 170, 80, .3)), inset 0 1px rgba(255,255,255,.75);
}
body:not(.hardcore-mode) .btn-main::before { background: linear-gradient(135deg, #fffdf8, var(--warm-23653863313664,#e8c16d), var(--warm-23396237313330,#9b7130)); }
body:not(.hardcore-mode) .btn-main .btn-main-text,
body:not(.hardcore-mode) .btn-main .btn-main-sub { color: var(--warm-23316231343061,#1b140a); text-shadow: none; }
body:not(.hardcore-mode) .btn-accept { color: var(--warm-23313731313061,#17110a); }
body:not(.hardcore-mode) .roulette-particle,
body:not(.hardcore-mode) .final-particle,
body:not(.hardcore-mode) .page-particle {
    background: var(--warm-23663564646230,#f5ddb0) !important;
    box-shadow: 0 0 11px var(--warm-23663564646230,#f5ddb0), 0 0 23px var(--warm-72676261283231302c3136392c38332c2e343229,rgba(210,169,83,.42)) !important;
}
body:not(.hardcore-mode) .progress-dot.active,
body:not(.hardcore-mode) .progress-dot.done,
body:not(.hardcore-mode) .quest-map-tabs button.active,
body:not(.hardcore-mode) .settings-tab.active { border-color: var(--warm-23643962353635,#d9b565); color: var(--warm-23666666396539,#fff9e9); }
body:not(.hardcore-mode) .quest-map-tabs button.active { background: var(--warm-72676261283231372c3138312c3130312c2e313229,rgba(217,181,101,.12)); }

/* Подложка текста под фотографией задания: запас по высоте для длинных описаний. */
.quest-has-image .quest-card-content::before {
    top: 10px;
    width: min(94%, 500px);
    height: 178px;
    border: 0;
    box-shadow: none;
    background: linear-gradient(180deg, rgba(3,4,8,.82) 0%, rgba(4,5,10,.58) 68%, rgba(4,5,10,0) 100%);
}
.quest-slot .quest-title,
.quest-slot .quest-desc {
    overflow-wrap: anywhere;
    word-break: normal;
}
.quest-slot .quest-desc { line-height: 1.34; }
@media(max-width:700px){
    .quest-has-image .quest-card-content::before { height: 184px; width: 96%; }
    .quest-slot .quest-desc { font-size: .78rem; }
}

/* Прозрачные поверхности общего бело-золотого оформления. */
body:not(.hardcore-mode) .wheel-container,
body:not(.hardcore-mode) .wheel-item,
body:not(.hardcore-mode) .history-item,
body:not(.hardcore-mode) .rule-card,
body:not(.hardcore-mode) .quest-popup-card,
body:not(.hardcore-mode) .raid-detail-panel,
body:not(.hardcore-mode) .raid-loadout,
body:not(.hardcore-mode) .raid-reward-breakdown,
body:not(.hardcore-mode) .quest-library-row,
body:not(.hardcore-mode) .quest-map-tabs button,
body:not(.hardcore-mode) .quest-reward,
body:not(.hardcore-mode) .stats-grid div {
    background: linear-gradient(135deg, rgba(255,255,255,.075), var(--warm-72676261283135342c3131392c35302c2e30353529,rgba(154,119,50,.055))) !important;
    border-color: var(--warm-72676261283232392c203230322c203134322c202e3329,rgba(229, 202, 142, .3));
}
body:not(.hardcore-mode) .wheel-container::after { background: linear-gradient(90deg, rgba(14,13,11,.72), transparent 18%, transparent 82%, rgba(14,13,11,.72)); }
body:not(.hardcore-mode) .wheel-item.active { border-color: var(--warm-72676261283235352c3234382c3232362c2e373829,rgba(255,248,226,.78)); box-shadow: 0 0 24px var(--warm-72676261283232392c3230322c3134322c2e323229,rgba(229,202,142,.22)); }
body:not(.hardcore-mode) .history-item,
body:not(.hardcore-mode) .rule-card,
body:not(.hardcore-mode) .quest-popup-card,
body:not(.hardcore-mode) .raid-detail-panel { box-shadow: 0 14px 38px rgba(0,0,0,.24), inset 0 1px rgba(255,255,255,.075); }
body:not(.hardcore-mode) .rule-card:hover { border-color: var(--warm-72676261283233392c3231312c3134352c2e373229,rgba(239,211,145,.72)); background: linear-gradient(135deg, rgba(255,255,255,.11), var(--warm-72676261283137302c3132382c34352c2e3129,rgba(170,128,45,.1))) !important; box-shadow: 0 16px 34px rgba(0,0,0,.26), 0 0 22px var(--warm-72676261283231392c3138322c39372c2e313329,rgba(219,182,97,.13)); }
body:not(.hardcore-mode) .raid-detail-modal,
body:not(.hardcore-mode) .rules-modal { background: rgba(10,9,7,.72); }
body:not(.hardcore-mode) .history-items span,
body:not(.hardcore-mode) .raid-loadout span,
body:not(.hardcore-mode) .raid-reward-parts span { background: rgba(255,255,255,.065); }
body:not(.hardcore-mode) .quest-reward input { accent-color: var(--warm-23643962353635,#d9b565); }
body:not(.hardcore-mode) .quest-reward input:checked { filter: sepia(.35) saturate(1.5); }
body:not(.hardcore-mode) .rules-modal-panel { border-color: var(--warm-72676261283232392c3230322c3134322c2e3529,rgba(229,202,142,.5)); background: linear-gradient(145deg, var(--warm-726762612833382c33322c32312c2e393629,rgba(38,32,21,.96)), rgba(13,12,10,.97)); box-shadow: 0 24px 90px rgba(0,0,0,.55), 0 0 45px var(--warm-72676261283231302c3136392c38332c2e313229,rgba(210,169,83,.12)); }
body:not(.hardcore-mode) .rules-modal-panel li::marker { color: var(--warm-23643962353635,#d9b565); }
body:not(.hardcore-mode) .rules-modal-nav { border-color: var(--warm-72676261283232392c3230322c3134322c2e333529,rgba(229,202,142,.35)); color: var(--warm-23663564646230,#f5ddb0); background: var(--warm-726762612832382c32332c31352c2e383229,rgba(28,23,15,.82)); }
body:not(.hardcore-mode) .rules-modal-nav:hover { border-color: var(--warm-23653663363666,#e6c66f); background: var(--warm-72676261283139302c3134372c36332c2e313629,rgba(190,147,63,.16)); box-shadow: 0 0 24px var(--warm-72676261283232302c3138312c39362c2e3229,rgba(220,181,96,.2)); }
body:not(.hardcore-mode) .tooltip,
body:not(.hardcore-mode) .item-hover-tip {
    background: rgba(25, 21, 14, .92);
    border-color: var(--warm-72676261283232392c203230322c203134322c202e333829,rgba(229, 202, 142, .38));
    box-shadow: 0 12px 32px rgba(0,0,0,.34), 0 0 20px var(--warm-72676261283231302c3136392c38332c2e303829,rgba(210,169,83,.08));
}
body:not(.hardcore-mode) .tooltip .tooltip-desc,
body:not(.hardcore-mode) .item-hover-tip { color: var(--warm-23643864316331,#d8d1c1); }
body:not(.hardcore-mode) .quest-popup-images button,
body:not(.hardcore-mode) .raid-detail-quests .quest-popup-images button,
body:not(.hardcore-mode) .quest-popup-images img {
    border-color: var(--warm-72676261283232352c203139342c203132352c202e343229,rgba(225, 194, 125, .42)) !important;
}
body:not(.hardcore-mode) .rule-icon { filter: none; }
body:not(.hardcore-mode) .reward-item.counter button,
body:not(.hardcore-mode) .reward-input {
    background: rgba(255,255,255,.055);
    border-color: var(--warm-72676261283232392c3230322c3134322c2e333429,rgba(229,202,142,.34));
}
body:not(.hardcore-mode) .settings-tab,
body:not(.hardcore-mode) .settings-tab:hover,
body:not(.hardcore-mode) .settings-tab.active {
    background: rgba(255,255,255,.045);
    border-color: var(--warm-72676261283232392c3230322c3134322c2e333429,rgba(229,202,142,.34));
    color: var(--warm-23656565376438,#eee7d8);
    box-shadow: none;
}
body:not(.hardcore-mode) .settings-tab:hover,
body:not(.hardcore-mode) .settings-tab.active { background: var(--warm-72676261283230342c3136332c38332c2e313229,rgba(204,163,83,.12)); border-color: var(--warm-23643962353635,#d9b565); }
body:not(.hardcore-mode) .settings-item:hover { border-color: var(--warm-72676261283232392c3230322c3134322c2e3629,rgba(229,202,142,.6)); background: rgba(255,255,255,.055); }
body:not(.hardcore-mode) .settings-item-info i { box-shadow: none; }
body:not(.hardcore-mode) .quest-library-locked { color: var(--warm-23643063346161,#d0c4aa); letter-spacing: .7px; }

/* Длинное описание остаётся целиком внутри своей подложки. */
.quest-has-image .quest-card-content::before { width: calc(100% - 34px); max-width: none; height: 205px; }
.quest-slot .quest-title { max-width: 86%; }
.quest-slot .quest-desc { max-width: 86%; flex: 0 0 auto; max-height: 4.05em; -webkit-line-clamp: 3; }

/* Главный экран: симметричный верхний и нижний свет без бокового пятна. */
body:not(.hardcore-mode) #screen-main {
    background: radial-gradient(ellipse at 50% -13%, var(--warm-72676261283235352c3234362c3231392c2e313729,rgba(255,246,219,.17)), transparent 48%),
        radial-gradient(ellipse at 50% 108%, var(--warm-72676261283230342c3136332c38332c2e313329,rgba(204,163,83,.13)), transparent 38%), #0e0d0b !important;
}
body:not(.hardcore-mode) .category-plate.done { border-color: var(--warm-72676261283232392c3230322c3134322c2e353529,rgba(229,202,142,.55)); background: var(--warm-72676261283230342c3136332c38332c2e303929,rgba(204,163,83,.09)); }
body:not(.hardcore-mode) .category-plate.done .category-name { color: var(--warm-23663164313863,#f1d18c); }
body:not(.hardcore-mode) .quest-text-only .quest-image-layer { background: radial-gradient(circle at 50% 13%,var(--warm-72676261283231372c3138312c3130312c2e313229,rgba(217,181,101,.12)),transparent 35%),linear-gradient(150deg,var(--warm-726762612834322c33362c32352c2e373829,rgba(42,36,25,.78)),rgba(16,14,11,.88)); }
/* В обычном режиме — красная точка входа; в хардкоре — золотая точка выхода. */
body:not(.hardcore-mode) .mode-orb { border-color: rgba(255,71,87,.82); background: radial-gradient(circle at 32% 28%, #ff9da7, #ef4444 58%, #781c2b); box-shadow: 0 0 13px rgba(255,71,87,.68), 0 0 30px rgba(255,40,60,.25); }
body:not(.hardcore-mode) .mode-orb:hover { box-shadow: 0 0 18px rgba(255,71,87,.95), 0 0 42px rgba(255,40,60,.42); }
body.hardcore-mode .mode-orb.is-hardcore { border-color: var(--warm-72676261283232392c3139302c39352c2e383529,rgba(229,190,95,.85)); background: radial-gradient(circle at 32% 28%, var(--warm-23666666356339,#fff5c9), var(--warm-23643861383365,#d8a83e) 58%, var(--warm-23373835343163,#78541c)); box-shadow: 0 0 13px var(--warm-72676261283232372c3138312c37392c2e3729,rgba(227,181,79,.7)), 0 0 30px var(--warm-72676261283231332c3136322c35372c2e323529,rgba(213,162,57,.25)); }
body.hardcore-mode .mode-orb.is-hardcore:hover { box-shadow: 0 0 18px var(--warm-72676261283235352c3232362c3135312c2e393529,rgba(255,226,151,.95)), 0 0 42px var(--warm-72676261283231332c3136322c35372c2e343229,rgba(213,162,57,.42)); }

/* Хардкор сохраняет общий стеклянный стиль, но в тёмно-красной палитре. */
body.hardcore-mode .wheel-container,
body.hardcore-mode .wheel-item,
body.hardcore-mode .history-item,
body.hardcore-mode .rule-card,
body.hardcore-mode .quest-popup-card,
body.hardcore-mode .raid-detail-panel,
body.hardcore-mode .raid-loadout,
body.hardcore-mode .raid-reward-breakdown,
body.hardcore-mode .quest-library-row,
body.hardcore-mode .quest-map-tabs button,
body.hardcore-mode .quest-reward,
body.hardcore-mode .stats-grid div {
    background: linear-gradient(135deg, rgba(116,20,33,.17), rgba(20,7,10,.28)) !important;
    border-color: rgba(197,64,79,.38);
}
body.hardcore-mode .wheel-container::after { background: linear-gradient(90deg, rgba(18,6,9,.76), transparent 18%, transparent 82%, rgba(18,6,9,.76)); }
body.hardcore-mode .category-plate.done { border-color: rgba(232,84,98,.62); background: rgba(168,31,46,.13); }
body.hardcore-mode .category-plate.done .category-name { color: #ff9aa5; }
body.hardcore-mode .quest-text-only .quest-image-layer { background: radial-gradient(circle at 50% 13%,rgba(210,61,75,.2),transparent 38%),linear-gradient(150deg,rgba(57,14,21,.9),rgba(15,6,8,.95)); }
body.hardcore-mode .reward-item.counter button,
body.hardcore-mode .reward-input { background: rgba(103,23,33,.2); border-color: rgba(219,78,94,.45); }
body.hardcore-mode .quest-reward input { accent-color: #e65364; }
body:not(.hardcore-mode) .selected-items .selected-chip { background: rgba(255,255,255,.055); border-color: var(--warm-72676261283232392c3230322c3134322c2e343629,rgba(229,202,142,.46)); color: var(--warm-23656665346364,#efe4cd); }
body:not(.hardcore-mode) .selected-items .selected-chip:hover { background: var(--warm-72676261283230342c3136332c38332c2e313429,rgba(204,163,83,.14)); border-color: var(--warm-23653062643663,#e0bd6c); box-shadow: none; }
body.hardcore-mode .selected-items .selected-chip { background: rgba(112,23,35,.18); border-color: rgba(210,72,87,.48); color: #ffd7dc; }

/* В хардкоре крупные подложки страниц не нужны — контент идёт прямо поверх тёмного фона. */
body.hardcore-mode .page-container,
body.hardcore-mode .reward-container,
body.hardcore-mode .final-container {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}
body.hardcore-mode .main-header {
    background: rgba(44, 8, 13, .9);
    border-bottom-color: rgba(204, 64, 79, .46);
    box-shadow: 0 10px 32px rgba(0,0,0,.28), 0 1px 20px rgba(180,37,54,.14);
}

/* Единый фон хардкора: чёрный, с мягким красным светом в центре.
   Карточки при этом остаются спокойными и хорошо читаемыми. */
body.hardcore-mode #screen-main,
body.hardcore-mode #screen-select,
body.hardcore-mode #screen-final,
body.hardcore-mode #screen-reward,
body.hardcore-mode .page-screen {
    background:
        radial-gradient(ellipse at 50% 50%, rgba(140, 19, 31, .24), transparent 47%),
        radial-gradient(ellipse at 50% 112%, rgba(112, 12, 22, .14), transparent 40%),
        #09090b !important;
}

/* В обоих режимах контент располагается непосредственно на общем фоне. */
body:not(.hardcore-mode) .page-container,
body:not(.hardcore-mode) .reward-container,
body:not(.hardcore-mode) .final-container {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* Шапка хардкора возвращена к её отдельной тёмно-красной палитре. */
body.hardcore-mode .main-header {
    background: linear-gradient(180deg, rgba(63, 9, 15, .96), rgba(31, 6, 10, .94));
    border-bottom-color: rgba(219, 71, 86, .56);
    box-shadow: 0 10px 32px rgba(0,0,0,.36), 0 1px 22px rgba(174, 29, 43, .2);
}

/* Правила, статистика и список заданий не окрашиваются в красный: это нейтральные панели. */
body.hardcore-mode .rule-card,
body.hardcore-mode .stats-grid div,
body.hardcore-mode .quest-library-row,
body.hardcore-mode .quest-map-tabs button,
body.hardcore-mode .quest-popup-card,
body.hardcore-mode .quest-reward,
body.hardcore-mode .raid-detail-panel,
body.hardcore-mode .raid-loadout,
body.hardcore-mode .raid-reward-breakdown {
    background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
    border-color: rgba(190,190,199,.28) !important;
    box-shadow: none;
}
body.hardcore-mode .rule-card:hover {
    background: linear-gradient(135deg, rgba(255,255,255,.085), rgba(255,255,255,.03)) !important;
    border-color: rgba(222,222,228,.5) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
}
body.hardcore-mode .stats-grid div { color: #f5f4f2; }
body.hardcore-mode .quest-map-tabs button.active {
    background: rgba(255,255,255,.09) !important;
    border-color: rgba(228,228,234,.58) !important;
}

/* Сложность в библиотеке заданий видна сразу: цветная полоска и контур, без неясного свечения. */
.quest-library-row.quest-common {
    border-left: 4px solid #a9a9b1 !important;
}
.quest-library-row.quest-rare {
    border-color: rgba(61, 182, 255, .72) !important;
    border-left: 4px solid #35b8ff !important;
    box-shadow: inset 3px 0 0 rgba(53,184,255,.18) !important;
}
.quest-library-row.quest-hardcore {
    border-color: rgba(255, 77, 93, .78) !important;
    border-left: 4px solid #ff4d5d !important;
    box-shadow: inset 3px 0 0 rgba(255,77,93,.18) !important;
}
.quest-library-row.quest-rare .quest-library-title,
.quest-library-row.quest-rare > strong { color: #64c8ff; }
.quest-library-row.quest-hardcore .quest-library-title,
.quest-library-row.quest-hardcore > strong { color: #ff7180; }

/* У хардкора огонь идёт сверху и снизу, не перекрывая рабочую область в центре. */
body.hardcore-mode #screen-main,
body.hardcore-mode #screen-select,
body.hardcore-mode #screen-final,
body.hardcore-mode #screen-reward,
body.hardcore-mode .page-screen {
    background:
        radial-gradient(ellipse at 50% -12%, rgba(151, 21, 34, .27), transparent 44%),
        radial-gradient(ellipse at 50% 112%, rgba(139, 16, 29, .24), transparent 43%),
        #09090b !important;
}

/* Одна общая тёмно-коричневая шапка во всех режимах. */
.main-header,
body.hardcore-mode .main-header {
    background: linear-gradient(180deg, rgba(54, 39, 24, .97), rgba(31, 22, 13, .96)) !important;
    border-bottom-color: var(--warm-72676261283230352c203136362c2039312c202e343229,rgba(205, 166, 91, .42)) !important;
    box-shadow: 0 10px 32px rgba(0,0,0,.34), 0 1px 20px var(--warm-72676261283137332c203132342c2035302c202e313229,rgba(173, 124, 50, .12)) !important;
}

/* Записи истории остаются серыми даже во время хардкорного режима. */
body.hardcore-mode .history-item,
body.hardcore-mode .history-item.history-survived,
body.hardcore-mode .history-item.history-died,
body.hardcore-mode .history-item-hardcore {
    background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
    border-color: rgba(190,190,199,.28) !important;
    box-shadow: none !important;
}
body.hardcore-mode .history-item.history-survived:hover { border-color: #2ed573 !important; box-shadow: 0 0 22px rgba(46,213,115,.27) !important; }
body.hardcore-mode .history-item.history-died:hover { border-color: #ff4757 !important; box-shadow: 0 0 22px rgba(255,71,87,.27) !important; }

/* В настройках хардкора синий заменён на красный только для активной/наведённой категории. */
body.hardcore-mode .settings-tab:hover,
body.hardcore-mode .settings-tab.active {
    background: rgba(174, 32, 47, .14) !important;
    border-color: rgba(239, 78, 94, .86) !important;
    color: #fff2f3 !important;
    box-shadow: 0 0 17px rgba(225, 55, 72, .2) !important;
}

/* Шапки режимов намеренно различаются: обычная — тёплая, хардкор — почти чёрный. */
body:not(.hardcore-mode) .main-header {
    background: #15150f !important;
    border-bottom-color: var(--warm-72676261283230352c203136362c2039312c202e333429,rgba(205, 166, 91, .34)) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.28), 0 1px 16px var(--warm-72676261283137332c203132342c2035302c202e303829,rgba(173, 124, 50, .08)) !important;
}
body.hardcore-mode .main-header {
    background: #080809 !important;
    border-bottom-color: rgba(202, 58, 73, .52) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.46), 0 1px 16px rgba(165, 25, 39, .13) !important;
}

/* Очень длинные затухания без видимой линии окончания света. */
body.hardcore-mode #screen-main,
body.hardcore-mode #screen-select,
body.hardcore-mode #screen-final,
body.hardcore-mode #screen-reward,
body.hardcore-mode .page-screen {
    background:
        radial-gradient(ellipse 105% 62% at 50% -16%, rgba(145, 24, 36, .23) 0%, rgba(105, 16, 27, .15) 28%, rgba(55, 8, 14, .055) 56%, transparent 88%),
        radial-gradient(ellipse 112% 68% at 50% 116%, rgba(128, 18, 30, .20) 0%, rgba(84, 11, 20, .12) 30%, rgba(46, 6, 12, .045) 58%, transparent 91%),
        #09090b !important;
}
body:not(.hardcore-mode) #screen-main,
body:not(.hardcore-mode) #screen-select,
body:not(.hardcore-mode) #screen-final,
body:not(.hardcore-mode) #screen-reward,
body:not(.hardcore-mode) .page-screen {
    background:
        radial-gradient(ellipse 105% 62% at 50% -16%, var(--warm-72676261283235352c203233392c203139392c202e313329,rgba(255, 239, 199, .13)) 0%, var(--warm-72676261283139382c203135342c2037322c202e30383529,rgba(198, 154, 72, .085)) 30%, var(--warm-726762612839362c2037302c2032362c202e30333529,rgba(96, 70, 26, .035)) 58%, transparent 90%),
        radial-gradient(ellipse 112% 68% at 50% 116%, var(--warm-72676261283139362c203135312c2036352c202e313229,rgba(196, 151, 65, .12)) 0%, var(--warm-72676261283133372c2039362c2033312c202e303729,rgba(137, 96, 31, .07)) 32%, var(--warm-726762612836332c2034342c2031342c202e30323829,rgba(63, 44, 14, .028)) 61%, transparent 92%),
        #0e0d0b !important;
}


/* Shared item icon visuals */
.wheel-item-image { width:100%; height:100%; object-fit:contain; display:block; border-radius:10px; pointer-events:none; }
.chip-item-image { width:30px; height:30px; object-fit:contain; display:block; border-radius:7px; }
.selected-chip { display:inline-flex; align-items:center; gap:7px; }
.history-build-icon { width:64px; height:64px; display:inline-grid; place-items:center; padding:0 !important; overflow:hidden; cursor:help !important; border:1px solid var(--warm-72676261283235352c3231352c3130342c2e323629,rgba(255,215,104,.26)); border-radius:9px; background:rgba(255,255,255,.025); }
.history-build-icon:hover { border-color:var(--warm-72676261283235352c3231352c3130342c2e3729,rgba(255,215,104,.7)); box-shadow:0 0 15px var(--warm-72676261283235352c3231352c3130342c2e3229,rgba(255,215,104,.2)); }
.history-item-icon { width:100%; height:100%; object-fit:contain; display:block; }
.history-items .history-build-icon { color:#ddd; }
.tooltip-item-image { width:90px; height:90px; object-fit:contain; display:block; border-radius:10px; }
.tooltip .tooltip-icon:has(.tooltip-item-image) { width:98px; min-width:98px; height:98px; display:grid; place-items:center; overflow:hidden; }
.tooltip-icon-only { width:172px; height:172px; display:grid; place-items:center; }
.tooltip-icon-only .tooltip-item-image { width:100%; height:100%; }
.tooltip.tooltip-icon-preview { padding:8px; }
.final-summary .item[data-item-category] { cursor:help; }
.raid-loadout [data-item-category] { cursor:help; }
.raid-loadout [data-item-category]:hover { border-color:var(--warm-72676261283235352c3231352c3130342c2e3729,rgba(255,215,104,.7)); background:var(--warm-72676261283235352c3231352c3130342c2e303729,rgba(255,215,104,.07)); }
@media (max-width:700px) { .history-build-icon { width:52px; height:52px; } }



/* Lucky Raid: предметы в колесе рисуются собственными карточками без второй подложки. */
.category-plate .category-icon:empty { display: none; }
.category-plate { gap: 0; }
.wheel-item:has(.wheel-item-image) {
    padding: 0 !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}
.wheel-item:has(.wheel-item-image).active {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}
.wheel-item:has(.wheel-item-image).active .wheel-item-image {
    filter: drop-shadow(0 0 12px var(--selection-color, var(--warm-72676261283235352c3231352c3130342c2e3729,rgba(255,215,104,.7))));
}
.wheel-item-image { border-radius: 0; }

/* Чуть крупнее иконки уже выпавших предметов и в их подсказках. */
.chip-item-image { width: 40px; height: 40px; border-radius: 9px; }
.selected-chip { gap: 9px; }
.tooltip-item-image { width: 122px; height: 122px; border-radius: 12px; }
.tooltip .tooltip-icon:has(.tooltip-item-image) { width: 130px; min-width: 130px; height: 130px; }
.tooltip-icon-only { width: 196px; height: 196px; }
.history-build-icon { width: 76px; height: 76px; }
@media (max-width:700px) {
    .chip-item-image { width: 34px; height: 34px; }
    .history-build-icon { width: 60px; height: 60px; }
    .tooltip-item-image { width: 104px; height: 104px; }
    .tooltip .tooltip-icon:has(.tooltip-item-image) { width: 112px; min-width: 112px; height: 112px; }
}


/* Иконки уже содержат собственные рамки — внешние ячейки полностью прозрачны. */
body:not(.hardcore-mode) .wheel-item[data-has-item-icon="true"],
body.hardcore-mode .wheel-item[data-has-item-icon="true"],
.wheel-item[data-has-item-icon="true"],
.wheel-item[data-has-item-icon="true"].active {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}
.wheel-item[data-has-item-icon="true"] .wheel-item-image { width: 100%; height: 100%; object-fit: contain; }
.wheel-item[data-has-item-icon="true"].active .wheel-item-image { filter: drop-shadow(0 0 13px var(--selection-color, var(--warm-23663164313863,#f1d18c))); }

/* В истории и наверху сборки нет второй рамки за готовой иконкой. */
.history-build-icon { width: 84px; height: 84px; background: transparent !important; border: 0 !important; border-radius: 0; box-shadow: none !important; }
.history-build-icon:hover { border: 0 !important; box-shadow: none !important; }
.chip-item-image { width: 48px; height: 48px; border-radius: 10px; }
.selected-chip { gap: 10px; }
@media (max-width:700px) { .history-build-icon { width: 66px; height: 66px; } .chip-item-image { width: 40px; height: 40px; } }


/* Нейтрализует общую плашку истории именно для карточек-иконок. */
body:not(.hardcore-mode) .history-items .history-build-icon,
body.hardcore-mode .history-items .history-build-icon,
.history-items .history-build-icon {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* Дорожка: компактнее по горизонтали, центр предметов строго посередине по высоте. */
.wheel-container { box-sizing:border-box; height:calc(var(--wheel-item-size,140px) + 56px); min-height:calc(var(--wheel-item-size,140px) + 56px); padding:0 10px; display:flex; align-items:center; }
.wheel-track { gap: 6px !important; padding: 0 8px !important; }

/* Итоговая сборка — две равные крупные колонки без карты и без эмодзи. */
.final-title { margin-bottom: 24px; }
.final-summary { width: min(100%, 1180px); padding: 0; background: transparent !important; border-radius: 0; }
.final-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.final-loadout-column { display: grid; gap: 14px; }
.final-loadout-row { display: grid; grid-template-columns: 118px minmax(0, 1fr); align-items: center; gap: 18px; min-height: 126px; padding: 12px 16px; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e323829,rgba(229,202,142,.28)); border-radius: 16px; background: linear-gradient(135deg, rgba(255,255,255,.065), var(--warm-72676261283135342c3131392c35302c2e30353529,rgba(154,119,50,.055))); cursor: help; transition: border-color .2s ease, transform .2s ease; }
.final-loadout-row:hover { border-color: var(--warm-72676261283233392c3231312c3134352c2e373629,rgba(239,211,145,.76)); transform: translateY(-2px); }
.final-loadout-icon { width: 110px; height: 110px; display: grid; place-items: center; overflow: hidden; }
.final-loadout-image { width: 100%; height: 100%; object-fit: contain; display: block; }
.final-loadout-fallback { color: var(--warm-23643963313861,#d9c18a); font-weight: 800; font-size: .86rem; text-align: center; line-height: 1.2; }
.final-loadout-copy { min-width: 0; display: grid; gap: 8px; }
.final-loadout-copy b { font-size: 1.2rem; line-height: 1.15; overflow-wrap: anywhere; }
.final-loadout-copy p { margin: 0; color: var(--warm-23633663326238,#c6c2b8); font-size: .98rem; line-height: 1.35; }
.final-summary .final-effect-note { grid-column: 1 / -1; }
@media (max-width: 760px) { .final-columns { grid-template-columns: 1fr; } .final-loadout-row { grid-template-columns: 88px minmax(0,1fr); min-height: 98px; padding: 10px; } .final-loadout-icon { width: 82px; height: 82px; } .final-loadout-copy b { font-size: 1rem; } .final-loadout-copy p { font-size: .85rem; } }


/* Более специфичное правило перекрывает старые строковые стили итоговой сборки. */
.final-summary .final-loadout-row {
    grid-template-columns: 118px minmax(0, 1fr);
    gap: 18px;
    min-height: 126px;
    padding: 12px 16px;
    background: linear-gradient(135deg, rgba(255,255,255,.065), var(--warm-72676261283135342c3131392c35302c2e30353529,rgba(154,119,50,.055)));
    border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e323829,rgba(229,202,142,.28));
}
@media (max-width: 760px) {
    .final-summary .final-loadout-row { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; min-height: 98px; padding: 10px; }
}


/* Raid-modifier icons and smoother roulette rendering. */
.wheel-track { contain: layout paint style; transform: translate3d(0, 0, 0); }
.wheel-item { contain: layout paint style; }
.wheel-item-image { transform: translateZ(0); backface-visibility: hidden; }

/* The regular cursor prevents the browser's help-question-mark cursor next to history icons. */
.history-build-icon, .raid-loadout [data-item-category] { cursor: default !important; }

/* Detailed raid history uses compact visual loadout icons with the existing name/description tooltip. */
.raid-loadout > div { align-items: center; }
.raid-loadout-item { width: 78px; height: 78px; display: grid; place-items: center; padding: 0 !important; overflow: hidden; background: transparent !important; border: 0 !important; border-radius: 0 !important; }
.raid-loadout-item-icon { width: 100%; height: 100%; object-fit: contain; display: block; }
.raid-loadout-item b { text-align: center; font-size: .72rem; line-height: 1.15; }

/* All task screenshots in a detailed history raid begin at the same vertical line. */
.raid-detail-quests .quest-popup-card { display: grid; grid-template-rows: 24px 42px 48px auto; }
.raid-detail-quests .quest-popup-head { min-height: 24px; }
.raid-detail-quests .quest-popup-card h3 { min-height: 42px; overflow: hidden; }
.raid-detail-quests .quest-popup-card p { min-height: 48px; overflow: hidden; }
.raid-detail-quests .quest-popup-images { align-self: start; }

/* Achievement notifications show the saved achievement art, not an emoji. */
.achievement-toast > span { overflow: hidden; background: transparent; }
.achievement-toast > span img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* The redesigned final loadout stays inside a Full HD screen together with the task area. */
.final-title { margin-bottom: 16px; }
.final-summary { width: min(100%, 1080px); }
.final-columns { gap: 16px; }
.final-loadout-column { gap: 10px; }
.final-summary .final-loadout-row, .final-loadout-row { grid-template-columns: 94px minmax(0, 1fr); gap: 14px; min-height: 104px; padding: 9px 12px; }
.final-loadout-icon { width: 86px; height: 86px; }
.final-loadout-copy { gap: 5px; }
.final-loadout-copy b { font-size: 1.05rem; }
.final-loadout-copy p { font-size: .9rem; line-height: 1.28; }

/* У иконок в рулетке есть собственная рамка: контейнер не рисует вторую. */
.wheel-item[data-has-item-icon="true"],
.wheel-item[data-has-item-icon="true"].active {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.wheel-item[data-has-item-icon="true"] .wheel-item-image { width: 100%; height: 100%; }

/* Подсказка поверх окна подробностей, без курсора с вопросительным знаком. */
.tooltip { z-index: 1400 !important; }
.final-loadout-row,
.final-summary .final-loadout-row { cursor: default !important; }

/* У готовых PNG-карточек не должно быть ни подсветки ячейки, ни фильтра,
   который мог визуально вернуть прямоугольный фон у прозрачных углов. */
.wheel-item[data-has-item-icon="true"],
.wheel-item[data-has-item-icon="true"].active {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: translateZ(0) !important;
}
.wheel-item[data-has-item-icon="true"] .wheel-item-image,
.wheel-item[data-has-item-icon="true"].active .wheel-item-image {
    filter: none !important;
    transform: none !important;
    image-rendering: auto;
}

/* Фоны выпавших карт. У частиц отдельный слой, поэтому они остаются поверх. */
#screen-final.has-map-backdrop {
    position: relative;
    isolation: isolate;
    background: #090909 !important;
}
#screen-final.has-map-backdrop::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: linear-gradient(180deg, rgba(7,7,7,.42), rgba(7,7,7,.64)), var(--final-map-backdrop);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
#screen-final.has-map-backdrop .final-particles { z-index: 1; }
#screen-final.has-map-backdrop .final-container { z-index: 2; }

.history-item[style*="--history-map-backdrop"] {
    background-image: linear-gradient(90deg, rgba(11,10,8,.9), rgba(14,12,9,.72)), var(--history-map-backdrop) !important;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* Переключатель режима остаётся заметным, но больше не отвлекает от экрана. */
.mode-orb {
    width: 12px;
    height: 12px;
    left: clamp(10px, var(--orb-left, 10%), calc(100% - 22px));
    top: clamp(10px, var(--orb-top, 68%), calc(100% - 22px));
    box-shadow: 0 0 8px rgba(255, 71, 87, .62), 0 0 18px rgba(255, 40, 60, .2);
}
.mode-orb.is-hardcore { box-shadow: 0 0 8px var(--warm-72676261283232392c3139302c39352c2e363829,rgba(229,190,95,.68)), 0 0 18px var(--warm-72676261283231332c3136322c35372c2e3229,rgba(213,162,57,.2)); }

/* Карточка истории — это сам малый фон карты, а не прозрачная плашка поверх него. */
body .history-item.has-map-backdrop {
    background-color: #15130e !important;
}

/* Большой фон выпавшей карты остаётся и на экране подведения итогов. */
#screen-reward.has-map-backdrop {
    position: relative;
    isolation: isolate;
    background: #090909 !important;
}
#screen-reward.has-map-backdrop::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(7,7,7,.44), rgba(7,7,7,.68)), var(--reward-map-backdrop) center / cover no-repeat;
}
#screen-reward.has-map-backdrop .final-particles { z-index: 1; }
#screen-reward.has-map-backdrop .reward-container { position: relative; z-index: 2; }

/* В подробностях рейда крупный фон карты виден за диалоговым окном. */
.raid-detail-modal.has-map-backdrop {
    background: linear-gradient(rgba(5,5,4,.4), rgba(5,5,4,.72)), var(--raid-map-backdrop) center / cover no-repeat !important;
    backdrop-filter: blur(3px);
}
.raid-detail-modal.has-map-backdrop .raid-detail-panel {
    background: rgba(13,12,10,.90) !important;
}

/* Карточки итоговой сборки оставляем прозрачными, но достаточно плотными для чтения текста. */
.final-summary .final-loadout-row,
.final-loadout-row {
    background: linear-gradient(135deg, rgba(10,10,8,.83), var(--warm-726762612833362c32392c31372c2e373829,rgba(36,29,17,.78))) !important;
    border-color: var(--warm-72676261283232392c3230322c3134322c2e333829,rgba(229,202,142,.38)) !important;
}

/* Фон итогов заполняет весь экран — без тёмных полос вокруг изображения. */
#screen-reward.has-map-backdrop::before { display: none; }
#screen-reward.has-map-backdrop {
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed;
}

/* На фоне карты центральная подложка остаётся полупрозрачной, но текст не теряется. */
#screen-reward.has-map-backdrop .reward-container {
    background: linear-gradient(135deg, rgba(10,9,7,.82), var(--warm-726762612832352c32302c31332c2e373429,rgba(25,20,13,.74))) !important;
    border-color: var(--warm-72676261283232392c3230322c3134322c2e333429,rgba(229,202,142,.34)) !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.34) !important;
}
#screen-reward.has-map-backdrop .reward-result small {
    color: #fff !important;
    font-weight: 800;
    font-size: .92rem;
    letter-spacing: 2.2px;
}

/* В истории фон карты находится внутри круглого окна подробностей, а не за ним. */
.raid-detail-modal.has-map-backdrop {
    background: rgba(3, 3, 3, .76) !important;
    backdrop-filter: blur(5px);
}
.raid-detail-modal.has-map-backdrop .raid-detail-panel {
    background: linear-gradient(180deg, rgba(8,8,7,.70), rgba(8,8,7,.86)), var(--raid-map-backdrop) center / cover no-repeat !important;
}

/* ==========================================
   ПОЛЬЗОВАТЕЛЬСКАЯ НАВИГАЦИЯ И ОНБОРДИНГ
   ========================================== */
html, body { overflow-x: hidden; }
.page-screen, .page-screen p, .page-screen small, .page-screen b, .page-screen span { user-select: text; }
button, summary, .nav-link { user-select: none; }

.main-header {
    height: 64px;
    padding: 0 28px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
}
.header-brand { appearance: none; padding: 0; border: 0; color: inherit; background: none; cursor: pointer; }
.header-brand:focus-visible,
.header-menu-toggle:focus-visible,
.nav-progress-toggle:focus-visible,
.header-nav .nav-link:focus-visible,
.account-menu-button:focus-visible { outline: 2px solid var(--warm-23653162643638,#e1bd68); outline-offset: 4px; }
.header-nav { justify-self: center; gap: clamp(20px, 2.5vw, 40px); }
.header-nav > .nav-link,
.nav-progress-toggle {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border: 0;
    color: var(--warm-23616161343939,#aaa499);
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: 1px;
    white-space: nowrap;
    cursor: pointer;
    list-style: none;
    transition: color .2s ease, background .2s ease;
}
.nav-progress { position: relative; display: flex; align-items: center; }
.nav-progress-toggle { position: relative; appearance: none; background: none; font-family: inherit; }
.nav-progress-label { position: relative; display: block; line-height: 1; }
.nav-progress-arrow {
    position: absolute;
    right: -13px;
    bottom: -5px;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    color: var(--warm-23623339633639,#b39c69);
    transform: rotate(45deg);
    transform-origin: center;
    transition: transform .22s ease, color .2s ease, bottom .22s ease;
}
.nav-progress.is-open .nav-progress-arrow { bottom: -8px; color: var(--warm-23653162643638,#e1bd68); transform: rotate(225deg); }
.progress-badge { position: absolute; top: -11px; right: -16px; z-index: 2; min-width: 16px; height: 16px; padding: 0 4px; display: inline-grid; place-items: center; border: 1px solid var(--warm-72676261283235352c3234352c3230382c2e3529,rgba(255,245,208,.5)); border-radius: 999px; color: var(--warm-23313731323061,#17120a); background: linear-gradient(135deg, var(--warm-23663264353766,#f2d57f), var(--warm-23633939353338,#c99538)); font-size: .59rem; font-style: normal; font-weight: 950; line-height: 1; letter-spacing: 0; box-shadow: 0 0 12px var(--warm-72676261283232362c3138372c38332c2e353829,rgba(226,187,83,.58)); }
.progress-badge.hidden { display: none; }
.nav-progress.active > .nav-progress-toggle,
.nav-progress.is-open > .nav-progress-toggle,
.nav-progress-toggle:hover { color: #fffdf6; }
.nav-progress-toggle::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--warm-23666666376463,#fff7dc), var(--warm-23633939633364,#c99c3d), var(--warm-23666666376463,#fff7dc));
    pointer-events: none;
    transition: width .65s cubic-bezier(.25,.1,.25,1);
}
.nav-progress-toggle:hover::after,
.nav-progress-toggle:focus-visible::after,
.nav-progress.is-open > .nav-progress-toggle::after,
.nav-progress.active > .nav-progress-toggle::after { width: 100%; }
body.hardcore-mode .nav-progress-toggle::after { background: linear-gradient(90deg, #ff1f37, #ff8a3d); }
.nav-progress.active .nav-progress-arrow { color: var(--warm-23653162643638,#e1bd68); }
.nav-progress-menu {
    --progress-menu-offset-x: -50%;
    position: absolute;
    top: calc(100% + 9px);
    left: var(--progress-menu-left, 50%);
    z-index: 1100;
    width: 190px;
    max-width: calc(100vw - 24px);
    transform: translateX(var(--progress-menu-offset-x));
    visibility: hidden;
    transition: visibility 0s linear .28s;
}
.nav-progress.is-open .nav-progress-menu { visibility: visible; transition-delay: 0s; }
/* Двигается только содержимое. Область наведения и мостик над ней неподвижны. */
.nav-progress-panel {
    padding: 4px;
    display: grid;
    gap: 4px;
    border: 1px solid var(--warm-72676261283232352c203138392c203130342c202e333829,rgba(225, 189, 104, .38));
    border-radius: 14px;
    background: rgba(14, 13, 11, .98);
    box-shadow: 0 22px 65px rgba(0,0,0,.58), 0 0 28px var(--warm-72676261283230382c3136362c37362c2e3129,rgba(208,166,76,.1));
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .28s ease, transform .28s ease;
}
.nav-progress.is-open .nav-progress-panel {
    opacity: 1;
    transform: translateY(0);
    transition-duration: .36s;
}
/* Мостик через зазор: меню не теряет наведение по пути к пунктам. */
.nav-progress-menu::before { content: ''; position: absolute; top: -10px; left: 0; right: 0; height: 10px; }
.header-nav .nav-progress-menu .nav-link {
    position: relative;
    min-height: 54px;
    padding: 7px 0;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    border: 1px solid transparent;
    border-radius: 9px;
    color: var(--warm-23646464376361,#ddd7ca);
    text-decoration: none;
    letter-spacing: 0;
}
.header-nav .nav-progress-menu .nav-link::after { display: none; }
.header-nav .nav-progress-menu .nav-link:hover,
.header-nav .nav-progress-menu .nav-link.active { border-color: var(--warm-72676261283232352c3138392c3130342c2e333229,rgba(225,189,104,.32)); background: var(--warm-72676261283232352c3138392c3130342c2e303829,rgba(225,189,104,.08)); }
.nav-progress-menu .nav-link > span:first-child { font-size: 1.2rem; text-align: center; }
.nav-progress-menu .nav-link > span:nth-child(2) { min-width: 0; }
.nav-progress-menu b, .nav-progress-menu small { display: block; }
.nav-progress-menu b { color: #fff; font-size: .84rem; }
.nav-progress-menu small { margin-top: 3px; color: var(--warm-23386638613830,#8f8a80); font-size: .68rem; font-weight: 500; }
.nav-progress-menu .achievement-badge { position: static; justify-self: end; }
.header-menu-toggle { display: none; }
.header-reroll { justify-self: end; }
.header-actions { display: flex; align-items: center; justify-content: flex-end; justify-self: end; gap: 9px; }

.page-lead { margin: -10px auto 24px; color: var(--warm-23616161343939,#aaa499); text-align: center; line-height: 1.5; }

.empty-state-card {
    width: min(620px, 100%);
    margin: 30px auto;
    padding: 34px 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e323829,rgba(225,189,104,.28));
    border-radius: 16px;
    background: linear-gradient(145deg, var(--warm-726762612833352c33312c32332c2e373229,rgba(35,31,23,.72)), rgba(14,13,11,.86));
    text-align: center;
    box-shadow: 0 18px 50px rgba(0,0,0,.25);
}
.empty-state-card > span { font-size: 2rem; filter: drop-shadow(0 0 12px var(--warm-72676261283232352c3138392c3130342c2e323429,rgba(225,189,104,.24))); }
.empty-state-card h3 { margin: 14px 0 8px; color: #fff; font-size: 1.2rem; }
.empty-state-card p { max-width: 520px; margin: 0; color: var(--warm-23616161343939,#aaa499); line-height: 1.6; }
.empty-state-card button,
.info-start-button {
    margin-top: 20px;
    padding: 12px 18px;
    border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e363529,rgba(229,202,142,.65));
    border-radius: 10px;
    color: #16120b;
    background: linear-gradient(135deg, var(--warm-23663264633964,#f2dc9d), var(--warm-23633439343338,#c49438));
    font: inherit;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .8px;
    cursor: pointer;
    box-shadow: 0 10px 28px var(--warm-72676261283230322c3136312c37392c2e313629,rgba(202,161,79,.16));
    transition: transform .2s ease, filter .2s ease;
}
.empty-state-card button:hover, .info-start-button:hover { transform: translateY(-2px); filter: brightness(1.08); }
.stats-grid.is-empty { grid-template-columns: 1fr; }
.stats-grid > div { min-width:0; overflow-wrap:anywhere; }
@media(max-width:700px) { .stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .stats-grid > div { padding:14px 10px; } }
.stats-grid.is-empty .empty-state-card { grid-column: 1 / -1; }
.achievements-list > .empty-state-card { margin-top: 22px; }
.achievements-hidden { color: var(--warm-23373436663636,#746f66) !important; }
.market-balance-hint { width: min(700px, 100%); margin: -7px auto 20px; padding: 10px 14px; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e3329,rgba(225,189,104,.3)); border-radius: 9px; color: var(--warm-23643963363932,#d9c692); background: var(--warm-72676261283139302c3134372c36332c2e303829,rgba(190,147,63,.08)); font-size: .78rem; line-height: 1.45; text-align: center; }

.profile-tools { margin-top: 34px; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; background: rgba(0,0,0,.16); }
.profile-tools > summary { padding: 14px 17px; color: var(--warm-23393939333838,#999388); font-size: .78rem; font-weight: 800; letter-spacing: .6px; cursor: pointer; }
.profile-tools[open] > summary { color: var(--warm-23653064376334,#e0d7c4); }
.profile-tools > p { margin: 0 17px 14px; color: var(--warm-23383437663736,#847f76); font-size: .76rem; }
.profile-tools .reset-actions { margin: 0; padding: 0 14px 14px; }
.profile-tools .btn-danger { min-height: 43px; padding: 10px 12px; font-size: .69rem; opacity: .8; }
.profile-tools .btn-danger:hover { opacity: 1; }

.info-guide { width: min(1120px, 100%); max-width: 1120px; display: grid; gap: 24px; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.info-hero, .info-section, .info-finish { position: relative; overflow: hidden; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e333229,rgba(225,189,104,.32)); border-radius: 22px; background: linear-gradient(145deg, rgba(33,30,23,.97), rgba(11,11,9,.98)); box-shadow: 0 24px 70px rgba(0,0,0,.3), inset 0 1px rgba(255,255,255,.045); }
.info-hero::before { content: ''; position: absolute; top: -260px; left: 50%; width: 720px; height: 520px; border-radius: 50%; background: radial-gradient(circle, var(--warm-72676261283231342c3137332c38302c2e313629,rgba(214,173,80,.16)), transparent 68%); transform: translateX(-50%); pointer-events: none; }
.info-hero { padding: 60px clamp(28px, 7vw, 86px) 52px; text-align: center; }
.info-hero > * { position: relative; z-index: 1; }
.info-eyebrow { display: block; margin-bottom: 14px; color: var(--warm-23643562363664,#d5b66d); font-size: .71rem; font-weight: 900; letter-spacing: 3px; }
.info-hero h2 { margin: 0 0 18px; color: #fff; font-size: clamp(2.4rem, 4.5vw, 3.7rem); line-height: 1.05; letter-spacing: -1.4px; }
.info-hero p { max-width: 830px; margin: 0 auto; color: var(--warm-23633963346239,#c9c4b9); font-size: 1.02rem; line-height: 1.75; }
.info-hero-stats { width: min(680px, 100%); margin: 32px auto 0; padding: 18px 0; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--warm-72676261283232352c3138392c3130342c2e313829,rgba(225,189,104,.18)); border-bottom: 1px solid var(--warm-72676261283232352c3138392c3130342c2e313829,rgba(225,189,104,.18)); }
.info-hero-stats span { min-width: 0; padding: 0 18px; display: flex; flex-direction: column; align-items: center; gap: 5px; }
.info-hero-stats span + span { border-left: 1px solid var(--warm-72676261283232352c3138392c3130342c2e313829,rgba(225,189,104,.18)); }
.info-hero-stats b { color: var(--warm-23653563383765,#e5c87e); font-size: 2.15rem; line-height: 1; text-shadow: 0 0 24px var(--warm-72676261283231332c3137342c38342c2e3229,rgba(213,174,84,.2)); }
.info-hero-stats small { color: var(--warm-23393238643833,#928d83); font-size: .72rem; font-weight: 700; line-height: 1.35; letter-spacing: .5px; text-transform: uppercase; }
.info-section { padding: 42px 44px 46px; }
.info-section-heading { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 22px; align-items: center; margin-bottom: 30px; }
.info-section-heading > span { color: var(--warm-23643562353566,#d5b55f); font-size: 3.15rem; font-weight: 900; line-height: 1; letter-spacing: -2px; text-shadow: 0 0 28px var(--warm-72676261283231332c3138312c39352c2e313629,rgba(213,181,95,.16)); }
.info-section-heading h3 { margin: 0 0 7px; color: #fff; font-size: 1.55rem; line-height: 1.2; }
.info-section-heading p { margin: 0; color: var(--warm-23393739313838,#979188); font-size: .88rem; line-height: 1.55; }
.info-flow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 13px; }
.info-flow article { position: relative; min-height: 212px; padding: 22px 20px; display: flex; flex-direction: column; align-items: flex-start; border: 1px solid rgba(255,255,255,.085); border-radius: 15px; background: linear-gradient(160deg, rgba(255,255,255,.047), rgba(255,255,255,.012)); transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.info-flow article:hover { transform: translateY(-3px); border-color: var(--warm-72676261283232352c3138392c3130342c2e333429,rgba(225,189,104,.34)); background: linear-gradient(160deg, var(--warm-72676261283232352c3138392c3130342c2e30373529,rgba(225,189,104,.075)), rgba(255,255,255,.014)); }
.info-flow article::after { content: '›'; position: absolute; top: 50%; right: -12px; z-index: 2; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; color: var(--warm-23643161643539,#d1ad59); background: #17140f; font-size: 1rem; transform: translateY(-50%); }
.info-flow article:last-child::after { display: none; }
.info-flow article > b { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e333529,rgba(225,189,104,.35)); border-radius: 50%; color: var(--warm-23663064323861,#f0d28a); background: radial-gradient(circle at 35% 25%, var(--warm-72676261283234352c3231342c3134322c2e313629,rgba(245,214,142,.16)), var(--warm-72676261283136342c3131392c33362c2e303629,rgba(164,119,36,.06))); font-size: 1rem; box-shadow: 0 8px 24px rgba(0,0,0,.24); }
.info-flow article > span { margin: 23px 0 9px; color: #fff; font-size: 1rem; font-weight: 900; line-height: 1.28; }
.info-flow article > small { color: var(--warm-23396539383865,#9e988e); font-size: .79rem; line-height: 1.55; }
.info-details { display: grid; gap: 11px; }
.info-details details { overflow: hidden; border: 1px solid rgba(255,255,255,.085); border-radius: 14px; background: linear-gradient(150deg, rgba(255,255,255,.042), rgba(255,255,255,.012)); }
.info-details summary { min-height: 80px; padding: 16px 22px; display: grid; grid-template-columns: 42px minmax(0,1fr) auto; gap: 13px; align-items: center; cursor: pointer; list-style: none; transition: background .2s ease; }
.info-details summary:hover { background: var(--warm-72676261283232352c3138392c3130342c2e30343529,rgba(225,189,104,.045)); }
.info-details summary::-webkit-details-marker { display: none; }
.info-details summary::after { content: '+'; grid-column: 3; grid-row: 1 / 3; color: var(--warm-23633861323464,#c8a24d); font-size: 1.55rem; }
.info-details details[open] summary::after { content: '−'; }
.info-details summary > span { grid-column: 1; grid-row: 1 / 3; font-size: 1.4rem; text-align: center; filter: drop-shadow(0 0 10px var(--warm-72676261283232352c3138392c3130342c2e313529,rgba(225,189,104,.15))); }
.info-details summary > b { grid-column: 2; grid-row: 1; color: #fff; font-size: 1rem; }
.info-details summary > small { grid-column: 2; grid-row: 2; color: var(--warm-23393138633833,#918c83); font-size: .74rem; }
.info-detail-body { padding: 4px 77px 24px; border-top: 1px solid rgba(255,255,255,.06); }
.info-detail-body p { margin: 16px 0 0; color: var(--warm-23633062626231,#c0bbb1); font-size: .94rem; line-height: 1.72; }
.info-green { color: #69da91 !important; }
.info-red { color: #ff7783 !important; }
.info-rates { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 17px; }
.info-rates span { padding: 13px 10px; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e313229,rgba(225,189,104,.12)); border-radius: 10px; background: var(--warm-72676261283232352c3138392c3130342c2e30363529,rgba(225,189,104,.065)); color: var(--warm-23616161343961,#aaa49a); font-size: .75rem; text-align: center; }
.info-rates b { display: block; margin-bottom: 5px; color: var(--warm-23653963623765,#e9cb7e); font-size: 1.18rem; }
.info-finish { padding: 46px 34px; text-align: center; }
.info-finish > span { color: var(--warm-23633761363561,#c7a65a); font-size: .67rem; font-weight: 900; letter-spacing: 2px; text-transform: uppercase; }
.info-finish h3 { max-width: 760px; margin: 12px auto 10px; color: #fff; font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.25; }
.info-finish p { max-width: 700px; margin: 0 auto; color: var(--warm-23616161343961,#aaa49a); line-height: 1.65; }

.info-author-card { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 26px; align-items: stretch; }
.info-author-copy { min-width:0; padding:27px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:18px; border:1px solid var(--warm-72676261283232352c3138392c3130342c2e313829,rgba(225,189,104,.18)); border-radius:16px; background:radial-gradient(circle at 12% 0, var(--warm-72676261283232352c3138392c3130342c2e3129,rgba(225,189,104,.1)), transparent 42%), rgba(255,255,255,.025); }
.info-author-copy h4 { margin: 2px 0 10px; color: #fff; font-size: 1.08rem; }
.info-author-copy p { margin: 0; color: var(--warm-23616161343961,#aaa49a); font-size: .86rem; line-height: 1.68; }
.info-author-copy p + p { margin-top: 12px; }
.info-social-grid { --social-sprite:url("assets/social_icons_rounded_black ocial media discord logo email logo social social media app discord social logo social media logo follow facebook facebook pinterest logo contact logo whatsapp pinterest phone shape wh.png"); display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:11px; }
.info-social-link { min-width:0; min-height:91px; padding:16px 17px; display:grid; grid-template-columns:54px minmax(0,1fr); grid-template-rows:auto auto; column-gap:14px; align-content:center; border:1px solid rgba(255,255,255,.09); border-radius:13px; color:inherit; background:linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.014)); text-decoration:none; transition:transform .2s ease, border-color .2s ease, background .2s ease; }
.info-social-link:hover { transform: translateY(-3px); border-color: var(--warm-72676261283232352c3138392c3130342c2e343229,rgba(225,189,104,.42)); background: linear-gradient(145deg, var(--warm-72676261283232352c3138392c3130342c2e303929,rgba(225,189,104,.09)), rgba(255,255,255,.018)); }
.info-social-link > .info-social-icon { position:relative; grid-row:1 / 3; display:block; width:54px; height:54px; align-self:center; border:0; border-radius:14px; overflow:hidden; background:#000; box-shadow:0 0 0 1px var(--warm-72676261283232352c3138392c3130342c2e313529,rgba(225,189,104,.15)), 0 5px 14px rgba(0,0,0,.18); }
/* Отделяем знак от рамки: углы исходных плиток не попадают в иконку. */
.info-social-icon::before { content:''; position:absolute; inset:6px; border-radius:8px; background-image:var(--social-sprite); background-repeat:no-repeat; background-size:400px 261.5px; filter:blur(.3px); pointer-events:none; }
.info-social-icon.social-icon-vk::before { background-position:-6px -6px; }
.info-social-icon.social-icon-telegram::before { background-position:-144.5px -6px; }
.info-social-icon.social-icon-twitch::before { background-position:-283px -75.25px; }
.info-social-icon.social-icon-youtube::before { background-position:-352.25px -75.25px; }
.social-icon-boosty::before { background-image:url("assets/332.png"); background-size:90px 90px; background-position:center; }
.social-icon-discord::before { background-image:url("assets/black-discord-logo-black-discord-icon-black-discord-symbol-free-free-vector.png"); background-size:90px 90px; background-position:center; }
.info-social-link:focus-visible { outline:2px solid var(--warm-23653162643638,#e1bd68); outline-offset:4px; }
@media(prefers-reduced-motion:reduce) { .info-social-link { transition:none; } .info-social-link:hover { transform:none; } }
.info-social-link b { color: var(--warm-23663465666535,#f4efe5); font-size: .84rem; line-height: 1.25; }
.info-social-link small { margin-top: 4px; color: var(--warm-23383738313738,#878178); font-size: .68rem; }
.info-social-support { grid-column: 1 / -1; border-color: var(--warm-72676261283232352c3138392c3130342c2e333529,rgba(225,189,104,.35)); background: linear-gradient(135deg, var(--warm-72676261283232352c3138392c3130342c2e313329,rgba(225,189,104,.13)), rgba(255,255,255,.02)); }
.info-social-telegram { grid-column: 1 / -1; }

/* ==========================================
   АККАУНТ И ОБЛАЧНОЕ СОХРАНЕНИЕ
   ========================================== */
.account-menu-button {
    width: 40px;
    height: 40px;
    padding: 0;
    display: grid;
    place-items: center;
    justify-self: end;
    border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e323329,rgba(225,189,104,.23));
    border-radius: 50%;
    color: var(--warm-23626362356137,#bcb5a7);
    background: rgba(255,255,255,.025);
    font: inherit;
    cursor: pointer;
    transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}
.account-menu-button:hover,
.account-menu-button.is-signed-in { color: var(--warm-23666666336366,#fff3cf); border-color: var(--warm-72676261283232352c3138392c3130342c2e353829,rgba(225,189,104,.58)); background: var(--warm-72676261283232352c3138392c3130342c2e30383529,rgba(225,189,104,.085)); }
.account-menu-button:hover { transform: translateY(-1px); }
.account-menu-button span { max-width: 25px; overflow: hidden; color: inherit; font-size: .95rem; font-weight: 900; line-height: 1; text-overflow: ellipsis; text-transform: uppercase; }
.settings-account-panel { position: relative; margin: 28px 0 30px; padding: 27px 29px 29px; overflow: hidden; scroll-margin-top: 84px; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e3329,rgba(225,189,104,.3)); border-radius: 18px; background: radial-gradient(circle at 10% 0, var(--warm-72676261283232352c3138392c3130342c2e313229,rgba(225,189,104,.12)), transparent 32%), linear-gradient(145deg, rgba(30,27,21,.92), rgba(10,10,8,.94)); box-shadow: 0 20px 55px rgba(0,0,0,.24), inset 0 1px rgba(255,255,255,.04); }
.settings-account-panel::before { content: ''; position: absolute; top: 0; right: 12%; left: 12%; height: 1px; background: linear-gradient(90deg, transparent, var(--warm-23653763363666,#e7c66f), transparent); }
.settings-account-heading { display: grid; grid-template-columns: 56px minmax(0,1fr); gap: 17px; align-items: center; }
.settings-account-icon { width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e333829,rgba(225,189,104,.38)); border-radius: 50%; color: var(--warm-23663564633961,#f5dc9a); background: rgba(0,0,0,.26); font-size: 1.12rem; font-weight: 950; box-shadow: 0 10px 30px rgba(0,0,0,.26); }
.settings-account-heading span { display: block; margin-bottom: 4px; color: var(--warm-23633761363561,#c7a65a); font-size: .59rem; font-weight: 950; letter-spacing: 1.8px; }
.settings-account-heading h3 { margin: 0 0 5px; color: var(--warm-23663566316538,#f5f1e8); font-size: 1.13rem; }
.settings-account-heading p { margin: 0; color: var(--warm-23393238633832,#928c82); font-size: .79rem; line-height: 1.5; }
.settings-auth-view,
.settings-account-view { width: min(680px, 100%); margin: 23px auto 0; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.075); }
.settings-auth-copy { margin: 0 0 18px; text-align: center; }
.settings-auth-copy h4 { margin: 0 0 7px; color: #fff; font-size: 1.17rem; }
.settings-auth-copy p { margin: 0; color: var(--warm-23386638393766,#8f897f); font-size: .8rem; line-height: 1.5; }
.auth-tabs { margin: 0 auto 18px; padding: 4px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px; border: 1px solid rgba(255,255,255,.07); border-radius: 10px; background: rgba(0,0,0,.24); }
.auth-tabs button { min-height: 38px; border: 0; border-radius: 7px; color: var(--warm-23386638393765,#8f897e); background: transparent; font: inherit; font-size: .76rem; font-weight: 800; cursor: pointer; }
.auth-tabs button.active { color: var(--warm-23316231363063,#1b160c); background: linear-gradient(135deg, var(--warm-23663164383934,#f1d894), var(--warm-23633939623433,#c99b43)); box-shadow: 0 6px 18px var(--warm-72676261283230302c3135362c36362c2e313629,rgba(200,156,66,.16)); }
.auth-form,
.account-form { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px; text-align: left; }
.auth-form label,
.account-form label { display: grid; gap: 7px; color: var(--warm-23633863316234,#c8c1b4); font-size: .7rem; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.account-form label small { color: var(--warm-23373436663636,#746f66); font-size: .62rem; font-weight: 600; letter-spacing: 0; text-transform: none; }
.auth-form input,
.account-form input { width: 100%; height: 48px; padding: 0 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; outline: none; color: #fff; background: rgba(4,4,3,.56); font: inherit; font-size: .9rem; transition: border-color .2s ease, box-shadow .2s ease; }
.auth-form input:focus,
.account-form input:focus { border-color: var(--warm-72676261283232352c3138392c3130342c2e363829,rgba(225,189,104,.68)); box-shadow: 0 0 0 3px var(--warm-72676261283232352c3138392c3130342c2e303929,rgba(225,189,104,.09)); }
.auth-submit,
.account-save { min-height: 49px; margin-top: 3px; grid-column: 1 / -1; border: 1px solid var(--warm-72676261283234302c3231312c3133392c2e363529,rgba(240,211,139,.65)); border-radius: 10px; color: var(--warm-23313831333061,#18130a); background: linear-gradient(135deg, var(--warm-23663264633964,#f2dc9d), var(--warm-23633439343338,#c49438)); font: inherit; font-size: .74rem; font-weight: 950; letter-spacing: .8px; cursor: pointer; box-shadow: 0 12px 28px var(--warm-72676261283230322c3136312c37392c2e313529,rgba(202,161,79,.15)); transition: transform .2s ease, filter .2s ease; }
.auth-submit:hover,
.account-save:hover { transform: translateY(-2px); filter: brightness(1.06); }
.settings-account-panel button:disabled,
.settings-account-panel input:disabled { opacity: .5; cursor: wait; transform: none; }
.auth-forgot,
.account-logout { margin-top: 14px; padding: 5px; border: 0; color: var(--warm-23396339363862,#9c968b); background: transparent; font: inherit; font-size: .74rem; cursor: pointer; text-decoration: underline; text-decoration-color: rgba(255,255,255,.16); text-underline-offset: 4px; }
.auth-forgot:hover { color: var(--warm-23653564376235,#e5d7b5); }
.account-logout { color: #b87b7f; }
.account-logout:hover { color: #ff9ba2; }
.auth-feedback { min-height: 18px; margin: 12px 0 0; color: var(--warm-23616161343939,#aaa499); font-size: .76rem; line-height: 1.45; }
.auth-feedback[data-state="error"] { color: #ff8e96; }
.auth-feedback[data-state="success"] { color: #71dc98; }
.auth-feedback[data-state="notice"] { color: var(--warm-23643862643735,#d8bd75); }
.auth-legal { margin: 17px auto 0; color: #69655e; font-size: .64rem; line-height: 1.48; }
.account-overview { margin-bottom: 18px; padding: 14px 15px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border: 1px solid rgba(255,255,255,.075); border-radius: 11px; background: rgba(0,0,0,.21); }
.account-overview small { display: block; margin-bottom: 4px; color: var(--warm-23373737313638,#777168); font-size: .59rem; font-weight: 900; letter-spacing: 1px; }
.account-overview strong { color: var(--warm-23663265646533,#f2ede3); font-size: .86rem; overflow-wrap: anywhere; }
.account-sync-status { padding: 9px 11px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid rgba(255,255,255,.08); border-radius: 9px; color: var(--warm-23616161343939,#aaa499); background: rgba(0,0,0,.2); font-size: .7rem; white-space: nowrap; }
.account-sync-status i { width: 7px; height: 7px; border-radius: 50%; background: var(--warm-23386338363763,#8c867c); box-shadow: 0 0 9px currentColor; }
.account-sync-status[data-state="saved"] { color: #73d99a; border-color: rgba(88,194,128,.18); }
.account-sync-status[data-state="saving"] { color: var(--warm-23646662643637,#dfbd67); border-color: var(--warm-72676261283232352c3138392c3130342c2e3229,rgba(225,189,104,.2)); }
.account-sync-status[data-state="error"] { color: #ff858e; border-color: rgba(255,105,114,.2); }
.account-actions { display: flex; justify-content: center; }
.account-danger-zone { margin-top: 18px; border: 1px solid rgba(255,96,105,.12); border-radius: 10px; background: rgba(255,71,87,.025); }
.account-danger-zone summary { padding: 12px 14px; color: #8d7374; font-size: .69rem; font-weight: 800; cursor: pointer; }
.account-danger-zone[open] summary { color: #d69196; }
.account-danger-zone p { margin: 0 14px 12px; color: #88797a; font-size: .69rem; line-height: 1.5; }
.account-danger-zone button { width: calc(100% - 28px); min-height: 39px; margin: 0 14px 14px; border: 1px solid rgba(255,89,99,.48); border-radius: 8px; color: #e78b92; background: rgba(255,71,87,.07); font: inherit; font-size: .66rem; font-weight: 900; letter-spacing: .7px; cursor: pointer; }
.account-danger-zone button:hover { color: #fff; background: rgba(255,71,87,.16); }

.progress-save-modal { position: fixed; inset: 0; z-index: 7000; display: none; place-items: center; padding: 22px; background: rgba(3,3,2,.82); backdrop-filter: blur(10px); }
.progress-save-modal.active { display: grid; animation: rules-modal-in .2s ease both; }
.progress-save-panel { position: relative; width: min(560px, 100%); padding: 39px 38px 34px; overflow: hidden; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e3529,rgba(229,202,142,.5)); border-radius: 20px; background: radial-gradient(circle at 50% 0, var(--warm-72676261283232352c3138392c3130342c2e313729,rgba(225,189,104,.17)), transparent 42%), linear-gradient(145deg, rgba(31,28,21,.98), rgba(10,10,8,.99)); text-align: center; box-shadow: 0 30px 100px rgba(0,0,0,.68), 0 0 42px var(--warm-72676261283230382c3136362c37362c2e313329,rgba(208,166,76,.13)), inset 0 1px rgba(255,255,255,.055); }
.progress-save-panel::before { content: ''; position: absolute; top: 0; right: 15%; left: 15%; height: 1px; background: linear-gradient(90deg, transparent, var(--warm-23663063663739,#f0cf79), transparent); }
.progress-save-close { position: absolute; top: 13px; right: 13px; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.12); border-radius: 9px; color: var(--warm-23386538383765,#8e887e); background: rgba(0,0,0,.24); font: inherit; cursor: pointer; transition: color .2s ease, border-color .2s ease, background .2s ease; }
.progress-save-close:hover { color: #fff; border-color: var(--warm-72676261283232392c3230322c3134322c2e343529,rgba(229,202,142,.45)); background: var(--warm-72676261283232392c3230322c3134322c2e303829,rgba(229,202,142,.08)); }
.progress-save-icon { width: 66px; height: 66px; margin: 0 auto 18px; display: grid; place-items: center; border: 1px solid var(--warm-72676261283232392c3230322c3134322c2e343529,rgba(229,202,142,.45)); border-radius: 50%; color: var(--warm-23663164343839,#f1d489); background: radial-gradient(circle at 35% 25%, var(--warm-72676261283234352c3231342c3134322c2e313829,rgba(245,214,142,.18)), var(--warm-72676261283136342c3131392c33362c2e303629,rgba(164,119,36,.06))); font-size: 1.65rem; font-weight: 950; box-shadow: 0 13px 34px rgba(0,0,0,.34), 0 0 24px var(--warm-72676261283232352c3138392c3130342c2e3129,rgba(225,189,104,.1)); }
.progress-save-panel > small { display: block; color: var(--warm-23633961393536,#c9a956); font-size: .61rem; font-weight: 950; letter-spacing: 2px; }
.progress-save-panel h2 { margin: 10px 0 11px; color: #fff; font-size: clamp(1.45rem, 4vw, 2rem); line-height: 1.2; }
.progress-save-panel p { max-width: 470px; margin: 0 auto; color: var(--warm-23616161343961,#aaa49a); font-size: .88rem; line-height: 1.65; }
.market-unlock-dialog.progress-save-panel { width:min(440px,calc(100% - 32px)); max-height:calc(100dvh - 32px); margin:auto; padding:28px; box-sizing:border-box; overflow:auto; }
.market-unlock-dialog::backdrop { background:rgba(0,0,0,.76); backdrop-filter:blur(7px); }
.market-unlock-icon { display:grid; place-items:center; margin:20px auto 8px; }
.market-unlock-icon .market-item-art,.market-unlock-icon .market-item-image { display:block; width:112px; height:112px; object-fit:contain; }
.market-unlock-dialog .progress-save-actions button { border:1px solid var(--warm-23653563613865,#e5ca8e); background:linear-gradient(110deg,var(--warm-23663164666230,#f1dfb0),var(--warm-23626439313338,#bd9138)); color:var(--warm-23313831343062,#18140b); }
.market-unlock-dialog button:hover { filter:brightness(1.08); }
.market-unlock-dialog button:focus-visible { outline:2px solid var(--warm-23666666306339,#fff0c9); outline-offset:4px; }
.progress-save-actions { margin-top: 25px; display: grid; gap: 9px; }
.progress-save-actions button { min-height: 48px; border-radius: 10px; font: inherit; font-size: .72rem; font-weight: 950; letter-spacing: .75px; cursor: pointer; transition: transform .2s ease, filter .2s ease, border-color .2s ease, background .2s ease; }
.progress-save-primary { border: 1px solid var(--warm-72676261283234302c3231312c3133392c2e363829,rgba(240,211,139,.68)); color: var(--warm-23313831333061,#18130a); background: linear-gradient(135deg, var(--warm-23663264633964,#f2dc9d), var(--warm-23633439343338,#c49438)); box-shadow: 0 12px 30px var(--warm-72676261283230322c3136312c37392c2e313729,rgba(202,161,79,.17)); }
.progress-save-primary:hover { transform: translateY(-2px); filter: brightness(1.08); }
.progress-save-primary:disabled { opacity: .62; cursor: wait; transform: none; filter: none; }
.progress-save-later { border: 1px solid rgba(255,255,255,.1); color: var(--warm-23396339363862,#9c968b); background: rgba(255,255,255,.025); }
.progress-save-later:hover { color: var(--warm-23653865316434,#e8e1d4); border-color: var(--warm-72676261283232392c3230322c3134322c2e323829,rgba(229,202,142,.28)); background: var(--warm-72676261283232392c3230322c3134322c2e30353529,rgba(229,202,142,.055)); }

@media (max-width: 1050px) {
    .main-header { gap: 12px; padding: 0 16px; }
    .header-nav { gap: 2px; }
    .header-nav > .nav-link, .nav-progress-toggle { padding-right: 7px; padding-left: 7px; font-size: .74rem; }
    .header-brand .brand-name { letter-spacing: 2px; }
    .info-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .info-flow article::after { display: none; }
}

@media (max-width: 900px) {
    .main-header { height: 56px; grid-template-columns: minmax(0,1fr) auto auto; gap: 8px; padding: 0 12px; }
    .header-brand { grid-column: 1; min-width: 0; }
    .header-brand .brand-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .header-actions { grid-column: 2; grid-row: 1; gap: 7px; }
    .account-menu-button { width: 38px; height: 38px; }
    .header-menu-toggle { grid-column: 3; grid-row: 1; width: 40px; height: 40px; padding: 10px; display: flex; flex-direction: column; justify-content: center; gap: 5px; border: 1px solid var(--warm-72676261283232352c3138392c3130342c2e323829,rgba(225,189,104,.28)); border-radius: 9px; background: rgba(255,255,255,.035); cursor: pointer; }
    .header-menu-toggle span { width: 100%; height: 2px; border-radius: 2px; background: var(--warm-23646464326261,#ddd2ba); transition: transform .2s ease, opacity .2s ease; }
    .main-header.menu-open .header-menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .main-header.menu-open .header-menu-toggle span:nth-child(2) { opacity: 0; }
    .main-header.menu-open .header-menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    .header-nav { position:absolute; top:calc(100% + 8px); right:12px; left:auto; width:min(300px, calc(100vw - 24px)); justify-self:end; z-index:1050; max-height:calc(100dvh - 78px); overflow-y:auto; display:none; flex-direction:column; align-items:stretch; gap:3px; padding:10px; border:1px solid var(--warm-72676261283232352c3138392c3130342c2e3429,rgba(225,189,104,.4)); border-radius:14px; background:rgba(14,13,11,.985); box-shadow:0 24px 70px rgba(0,0,0,.65); }
    .main-header.menu-open .header-nav { display: flex; animation: rules-modal-in .16s ease both; }
    .header-nav > .nav-link, .nav-progress-toggle { width: 100%; min-height: 47px; padding: 0 13px; border-radius: 8px; font-size: .84rem; }
    .header-nav > .nav-link { justify-content: space-between; }
    .nav-progress { flex-direction: column; align-items: stretch; }
    .nav-progress-toggle { justify-content:flex-start; text-align:left; }
    .header-nav > .nav-link:hover, .header-nav > .nav-link.active, .nav-progress.active > .nav-progress-toggle, .nav-progress.is-open > .nav-progress-toggle { background: var(--warm-72676261283232352c3138392c3130342c2e303829,rgba(225,189,104,.08)); }
    .header-nav > .nav-link::after, .nav-progress-toggle::after { display: none; }
    .nav-progress-menu { --progress-menu-offset-x: 0px; position: static; width: auto; max-height: 0; overflow: hidden; transform: none; transition: max-height .28s ease, visibility 0s linear .28s; }
    .nav-progress.is-open .nav-progress-menu { max-height: 440px; transition-delay: 0s; }
    .nav-progress-panel { margin: 3px 0 6px; border-color: var(--warm-72676261283232352c3138392c3130342c2e313829,rgba(225,189,104,.18)); background: rgba(0,0,0,.18); box-shadow: none; }
    .page-screen { padding-right: 14px !important; padding-left: 14px !important; }
    .info-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .info-author-card { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .header-nav .nav-link::after, .nav-progress-toggle::after, .nav-progress-arrow,
    .nav-progress .nav-progress-menu, .nav-progress .nav-progress-panel { transition: none; }
}

@media (max-width: 600px) {
    .main-header { gap: 6px; padding-right: 8px; padding-left: 8px; }
    .header-brand .brand-name { max-width: 76px; font-size: .62rem; letter-spacing: 1.2px; }
    .header-brand { gap: 7px; }
    .header-reroll { min-width: 48px; padding: 3px 7px 3px 6px; }
    .progress-save-modal { padding: 14px; }
    .progress-save-panel { padding: 35px 20px 25px; border-radius: 16px; }
    .settings-account-panel { margin-top: 22px; padding: 21px 17px 23px; border-radius: 15px; }
    .settings-account-heading { grid-template-columns: 44px minmax(0,1fr); gap: 12px; }
    .settings-account-icon { width: 44px; height: 44px; }
    .settings-account-heading h3 { font-size: .98rem; }
    .settings-account-heading p { font-size: .72rem; }
    .auth-form, .account-form { grid-template-columns: 1fr; }
    .auth-submit, .account-save { grid-column: 1; }
    .account-overview { align-items: flex-start; flex-direction: column; }
    .account-sync-status { width: 100%; }
    .info-guide { gap: 15px; }
    .info-hero { padding: 38px 20px 32px; border-radius: 17px; }
    .info-eyebrow { font-size: .6rem; line-height: 1.5; letter-spacing: 2px; }
    .info-hero h2 { font-size: 2.15rem; line-height: 1.08; }
    .info-hero p { font-size: .9rem; line-height: 1.62; }
    .info-hero-stats { margin-top: 25px; padding: 15px 0; }
    .info-hero-stats span { padding: 0 7px; }
    .info-hero-stats b { font-size: 1.65rem; }
    .info-hero-stats small { font-size: .58rem; letter-spacing: .2px; }
    .info-section { padding: 27px 18px; border-radius: 17px; }
    .info-section-heading { grid-template-columns: 1fr; gap: 8px; margin-bottom: 22px; }
    .info-section-heading > span { font-size: 2.5rem; }
    .info-section-heading h3 { font-size: 1.25rem; }
    .info-flow { grid-template-columns: 1fr; }
    .info-flow article { min-height: 0; padding: 20px; }
    .info-flow article > span { margin-top: 18px; }
    .info-details summary { grid-template-columns: 34px minmax(0,1fr) auto; padding: 14px 12px; }
    .info-details summary > small { line-height: 1.3; }
    .info-detail-body { padding: 2px 16px 19px; }
    .info-detail-body p { font-size: .87rem; }
    .info-rates { grid-template-columns: repeat(2, 1fr); }
    .info-author-copy { padding: 21px 18px; flex-direction: column; }
    .info-social-grid { grid-template-columns: 1fr; }
    .info-social-support { grid-column: auto; }
    .info-finish { padding: 31px 18px; }
    .empty-state-card { margin: 20px auto; padding: 27px 18px; }
    .profile-tools .reset-actions { grid-template-columns: 1fr; }
}
/* Покупки готовят рейд, журнал всегда остаётся доступным. */
.market-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:24px; }
.market-heading h2 { text-align:left; margin-bottom:10px; }
.market-heading .market-lead { margin:0; text-align:left; }
.market-test-refresh { flex-shrink:0; padding:12px 16px; border:1px dashed var(--warm-23616138623439,#aa8b49); border-radius:8px; background:var(--warm-23323031623131,#201b11); color:var(--warm-23653963623835,#e9cb85); font:700 11px/1.4 inherit; cursor:pointer; }
.market-test-refresh:disabled { opacity:.35; cursor:not-allowed; }
.market-storefront { position:relative; }
.market-storefront .market-offers { grid-template-columns:repeat(var(--market-columns,6),minmax(0,1fr)); gap:12px; transition:opacity .3s,filter .3s; }
.market-storefront .market-card { min-height:180px; padding:16px 12px 12px; gap:14px; justify-content:space-between; }
.market-storefront .market-card .market-item-art { width:100%; height:112px; display:grid; place-items:center; }
.market-storefront .market-card .market-item-image { width:100%; height:108px; max-width:100%; max-height:108px; object-fit:contain; }
.market-storefront .market-card button { margin-top:0; padding:12px 4px; min-height:42px; font-size:12px; letter-spacing:.3px; }
.market-symbol { width:80px; height:80px; color:var(--warm-23643962643738,#d9bd78); filter:drop-shadow(0 4px 12px var(--warm-72676261283232312c3137362c37312c2e313529,rgba(221,176,71,.15))); }
.market-storefront.is-locked .market-offers { opacity:.24; filter:grayscale(.85); pointer-events:none; }
.market-lock { position:absolute; inset:0; display:grid; place-items:center; border:1px solid var(--warm-23366335393332,#6c5932); border-radius:14px; background:rgba(8,8,6,.25); color:var(--warm-23663065316264,#f0e1bd); font-size:clamp(18px,2vw,26px); font-weight:800; letter-spacing:1px; text-shadow:0 2px 12px #000; }
.market-lock[hidden] { display:none; }
.market-seal .market-symbol { width:22px; height:22px; }
.market-journal-heading { margin:36px 0 18px; }
.market-journal-heading h3 { font-size:15px; letter-spacing:2px; }
.market-journal-heading p { margin:8px 0 0; color:var(--warm-23613961323934,#a9a294); font-size:13px; line-height:1.6; }
.market-inventory.market-journal { display:flex; flex-direction:column; gap:12px; }
.market-log-entry { display:grid; grid-template-columns:88px minmax(0,1fr); gap:20px; align-items:center; padding:20px 24px; border:1px solid var(--warm-72676261283230322c3137302c39382c2e3229,rgba(202,170,98,.2)); border-radius:12px; background:linear-gradient(110deg,var(--warm-726762612834332c33352c32312c2e363229,rgba(43,35,21,.62)),rgba(14,13,10,.7)); }
.market-log-entry.is-used { opacity:.46; filter:saturate(.35); background:rgba(16,15,12,.45); border-color:var(--warm-72676261283230322c3137302c39382c2e3129,rgba(202,170,98,.1)); }
.market-log-entry.is-active { border-color:var(--warm-72676261283230322c3137302c39382c2e333829,rgba(202,170,98,.38)); }
.market-log-entry .market-item-art { display:grid; place-items:center; width:88px; height:88px; }
.market-log-entry .market-item-image { width:88px; height:88px; object-fit:contain; }
.market-log-entry .market-symbol { width:60px; height:60px; }
.market-log-entry small { color:var(--warm-23643462373735,#d4b775); font-size:10px; letter-spacing:1px; text-transform:uppercase; }
.market-log-entry h3 { margin:6px 0; font-size:17px; line-height:1.35; color:var(--warm-23663065616465,#f0eade); }
.market-log-entry p { margin:0; font-size:14px; line-height:1.6; color:var(--warm-23636363346234,#ccc4b4); }
.market-log-entry .market-log-description { margin-top:6px; color:var(--warm-23393738663830,#978f80); font-size:12px; }
.market-log-entry button { margin-top:10px; padding:9px 12px; border:1px solid var(--warm-23613538613530,#a58a50); background:var(--warm-23323932323135,#292215); color:var(--warm-23663164626161,#f1dbaa); border-radius:6px; cursor:pointer; }
.map-contract-choice .market-choice-image,.map-contract-choice .market-item-image { display:block; width:100%; height:90px; object-fit:contain; }
.map-contract-choice .market-item-art { height:90px; display:grid; place-items:center; }
.quest-auto-completed { border-color:#68b589 !important; box-shadow:0 0 22px rgba(90,186,127,.18) !important; }
.quest-auto-completed .quest-rarity,.quest-auto-completed .quest-reroll { color:#89d3a4 !important; }
.quest-reroll:disabled { cursor:default; opacity:.8; }
.reward-effect-label { display:block; margin-top:5px; font-size:11px; line-height:1.45; color:var(--warm-23626661363637,#bfa667); }
.is-auto-completed .reward-effect-label { color:#8aceaa; }
.reward-loss #earnedRerolls { color:#f17b7b !important; }
.reward-grid .raid-reward-breakdown { width:100%; box-sizing:border-box; }
.status-survived { color:#77ce98 !important; }
.status-died { color:#ef7c7c !important; }
/* Картинка привязана к окну, не к меняющей высоту сборке/итогам. */
#screen-final.has-map-backdrop,#screen-reward.has-map-backdrop { background:#090909 !important; }
#screen-final.has-map-backdrop::before,#screen-reward.has-map-backdrop::before { display:block; content:''; position:fixed; inset:0; z-index:0; pointer-events:none; background-color:#090909; background-position:center; background-repeat:no-repeat; background-size:100% 100%,cover; }
#screen-final.has-map-backdrop::before { background-image:linear-gradient(180deg,rgba(7,7,7,.35),rgba(7,7,7,.65)),var(--final-map-backdrop); }
#screen-reward.has-map-backdrop::before { background-image:linear-gradient(180deg,rgba(7,7,7,.35),rgba(7,7,7,.65)),var(--reward-map-backdrop); }
body:not(.hardcore-mode) .header-brand .brand-name,body:not(.hardcore-mode)[data-theme] .header-brand .brand-name,body.hardcore-mode .header-brand .brand-name { font-size:clamp(17px,1.6vw,23px); font-weight:900; letter-spacing:3px; background:linear-gradient(105deg,var(--warm-23623538623338,#b58b38) 0%,var(--warm-23663765396239,#f7e9b9) 28%,var(--warm-23633339623462,#c39b4b) 46%,var(--warm-23666666396466,#fff9df) 51%,var(--warm-23643362333639,#d3b369) 65%,var(--warm-23623538623338,#b58b38) 100%); background-size:240% 100%; background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; filter:drop-shadow(0 0 9px var(--warm-72676261283233322c3139312c3130342c2e323529,rgba(232,191,104,.25))); animation:brand-sheen 9s ease-in-out infinite; }
@keyframes brand-sheen { 0%,100% { background-position:100% 50%; } 50% { background-position:0% 50%; } }
.nav-progress-panel .nav-link > span:first-child { width:auto; flex:1; font-size:inherit; }
.header-nav .nav-progress-menu .nav-link { grid-template-columns:minmax(0,1fr) auto; gap:8px; padding:7px 10px; }
.nav-progress-menu .nav-link > span:first-child { text-align:left; }
@media(max-width:1050px) { .market-storefront .market-offers { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .market-heading { align-items:flex-start; flex-direction:column; gap:12px; } .market-storefront .market-offers { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .market-log-entry { grid-template-columns:56px minmax(0,1fr); padding:16px 12px; gap:12px; } .market-log-entry .market-item-art,.market-log-entry .market-item-image { width:56px; height:56px; } .market-log-entry .market-symbol { width:44px; height:44px; } .market-log-entry h3 { font-size:15px; } .market-log-entry p { font-size:13px; } body:not(.hardcore-mode) .header-brand .brand-name { max-width:none; font-size:16px; letter-spacing:1px; } }
@media(prefers-reduced-motion:reduce) { body:not(.hardcore-mode) .header-brand .brand-name,body.hardcore-mode .header-brand .brand-name { animation:none; } }

/* Выбирается сама иконка: без надписей и второй кнопки поверх картинки. */
#mapContractChoices.market-choice-grid { grid-template-columns:repeat(auto-fit,128px); justify-content:center; gap:16px; padding:8px; border:0; background:none; min-height:0; overflow-y:auto; overflow-x:hidden; align-content:start; scrollbar-width:thin; scrollbar-color:var(--warm-23386337333364,#8c733d) #14120e; }
#mapContractChoices.market-choice-grid .map-contract-choice { display:grid; place-items:center; width:128px; min-width:0; min-height:0; padding:0; aspect-ratio:1; border:0; border-radius:12px; background:none; box-shadow:none; transform:none; transition:none; }
#mapContractChoices.market-choice-grid .map-contract-choice::after { display:none; }
#mapContractChoices.market-choice-grid .map-contract-choice span { position:static; width:auto; min-width:0; margin:0; font-size:14px; line-height:1.4; }
#mapContractChoices.market-choice-grid .market-item-art { width:100%; height:100%; display:grid; place-items:center; }
#mapContractChoices.market-choice-grid img { display:block; width:128px; height:128px; object-fit:contain; transition:filter .18s; }
#mapContractChoices.market-choice-grid .market-choice-text { aspect-ratio:auto; min-height:76px; padding:18px 12px; border:1px solid var(--warm-72676261283232392c3230322c3134322c2e3329,rgba(229,202,142,.3)); background:var(--warm-72676261283231362c3137382c39322c2e303429,rgba(216,178,92,.04)); }
#mapContractChoices.market-choice-grid .map-contract-choice:hover { transform:none; box-shadow:none; }
#mapContractChoices.market-choice-grid .market-choice-icon:hover { background:none; }
#mapContractChoices.market-choice-grid .market-choice-icon:hover img { filter:brightness(1.16) drop-shadow(0 0 5px var(--warm-72676261283231362c3137382c39322c2e333529,rgba(216,178,92,.35))); }
#mapContractChoices.market-choice-grid .market-choice-text:hover { border-color:var(--warm-23643562353639,#d5b569); background:var(--warm-72676261283231362c3137382c39322c2e303929,rgba(216,178,92,.09)); }
#mapContractChoices.market-choice-grid .map-contract-choice:focus-visible { outline:2px solid var(--warm-23663164333864,#f1d38d); outline-offset:-3px; }
#mapContractCancel[hidden] { display:none; }
#btnReroll > span:first-child { font-size:1.3rem; line-height:1; }
.tooltip { width:min(360px,calc(100vw - 20px)); max-width:calc(100vw - 20px); box-sizing:border-box; }
.tooltip .tooltip-content { flex:1 1 0; min-width:0; white-space:normal; overflow-wrap:anywhere; }
.tooltip .tooltip-name,.tooltip .tooltip-desc { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.tooltip.tooltip-icon-preview { width:214px; }
.tooltip .tooltip-icon-only { max-width:100%; height:auto; aspect-ratio:1; }

/* Единый размер карточки для CSS и расчёта бесшовной прокрутки. */
.wheel-container { --wheel-item-size:140px; }
.wheel-track { width:max-content; flex:0 0 auto; justify-content:flex-start; }
.wheel-item { flex:0 0 var(--wheel-item-size) !important; width:var(--wheel-item-size) !important; height:var(--wheel-item-size) !important; min-width:var(--wheel-item-size); min-height:var(--wheel-item-size); }
@media(max-width:900px) { .wheel-container { --wheel-item-size:110px; } }
@media(max-width:700px) { .wheel-container { --wheel-item-size:80px; } }
@media(max-width:480px) { .wheel-container { --wheel-item-size:60px; } }
@media(max-width:700px) {
    #screen-select { overflow-y:auto; padding-bottom:16px; }
    #screen-select .select-container { flex:0 0 auto; }
    #screen-select .wheel-container { height:calc(var(--wheel-item-size) + 48px); min-height:calc(var(--wheel-item-size) + 48px); }
    #actionButtons { display:grid; grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr); width:min(420px,100%); gap:8px; }
    #actionButtons #btnAction { width:100%; min-width:0; height:44px; padding:8px; font-size:14px; }
    #actionButtons #btnReroll { width:100%; min-width:0; height:44px; padding:6px; justify-content:center; }
    #actionButtons #btnDisableItem { position:static; grid-column:1 / -1; width:100%; min-height:40px; transform:none; margin:0; }
}
@media(max-height:600px) {
    #screen-select { padding-top:62px; padding-bottom:12px; overflow-y:auto; }
    #screen-select .selected-items { height:40px; flex:0 0 40px; flex-wrap:nowrap; justify-content:flex-start; overflow-x:auto; overflow-y:hidden; padding:2px 8px; }
    #screen-select .selected-chip { flex-shrink:0; padding:2px 7px; }
    #screen-select .selected-chip img { width:30px; height:30px; }
    #screen-select .select-container { flex:0 0 auto; justify-content:flex-start; gap:8px; }
    #screen-select .category-plate { padding:6px 18px; min-width:120px; }
    #screen-select .category-name { font-size:18px; }
    #screen-select .wheel-container { height:calc(var(--wheel-item-size) + 40px); min-height:0; --wheel-item-size:clamp(60px,19dvh,96px); }
    #screen-select .wheel-pointer { font-size:24px; }
    #screen-select .action-buttons { margin-top:0; }
    #screen-select .progress-indicator { margin-top:0; }
    #screen-select .progress-dot { font-size:16px; }
}
.screen { scrollbar-width:thin; scrollbar-color:var(--warm-23386337323337,#8c7237) #15130f; }

/* Папка: небольшое окно и ровные ряды иконок карт без отдельных подложек. */
.compact-choice-modal .map-contract-panel { width:min(680px,100%); padding:24px; }
.compact-choice-modal #mapContractChoices.market-choice-grid { grid-template-columns:repeat(auto-fit,104px); gap:16px; }
.compact-choice-modal #mapContractChoices.market-choice-grid .market-choice-icon,.compact-choice-modal #mapContractChoices.market-choice-grid img { width:104px; height:104px; }
/* Оружие остаётся сложенным «на полке», но следующая карточка закрывает лишь
   небольшую часть предыдущей и не прячет её рисунок. */
.weapon-shelf-choice #mapContractChoices.market-choice-grid { grid-auto-rows:104px; padding-bottom:32px; }
.weapon-shelf-choice #mapContractChoices.market-choice-grid .map-contract-choice { z-index:1; }
.weapon-shelf-choice #mapContractChoices.market-choice-grid .map-contract-choice:hover,
.weapon-shelf-choice #mapContractChoices.market-choice-grid .map-contract-choice:focus-visible { z-index:3; }
.prestige-title { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:14px; }
.prestige-title > span { display:inline-flex; }
.prestige-title > span[hidden] { display:none; }
.prestige-medal { position:relative; display:inline-grid; place-items:center; width:42px; height:49px; flex-shrink:0; filter:drop-shadow(0 2px 6px var(--warm-72676261283231332c3137362c38322c2e3229,rgba(213,176,82,.2))); }
.prestige-medal svg { width:100%; height:100%; fill:var(--warm-23323331653131,#231e11); stroke:var(--warm-23646262353565,#dbb55e); stroke-width:1.5; }
.prestige-medal svg circle + circle { stroke:var(--warm-23383537303362,#85703b); stroke-width:.8; }
.prestige-medal .prestige-ribbon { fill:var(--warm-23613438313335,#a48135); stroke:var(--warm-23653663353731,#e6c571); }
.prestige-medal b { position:absolute; top:9px; left:0; width:100%; text-align:center; font-size:17px; line-height:21px; color:var(--warm-23663564633964,#f5dc9d); letter-spacing:0; }
.quest-prestige { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:24px 0; padding:20px 24px; border:1px solid var(--warm-72676261283231302c3137362c39392c2e323829,rgba(210,176,99,.28)); border-radius:14px; background:linear-gradient(110deg,var(--warm-726762612838302c36332c32352c2e313829,rgba(80,63,25,.18)),rgba(16,15,11,.45)); text-align:left; }
.quest-prestige h3 { font-size:17px; color:var(--warm-23656164376161,#ead7aa); margin:0 0 7px; }
.quest-prestige p { max-width:600px; color:var(--warm-23616261353939,#aba599); font-size:13px; line-height:1.65; margin:0; }
.quest-prestige .prestige-message { margin-top:10px; color:var(--warm-23656663663830,#efcf80); font-weight:700; }
#btnQuestPrestige { flex:0 0 auto; display:flex; flex-direction:column; align-items:center; gap:7px; min-width:236px; padding:15px 20px; border:1px solid var(--warm-23643862343637,#d8b467); border-radius:10px; background:linear-gradient(120deg,var(--warm-23656664646135,#efdda5),var(--warm-23626138663339,#ba8f39)); color:var(--warm-23323031393039,#201909); cursor:pointer; font:800 13px/1.4 var(--font-site); letter-spacing:.5px; }
#btnQuestPrestige small { font-size:12px; font-weight:500; letter-spacing:0; }
#btnQuestPrestige:disabled { background:rgba(26,24,18,.6); border-color:var(--warm-72676261283231312c3138352c3132352c2e323529,rgba(211,185,125,.25)); color:var(--warm-23623161383930,#b1a890); cursor:default; }
#btnQuestPrestige:focus-visible { outline:2px solid var(--warm-23663865396264,#f8e9bd); outline-offset:4px; }
@media(max-width:700px) { .quest-prestige { flex-direction:column; align-items:stretch; padding:18px; gap:16px; } #btnQuestPrestige { min-width:0; width:100%; } }
@media(max-width:600px) { body.hardcore-mode .header-brand .brand-name { max-width:none; font-size:16px; letter-spacing:1px; } }

/* Платный завоз: затухание старой витрины и последовательное раскрытие новой. */
#marketOffers { transition:opacity .2s ease,filter .2s ease; }
#marketOffers.market-fading { opacity:0; filter:blur(3px); pointer-events:none; }
.market-card.market-revealing { animation:market-card-reveal .55s cubic-bezier(.2,.7,.2,1) both; }
@keyframes market-card-reveal {
    from { opacity:0; transform:translateY(18px) scale(.96); filter:blur(4px); visibility:hidden; }
    to { opacity:1; transform:translateY(0) scale(1); filter:blur(0); visibility:visible; }
}
.market-case-dialog { box-sizing:border-box; width:min(1000px,94vw); max-width:94vw; max-height:calc(100dvh - 24px); padding:30px 22px; border:1px solid var(--warm-23613038373465,#a0874e); border-radius:20px; color:var(--warm-23663665656462,#f6eedb); background:linear-gradient(140deg,var(--warm-23323432313136,#242116),#0e0d09); text-align:center; box-shadow:0 20px 100px #000b; overflow-y:auto; }
.market-case-dialog[open] { position:fixed; inset:50% auto auto 50%; margin:0; transform:translate(-50%,-50%); }
.market-case-dialog::backdrop { background:#000c; backdrop-filter:blur(5px); }
.market-case-eyebrow { color:var(--warm-23633861363533,#c8a653); font-size:11px; letter-spacing:3px; font-weight:800; }
.market-case-dialog h2 { font-size:26px; margin:12px 0 26px; }
.market-case-wheel { position:relative; overflow:hidden; border:1px solid var(--warm-236133386135303535,#a38a5055); border-radius:14px; background:#ffffff04; padding:26px 0 32px; }
.market-case-track { display:flex; position:relative; gap:12px; will-change:transform; }
.market-case-tile { flex:0 0 124px; width:124px; height:124px; display:grid; place-items:center; }
.market-case-tile .market-item-art,.market-case-tile .market-item-image { width:120px; height:120px; object-fit:contain; }
.market-case-pointer { position:absolute; left:50%; bottom:0; transform:translateX(-50%); border-left:14px solid transparent; border-right:14px solid transparent; border-bottom:24px solid var(--warm-23666663653334,#ffce34); filter:drop-shadow(0 0 10px var(--warm-236634633434373737,#f4c44777)); }
.market-case-result { min-height:26px; font-size:19px; font-weight:800; margin:24px 0; }
#marketCaseAccept { min-width:220px; border-radius:12px; padding:16px 32px; background:linear-gradient(100deg,var(--warm-23663465336234,#f4e3b4),var(--warm-23623238613332,#b28a32)); color:var(--warm-23316631393063,#1f190c); border:1px solid var(--warm-23646463343765,#ddc47e); font:800 16px/1.2 var(--font-site); cursor:pointer; }
#marketCaseAccept:disabled { opacity:.35; cursor:default; }
.raid-reward-parts em.reward-amount-pair { position:relative; white-space:nowrap; cursor:help; }
.reward-amount-pair::after { content:attr(data-tip); position:absolute; right:0; bottom:calc(100% + 7px); width:max-content; max-width:220px; padding:8px 10px; border:1px solid var(--warm-236133386135303737,#a38a5077); border-radius:7px; background:#17150f; color:var(--warm-23656565316264,#eee1bd); font:500 12px/1.4 var(--font-site); opacity:0; visibility:hidden; pointer-events:none; z-index:20; transition:opacity .15s; box-shadow:0 4px 18px #0008; }
.reward-amount-pair:hover::after,.reward-amount-pair:focus-visible::after { opacity:1; visibility:visible; }
.market-item-title { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.market-item-title b { min-width:0; }
.market-item-income { flex:0 0 auto; color:var(--warm-23646162393637,#dab967); font-size:15px; }
.market-item-income.is-loss { color:#e18b80; }
@media(prefers-reduced-motion:reduce) { #marketOffers { transition:none; } .market-card.market-revealing { animation:none; } .market-case-track { transition:none!important; } }

body.hardcore-mode .header-brand .brand-name {
    background-image:linear-gradient(105deg,#7d0711 0%,#ff3347 30%,#b60018 52%,#ff6875 68%,#7d0711 100%)!important;
    background-size:240% 100%!important;
    background-clip:text!important;
    -webkit-background-clip:text!important;
    -webkit-text-fill-color:transparent!important;
    filter:drop-shadow(0 0 10px rgba(255,25,48,.42))!important;
}
.btn-skip-wheel {
    display:inline-grid;
    place-items:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid var(--warm-72676261283232342c3230352c3135382c2e343229,rgba(224,205,158,.42));
    border-radius:10px;
    background:rgba(17,16,12,.82);
    color:var(--warm-23653664386237,#e6d8b7);
    font:900 24px/1 var(--font-site);
    cursor:pointer;
    transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease;
}
.btn-skip-wheel span { transform:translateY(-1px); }
.btn-skip-wheel:hover:not(:disabled) { border-color:var(--warm-23643762373566,#d7b75f); color:var(--warm-23666666356437,#fff5d7); background:var(--warm-726762612836382c35332c32312c2e373229,rgba(68,53,21,.72)); transform:translateY(-1px); }
.btn-skip-wheel:disabled { opacity:.26; cursor:not-allowed; transform:none; }
.btn-skip-wheel:focus-visible { outline:2px solid var(--warm-23663464353765,#f4d57e); outline-offset:3px; }
@media(max-width:600px) { .btn-skip-wheel { width:44px; min-height:44px; } }
.reward-counter-line { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:12px; min-height:112px; width:100%; }
.reward-counter-line #earnedRerolls { grid-column:2; white-space:nowrap; }
.reward-counter-line #earnedPercent { grid-column:3; justify-self:start; }
.reward-counter-line #earnedRerolls { font-variant-numeric:tabular-nums; font-size:clamp(42px,7vw,80px); overflow-wrap:anywhere; min-width:0; }
.reward-running-percent { font-size:clamp(22px,3vw,34px); color:var(--warm-23653863373735,#e8c775); white-space:nowrap; }
#screen-reward .reward-sequence .raid-outcome.survived { color:#34d87b !important; }
#screen-reward .reward-sequence .raid-outcome.died, #earnedRerolls.is-loss { color:#ff6262 !important; }
.reward-result .reward-running-percent { color:var(--warm-23653863373735,#e8c775); letter-spacing:0; }
.reward-result .reward-step span { letter-spacing:0; font-weight:600; }
.reward-step { min-height:100px; display:flex; align-items:center; justify-content:center; gap:14px; font-size:18px; line-height:1.5; }
.reward-step .market-item-art { flex:0 0 60px; width:60px; height:60px; }
.reward-step .market-item-image { width:60px; height:60px; object-fit:contain; }
.reward-step .market-symbol { width:60px; height:60px; }
.step-enter { animation:reward-step-enter .45s ease both; }
@keyframes reward-step-enter { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
.step-exit { animation:reward-step-exit .25s ease both; }
@keyframes reward-step-exit { to { opacity:0; transform:translateY(-8px); } }
.reward-step-delta { white-space:nowrap; font-style:normal; font-weight:900; color:var(--warm-23663764303637,#f7d067); }
.reward-sequence-skip { font-size:13px; padding:8px 14px; background:transparent; border:1px solid var(--warm-23383037303532,#807052); border-radius:8px; color:var(--warm-23636663326137,#cfc2a7); cursor:pointer; }
.reward-sequence-skip[hidden], #rewardFinalItems[hidden] { display:none; }
#rewardFinalItems { width:100%; min-width:0; animation:reward-step-enter .4s ease both; }
.reward-amount-hover { position:relative; cursor:default; border-bottom:1px dotted var(--warm-23396338363437,#9c8647); white-space:nowrap; }
.reward-amount-hover::after { content:attr(data-reward-tip); display:none; position:absolute; z-index:100; right:0; bottom:calc(100% + 6px); width:max-content; max-width:min(270px,75vw); white-space:normal; padding:9px 12px; border:1px solid var(--warm-23386437353432,#8d7542); border-radius:9px; background:#16140f; color:var(--warm-23656565346361,#eee4ca); font:500 13px/1.4 var(--font-site); text-align:left; box-shadow:0 6px 24px #0009; pointer-events:none; }
.reward-amount-hover:hover::after,.reward-amount-hover:focus::after { display:block; }
.reward-bonus-hover { position:relative; display:inline-block; cursor:default; border-bottom:1px dotted var(--warm-23396338363437,#9c8647); outline-offset:4px; }
.reward-bonus-popup { display:none; position:absolute; z-index:80; right:0; bottom:100%; width:min(330px,75vw); box-sizing:border-box; max-height:min(70vh,560px); overflow:auto; scrollbar-width:none; -ms-overflow-style:none; padding:16px; border:1px solid var(--warm-23386437353432,#8d7542); border-radius:12px; background:#16140f; color:var(--warm-23656565346361,#eee4ca); box-shadow:0 12px 36px #000a; text-align:left; font-size:14px; line-height:1.45; white-space:normal; }
.reward-bonus-popup::-webkit-scrollbar { width:0; height:0; display:none; }
.reward-bonus-hover:hover .reward-bonus-popup,.reward-bonus-hover:focus .reward-bonus-popup,.reward-bonus-hover:focus-within .reward-bonus-popup { display:block; }
.reward-bonus-popup::after { content:''; position:absolute; height:10px; bottom:-10px; left:0; right:0; }
.reward-bonus-popup > b { display:block; margin-bottom:10px; color:var(--warm-23656463623766,#edcb7f); }
.reward-bonus-popup > span { display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding:5px 0; }
.reward-bonus-popup > span > span { min-width:0; overflow-wrap:anywhere; }
.reward-bonus-popup strong { font-size:14px; white-space:nowrap; color:var(--warm-23663764303637,#f7d067); }
.reward-final-summary { margin-bottom:16px; }
.reward-result.is-complete { min-height:0; padding-bottom:0; margin-bottom:4px; }
.reward-result.is-complete .reward-step { display:none; }
.reward-base-and-bonus { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:16px; color:var(--warm-23663163663730,#f1cf70); font-size:12px; font-weight:800; }
.reward-base-total { white-space:nowrap; flex:0 0 auto; }
.reward-base-and-bonus > .reward-bonus-hover { padding:7px 9px; border:1px solid var(--warm-233864373534323636,#8d754266); border-radius:16px; font-size:12px; text-align:center; }
@media(max-width:380px) { .reward-base-and-bonus { gap:6px; font-size:11px; } .reward-base-and-bonus > .reward-bonus-hover { padding:6px; font-size:10px; } }

/* Профиль и настройки — отдельные разделы первой версии. */
.nav-account { position:relative; display:flex; align-items:center; }
.nav-account-menu { position:absolute; top:calc(100% + 9px); right:0; width:182px; padding:6px; border:1px solid var(--warm-236232393335333636,#b2935366); border-radius:14px; background:#12110f; box-shadow:0 18px 50px #000a; z-index:1100; }
.nav-account-menu[hidden] { display:none; }
.nav-account-menu::before { content:''; position:absolute; top:-12px; left:0; right:0; height:12px; }
.nav-account-menu .nav-link { display:block; padding:13px 15px; border-radius:8px; color:var(--warm-23653965336437,#e9e3d7); text-decoration:none; font-weight:700; }
.nav-account-menu .nav-link:hover,.nav-account-menu .nav-link:focus-visible,.nav-account-menu .nav-link.active { background:var(--warm-236435623636353230,#d5b66520); color:var(--warm-23663664383862,#f6d88b); }
.nav-account.active .account-menu-button { border-color:var(--warm-23643562363635,#d5b665); }
.profile-placeholder { max-width:560px; margin:35px auto; text-align:center; padding:32px 20px; border:1px solid var(--warm-236232393335333364,#b293533d); border-radius:16px; background:#ffffff04; }
.profile-placeholder > span { font-size:42px; }
.profile-placeholder h3 { margin:20px 0 12px; }
.profile-placeholder p { color:var(--warm-23616161343936,#aaa496); line-height:1.7; margin-bottom:25px; }
.profile-tools > h3 { margin:0; padding:17px; color:var(--warm-23653064376334,#e0d7c4); font-size:.9rem; }
.info-hero-actions { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px; margin-top:27px; }
.info-hero-actions .info-start-button { margin:0; }
.info-hero-actions .info-tour-button { background:var(--warm-23323432303136,#242016); color:var(--warm-23663164353866,#f1d58f); border:1px solid var(--warm-23616638663437,#af8f47); }
body.hardcore-mode #headerCoins { color:#ff5764; background:rgba(119,18,30,.28); border-color:rgba(255,71,87,.48); box-shadow:inset 0 0 20px rgba(166,24,43,.12); }
body.hardcore-mode #headerCoins .reroll-count { color:#ff5764; text-shadow:0 0 14px #d4274140; }
body.hardcore-mode #headerCoins:hover { background:rgba(145,22,39,.42); border-color:#ff5764; }

/* PvE keeps the red hardcore palette when both modes are active. */
.raid-mode-switch,.stats-mode-switch,.profile-mode-switch{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:800;letter-spacing:.11em}
.raid-mode-switch{position:absolute;z-index:8;top:92px;left:50%;transform:translateX(-50%);color:#e4c879}
.raid-mode-switch button{width:56px;height:28px;padding:3px;border:1px solid #ae8948;border-radius:99px;background:#3c311d;cursor:pointer}
.raid-mode-switch button i{display:block;width:20px;height:20px;border-radius:50%;background:#f7de9c;transition:transform .2s ease,background .2s ease}
.raid-mode-switch button[aria-checked="false"] i{transform:translateX(27px)}
.raid-mode-switch button[aria-checked="true"] i{transform:translateX(0);background:#8dedac}
.raid-mode-switch button:disabled{opacity:.55;cursor:not-allowed}
.stats-mode-switch,.profile-mode-switch{margin:14px auto 22px;gap:8px}
.stats-mode-switch button,.profile-mode-switch button{border:1px solid #796541;border-radius:8px;background:#292219;color:#d8c797;padding:9px 17px;cursor:pointer}
.stats-mode-switch button[aria-pressed="true"],.profile-mode-switch button[aria-pressed="true"]{background:#416c48;border-color:#83cd8f;color:#fff}
body.pve-mode:not(.hardcore-mode){--theme-accent:#6dd993}
body.pve-mode:not(.hardcore-mode) #screen-main{background:radial-gradient(ellipse at center,#15291e 0%,#0c1811 58%,#080e0b 100%)}
body.pve-mode:not(.hardcore-mode) .main-header{border-color:#356d4d;box-shadow:0 0 36px #2b995023}
body.pve-mode:not(.hardcore-mode) .main-title{background-image:linear-gradient(120deg,#aef3be,#54c884,#d8ffd2);text-shadow:0 0 48px #54c88450}
body.pve-mode:not(.hardcore-mode) .main-subtitle{color:#b4d9bd}
body.pve-mode:not(.hardcore-mode) .btn-main{background:linear-gradient(145deg,#b5f6b9,#3ea773);box-shadow:0 0 74px #45ba7845}
body.pve-mode:not(.hardcore-mode) .btn-main::before{background:linear-gradient(135deg,#d4ffd4,#58d489,#278d5d)}
body.pve-mode:not(.hardcore-mode) .header-brand .brand-name{background-image:linear-gradient(90deg,#b4f0b3,#59ce8d)}
body.pve-mode:not(.hardcore-mode) .header-nav .nav-link.active{border-bottom-color:#6bd693;color:#c7f5d0}
body.pve-mode:not(.hardcore-mode) .header-reroll,body.pve-mode:not(.hardcore-mode) .header-sound-toggle,body.pve-mode:not(.hardcore-mode) .account-menu-button{border-color:#5aab73;color:#a5e9b4}
body.pve-mode:not(.hardcore-mode) .page-screen{background:radial-gradient(ellipse at 50% 15%,#13231a 0%,#101712 58%,#0b0e0c 100%)}
body.pve-mode:not(.hardcore-mode) .page-particle,body.pve-mode:not(.hardcore-mode) .roulette-particle,body.pve-mode:not(.hardcore-mode) .final-particle{background:#6bd693;box-shadow:0 0 12px #6bd693}
body.pve-mode:not(.hardcore-mode) .category-plate,body.pve-mode:not(.hardcore-mode) .history-item,body.pve-mode:not(.hardcore-mode) .contract-card,body.pve-mode:not(.hardcore-mode) .expedition-card{border-color:#5a9c6a}
body.pve-mode:not(.hardcore-mode) .btn-accept,body.pve-mode:not(.hardcore-mode) .operation-primary{background:linear-gradient(135deg,#82df9c,#358358);color:#102218}
body.pve-mode:not(.hardcore-mode) .page-screen h2,body.pve-mode:not(.hardcore-mode) .board-heading h3{color:#b8edbc}
@media(max-width:600px){.raid-mode-switch{top:72px;font-size:12px}.raid-mode-switch button{width:48px}.raid-mode-switch button[aria-checked="false"] i{transform:translateX(19px)}}

/* Единый знак КейКоинов в балансе, ценах и итогах. */
.coin-amount { display:inline-flex; align-items:center; justify-content:center; gap:.28em; white-space:nowrap; }
.coin-icon { position:relative; top:.08em; display:inline-block; width:1.3em; height:1.3em; flex:0 0 auto; object-fit:contain; vertical-align:middle; image-rendering:auto; }
.header-coin-icon { width:23px; height:23px; }
.market-card button .coin-amount { font-size:1.02rem; font-weight:900; }
.market-storefront .market-card button { font-size:1.02rem; font-weight:900; }
.market-card button .coin-icon { width:1.35em; height:1.35em; }
.raid-market-items h4 .coin-amount { color:var(--warm-23663063663732,#f0cf72); font-size:1em; }
.raid-reward-breakdown > strong .coin-icon { width:1.3em; height:1.3em; }
.history-item header strong .coin-icon { width:1.3em; height:1.3em; }
.market-test-refresh { display:inline-flex; align-items:center; justify-content:center; gap:.35em; }
.market-test-refresh .coin-icon { width:1.35em; height:1.35em; }
/* В компактных строках рынка и расходов значок лучше читается на базовой линии. */
#screen-market .coin-icon,
.raid-market-items h4 .coin-icon { top:0; }
.quest-reward { cursor:pointer; }
.quest-reward-name { cursor:pointer !important; }

/* Профиль остаётся отдельной кнопкой на широком экране, а на телефоне
   становится последним разделом общего меню. */
.mobile-account-link { display:none !important; }
.account-menu-button { position:relative; isolation:isolate; }
.account-menu-button::before { content:''; position:absolute; inset:-4px; border-radius:50%; background:conic-gradient(var(--warm-23663463613432,#f4ca42) var(--xp-progress,0deg),var(--warm-23363535323164,#65521d) 0); z-index:-1; mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 0); pointer-events:none; }
.profile-level,.level-number { display:inline-grid; place-items:center; width:32px; height:32px; flex-shrink:0; border:3px solid var(--warm-23656463333438,#edc348); border-radius:50%; color:var(--warm-23666665333934,#ffe394); background:var(--warm-23323932323065,#29220e); font:800 14px/1 var(--font-site); }
.nav-account-menu .nav-link[data-page="profile"] { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.achievement-action em { text-transform:none; font-style:normal; font-size:11px; line-height:1.6; }
.achievement-action em span,.achievement-action em small { display:block; }
.level-page { max-width:900px; }
#levelProgress { padding:26px; border:1px solid var(--warm-233931373633343636,#91763466); border-radius:16px; background:var(--warm-233234316631323434,#241f1244); }
.level-heading { display:flex; align-items:center; gap:18px; }
.level-heading p,.level-total { color:var(--warm-23626462333961,#bdb39a); font-size:14px; line-height:1.6; margin-top:8px; }
.level-number { width:64px; height:64px; font-size:26px; }
.level-bar { margin-top:24px; height:10px; background:var(--warm-23353734373163,#57471c); }
.level-bar i { display:block; height:100%; background:linear-gradient(90deg,var(--warm-23623838623231,#b88b21),var(--warm-23666664663631,#ffdf61)); border-radius:inherit; }
.experience-log-heading { margin:30px 0 18px; font-size:16px; letter-spacing:1px; }
.experience-entry { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px; border-bottom:1px solid var(--warm-236236396133633333,#b69a3c33); }
.experience-entry small { display:block; color:var(--warm-23396339363838,#9c9688); margin-top:6px; font-size:12px; }
.experience-entry strong { color:var(--warm-23656463613634,#edca64); white-space:nowrap; }
@media(max-width:600px) { .experience-entry { flex-wrap:wrap; padding:14px 0; } #levelProgress { padding:18px; } .achievement-action { max-width:100%; } }

@media (max-width: 900px) {
    .nav-account { display:none; }
    .mobile-account-link { display:flex !important; }
}

/* Мобильный стартовый экран: текст не обрезается по краям, а заголовок,
   подпись и кнопка образуют один аккуратно центрированный блок. */
@media (max-width: 600px) {
    #screen-main .main-center {
        width:100%;
        padding:0 18px;
        gap:12px;
        transform:translateY(4.5dvh);
    }
    #screen-main .main-title {
        width:100%;
        margin:0;
        font-size:clamp(1.95rem, 10vw, 2.55rem);
        line-height:1.08;
        letter-spacing:clamp(3px, 1.8vw, 6px);
        text-align:center;
        overflow-wrap:normal;
    }
    #screen-main .main-subtitle {
        width:min(100%, 390px);
        margin:2px 0 14px;
        padding:0 4px;
        font-size:clamp(.72rem, 3.4vw, .9rem);
        line-height:1.5;
        letter-spacing:clamp(2px, 1.3vw, 4px);
        text-align:center;
        overflow-wrap:normal;
    }
    #screen-main .btn-main {
        flex:0 0 auto;
        justify-content:center;
        padding:10px;
    }
    #screen-main .btn-main .btn-main-text {
        width:88%;
        font-size:clamp(1.05rem, 5.4vw, 1.35rem);
        line-height:1.12;
        letter-spacing:clamp(2px, 1vw, 4px);
        text-align:center;
        transform:translateY(3px);
    }
    #screen-main .btn-main .btn-main-sub {
        width:80%;
        margin-top:9px;
        font-size:clamp(.55rem, 2.7vw, .68rem);
        line-height:1.35;
        letter-spacing:clamp(1.5px, .8vw, 2.5px);
        text-align:center;
        transform:translateY(3px);
    }
}

/* Колесо должно занимать центр оставшейся высоты телефона. Ранее flex:auto
   прижимал весь игровой блок к верхней границе после появления предметов. */
@media (max-width: 700px) {
    #screen-select {
        min-height:100dvh;
        padding-top:56px;
    }
    #screen-select .selected-items {
        width:100%;
        max-width:100%;
        flex:0 0 auto;
        min-height:46px;
        height:auto;
        max-height:92px;
        overflow-x:auto;
        overflow-y:hidden;
        flex-wrap:nowrap;
        justify-content:flex-start;
        padding:6px 10px;
    }
    #screen-select .selected-chip { flex:0 0 auto; }
    #screen-select .select-container {
        flex:1 1 auto;
        min-height:0;
        justify-content:center;
        padding-top:8px;
        padding-bottom:max(14px, env(safe-area-inset-bottom));
    }
}

@media (max-height: 600px) and (max-width: 900px) {
    #screen-select .select-container {
        flex:1 1 auto;
        min-height:0;
        justify-content:center;
    }
}

/* Обучение: четыре затемняющие области оставляют настоящий элемент доступным. */
#luckyTour { position:fixed; inset:0; z-index:50000; pointer-events:none; }
#luckyTour[hidden],.tour-pause[hidden] { display:none; }
/* Подсветка не следует за hover-масштабированием кнопки запуска. */
body:has(#luckyTour:not([hidden])) #btnStart { transform:none; transition:box-shadow .35s ease; }
.tour-shade { position:fixed; background:rgba(0,0,0,.76); pointer-events:auto; }
.tour-focus { position:fixed; border:1px solid var(--warm-23653663313665,#e6c16e); border-radius:10px; box-shadow:0 0 22px var(--warm-236538626534663330,#e8be4f30); pointer-events:none; }
.tour-card { position:fixed; display:flex; flex-direction:column; width:380px; max-width:calc(100vw - 24px); padding:22px; color:var(--warm-23656565386439,#eee8d9); background:linear-gradient(135deg,var(--warm-23323932353161,#29251a),#15130f); border:1px solid var(--warm-23616138653465,#aa8e4e); border-radius:16px; box-shadow:0 16px 70px #000b; pointer-events:auto; max-height:calc(100dvh - 24px); }
.tour-card::before { content:''; position:absolute; left:var(--tour-arrow,50%); top:-7px; width:12px; height:12px; border-top:1px solid var(--warm-23616138653465,#aa8e4e); border-left:1px solid var(--warm-23616138653465,#aa8e4e); background:var(--warm-23323532313137,#252117); transform:rotate(45deg); }
.tour-card[data-side="above"]::before { top:auto; bottom:-7px; transform:rotate(225deg); }
.tour-card[data-side="center"]::before { display:none; }
.tour-card small { color:var(--warm-23633961643638,#c9ad68); letter-spacing:1.4px; font-size:10px; font-weight:800; }
.tour-card h2 { margin:12px 0; font-size:22px; line-height:1.25; color:var(--warm-23663765646437,#f7edd7); }
.tour-card p { min-height:0; flex:0 1 auto; font-size:14px; line-height:1.65; color:var(--warm-23636563376236,#cec7b6); white-space:pre-line; max-height:calc(100dvh - 230px); overflow:auto; scrollbar-width:thin; }
.tour-card > :not(p) { flex-shrink:0; }
.tour-card [hidden],.tour-focus[hidden] { display:none!important; }
body.tour-docked .screen.active { position:fixed!important; top:0; height:calc(100dvh - var(--tour-card-clearance))!important; min-height:0!important; overflow-y:auto; justify-content:flex-start!important; padding-bottom:20px!important; scroll-padding-top:76px; }
body.tour-awaiting-raid #screen-final { padding-bottom:100px!important; scroll-padding-bottom:100px; }
body.tour-awaiting-action .screen.active { padding-bottom:100px!important; scroll-padding-bottom:100px; }
.tour-card-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin-top:20px; }
.tour-card button,.tour-pause button { cursor:pointer; border-radius:8px; padding:11px 14px; font:inherit; font-size:12px; font-weight:800; }
.tour-next { border:1px solid var(--warm-23653263343738,#e2c478); background:linear-gradient(120deg,var(--warm-23663164646162,#f1ddab),var(--warm-23623638643334,#b68d34)); color:var(--warm-23316231363061,#1b160a); }
.tour-skip { border:1px solid var(--warm-236136396137373361,#a69a773a); background:transparent; color:var(--warm-23616161313865,#aaa18e); }
.tour-card button:focus-visible,.tour-pause button:focus-visible { outline:2px solid var(--warm-23666666326330,#fff2c0); outline-offset:3px; }
.tour-action-hint { display:block; color:var(--warm-23663164343838,#f1d488); font-size:12px; line-height:1.6; margin-top:15px; }
.tour-pause { position:fixed; right:16px; bottom:16px; z-index:49999; max-width:calc(100vw - 32px); display:flex; flex-wrap:wrap; gap:10px; align-items:center; padding:10px 14px; background:#15130ff5; border:1px solid var(--warm-236161386534653830,#aa8e4e80); border-radius:12px; color:var(--warm-23633962393865,#c9b98e); font-size:12px; }
.tour-pause button { padding:7px 10px; }
.tour-resume { border:1px solid var(--warm-23653263343738,#e2c478); background:var(--warm-23333332613138,#332a18); color:var(--warm-23663164343838,#f1d488); }
[data-tour-pinned="true"] .nav-progress-menu,[data-tour-pinned="true"] .nav-progress-panel { transition:none!important; }
@media(max-width:600px) { .tour-card { padding:17px; } .tour-card h2 { font-size:19px; } .tour-card p { font-size:13px; } .tour-pause { left:12px; right:12px; bottom:10px; justify-content:space-between; } }
/* Audio update: compact controls, independent effect/music volume. */
.header-sound-toggle{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;padding:6px;border:1px solid var(--warm-23386437343265,#8d742e);border-radius:50%;background:var(--warm-23323732323133,#272213);color:var(--warm-23653863373638,#e8c768);transition:opacity .2s,box-shadow .2s;box-shadow:0 0 10px var(--warm-236433616434303232,#d3ad4022)}
.header-sound-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.header-sound-toggle.is-muted{opacity:.45;box-shadow:none}
.header-sound-toggle .speaker-muted,.header-sound-toggle.is-muted .speaker-waves{display:none}
.header-sound-toggle.is-muted .speaker-muted{display:block}
#accountMenuButton .profile-level{background:none;border:0;padding:0;font-weight:800;font-size:17px}
#navAccountMenu .nav-link{justify-content:center;text-align:center;width:100%}
.sound-options{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:20px;border:1px solid var(--warm-23363135313265,#61512e);border-radius:12px;margin:0 0 28px;background:#201c15}
.volume-setting{display:grid;grid-template-columns:1fr auto;gap:10px;color:var(--warm-23653864636261,#e8dcba)}
.volume-setting input{grid-column:1/-1;width:100%;accent-color:var(--warm-23643962393564,#d9b95d);cursor:pointer}
.volume-setting output{color:var(--warm-23633761643638,#c7ad68);font-variant-numeric:tabular-nums}
.sound-options>p{grid-column:1/-1;margin:0;color:var(--warm-23616161313863,#aaa18c);font-size:13px}
.quest-library-row{transition:transform .2s ease,box-shadow .2s ease;transform-origin:center}
.quest-library-row:hover,.quest-library-row:focus-visible{transform:scale(1.025);box-shadow:0 4px 18px #0007;position:relative;z-index:1}
.quest-slot:hover .quest-image-layer{transform:scale(1.06)}
.quest-slot .quest-image-layer{transition:transform .2s ease}
@media(max-width:600px){.sound-options{grid-template-columns:1fr}.header-actions{gap:7px}.header-sound-toggle{width:32px;height:32px;flex-basis:32px;padding:4px}}
@media(prefers-reduced-motion:reduce){.quest-library-row:hover,.quest-library-row:focus-visible,.quest-slot:hover .quest-image-layer{transform:none}}

/* Shared accent map: hardcore is red, PVE is green. */
body.hardcore-mode,body.pve-mode:not(.hardcore-mode){
--warm-72676261283235352c203231352c20302c20302e3329:hsl(var(--mode-hue) 100.00% 50.00% / 0.3);
--warm-23666664373030:hsl(var(--mode-hue) 100.00% 50.00% / 1);
--warm-72676261283235352c203231352c20302c20302e303829:hsl(var(--mode-hue) 100.00% 50.00% / 0.08);
--warm-72676261283235352c203231352c20302c20302e313529:hsl(var(--mode-hue) 100.00% 50.00% / 0.15);
--warm-72676261283235352c203231352c20302c20302e3229:hsl(var(--mode-hue) 100.00% 50.00% / 0.2);
--warm-72676261283235352c203231352c20302c20302e313229:hsl(var(--mode-hue) 100.00% 50.00% / 0.12);
--warm-72676261283235352c203231352c20302c20302e303529:hsl(var(--mode-hue) 100.00% 50.00% / 0.05);
--warm-72676261283235352c203231352c20302c20302e3629:hsl(var(--mode-hue) 100.00% 50.00% / 0.6);
--warm-72676261283235352c203231352c20302c20302e303629:hsl(var(--mode-hue) 100.00% 50.00% / 0.06);
--warm-72676261283235352c203231352c20302c20302e3129:hsl(var(--mode-hue) 100.00% 50.00% / 0.1);
--warm-23653162643638:hsl(var(--mode-hue) 66.85% 64.51% / 1);
--warm-72676261283235352c203231352c20302c20302e303429:hsl(var(--mode-hue) 100.00% 50.00% / 0.04);
--warm-23663061353030:hsl(var(--mode-hue) 100.00% 47.06% / 1);
--warm-23653863623833:hsl(var(--mode-hue) 68.71% 71.18% / 1);
--warm-72676261283235352c3231352c302c2e3329:hsl(var(--mode-hue) 100.00% 50.00% / 0.3);
--warm-23663364363663:hsl(var(--mode-hue) 84.91% 68.82% / 1);
--warm-23616639353562:hsl(var(--mode-hue) 34.43% 52.16% / 1);
--warm-23663564633963:hsl(var(--mode-hue) 81.65% 78.63% / 1);
--warm-23666664333563:hsl(var(--mode-hue) 100.00% 68.04% / 1);
--warm-72676261283235352c3231312c39322c2e323229:hsl(var(--mode-hue) 100.00% 68.04% / 0.22);
--warm-72676261283235352c3231352c302c2e333229:hsl(var(--mode-hue) 100.00% 50.00% / 0.32);
--warm-72676261283235352c203231352c20302c20302e303329:hsl(var(--mode-hue) 100.00% 50.00% / 0.03);
--warm-72676261283235352c3231312c39322c2e3229:hsl(var(--mode-hue) 100.00% 68.04% / 0.2);
--warm-72676261283235352c3231312c39322c2e323529:hsl(var(--mode-hue) 100.00% 68.04% / 0.25);
--warm-23666666316230:hsl(var(--mode-hue) 100.00% 84.51% / 1);
--warm-72676261283234302c3231312c3133392c2e363829:hsl(var(--mode-hue) 77.10% 74.31% / 0.68);
--warm-23313831333061:hsl(var(--mode-hue) 41.18% 6.67% / 1);
--warm-23663264633964:hsl(var(--mode-hue) 76.58% 78.24% / 1);
--warm-23633439343338:hsl(var(--mode-hue) 55.56% 49.41% / 1);
--warm-72676261283230322c3136312c37392c2e313829:hsl(var(--mode-hue) 53.71% 55.10% / 0.18);
--warm-23346433353063:hsl(var(--mode-hue) 73.03% 17.45% / 1);
--warm-72676261283232352c3138392c3130342c2e323829:hsl(var(--mode-hue) 66.85% 64.51% / 0.28);
--warm-726762612834332c33372c32352c2e373229:hsl(var(--mode-hue) 26.47% 13.33% / 0.72);
--warm-23656565346365:hsl(var(--mode-hue) 48.48% 87.06% / 1);
--warm-23396339343835:hsl(var(--mode-hue) 10.41% 56.67% / 1);
--warm-23363535623435:hsl(var(--mode-hue) 18.82% 33.33% / 1);
--warm-23386338333732:hsl(var(--mode-hue) 10.24% 49.80% / 1);
--warm-23623939353437:hsl(var(--mode-hue) 44.88% 50.20% / 1);
--warm-23336333313139:hsl(var(--mode-hue) 41.18% 16.67% / 1);
--warm-236337613334633333:hsl(var(--mode-hue) 52.34% 53.92% / 0.2);
--warm-23663063653738:hsl(var(--mode-hue) 80.00% 70.59% / 1);
--warm-23643863363965:hsl(var(--mode-hue) 42.65% 73.33% / 1);
--warm-23653463323663:hsl(var(--mode-hue) 68.97% 65.88% / 1);
--warm-72676261283235352c203231352c20302c202e333229:hsl(var(--mode-hue) 100.00% 50.00% / 0.32);
--warm-72676261283235352c3231352c302c2e303929:hsl(var(--mode-hue) 100.00% 50.00% / 0.09);
--warm-72676261283235352c3231352c302c2e3729:hsl(var(--mode-hue) 100.00% 50.00% / 0.7);
--warm-72676261283235352c3231352c302c2e313329:hsl(var(--mode-hue) 100.00% 50.00% / 0.13);
--warm-72676261283235352c3231352c302c2e333629:hsl(var(--mode-hue) 100.00% 50.00% / 0.36);
--warm-72676261283235352c3231352c302c2e353829:hsl(var(--mode-hue) 100.00% 50.00% / 0.58);
--warm-726762612833332c32392c31382c2e393629:hsl(var(--mode-hue) 29.41% 10.00% / 0.96);
--warm-72676261283235352c3231352c302c2e313429:hsl(var(--mode-hue) 100.00% 50.00% / 0.14);
--warm-23643461623466:hsl(var(--mode-hue) 60.73% 57.06% / 1);
--warm-23656164323864:hsl(var(--mode-hue) 68.89% 73.53% / 1);
--warm-72676261283235352c3234342c3230342c2e313529:hsl(var(--mode-hue) 100.00% 90.00% / 0.15);
--warm-72676261283139362c3135312c36352c2e313429:hsl(var(--mode-hue) 52.61% 51.18% / 0.14);
--warm-72676261283235352c3139362c3132382c2e30323529:hsl(var(--mode-hue) 100.00% 75.10% / 0.025);
--warm-726762612839312c37302c33332c2e313629:hsl(var(--mode-hue) 46.77% 24.31% / 0.16);
--warm-23386638333636:hsl(var(--mode-hue) 16.73% 48.04% / 1);
--warm-72676261283232362c3139302c39332c2e323529:hsl(var(--mode-hue) 69.63% 62.55% / 0.25);
--warm-72676261283231342c3137312c35372c2e303829:hsl(var(--mode-hue) 65.69% 53.14% / 0.08);
--warm-23663163663730:hsl(var(--mode-hue) 82.17% 69.22% / 1);
--warm-72676261283235352c3231352c302c2e313829:hsl(var(--mode-hue) 100.00% 50.00% / 0.18);
--warm-72676261283231322c3138302c3130362c2e3229:hsl(var(--mode-hue) 55.21% 62.35% / 0.2);
--warm-23643462343661:hsl(var(--mode-hue) 55.21% 62.35% / 1);
--warm-23663165646532:hsl(var(--mode-hue) 34.88% 91.57% / 1);
--warm-23626362386164:hsl(var(--mode-hue) 10.07% 70.78% / 1);
--warm-23663466316538:hsl(var(--mode-hue) 35.29% 93.33% / 1);
--warm-72676261283235352c203234362c203231392c202e313629:hsl(var(--mode-hue) 100.00% 92.94% / 0.16);
--warm-72676261283230342c203136332c2038332c202e313229:hsl(var(--mode-hue) 54.26% 56.27% / 0.12);
--warm-72676261283232392c3230322c3134322c2e353829:hsl(var(--mode-hue) 62.59% 72.75% / 0.58);
--warm-23663164393966:hsl(var(--mode-hue) 74.55% 78.43% / 1);
--warm-72676261283231312c3137302c37392c2e313629:hsl(var(--mode-hue) 60.00% 56.86% / 0.16);
--warm-72676261283231382c3137372c38352c2e313829:hsl(var(--mode-hue) 64.25% 59.41% / 0.18);
--warm-72676261283232392c3230322c3134322c2e323829:hsl(var(--mode-hue) 62.59% 72.75% / 0.28);
--warm-23626462376161:hsl(var(--mode-hue) 12.58% 70.39% / 1);
--warm-72676261283232392c3230322c3134322c2e333229:hsl(var(--mode-hue) 62.59% 72.75% / 0.32);
--warm-23663265656533:hsl(var(--mode-hue) 36.59% 91.96% / 1);
--warm-72676261283232392c3230322c3134322c2e343829:hsl(var(--mode-hue) 62.59% 72.75% / 0.48);
--warm-72676261283232392c3230322c3134322c2e313229:hsl(var(--mode-hue) 62.59% 72.75% / 0.12);
--warm-72676261283232392c3230322c3134322c2e3229:hsl(var(--mode-hue) 62.59% 72.75% / 0.2);
--warm-23626462386162:hsl(var(--mode-hue) 12.00% 70.59% / 1);
--warm-72676261283232392c3230322c3134322c2e373229:hsl(var(--mode-hue) 62.59% 72.75% / 0.72);
--warm-72676261283230372c3136362c37322c2e313229:hsl(var(--mode-hue) 58.44% 54.71% / 0.12);
--warm-23663564393836:hsl(var(--mode-hue) 84.73% 74.31% / 1);
--warm-72676261283230372c3136362c37322c2e323529:hsl(var(--mode-hue) 58.44% 54.71% / 0.25);
--warm-23646663313735:hsl(var(--mode-hue) 62.35% 66.67% / 1);
--warm-23653463353733:hsl(var(--mode-hue) 67.66% 67.25% / 1);
--warm-72676261283232392c3230322c3134322c2e373829:hsl(var(--mode-hue) 62.59% 72.75% / 0.78);
--warm-23656664353864:hsl(var(--mode-hue) 75.38% 74.51% / 1);
--warm-72676261283232392c3230322c3134322c2e343629:hsl(var(--mode-hue) 62.59% 72.75% / 0.46);
--warm-23653965336435:hsl(var(--mode-hue) 31.25% 87.45% / 1);
--warm-72676261283232392c3230322c3134322c2e3529:hsl(var(--mode-hue) 62.59% 72.75% / 0.5);
--warm-72676261283230382c3136362c37362c2e313429:hsl(var(--mode-hue) 58.41% 55.69% / 0.14);
--warm-23663064313861:hsl(var(--mode-hue) 77.27% 74.12% / 1);
--warm-23633863316166:hsl(var(--mode-hue) 18.52% 73.53% / 1);
--warm-72676261283232392c3230322c3134322c2e333529:hsl(var(--mode-hue) 62.59% 72.75% / 0.35);
--warm-72676261283232392c3230322c3134322c2e343529:hsl(var(--mode-hue) 62.59% 72.75% / 0.45);
--warm-72676261283139302c3134352c35382c2e303429:hsl(var(--mode-hue) 53.23% 48.63% / 0.04);
--warm-23663365656531:hsl(var(--mode-hue) 42.86% 91.76% / 1);
--warm-23663164333864:hsl(var(--mode-hue) 78.13% 74.90% / 1);
--warm-72676261283230312c3135332c35392c2e313629:hsl(var(--mode-hue) 56.80% 50.98% / 0.16);
--warm-72676261283232352c3138322c38382c2e323229:hsl(var(--mode-hue) 69.54% 61.37% / 0.22);
--warm-72676261283230392c3136352c37322c2e313729:hsl(var(--mode-hue) 59.83% 55.10% / 0.17);
--warm-23646564386361:hsl(var(--mode-hue) 23.26% 83.14% / 1);
--warm-72676261283232392c3230322c3134322c2e3729:hsl(var(--mode-hue) 62.59% 72.75% / 0.7);
--warm-23663464646230:hsl(var(--mode-hue) 75.56% 82.35% / 1);
--warm-72676261283231302c3136382c37352c2e313829:hsl(var(--mode-hue) 60.00% 55.88% / 0.18);
--warm-72676261283233302c3139342c39322c2e363529:hsl(var(--mode-hue) 73.40% 63.14% / 0.65);
--warm-72676261283232392c3230322c3134322c2e383529:hsl(var(--mode-hue) 62.59% 72.75% / 0.85);
--warm-72676261283232392c3230322c3134322c2e313829:hsl(var(--mode-hue) 62.59% 72.75% / 0.18);
--warm-72676261283232392c3230322c3134322c2e3129:hsl(var(--mode-hue) 62.59% 72.75% / 0.1);
--warm-23653963613738:hsl(var(--mode-hue) 71.97% 69.22% / 1);
--warm-23643961653463:hsl(var(--mode-hue) 64.98% 57.45% / 1);
--warm-72676261283232362c203138372c2038332c202e3629:hsl(var(--mode-hue) 71.14% 60.59% / 0.6);
--warm-72676261283232302c203138342c2038372c202e3829:hsl(var(--mode-hue) 65.52% 60.20% / 0.8);
--warm-23663264323765:hsl(var(--mode-hue) 81.69% 72.16% / 1);
--warm-23623961343737:hsl(var(--mode-hue) 32.04% 59.61% / 1);
--warm-72676261283230352c203137312c2039342c202e353829:hsl(var(--mode-hue) 52.61% 58.63% / 0.58);
--warm-726762612839312c2037302c2033302c202e323829:hsl(var(--mode-hue) 50.41% 23.73% / 0.28);
--warm-72676261283232352c203139342c203132352c202e333829:hsl(var(--mode-hue) 62.50% 68.63% / 0.38);
--warm-72676261283232322c203139302c203131392c202e303829:hsl(var(--mode-hue) 60.95% 66.86% / 0.08);
--warm-23643661653535:hsl(var(--mode-hue) 61.14% 58.63% / 1);
--warm-23666666336366:hsl(var(--mode-hue) 100.00% 90.59% / 1);
--warm-23616161343939:hsl(var(--mode-hue) 9.09% 63.33% / 1);
--warm-23643962353635:hsl(var(--mode-hue) 60.42% 62.35% / 1);
--warm-23666666376463:hsl(var(--mode-hue) 100.00% 93.14% / 1);
--warm-23633939633364:hsl(var(--mode-hue) 56.45% 51.37% / 1);
--warm-72676261283137352c3133372c36342c2e303729:hsl(var(--mode-hue) 46.44% 46.86% / 0.07);
--warm-72676261283232392c203230322c203134322c202e333429:hsl(var(--mode-hue) 62.59% 72.75% / 0.34);
--warm-23643761643531:hsl(var(--mode-hue) 62.62% 58.04% / 1);
--warm-23666666336431:hsl(var(--mode-hue) 100.00% 90.98% / 1);
--warm-72676261283232302c203138322c2039382c202e313729:hsl(var(--mode-hue) 63.54% 62.35% / 0.17);
--warm-23633862666165:hsl(var(--mode-hue) 19.12% 73.33% / 1);
--warm-23666666616630:hsl(var(--mode-hue) 100.00% 97.06% / 1);
--warm-23643461613530:hsl(var(--mode-hue) 60.55% 57.25% / 1);
--warm-23386636393239:hsl(var(--mode-hue) 55.43% 36.08% / 1);
--warm-23313631313061:hsl(var(--mode-hue) 37.50% 6.27% / 1);
--warm-72676261283231312c203137302c2038302c202e3329:hsl(var(--mode-hue) 59.82% 57.06% / 0.3);
--warm-23653863313664:hsl(var(--mode-hue) 72.78% 66.86% / 1);
--warm-23396237313330:hsl(var(--mode-hue) 52.71% 39.80% / 1);
--warm-23316231343061:hsl(var(--mode-hue) 45.95% 7.25% / 1);
--warm-23313731313061:hsl(var(--mode-hue) 39.39% 6.47% / 1);
--warm-23663564646230:hsl(var(--mode-hue) 77.53% 82.55% / 1);
--warm-72676261283231302c3136392c38332c2e343229:hsl(var(--mode-hue) 58.53% 57.45% / 0.42);
--warm-23666666396539:hsl(var(--mode-hue) 100.00% 95.69% / 1);
--warm-72676261283231372c3138312c3130312c2e313229:hsl(var(--mode-hue) 60.42% 62.35% / 0.12);
--warm-72676261283135342c3131392c35302c2e30353529:hsl(var(--mode-hue) 50.98% 40.00% / 0.055);
--warm-72676261283232392c203230322c203134322c202e3329:hsl(var(--mode-hue) 62.59% 72.75% / 0.3);
--warm-72676261283235352c3234382c3232362c2e373829:hsl(var(--mode-hue) 100.00% 94.31% / 0.78);
--warm-72676261283232392c3230322c3134322c2e323229:hsl(var(--mode-hue) 62.59% 72.75% / 0.22);
--warm-72676261283233392c3231312c3134352c2e373229:hsl(var(--mode-hue) 74.60% 75.29% / 0.72);
--warm-72676261283137302c3132382c34352c2e3129:hsl(var(--mode-hue) 58.14% 42.16% / 0.1);
--warm-72676261283231392c3138322c39372c2e313329:hsl(var(--mode-hue) 62.89% 61.96% / 0.13);
--warm-726762612833382c33322c32312c2e393629:hsl(var(--mode-hue) 28.81% 11.57% / 0.96);
--warm-72676261283231302c3136392c38332c2e313229:hsl(var(--mode-hue) 58.53% 57.45% / 0.12);
--warm-726762612832382c32332c31352c2e383229:hsl(var(--mode-hue) 30.23% 8.43% / 0.82);
--warm-23653663363666:hsl(var(--mode-hue) 70.41% 66.86% / 1);
--warm-72676261283139302c3134372c36332c2e313629:hsl(var(--mode-hue) 50.20% 49.61% / 0.16);
--warm-72676261283232302c3138312c39362c2e3229:hsl(var(--mode-hue) 63.92% 61.96% / 0.2);
--warm-72676261283232392c203230322c203134322c202e333829:hsl(var(--mode-hue) 62.59% 72.75% / 0.38);
--warm-72676261283231302c3136392c38332c2e303829:hsl(var(--mode-hue) 58.53% 57.45% / 0.08);
--warm-23643864316331:hsl(var(--mode-hue) 22.77% 80.20% / 1);
--warm-72676261283232352c203139342c203132352c202e343229:hsl(var(--mode-hue) 62.50% 68.63% / 0.42);
--warm-72676261283232392c3230322c3134322c2e333429:hsl(var(--mode-hue) 62.59% 72.75% / 0.34);
--warm-23656565376438:hsl(var(--mode-hue) 39.29% 89.02% / 1);
--warm-72676261283230342c3136332c38332c2e313229:hsl(var(--mode-hue) 54.26% 56.27% / 0.12);
--warm-72676261283232392c3230322c3134322c2e3629:hsl(var(--mode-hue) 62.59% 72.75% / 0.6);
--warm-23643063346161:hsl(var(--mode-hue) 28.79% 74.12% / 1);
--warm-72676261283235352c3234362c3231392c2e313729:hsl(var(--mode-hue) 100.00% 92.94% / 0.17);
--warm-72676261283230342c3136332c38332c2e313329:hsl(var(--mode-hue) 54.26% 56.27% / 0.13);
--warm-72676261283232392c3230322c3134322c2e353529:hsl(var(--mode-hue) 62.59% 72.75% / 0.55);
--warm-72676261283230342c3136332c38332c2e303929:hsl(var(--mode-hue) 54.26% 56.27% / 0.09);
--warm-23663164313863:hsl(var(--mode-hue) 78.29% 74.71% / 1);
--warm-726762612834322c33362c32352c2e373829:hsl(var(--mode-hue) 25.37% 13.14% / 0.78);
--warm-72676261283232392c3139302c39352c2e383529:hsl(var(--mode-hue) 72.04% 63.53% / 0.85);
--warm-23666666356339:hsl(var(--mode-hue) 100.00% 89.41% / 1);
--warm-23643861383365:hsl(var(--mode-hue) 66.38% 54.51% / 1);
--warm-23373835343163:hsl(var(--mode-hue) 62.16% 29.02% / 1);
--warm-72676261283232372c3138312c37392c2e3729:hsl(var(--mode-hue) 72.55% 60.00% / 0.7);
--warm-72676261283231332c3136322c35372c2e323529:hsl(var(--mode-hue) 65.00% 52.94% / 0.25);
--warm-72676261283235352c3232362c3135312c2e393529:hsl(var(--mode-hue) 100.00% 79.61% / 0.95);
--warm-72676261283231332c3136322c35372c2e343229:hsl(var(--mode-hue) 65.00% 52.94% / 0.42);
--warm-23656665346364:hsl(var(--mode-hue) 51.52% 87.06% / 1);
--warm-72676261283230342c3136332c38332c2e313429:hsl(var(--mode-hue) 54.26% 56.27% / 0.14);
--warm-23653062643663:hsl(var(--mode-hue) 65.17% 65.10% / 1);
--warm-72676261283230352c203136362c2039312c202e343229:hsl(var(--mode-hue) 53.27% 58.04% / 0.42);
--warm-72676261283137332c203132342c2035302c202e313229:hsl(var(--mode-hue) 55.16% 43.73% / 0.12);
--warm-72676261283230352c203136362c2039312c202e333429:hsl(var(--mode-hue) 53.27% 58.04% / 0.34);
--warm-72676261283137332c203132342c2035302c202e303829:hsl(var(--mode-hue) 55.16% 43.73% / 0.08);
--warm-72676261283235352c203233392c203139392c202e313329:hsl(var(--mode-hue) 100.00% 89.02% / 0.13);
--warm-72676261283139382c203135342c2037322c202e30383529:hsl(var(--mode-hue) 52.50% 52.94% / 0.085);
--warm-726762612839362c2037302c2032362c202e30333529:hsl(var(--mode-hue) 57.38% 23.92% / 0.035);
--warm-72676261283139362c203135312c2036352c202e313229:hsl(var(--mode-hue) 52.61% 51.18% / 0.12);
--warm-72676261283133372c2039362c2033312c202e303729:hsl(var(--mode-hue) 63.10% 32.94% / 0.07);
--warm-726762612836332c2034342c2031342c202e30323829:hsl(var(--mode-hue) 63.64% 15.10% / 0.028);
--warm-72676261283235352c3231352c3130342c2e323629:hsl(var(--mode-hue) 100.00% 70.39% / 0.26);
--warm-72676261283235352c3231352c3130342c2e3729:hsl(var(--mode-hue) 100.00% 70.39% / 0.7);
--warm-72676261283235352c3231352c3130342c2e3229:hsl(var(--mode-hue) 100.00% 70.39% / 0.2);
--warm-72676261283235352c3231352c3130342c2e303729:hsl(var(--mode-hue) 100.00% 70.39% / 0.07);
--warm-72676261283233392c3231312c3134352c2e373629:hsl(var(--mode-hue) 74.60% 75.29% / 0.76);
--warm-23643963313861:hsl(var(--mode-hue) 50.97% 69.61% / 1);
--warm-23633663326238:hsl(var(--mode-hue) 10.94% 74.90% / 1);
--warm-72676261283232392c3139302c39352c2e363829:hsl(var(--mode-hue) 72.04% 63.53% / 0.68);
--warm-72676261283231332c3136322c35372c2e3229:hsl(var(--mode-hue) 65.00% 52.94% / 0.2);
--warm-726762612833362c32392c31372c2e373829:hsl(var(--mode-hue) 35.85% 10.39% / 0.78);
--warm-72676261283232392c3230322c3134322c2e333829:hsl(var(--mode-hue) 62.59% 72.75% / 0.38);
--warm-726762612832352c32302c31332c2e373429:hsl(var(--mode-hue) 31.58% 7.45% / 0.74);
--warm-23623339633639:hsl(var(--mode-hue) 32.74% 55.69% / 1);
--warm-72676261283235352c3234352c3230382c2e3529:hsl(var(--mode-hue) 100.00% 90.78% / 0.5);
--warm-23313731323061:hsl(var(--mode-hue) 39.39% 6.47% / 1);
--warm-23663264353766:hsl(var(--mode-hue) 81.56% 72.35% / 1);
--warm-23633939353338:hsl(var(--mode-hue) 57.31% 50.39% / 1);
--warm-72676261283232362c3138372c38332c2e353829:hsl(var(--mode-hue) 71.14% 60.59% / 0.58);
--warm-72676261283232352c203138392c203130342c202e333829:hsl(var(--mode-hue) 66.85% 64.51% / 0.38);
--warm-72676261283230382c3136362c37362c2e3129:hsl(var(--mode-hue) 58.41% 55.69% / 0.1);
--warm-23646464376361:hsl(var(--mode-hue) 21.84% 82.94% / 1);
--warm-72676261283232352c3138392c3130342c2e333229:hsl(var(--mode-hue) 66.85% 64.51% / 0.32);
--warm-72676261283232352c3138392c3130342c2e303829:hsl(var(--mode-hue) 66.85% 64.51% / 0.08);
--warm-23386638613830:hsl(var(--mode-hue) 6.28% 53.14% / 1);
--warm-726762612833352c33312c32332c2e373229:hsl(var(--mode-hue) 20.69% 11.37% / 0.72);
--warm-72676261283232352c3138392c3130342c2e323429:hsl(var(--mode-hue) 66.85% 64.51% / 0.24);
--warm-72676261283232392c3230322c3134322c2e363529:hsl(var(--mode-hue) 62.59% 72.75% / 0.65);
--warm-72676261283230322c3136312c37392c2e313629:hsl(var(--mode-hue) 53.71% 55.10% / 0.16);
--warm-23373436663636:hsl(var(--mode-hue) 6.42% 42.75% / 1);
--warm-72676261283232352c3138392c3130342c2e3329:hsl(var(--mode-hue) 66.85% 64.51% / 0.3);
--warm-23643963363932:hsl(var(--mode-hue) 48.30% 71.18% / 1);
--warm-72676261283139302c3134372c36332c2e303829:hsl(var(--mode-hue) 50.20% 49.61% / 0.08);
--warm-23393939333838:hsl(var(--mode-hue) 7.69% 56.67% / 1);
--warm-23653064376334:hsl(var(--mode-hue) 31.11% 82.35% / 1);
--warm-23383437663736:hsl(var(--mode-hue) 5.60% 49.02% / 1);
--warm-72676261283231342c3137332c38302c2e313629:hsl(var(--mode-hue) 62.04% 57.65% / 0.16);
--warm-23643562363664:hsl(var(--mode-hue) 55.32% 63.14% / 1);
--warm-23633963346239:hsl(var(--mode-hue) 12.90% 75.69% / 1);
--warm-72676261283232352c3138392c3130342c2e313829:hsl(var(--mode-hue) 66.85% 64.51% / 0.18);
--warm-23653563383765:hsl(var(--mode-hue) 66.45% 69.61% / 1);
--warm-72676261283231332c3137342c38342c2e3229:hsl(var(--mode-hue) 60.56% 58.24% / 0.2);
--warm-23393238643833:hsl(var(--mode-hue) 6.44% 54.31% / 1);
--warm-23643562353566:hsl(var(--mode-hue) 58.42% 60.39% / 1);
--warm-72676261283231332c3138312c39352c2e313629:hsl(var(--mode-hue) 58.42% 60.39% / 0.16);
--warm-23393739313838:hsl(var(--mode-hue) 6.73% 56.27% / 1);
--warm-72676261283232352c3138392c3130342c2e333429:hsl(var(--mode-hue) 66.85% 64.51% / 0.34);
--warm-72676261283232352c3138392c3130342c2e30373529:hsl(var(--mode-hue) 66.85% 64.51% / 0.075);
--warm-23643161643539:hsl(var(--mode-hue) 56.60% 58.43% / 1);
--warm-72676261283232352c3138392c3130342c2e333529:hsl(var(--mode-hue) 66.85% 64.51% / 0.35);
--warm-23663064323861:hsl(var(--mode-hue) 77.27% 74.12% / 1);
--warm-72676261283234352c3231342c3134322c2e313629:hsl(var(--mode-hue) 83.74% 75.88% / 0.16);
--warm-72676261283136342c3131392c33362c2e303629:hsl(var(--mode-hue) 64.00% 39.22% / 0.06);
--warm-23396539383865:hsl(var(--mode-hue) 7.62% 58.82% / 1);
--warm-72676261283232352c3138392c3130342c2e30343529:hsl(var(--mode-hue) 66.85% 64.51% / 0.045);
--warm-23633861323464:hsl(var(--mode-hue) 52.79% 54.31% / 1);
--warm-72676261283232352c3138392c3130342c2e313529:hsl(var(--mode-hue) 66.85% 64.51% / 0.15);
--warm-23393138633833:hsl(var(--mode-hue) 5.98% 54.12% / 1);
--warm-23633062626231:hsl(var(--mode-hue) 10.64% 72.35% / 1);
--warm-72676261283232352c3138392c3130342c2e313229:hsl(var(--mode-hue) 66.85% 64.51% / 0.12);
--warm-72676261283232352c3138392c3130342c2e30363529:hsl(var(--mode-hue) 66.85% 64.51% / 0.065);
--warm-23616161343961:hsl(var(--mode-hue) 8.60% 63.53% / 1);
--warm-23653963623765:hsl(var(--mode-hue) 70.86% 70.39% / 1);
--warm-23633761363561:hsl(var(--mode-hue) 49.32% 56.67% / 1);
--warm-72676261283232352c3138392c3130342c2e3129:hsl(var(--mode-hue) 66.85% 64.51% / 0.1);
--warm-72676261283232352c3138392c3130342c2e343229:hsl(var(--mode-hue) 66.85% 64.51% / 0.42);
--warm-72676261283232352c3138392c3130342c2e303929:hsl(var(--mode-hue) 66.85% 64.51% / 0.09);
--warm-23663465666535:hsl(var(--mode-hue) 40.54% 92.75% / 1);
--warm-23383738313738:hsl(var(--mode-hue) 5.88% 50.00% / 1);
--warm-72676261283232352c3138392c3130342c2e313329:hsl(var(--mode-hue) 66.85% 64.51% / 0.13);
--warm-72676261283232352c3138392c3130342c2e323329:hsl(var(--mode-hue) 66.85% 64.51% / 0.23);
--warm-23626362356137:hsl(var(--mode-hue) 13.55% 69.61% / 1);
--warm-72676261283232352c3138392c3130342c2e353829:hsl(var(--mode-hue) 66.85% 64.51% / 0.58);
--warm-72676261283232352c3138392c3130342c2e30383529:hsl(var(--mode-hue) 66.85% 64.51% / 0.085);
--warm-23653763363666:hsl(var(--mode-hue) 71.43% 67.06% / 1);
--warm-72676261283232352c3138392c3130342c2e333829:hsl(var(--mode-hue) 66.85% 64.51% / 0.38);
--warm-23663564633961:hsl(var(--mode-hue) 81.98% 78.24% / 1);
--warm-23663566316538:hsl(var(--mode-hue) 39.39% 93.53% / 1);
--warm-23393238633832:hsl(var(--mode-hue) 6.84% 54.12% / 1);
--warm-23386638393766:hsl(var(--mode-hue) 6.67% 52.94% / 1);
--warm-23386638393765:hsl(var(--mode-hue) 7.05% 52.75% / 1);
--warm-23316231363063:hsl(var(--mode-hue) 38.46% 7.65% / 1);
--warm-23663164383934:hsl(var(--mode-hue) 76.86% 76.27% / 1);
--warm-23633939623433:hsl(var(--mode-hue) 55.37% 52.55% / 1);
--warm-72676261283230302c3135362c36362c2e313629:hsl(var(--mode-hue) 54.92% 52.16% / 0.16);
--warm-23633863316234:hsl(var(--mode-hue) 15.38% 74.51% / 1);
--warm-72676261283232352c3138392c3130342c2e363829:hsl(var(--mode-hue) 66.85% 64.51% / 0.68);
--warm-72676261283234302c3231312c3133392c2e363529:hsl(var(--mode-hue) 77.10% 74.31% / 0.65);
--warm-72676261283230322c3136312c37392c2e313529:hsl(var(--mode-hue) 53.71% 55.10% / 0.15);
--warm-23396339363862:hsl(var(--mode-hue) 7.91% 57.84% / 1);
--warm-23653564376235:hsl(var(--mode-hue) 48.00% 80.39% / 1);
--warm-23643862643735:hsl(var(--mode-hue) 55.93% 65.29% / 1);
--warm-23373737313638:hsl(var(--mode-hue) 6.73% 43.73% / 1);
--warm-23663265646533:hsl(var(--mode-hue) 36.59% 91.96% / 1);
--warm-23386338363763:hsl(var(--mode-hue) 6.50% 51.76% / 1);
--warm-23646662643637:hsl(var(--mode-hue) 65.22% 63.92% / 1);
--warm-72676261283232352c3138392c3130342c2e3229:hsl(var(--mode-hue) 66.85% 64.51% / 0.2);
--warm-72676261283232352c3138392c3130342c2e313729:hsl(var(--mode-hue) 66.85% 64.51% / 0.17);
--warm-72676261283230382c3136362c37362c2e313329:hsl(var(--mode-hue) 58.41% 55.69% / 0.13);
--warm-23663063663739:hsl(var(--mode-hue) 79.87% 70.78% / 1);
--warm-23386538383765:hsl(var(--mode-hue) 6.61% 52.55% / 1);
--warm-72676261283232392c3230322c3134322c2e303829:hsl(var(--mode-hue) 62.59% 72.75% / 0.08);
--warm-23663164343839:hsl(var(--mode-hue) 78.79% 74.12% / 1);
--warm-72676261283234352c3231342c3134322c2e313829:hsl(var(--mode-hue) 83.74% 75.88% / 0.18);
--warm-23633961393536:hsl(var(--mode-hue) 51.57% 56.27% / 1);
--warm-23653563613865:hsl(var(--mode-hue) 62.59% 72.75% / 1);
--warm-23663164666230:hsl(var(--mode-hue) 69.89% 81.76% / 1);
--warm-23626439313338:hsl(var(--mode-hue) 54.29% 48.04% / 1);
--warm-23313831343062:hsl(var(--mode-hue) 37.14% 6.86% / 1);
--warm-23666666306339:hsl(var(--mode-hue) 100.00% 89.41% / 1);
--warm-72676261283230322c3136312c37392c2e313729:hsl(var(--mode-hue) 53.71% 55.10% / 0.17);
--warm-23653865316434:hsl(var(--mode-hue) 30.30% 87.06% / 1);
--warm-72676261283232392c3230322c3134322c2e30353529:hsl(var(--mode-hue) 62.59% 72.75% / 0.055);
--warm-23646464326261:hsl(var(--mode-hue) 33.98% 79.80% / 1);
--warm-72676261283232352c3138392c3130342c2e3429:hsl(var(--mode-hue) 66.85% 64.51% / 0.4);
--warm-23616138623439:hsl(var(--mode-hue) 39.92% 47.65% / 1);
--warm-23323031623131:hsl(var(--mode-hue) 30.61% 9.61% / 1);
--warm-23653963623835:hsl(var(--mode-hue) 69.44% 71.76% / 1);
--warm-23643962643738:hsl(var(--mode-hue) 56.07% 66.08% / 1);
--warm-72676261283232312c3137362c37312c2e313529:hsl(var(--mode-hue) 68.81% 57.25% / 0.15);
--warm-23366335393332:hsl(var(--mode-hue) 36.71% 30.98% / 1);
--warm-23663065316264:hsl(var(--mode-hue) 62.96% 84.12% / 1);
--warm-23613961323934:hsl(var(--mode-hue) 10.88% 62.16% / 1);
--warm-72676261283230322c3137302c39382c2e3229:hsl(var(--mode-hue) 49.52% 58.82% / 0.2);
--warm-726762612834332c33352c32312c2e363229:hsl(var(--mode-hue) 34.38% 12.55% / 0.62);
--warm-72676261283230322c3137302c39382c2e3129:hsl(var(--mode-hue) 49.52% 58.82% / 0.1);
--warm-72676261283230322c3137302c39382c2e333829:hsl(var(--mode-hue) 49.52% 58.82% / 0.38);
--warm-23643462373735:hsl(var(--mode-hue) 52.49% 64.51% / 1);
--warm-23663065616465:hsl(var(--mode-hue) 37.50% 90.59% / 1);
--warm-23636363346234:hsl(var(--mode-hue) 19.05% 75.29% / 1);
--warm-23393738663830:hsl(var(--mode-hue) 9.96% 54.71% / 1);
--warm-23613538613530:hsl(var(--mode-hue) 34.69% 48.04% / 1);
--warm-23323932323135:hsl(var(--mode-hue) 32.26% 12.16% / 1);
--warm-23663164626161:hsl(var(--mode-hue) 71.72% 80.59% / 1);
--warm-23626661363637:hsl(var(--mode-hue) 40.74% 57.65% / 1);
--warm-23623538623338:hsl(var(--mode-hue) 52.74% 46.47% / 1);
--warm-23663765396239:hsl(var(--mode-hue) 79.49% 84.71% / 1);
--warm-23633339623462:hsl(var(--mode-hue) 50.00% 52.94% / 1);
--warm-23666666396466:hsl(var(--mode-hue) 100.00% 93.73% / 1);
--warm-23643362333639:hsl(var(--mode-hue) 54.64% 61.96% / 1);
--warm-72676261283233322c3139312c3130342c2e323529:hsl(var(--mode-hue) 73.56% 65.88% / 0.25);
--warm-23386337333364:hsl(var(--mode-hue) 39.30% 39.41% / 1);
--warm-72676261283232392c3230322c3134322c2e3329:hsl(var(--mode-hue) 62.59% 72.75% / 0.3);
--warm-72676261283231362c3137382c39322c2e303429:hsl(var(--mode-hue) 61.39% 60.39% / 0.04);
--warm-72676261283231362c3137382c39322c2e333529:hsl(var(--mode-hue) 61.39% 60.39% / 0.35);
--warm-23643562353639:hsl(var(--mode-hue) 56.25% 62.35% / 1);
--warm-72676261283231362c3137382c39322c2e303929:hsl(var(--mode-hue) 61.39% 60.39% / 0.09);
--warm-23386337323337:hsl(var(--mode-hue) 43.59% 38.24% / 1);
--warm-72676261283231332c3137362c38322c2e3229:hsl(var(--mode-hue) 60.93% 57.84% / 0.2);
--warm-23323331653131:hsl(var(--mode-hue) 34.62% 10.20% / 1);
--warm-23646262353565:hsl(var(--mode-hue) 63.45% 61.37% / 1);
--warm-23383537303362:hsl(var(--mode-hue) 38.54% 37.65% / 1);
--warm-23613438313335:hsl(var(--mode-hue) 51.15% 42.55% / 1);
--warm-23653663353731:hsl(var(--mode-hue) 70.06% 67.25% / 1);
--warm-23663564633964:hsl(var(--mode-hue) 81.48% 78.82% / 1);
--warm-72676261283231302c3137362c39392c2e323829:hsl(var(--mode-hue) 55.22% 60.59% / 0.28);
--warm-726762612838302c36332c32352c2e313829:hsl(var(--mode-hue) 52.38% 20.59% / 0.18);
--warm-23656164376161:hsl(var(--mode-hue) 60.38% 79.22% / 1);
--warm-23616261353939:hsl(var(--mode-hue) 9.68% 63.53% / 1);
--warm-23656663663830:hsl(var(--mode-hue) 77.62% 71.96% / 1);
--warm-23643862343637:hsl(var(--mode-hue) 59.16% 62.55% / 1);
--warm-23656664646135:hsl(var(--mode-hue) 69.81% 79.22% / 1);
--warm-23626138663339:hsl(var(--mode-hue) 53.09% 47.65% / 1);
--warm-23323031393039:hsl(var(--mode-hue) 56.10% 8.04% / 1);
--warm-72676261283231312c3138352c3132352c2e323529:hsl(var(--mode-hue) 49.43% 65.88% / 0.25);
--warm-23623161383930:hsl(var(--mode-hue) 17.46% 62.94% / 1);
--warm-23663865396264:hsl(var(--mode-hue) 80.82% 85.69% / 1);
--warm-23613038373465:hsl(var(--mode-hue) 34.45% 46.67% / 1);
--warm-23663665656462:hsl(var(--mode-hue) 60.00% 91.18% / 1);
--warm-23323432313136:hsl(var(--mode-hue) 24.14% 11.37% / 1);
--warm-23633861363533:hsl(var(--mode-hue) 51.54% 55.49% / 1);
--warm-236133386135303535:hsl(var(--mode-hue) 34.16% 47.65% / 0.3333333333333333);
--warm-23666663653334:hsl(var(--mode-hue) 100.00% 60.20% / 1);
--warm-236634633434373737:hsl(var(--mode-hue) 88.72% 61.76% / 0.4666666666666667);
--warm-23663465336234:hsl(var(--mode-hue) 74.42% 83.14% / 1);
--warm-23623238613332:hsl(var(--mode-hue) 56.14% 44.71% / 1);
--warm-23316631393063:hsl(var(--mode-hue) 44.19% 8.43% / 1);
--warm-23646463343765:hsl(var(--mode-hue) 58.28% 68.04% / 1);
--warm-236133386135303737:hsl(var(--mode-hue) 34.16% 47.65% / 0.4666666666666667);
--warm-23656565316264:hsl(var(--mode-hue) 59.04% 83.73% / 1);
--warm-23646162393637:hsl(var(--mode-hue) 60.85% 62.94% / 1);
--warm-72676261283232342c3230352c3135382c2e343229:hsl(var(--mode-hue) 51.56% 74.90% / 0.42);
--warm-23653664386237:hsl(var(--mode-hue) 48.45% 80.98% / 1);
--warm-23643762373566:hsl(var(--mode-hue) 60.00% 60.78% / 1);
--warm-23666666356437:hsl(var(--mode-hue) 100.00% 92.16% / 1);
--warm-726762612836382c35332c32312c2e373229:hsl(var(--mode-hue) 52.81% 17.45% / 0.72);
--warm-23663464353765:hsl(var(--mode-hue) 84.29% 72.55% / 1);
--warm-23653863373735:hsl(var(--mode-hue) 71.43% 68.43% / 1);
--warm-23663764303637:hsl(var(--mode-hue) 90.00% 68.63% / 1);
--warm-23383037303532:hsl(var(--mode-hue) 21.90% 41.18% / 1);
--warm-23636663326137:hsl(var(--mode-hue) 29.41% 73.33% / 1);
--warm-23396338363437:hsl(var(--mode-hue) 37.44% 44.51% / 1);
--warm-23386437353432:hsl(var(--mode-hue) 36.23% 40.59% / 1);
--warm-23656565346361:hsl(var(--mode-hue) 51.43% 86.27% / 1);
--warm-23656463623766:hsl(var(--mode-hue) 75.34% 71.37% / 1);
--warm-233864373534323636:hsl(var(--mode-hue) 36.23% 40.59% / 0.4);
--warm-236232393335333636:hsl(var(--mode-hue) 38.15% 51.18% / 0.4);
--warm-23653965336437:hsl(var(--mode-hue) 29.03% 87.84% / 1);
--warm-236435623636353230:hsl(var(--mode-hue) 57.14% 61.57% / 0.12549019607843137);
--warm-23663664383862:hsl(var(--mode-hue) 85.60% 75.49% / 1);
--warm-23643562363635:hsl(var(--mode-hue) 57.14% 61.57% / 1);
--warm-236232393335333364:hsl(var(--mode-hue) 38.15% 51.18% / 0.23921568627450981);
--warm-23616161343936:hsl(var(--mode-hue) 10.53% 62.75% / 1);
--warm-23323432303136:hsl(var(--mode-hue) 24.14% 11.37% / 1);
--warm-23663164353866:hsl(var(--mode-hue) 77.78% 75.29% / 1);
--warm-23616638663437:hsl(var(--mode-hue) 42.28% 48.24% / 1);
--warm-23663063663732:hsl(var(--mode-hue) 80.77% 69.41% / 1);
--warm-23663463613432:hsl(var(--mode-hue) 89.00% 60.78% / 1);
--warm-23363535323164:hsl(var(--mode-hue) 55.38% 25.49% / 1);
--warm-23656463333438:hsl(var(--mode-hue) 82.09% 60.59% / 1);
--warm-23666665333934:hsl(var(--mode-hue) 100.00% 79.02% / 1);
--warm-23323932323065:hsl(var(--mode-hue) 49.09% 10.78% / 1);
--warm-233931373633343636:hsl(var(--mode-hue) 47.21% 38.63% / 0.4);
--warm-233234316631323434:hsl(var(--mode-hue) 33.33% 10.59% / 0.26666666666666666);
--warm-23626462333961:hsl(var(--mode-hue) 20.96% 67.25% / 1);
--warm-23353734373163:hsl(var(--mode-hue) 51.30% 22.55% / 1);
--warm-23623838623231:hsl(var(--mode-hue) 69.59% 42.55% / 1);
--warm-23666664663631:hsl(var(--mode-hue) 100.00% 69.02% / 1);
--warm-236236396133633333:hsl(var(--mode-hue) 50.41% 47.45% / 0.2);
--warm-23396339363838:hsl(var(--mode-hue) 9.17% 57.25% / 1);
--warm-23656463613634:hsl(var(--mode-hue) 79.19% 66.08% / 1);
--warm-23653663313665:hsl(var(--mode-hue) 70.59% 66.67% / 1);
--warm-236538626534663330:hsl(var(--mode-hue) 76.88% 60.98% / 0.18823529411764706);
--warm-23656565386439:hsl(var(--mode-hue) 38.18% 89.22% / 1);
--warm-23323932353161:hsl(var(--mode-hue) 22.39% 13.14% / 1);
--warm-23616138653465:hsl(var(--mode-hue) 37.10% 48.63% / 1);
--warm-23323532313137:hsl(var(--mode-hue) 23.33% 11.76% / 1);
--warm-23633961643638:hsl(var(--mode-hue) 47.32% 59.80% / 1);
--warm-23663765646437:hsl(var(--mode-hue) 66.67% 90.59% / 1);
--warm-23636563376236:hsl(var(--mode-hue) 19.67% 76.08% / 1);
--warm-23653263343738:hsl(var(--mode-hue) 64.63% 67.84% / 1);
--warm-23663164646162:hsl(var(--mode-hue) 71.43% 80.78% / 1);
--warm-23623638643334:hsl(var(--mode-hue) 55.56% 45.88% / 1);
--warm-23316231363061:hsl(var(--mode-hue) 45.95% 7.25% / 1);
--warm-236136396137373361:hsl(var(--mode-hue) 20.89% 55.88% / 0.22745098039215686);
--warm-23616161313865:hsl(var(--mode-hue) 14.14% 61.18% / 1);
--warm-23666666326330:hsl(var(--mode-hue) 100.00% 87.65% / 1);
--warm-23663164343838:hsl(var(--mode-hue) 78.95% 73.92% / 1);
--warm-236161386534653830:hsl(var(--mode-hue) 37.10% 48.63% / 0.5019607843137255);
--warm-23633962393865:hsl(var(--mode-hue) 35.33% 67.25% / 1);
--warm-23386437343265:hsl(var(--mode-hue) 50.80% 36.67% / 1);
--warm-23323732323133:hsl(var(--mode-hue) 34.48% 11.37% / 1);
--warm-23653863373638:hsl(var(--mode-hue) 73.56% 65.88% / 1);
--warm-236433616434303232:hsl(var(--mode-hue) 62.55% 53.92% / 0.13333333333333333);
--warm-23363135313265:hsl(var(--mode-hue) 35.66% 28.04% / 1);
--warm-23653864636261:hsl(var(--mode-hue) 50.00% 81.96% / 1);
--warm-23643962393564:hsl(var(--mode-hue) 62.00% 60.78% / 1);
--warm-23633761643638:hsl(var(--mode-hue) 45.89% 59.41% / 1);
--warm-23616161313863:hsl(var(--mode-hue) 15.00% 60.78% / 1);
--warm-72676261283232352c3138392c3130342c2e323629:hsl(var(--mode-hue) 66.85% 64.51% / 0.26);
--warm-23623962316130:hsl(var(--mode-hue) 15.15% 67.65% / 1);
--warm-23366535613331:hsl(var(--mode-hue) 38.36% 31.18% / 1);
--warm-23663063663738:hsl(var(--mode-hue) 80.00% 70.59% / 1);
--warm-236430613634353132:hsl(var(--mode-hue) 59.66% 54.31% / 0.07058823529411765);
--warm-23656565366432:hsl(var(--mode-hue) 45.16% 87.84% / 1);
--warm-23323932343139:hsl(var(--mode-hue) 24.24% 12.94% / 1);
--warm-23353034363331:hsl(var(--mode-hue) 24.03% 25.29% / 1);
--warm-23613539623836:hsl(var(--mode-hue) 14.69% 58.63% / 1);
--warm-23386537383366:hsl(var(--mode-hue) 38.54% 40.20% / 1);
--warm-23323732323137:hsl(var(--mode-hue) 25.81% 12.16% / 1);
--warm-23346134303262:hsl(var(--mode-hue) 26.50% 22.94% / 1);
--warm-23643862383632:hsl(var(--mode-hue) 60.20% 61.57% / 1);
--warm-23666665303731:hsl(var(--mode-hue) 100.00% 72.16% / 1);
--warm-23636161303436:hsl(var(--mode-hue) 55.46% 53.33% / 1);
--warm-23313731333039:hsl(var(--mode-hue) 43.75% 6.27% / 1);
--warm-23666665393938:hsl(var(--mode-hue) 100.00% 79.80% / 1);
--warm-23646262343535:hsl(var(--mode-hue) 65.05% 59.61% / 1);
--warm-23363535333333:hsl(var(--mode-hue) 32.89% 29.80% / 1);
--warm-23643563366137:hsl(var(--mode-hue) 35.38% 74.51% / 1);
--warm-23623839353438:hsl(var(--mode-hue) 44.09% 50.20% / 1);
--warm-23633862636132:hsl(var(--mode-hue) 25.68% 70.98% / 1);
--warm-23353534393266:hsl(var(--mode-hue) 28.79% 25.88% / 1);
--warm-23633662636138:hsl(var(--mode-hue) 20.83% 71.76% / 1);
--warm-23666666346439:hsl(var(--mode-hue) 100.00% 92.55% / 1);
--warm-23643763626165:hsl(var(--mode-hue) 33.88% 76.27% / 1);
--warm-23623961633865:hsl(var(--mode-hue) 23.50% 64.12% / 1);
--warm-23373236643631:hsl(var(--mode-hue) 8.06% 41.37% / 1);
--warm-23656565346364:hsl(var(--mode-hue) 49.25% 86.86% / 1);
--warm-23386537343432:hsl(var(--mode-hue) 36.54% 40.78% / 1);
--warm-23653563383738:hsl(var(--mode-hue) 67.70% 68.43% / 1);
--warm-23613038333439:hsl(var(--mode-hue) 37.34% 45.69% / 1);
--warm-23333332613138:hsl(var(--mode-hue) 36.00% 14.71% / 1);
--warm-23663164393964:hsl(var(--mode-hue) 75.00% 78.04% / 1);
--warm-23643661633464:hsl(var(--mode-hue) 62.56% 57.06% / 1);
--warm-23313731333062:hsl(var(--mode-hue) 35.29% 6.67% / 1);
--warm-23663064646139:hsl(var(--mode-hue) 70.30% 80.20% / 1);
--warm-23373135643335:hsl(var(--mode-hue) 36.14% 32.55% / 1);
--warm-23323131633132:hsl(var(--mode-hue) 29.41% 10.00% / 1);
--warm-23393237373433:hsl(var(--mode-hue) 37.09% 41.76% / 1);
--warm-23363535353334:hsl(var(--mode-hue) 32.03% 30.00% / 1);
--warm-23623661623931:hsl(var(--mode-hue) 20.22% 64.12% / 1);
--warm-23323732323136:hsl(var(--mode-hue) 27.87% 11.96% / 1);
--warm-23373936343364:hsl(var(--mode-hue) 32.97% 35.69% / 1);
--warm-23616161303861:hsl(var(--mode-hue) 15.84% 60.39% / 1);
--warm-23386538373737:hsl(var(--mode-hue) 9.24% 51.18% / 1);
--warm-23643561643534:hsl(var(--mode-hue) 60.56% 58.24% / 1);
--warm-23653162613733:hsl(var(--mode-hue) 64.71% 66.67% / 1);
--warm-23373536323362:hsl(var(--mode-hue) 32.95% 34.51% / 1);
--warm-23656463663836:hsl(var(--mode-hue) 74.10% 72.75% / 1);
--warm-23336133303230:hsl(var(--mode-hue) 28.89% 17.65% / 1);
--warm-23623761653938:hsl(var(--mode-hue) 17.71% 65.69% / 1);
--warm-23323431643130:hsl(var(--mode-hue) 38.46% 10.20% / 1);
--warm-23633861303463:hsl(var(--mode-hue) 52.99% 54.12% / 1);
--warm-23666665366161:hsl(var(--mode-hue) 100.00% 83.33% / 1);
--warm-23386437333361:hsl(var(--mode-hue) 41.71% 39.02% / 1);
--warm-23633762636134:hsl(var(--mode-hue) 23.81% 71.18% / 1);
--warm-233635353333333636:hsl(var(--mode-hue) 32.89% 29.80% / 0.4);
--warm-23396538323436:hsl(var(--mode-hue) 38.60% 44.71% / 1);
--warm-23653663373739:hsl(var(--mode-hue) 68.55% 68.82% / 1);
--warm-23346534353265:hsl(var(--mode-hue) 25.81% 24.31% / 1);
--warm-23653463383739:hsl(var(--mode-hue) 66.46% 68.43% / 1);
--warm-23396239343834:hsl(var(--mode-hue) 10.31% 56.27% / 1);
--warm-23663164343931:hsl(var(--mode-hue) 77.42% 75.69% / 1);
--warm-23323832323136:hsl(var(--mode-hue) 29.03% 12.16% / 1);
--warm-23653864656338:hsl(var(--mode-hue) 41.03% 84.71% / 1);
--warm-23323832333137:hsl(var(--mode-hue) 26.98% 12.35% / 1);
--warm-23656565306266:hsl(var(--mode-hue) 58.02% 84.12% / 1);
--warm-23373836343363:hsl(var(--mode-hue) 33.33% 35.29% / 1);
--warm-23623462303965:hsl(var(--mode-hue) 12.79% 66.27% / 1);
--warm-23396539353832:hsl(var(--mode-hue) 12.61% 56.47% / 1);
--warm-23386638343662:hsl(var(--mode-hue) 14.40% 49.02% / 1);
--warm-23656364313961:hsl(var(--mode-hue) 68.33% 76.47% / 1);
--warm-236434623736623038:hsl(var(--mode-hue) 54.97% 62.55% / 0.03137254901960784);
--warm-23616138393430:hsl(var(--mode-hue) 45.30% 45.88% / 1);
--warm-23333632633133:hsl(var(--mode-hue) 47.95% 14.31% / 1);
--warm-23656564626139:hsl(var(--mode-hue) 66.99% 79.80% / 1);
--warm-23343233353162:hsl(var(--mode-hue) 41.94% 18.24% / 1);
--warm-23633561323536:hsl(var(--mode-hue) 48.90% 55.49% / 1);
--warm-23663365616437:hsl(var(--mode-hue) 53.85% 89.80% / 1);
--warm-23653964376165:hsl(var(--mode-hue) 57.28% 79.80% / 1);
--warm-23366335383333:hsl(var(--mode-hue) 35.85% 31.18% / 1);
--warm-23396539373838:hsl(var(--mode-hue) 10.19% 57.65% / 1);
--warm-236339613635303838:hsl(var(--mode-hue) 52.84% 55.10% / 0.5333333333333333);
--warm-23323131643134:hsl(var(--mode-hue) 24.53% 10.39% / 1);
--warm-23616161303862:hsl(var(--mode-hue) 15.42% 60.59% / 1);
--warm-23356635313333:hsl(var(--mode-hue) 30.14% 28.63% / 1);
--warm-23643962623664:hsl(var(--mode-hue) 58.70% 63.92% / 1);
--warm-23656364353938:hsl(var(--mode-hue) 68.85% 76.08% / 1);
--warm-23613938653530:hsl(var(--mode-hue) 35.74% 48.82% / 1);
--warm-23646663343765:hsl(var(--mode-hue) 60.25% 68.43% / 1);
--warm-23643862643765:hsl(var(--mode-hue) 53.57% 67.06% / 1);
}
.roulette-setting{display:grid;gap:10px}.roulette-setting select{font:inherit;padding:10px;background:#171416;color:inherit;border:1px solid currentColor;border-radius:7px}
.history-verify-toggle{width:176px;min-width:176px;box-sizing:border-box;text-align:center}
body.hardcore-mode #screen-community.community-top-screen{background:transparent!important;min-height:calc(100dvh - 60px)}
body.hardcore-mode .community-top-page{background:transparent!important}
body.hardcore-mode{background:#09090b}
body.hardcore-mode #screen-community.community-top-screen{background:#09090b!important}
#roulettePreview{align-self:end;min-height:43px;border:1px solid var(--warm-23386437343265,#8d742e);border-radius:7px;background:var(--warm-23323732323133,#272213);color:var(--warm-23653863373638,#e8c768);font:inherit;cursor:pointer;padding:10px 16px}
#roulettePreview:hover{filter:brightness(1.2)}
body.hardcore-mode .sound-options{background:#211619}
body.hardcore-mode #accountMenuButton .profile-level{color:#ff5764}
#screen-community.community-top-screen{position:fixed!important;inset:0;height:100dvh;overflow-y:auto!important;scrollbar-gutter:stable}
/* Admin balance report: compact, scrollable tables on narrow screens. */
.site-stats-tabs { margin: 18px 0; }
.site-stats-tabs [aria-pressed="true"] { border-color: var(--gold, #d8b56b); background: rgba(214,174,99,.18); }
.site-stats-table { min-width: 760px; }
.site-stats-table th,.site-stats-table td { padding: 11px 13px; vertical-align: top; }
.site-stats-table td:last-child { max-width: 380px; line-height: 1.5; }
.site-stats-item { display:inline-flex; align-items:center; gap:10px; }
.site-stats-item img { width:36px; height:36px; object-fit:contain; flex:none; }
.info-mode-note { margin: 12px auto 0; max-width: 760px; color:#b9d3bd; line-height:1.6; }
body.pve-mode:not(.hardcore-mode) .page-container,
body.pve-mode:not(.hardcore-mode) .community-dialog,
body.pve-mode:not(.hardcore-mode) .raid-detail-panel,
body.pve-mode:not(.hardcore-mode) .market-card,
body.pve-mode:not(.hardcore-mode) .inventory-card { border-color:#3c7650; background-color:#122018; }
body.pve-mode:not(.hardcore-mode) .btn-gold,
body.pve-mode:not(.hardcore-mode) .community-button,
body.pve-mode:not(.hardcore-mode) .market-card button,
body.pve-mode:not(.hardcore-mode) .inventory-card button,
body.pve-mode:not(.hardcore-mode) .legend-tabs button,
body.pve-mode:not(.hardcore-mode) .stats-mode-switch button,
body.pve-mode:not(.hardcore-mode) .profile-mode-switch button { border-color:#569967; color:#c4f3cc; background:#203a29; }
body.pve-mode:not(.hardcore-mode) .legend-tabs button[aria-pressed="true"],
body.pve-mode:not(.hardcore-mode) .stats-mode-switch button[aria-pressed="true"],
body.pve-mode:not(.hardcore-mode) .profile-mode-switch button[aria-pressed="true"] { background:#3d7850; color:#fff; }
body.pve-mode:not(.hardcore-mode) .community-table th,
body.pve-mode:not(.hardcore-mode) .legend-table th,
body.pve-mode:not(.hardcore-mode) .operation-journal h3,
body.pve-mode:not(.hardcore-mode) .raid-reward-breakdown h3 { color:#b7ebbe; }
body.pve-mode:not(.hardcore-mode) .quest-map-tabs button.active,
body.pve-mode:not(.hardcore-mode) .progress-dot.active,
body.pve-mode:not(.hardcore-mode) .progress-dot.done { color:#90e1a4; border-color:#70c88b; }

/* PVE uses the same accent map as hardcore, with green taking the place of red. */
body.hardcore-mode { --mode-hue:354; }
body.pve-mode:not(.hardcore-mode) { --mode-hue:140; --theme-accent:#6dd993; accent-color:#6dd993; }

.raid-mode-switch > span { color:#8f968d; text-shadow:none; }
body.pve-mode .raid-mode-switch > span:first-child { color:#80e7a1; text-shadow:0 0 12px rgba(69,202,114,.28); }
body:not(.pve-mode) .raid-mode-switch > span:last-child { color:#e4c879; text-shadow:0 0 12px rgba(228,200,121,.25); }
body.pve-mode:not(.hardcore-mode) .raid-mode-switch button {
    border-color:#62b77d; background:#203b2b;
}
body.pve-mode:not(.hardcore-mode) .raid-mode-switch button i { background:#8dedac; }

body.pve-mode:not(.hardcore-mode) #screen-main,
body.pve-mode:not(.hardcore-mode) #screen-select,
body.pve-mode:not(.hardcore-mode) #screen-final,
body.pve-mode:not(.hardcore-mode) #screen-reward,
body.pve-mode:not(.hardcore-mode) .page-screen {
    background:
        radial-gradient(ellipse 105% 62% at 50% -16%, rgba(30,137,68,.22) 0%, rgba(22,97,50,.14) 28%, rgba(11,48,25,.05) 56%, transparent 88%),
        radial-gradient(ellipse 112% 68% at 50% 116%, rgba(25,116,61,.19) 0%, rgba(17,76,41,.11) 30%, rgba(8,40,21,.04) 58%, transparent 91%),
        #090d0b !important;
}
body.pve-mode:not(.hardcore-mode) .main-header {
    background:#090f0b !important;
    border-bottom-color:rgba(79,181,110,.49) !important;
    box-shadow:0 10px 28px rgba(0,0,0,.42),0 1px 18px rgba(49,147,79,.18) !important;
}
body.pve-mode:not(.hardcore-mode) .header-brand .brand-name {
    background-image:linear-gradient(105deg,#166236 0%,#72df95 30%,#299a5b 52%,#b4f4bd 68%,#166236 100%) !important;
    background-size:240% 100% !important;
    background-clip:text !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    filter:drop-shadow(0 0 10px rgba(62,209,105,.38)) !important;
}
body.pve-mode:not(.hardcore-mode) #headerCoins {
    color:#9be9ae; background:rgba(29,100,53,.27);
    border-color:rgba(101,209,129,.48); box-shadow:inset 0 0 20px rgba(38,151,76,.13);
}
body.pve-mode:not(.hardcore-mode) #headerCoins .reroll-count { color:#9be9ae; text-shadow:0 0 14px rgba(63,206,103,.3); }
body.pve-mode:not(.hardcore-mode) #headerCoins:hover { background:rgba(33,122,63,.38); border-color:#88e6a5; }
body.pve-mode:not(.hardcore-mode) #accountMenuButton .profile-level { color:#93e4a9; }
body.pve-mode:not(.hardcore-mode) .header-nav .nav-link.active,
body.pve-mode:not(.hardcore-mode) .quest-map-tabs button.active { border-color:#68d58b; }
body.pve-mode:not(.hardcore-mode) .header-nav .nav-link::after,
body.pve-mode:not(.hardcore-mode) .nav-progress-toggle::after { background:linear-gradient(90deg,#3cae70,#9ce6a6); }
body.pve-mode:not(.hardcore-mode) .header-sound-toggle,
body.pve-mode:not(.hardcore-mode) .header-reroll,
body.pve-mode:not(.hardcore-mode) .account-menu-button { border-color:#59ac75; color:#b0efc0; }

body.pve-mode:not(.hardcore-mode) .wheel-container,
body.pve-mode:not(.hardcore-mode) .wheel-item,
body.pve-mode:not(.hardcore-mode) .history-item {
    background:linear-gradient(135deg,rgba(24,105,51,.13),rgba(8,28,15,.24)) !important;
    border-color:rgba(87,172,108,.38);
}
body.pve-mode:not(.hardcore-mode) .wheel-container::after { background:linear-gradient(90deg,rgba(7,23,13,.75),transparent 18%,transparent 82%,rgba(7,23,13,.75)); }
body.pve-mode:not(.hardcore-mode) .category-plate.done { border-color:rgba(104,206,134,.62); background:rgba(33,122,64,.13); }
body.pve-mode:not(.hardcore-mode) .category-plate.done .category-name { color:#a4edb4; }
body.pve-mode:not(.hardcore-mode) .quest-text-only .quest-image-layer { background:radial-gradient(circle at 50% 13%,rgba(61,184,91,.2),transparent 38%),linear-gradient(150deg,rgba(13,48,25,.9),rgba(6,17,10,.95)); }
body.pve-mode:not(.hardcore-mode) .reward-item.counter button,
body.pve-mode:not(.hardcore-mode) .reward-input { background:rgba(26,96,48,.2); border-color:rgba(83,192,115,.45); }
body.pve-mode:not(.hardcore-mode) .quest-reward input { accent-color:#64d58a; }
body.pve-mode:not(.hardcore-mode) .selected-items .selected-chip { background:rgba(27,104,54,.17); border-color:rgba(83,185,113,.48); color:#d7f6de; }
body.pve-mode:not(.hardcore-mode) .settings-tab:hover,
body.pve-mode:not(.hardcore-mode) .settings-tab.active {
    background:rgba(43,139,73,.15) !important;
    border-color:rgba(105,216,138,.85) !important;
    color:#e9fff0 !important;
    box-shadow:0 0 17px rgba(69,196,105,.19) !important;
}
body.pve-mode:not(.hardcore-mode) .sound-options { background:#15251a; }
body.pve-mode:not(.hardcore-mode) .page-particle,
body.pve-mode:not(.hardcore-mode) .roulette-particle,
body.pve-mode:not(.hardcore-mode) .final-particle {
    background:#70dc91 !important; box-shadow:0 0 12px #70dc91,0 0 24px rgba(81,212,122,.4) !important;
}
body.pve-mode:not(.hardcore-mode)[data-theme] .btn-main {
    background:linear-gradient(145deg,#b5f6b9,#3ea773);
    box-shadow:0 0 74px rgba(69,186,120,.27);
}
body.pve-mode:not(.hardcore-mode)[data-theme] .btn-accept {
    background:linear-gradient(135deg,#82df9c,#358358);
    box-shadow:0 0 40px rgba(71,194,108,.23);
}
body.pve-mode:not(.hardcore-mode) .btn-main::before { background:linear-gradient(135deg,#d4ffd4,#58d489,#278d5d); }
body.pve-mode:not(.hardcore-mode) .btn-accept:hover:not(:disabled) { box-shadow:0 0 60px rgba(71,194,108,.38); }

/* Keep each mode's base background color, but remove the top/bottom oval glows. */
body:not(.hardcore-mode) :is(#screen-main,#screen-select,#screen-final,#screen-reward,.page-screen),
body.hardcore-mode :is(#screen-main,#screen-select,#screen-final,#screen-reward,.page-screen),
body.pve-mode:not(.hardcore-mode) :is(#screen-main,#screen-select,#screen-final,#screen-reward,.page-screen),
body:not(.hardcore-mode)[data-theme] :is(#screen-main,#screen-select,#screen-final,#screen-reward,.page-screen),
body.hardcore-mode[data-theme] :is(#screen-main,#screen-select,#screen-final,#screen-reward,.page-screen) {
    background-image:none !important;
}

/* Тот же градиентный блик, что в обычном режиме: независимые циклы без наложенного текста. */
body.hardcore-mode .header-brand .brand-name {
    background-image:linear-gradient(105deg,#89101e 0%,#ff4558 34%,#ce233b 46%,#fff 49%,#fff 52%,#ff8779 56%,#f24759 69%,#89101e 100%) !important;
    background-size:240% 100% !important;
    background-clip:text !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    animation:brand-sheen 27s ease-in-out -3s infinite;
}
body.pve-mode:not(.hardcore-mode) .header-brand .brand-name {
    background-image:linear-gradient(105deg,#216b3f 0%,#75de96 34%,#32ad66 46%,#fff 49%,#fff 52%,#aaf5b8 56%,#5bcf82 69%,#216b3f 100%) !important;
    background-size:240% 100% !important;
    background-clip:text !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    animation:brand-sheen 27s ease-in-out -3s infinite;
}
body.hardcore-mode .main-title {
    background-image:linear-gradient(105deg,#b92035 0%,#ff4d59 34%,#e73249 46%,#fff 49%,#fff 52%,#ffb19b 56%,#ff6957 70%,#b92035 100%) !important;
    background-size:220% 100% !important;
    background-clip:text !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    animation:shimmer 9s ease-in-out -4s infinite reverse;
}
body.pve-mode:not(.hardcore-mode) .main-title {
    background-image:linear-gradient(105deg,#318a54 0%,#81e5a1 34%,#47c97b 46%,#fff 49%,#fff 52%,#bcf8c5 56%,#68d991 70%,#318a54 100%) !important;
    background-size:220% 100% !important;
    background-clip:text !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    animation:shimmer 9s ease-in-out -4s infinite reverse;
}
@media (prefers-reduced-motion:reduce) {
    body.hardcore-mode .header-brand .brand-name,
    body.pve-mode:not(.hardcore-mode) .header-brand .brand-name,
    body.hardcore-mode .main-title,
    body.pve-mode:not(.hardcore-mode) .main-title { animation:none !important; }
}

body.hardcore-mode .raid-mode-switch > span { color:#8f8b8d; text-shadow:none; }
body.hardcore-mode.pve-mode .raid-mode-switch > span:first-child,
body.hardcore-mode:not(.pve-mode) .raid-mode-switch > span:last-child {
    color:#ff6877;
    text-shadow:0 0 13px rgba(255,77,98,.4);
}
body.hardcore-mode .raid-mode-switch button {
    border-color:#c84b5a;
    background:#35191e;
    box-shadow:0 0 12px rgba(213,51,70,.2);
}
body.hardcore-mode .raid-mode-switch button i,
body.hardcore-mode .raid-mode-switch button[aria-checked="true"] i {
    background:#ff7381;
    box-shadow:0 0 10px rgba(255,79,101,.45);
}

/* Phone layout: six collected items stay visible without a horizontal strip. */
@media (max-width: 600px) {
    .page-screen { padding-top: 62px !important; }
    .page-screen > .page-container { width: 100%; padding: 12px 8px; }
    .page-screen .page-container > h2 {
        width: 100%;
        margin: 0 0 10px;
        text-align: center;
        font-size: clamp(19px, 5vw, 25px);
        line-height: 1.2;
    }
    .page-screen .page-lead { margin: 0 auto 16px; font-size: 13px; text-align: center; }
    #screen-history .history-heading-row { flex-direction: column; align-items: center; justify-content: center; gap: 8px; }
    #screen-history .history-heading-row > h2 { width: 100%; margin: 0; text-align: center; font-size: clamp(19px, 5vw, 25px); line-height: 1.2; }
    #screen-history .history-verify-toggle { position: static; transform: none; margin: 0 auto; }

    #screen-main .btn-main {
        width: clamp(186px, 55vw, 224px);
        height: clamp(186px, 55vw, 224px);
    }

    #screen-select {
        height: 100dvh;
        min-height: 0;
        padding-top: 52px;
        padding-bottom: 8px;
        overflow: hidden;
    }
    #screen-select .selected-items {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        align-content: start;
        width: min(100%, 420px);
        max-width: 100%;
        height: 116px;
        min-height: 116px;
        max-height: none;
        flex: 0 0 116px;
        overflow: visible;
        gap: 4px;
        padding: 2px 8px;
    }
    #screen-select .selected-chip {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 100%;
        height: 54px;
        min-width: 0;
        box-sizing: border-box;
        gap: 1px;
        padding: 2px;
        border-radius: 10px;
        text-align: center;
        overflow: hidden;
    }
    #screen-select .selected-chip:hover { transform: none; }
    #screen-select .selected-chip .chip-item-image { width: 30px; height: 30px; flex: 0 0 30px; }
    #screen-select .selected-chip .chip-text {
        max-width: 100%;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: 9px;
        line-height: 1.05;
        overflow-wrap: anywhere;
    }
    #screen-select .select-container {
        width: 100%;
        max-width: 100%;
        flex: 1 1 auto;
        min-height: 0;
        justify-content: flex-start;
        gap: 8px;
        padding: 0 8px 4px;
    }
    #screen-select .category-plate { min-width: 0; padding: 7px 16px; }
    #screen-select .wheel-wrapper { flex: 0 0 auto; }
    #screen-select .wheel-container {
        --wheel-item-size: clamp(60px, 14dvh, 78px);
        height: calc(var(--wheel-item-size) + 36px);
        min-height: 0;
        padding: 0 8px;
    }
    #screen-select #actionButtons {
        grid-template-rows: 42px 38px;
        min-height: 88px;
        flex: 0 0 88px;
        margin: 0;
    }
    #screen-select #actionButtons #btnAction,
    #screen-select #actionButtons #btnReroll { height: 42px; }
    #screen-select #actionButtons #btnDisableItem { min-height: 38px; height: 38px; }
    #screen-select #actionButtons #btnDisableItem.hidden {
        display: flex !important;
        visibility: hidden;
        pointer-events: none;
    }
    #screen-select .progress-indicator { margin: 0; }

    #screen-final .final-container { height: auto; max-height: none; overflow: visible; }
    #screen-final .final-columns,
    #screen-final .final-loadout-column { gap: 6px; }
    #screen-final .final-summary .final-loadout-row {
        grid-template-columns: 70px minmax(0, 1fr);
        gap: 8px;
        min-height: 82px;
        padding: 6px 8px;
        border-radius: 10px;
    }
    #screen-final .final-loadout-icon { width: 66px; height: 66px; }
    #screen-final .final-loadout-copy { gap: 3px; }
    #screen-final .final-loadout-copy b { font-size: 13px; }
    #screen-final .final-loadout-copy p { font-size: 11px; line-height: 1.25; }
    #screen-final .quests-container { display: flex; flex-direction: column; align-items: stretch; gap: 10px; min-height: 0; }
    #screen-final .quest-slot,
    #screen-final .quest-slot.quest-text-only {
        flex: 0 0 auto;
        width: 100%;
        max-width: none;
        height: auto;
        min-height: 0;
        aspect-ratio: 16 / 9;
        align-self: stretch;
    }
    #screen-final .quest-card-content { padding: 9px 12px; }
    #screen-final .quest-has-image .quest-card-content::before {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        transform: none;
        border-radius: 0;
        background: linear-gradient(180deg, rgba(3,4,8,.9), rgba(4,5,10,.58) 72%, rgba(4,5,10,.25));
    }
    #screen-final .quest-slot .quest-number { margin-bottom: 3px; padding: 1px 10px; font-size: 10px; }
    #screen-final .quest-slot .quest-rarity { margin-bottom: 4px; font-size: 10px; }
    #screen-final .quest-slot .quest-title { max-width: 100%; margin-bottom: 3px; font-size: 14px; line-height: 1.15; }
    #screen-final .quest-slot .quest-desc {
        max-width: 100%;
        max-height: 3.6em;
        margin-bottom: 4px;
        -webkit-line-clamp: 3;
        font-size: 11.5px;
        line-height: 1.2;
        color: #f0f0f0;
    }
    #screen-final .quest-slot .quest-reroll { min-height: 30px; padding: 3px 10px; font-size: 11px; }

    .market-heading { align-items: center; text-align: center; gap: 10px; }
    .market-heading > div { width: 100%; }
    .market-heading h2, .market-heading .market-lead { text-align: center; }
    .market-heading h2 { margin: 0 0 8px; font-size: clamp(19px, 5vw, 25px); }
    .market-heading .market-lead { font-size: 12px; line-height: 1.35; }
    .market-heading .market-test-refresh { align-self: center; margin-inline: auto; }
    .market-storefront .market-offers { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
    .market-storefront .market-card { min-height: 128px; padding: 6px 4px; gap: 4px; border-radius: 10px; }
    .market-storefront .market-card .market-item-art { height: 76px; min-height: 0; margin: 0; }
    .market-storefront .market-card .market-item-image { height: 72px; max-height: 72px; }
    .market-storefront .market-card .market-symbol { width: 56px; height: 56px; }
    .market-storefront .market-card button { min-height: 34px; padding: 4px 2px; font-size: 10px; line-height: 1.15; }

    #screen-history .history-list { gap: 7px; }
    #screen-history .history-item,
    #statsBestRaidCard .history-item { padding: 8px; border-radius: 9px; }
    #screen-history .history-item header,
    #statsBestRaidCard .history-item header { gap: 2px; }
    #screen-history .history-item header b,
    #statsBestRaidCard .history-item header b { font-size: 12px; }
    #screen-history .history-item header strong,
    #statsBestRaidCard .history-item header strong { font-size: 12px; }
    #screen-history .history-items,
    #statsBestRaidCard .history-items { flex-wrap: nowrap; gap: 3px; margin: 5px 0; overflow: hidden; }
    #screen-history .history-build-icon,
    #statsBestRaidCard .history-build-icon {
        flex: 0 1 clamp(32px, calc(16.6667vw - 17.333px), 48px);
        width: clamp(32px, calc(16.6667vw - 17.333px), 48px) !important;
        height: clamp(32px, calc(16.6667vw - 17.333px), 48px) !important;
        min-width: 0;
    }
    #screen-history .history-kills,
    #statsBestRaidCard .history-kills { font-size: 10px; line-height: 1.3; text-align: center; }
    #screen-history .history-item footer small,
    #statsBestRaidCard .history-item footer small { font-size: 10px; }
    #screen-stats .stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; }
    #screen-stats .stats-grid > div { padding: 8px 3px; border-radius: 8px; }
    #screen-stats .stats-grid b { font-size: 15px; line-height: 1.1; }
    #screen-stats .stats-grid span { font-size: 9px; line-height: 1.15; }
    #screen-stats .stats-grid small { font-size: 8px; line-height: 1.1; }
    #screen-stats .stats-grid.is-empty { grid-template-columns: 1fr; }
    #screen-stats .stats-best-raid { margin-top: 18px; }
    #screen-stats .stats-best-raid h3 { text-align: center; }
}

@media (max-width: 600px) and (max-height: 560px) {
    #screen-select .selected-items { height: 102px; min-height: 102px; flex-basis: 102px; }
    #screen-select .selected-chip { height: 47px; }
    #screen-select .selected-chip .chip-item-image { width: 26px; height: 26px; flex-basis: 26px; }
    #screen-select .wheel-container { --wheel-item-size: clamp(58px, 12dvh, 68px); height: calc(var(--wheel-item-size) + 32px); }
    #screen-select .select-container { gap: 5px; }
    #screen-select #actionButtons { grid-template-rows: 38px 34px; min-height: 77px; flex-basis: 77px; gap: 5px; }
    #screen-select #actionButtons #btnAction,
    #screen-select #actionButtons #btnReroll { height: 38px; }
    #screen-select #actionButtons #btnDisableItem { min-height: 34px; height: 34px; }
}
