/* ==========================================================================
   DAILY REWARDS — SHAIYA ADDICTED
   ========================================================================== */

body:has(.daily-rewards-page)
.column-left
.content-bg
> .content-header {
    display: none !important;
}


.daily-rewards-page {
    padding: 18px 0 9px;

    color: #c8ced3;
}


.daily-rewards-page *,
.daily-rewards-page *::before,
.daily-rewards-page *::after {
    box-sizing: border-box;
}


/* ==========================================================================
   HERO
   ========================================================================== */

.daily-hero {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 26px;

    min-height: 164px;
    margin-bottom: 16px;
    padding: 27px 28px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 85% 18%,
            rgba(208, 196, 130, .075),
            transparent 31%
        ),
        linear-gradient(
            135deg,
            rgba(18, 22, 25, .985),
            rgba(10, 14, 17, .99)
        );

    border:
        1px solid rgba(210, 199, 143, .12);

    border-radius: 4px;

    box-shadow:
        0 11px 28px rgba(0, 0, 0, .13);
}


.daily-hero::before {
    content: "";

    position: absolute;
    inset: 0 auto 0 0;

    width: 3px;

    background:
        linear-gradient(
            180deg,
            #dfd28a,
            rgba(223, 210, 138, .28)
        );
}


.daily-hero__content {
    position: relative;
    z-index: 2;

    max-width: 600px;
}


.daily-eyebrow,
.daily-section-kicker {
    color: #b9ab70;

    font-size: 10px;
    line-height: 13px;
    font-weight: 700;

    letter-spacing: .8px;
    text-transform: uppercase;
}


.daily-title {
    margin: 7px 0;

    color: #f0f2f3;

    font-size: 31px;
    line-height: 35px;
    font-weight: 700;
}


.daily-description {
    max-width: 570px;

    margin: 0;

    color: #7f8990;

    font-size: 13px;
    line-height: 19px;
}


/* BALANCE */

.daily-balance {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns:
        minmax(130px, 1fr)
        104px;

    grid-template-rows:
        auto auto;

    min-width: 270px;
    min-height: 68px;

    overflow: hidden;

    background:
        rgba(7, 10, 12, .78);

    border:
        1px solid rgba(255, 255, 255, .06);

    border-radius: 4px;
}


.daily-balance__label {
    grid-column: 1;
    grid-row: 1;

    padding: 11px 14px 0;

    color: #667078;

    font-size: 8px;
    line-height: 10px;

    letter-spacing: .4px;
    text-transform: uppercase;
}


.daily-balance__value {
    grid-column: 1;
    grid-row: 2;

    padding: 1px 14px 11px;

    color: #ddd083;

    font-size: 20px;
    line-height: 24px;
    font-weight: 700;
}


.daily-balance__value small {
    font-size: 12px;
}


.daily-balance__button {
    grid-column: 2;
    grid-row: 1 / 3;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #262719 !important;

    background:
        linear-gradient(
            180deg,
            #ddd18d,
            #c8bc77
        );

    border-left:
        1px solid rgba(255, 255, 255, .07);

    font-size: 10px;
    font-weight: 700;

    text-decoration: none !important;
}


/* ==========================================================================
   OVERVIEW
   ========================================================================== */

.daily-overview {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 18px;

    margin-bottom: 12px;
    padding: 15px 17px;

    background:
        linear-gradient(
            180deg,
            rgba(12, 16, 19, .975),
            rgba(9, 13, 16, .985)
        );

    border:
        1px solid rgba(255, 255, 255, .055);

    border-radius: 4px;
}


.daily-overview__main {
    display: grid;
    grid-template-columns:
        180px minmax(0, 1fr);

    align-items: center;

    gap: 18px;
}


.daily-overview__month strong {
    display: block;

    margin-top: 3px;

    color: #d9dde0;

    font-size: 16px;
    line-height: 20px;
}


.daily-overview__month small {
    color: #68737a;

    font-size: 9px;
}


.daily-progress__head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 7px;

    color: #747e85;

    font-size: 9px;
}


.daily-progress__head strong {
    color: #bbb275;
}


.daily-progress__track {
    height: 7px;

    overflow: hidden;

    background:
        rgba(0, 0, 0, .38);

    border:
        1px solid rgba(255, 255, 255, .035);

    border-radius: 20px;
}


.daily-progress__fill {
    display: block;

    height: 100%;

    background:
        linear-gradient(
            90deg,
            #807544,
            #d4c676
        );

    border-radius: inherit;
}


.daily-overview__stats {
    display: flex;

    gap: 8px;
}


.daily-overview-stat {
    min-width: 82px;
    padding: 9px 10px;

    background:
        rgba(255, 255, 255, .018);

    border:
        1px solid rgba(255, 255, 255, .04);

    border-radius: 4px;

    text-align: center;
}


.daily-overview-stat span {
    display: block;

    color: #626d73;

    font-size: 8px;
    line-height: 11px;

    text-transform: uppercase;
}


.daily-overview-stat strong {
    display: block;

    margin-top: 2px;

    color: #aeb6ba;

    font-size: 16px;
    line-height: 20px;
}


.daily-overview-stat--missed strong {
    color: #a77a72;
}


/* ==========================================================================
   REQUIREMENTS
   ========================================================================== */

.daily-requirements {
    display: flex;
    align-items: center;

    gap: 12px;

    margin-bottom: 12px;
    padding: 11px 14px;

    background:
        rgba(255, 255, 255, .014);

    border:
        1px solid rgba(255, 255, 255, .035);

    border-radius: 4px;
}


.daily-requirements__icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    color: #aaa069;

    background:
        rgba(201, 185, 103, .035);

    border:
        1px solid rgba(201, 185, 103, .075);

    border-radius: 4px;
}


.daily-requirements strong {
    display: block;

    margin-top: 2px;

    color: #aeb6ba;

    font-size: 10px;
    line-height: 14px;
}


/* ==========================================================================
   CATCH UP
   ========================================================================== */

.daily-catchup {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 16px;

    margin-bottom: 12px;
    padding: 13px 15px;

    background:
        linear-gradient(
            90deg,
            rgba(130, 79, 53, .045),
            rgba(11, 15, 18, .96)
        );

    border:
        1px solid rgba(159, 102, 73, .08);

    border-radius: 4px;
}


.daily-catchup__content strong {
    display: block;

    margin-top: 2px;

    color: #bdc3c6;

    font-size: 11px;
    line-height: 15px;
}


.daily-catchup__content p {
    margin: 2px 0 0;

    color: #69737a;

    font-size: 9px;
    line-height: 13px;
}


.daily-catchup__actions {
    display: flex;

    gap: 7px;
}


.daily-catchup__actions form {
    margin: 0;
}


.daily-catchup-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 34px;
    padding: 0 10px;

    color: #bfc5c7;
    background: rgba(255, 255, 255, .022);

    border:
        1px solid rgba(255, 255, 255, .055);

    border-radius: 4px;

    font-family: inherit;
    font-size: 9px;
    font-weight: 700;

    cursor: pointer;
}


.daily-catchup-btn strong {
    color: #d0c276;

    font-size: 9px;
}


.daily-catchup-btn--all {
    border-color:
        rgba(205, 188, 105, .11);

    background:
        rgba(205, 188, 105, .04);
}


/* ==========================================================================
   CALENDAR
   ========================================================================== */

.daily-calendar-section {
    padding: 18px;

    background:
        linear-gradient(
            180deg,
            rgba(12, 16, 19, .975),
            rgba(9, 13, 16, .985)
        );

    border:
        1px solid rgba(255, 255, 255, .055);

    border-radius: 4px;
}


.daily-calendar-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    gap: 18px;

    margin-bottom: 15px;
    padding-bottom: 12px;

    border-bottom:
        1px solid rgba(255, 255, 255, .045);
}


.daily-calendar-head h2 {
    margin: 3px 0 0;

    color: #e3e7e9;

    font-size: 21px;
    line-height: 25px;
}


.daily-calendar-head p {
    margin: 3px 0 0;

    color: #69737a;

    font-size: 9px;
    line-height: 13px;
}


.daily-calendar-legend {
    display: flex;
    flex-wrap: wrap;

    gap: 5px;

    padding-top: 2px;
}


.daily-legend-item {
    display: inline-flex;
    align-items: center;

    min-height: 23px;
    padding: 0 7px;

    color: #6e787f;

    background:
        rgba(255, 255, 255, .018);

    border:
        1px solid rgba(255, 255, 255, .035);

    border-radius: 20px;

    font-size: 8px;
}


.daily-legend-item--today {
    color: #cabc70;

    border-color:
        rgba(204, 188, 105, .11);
}


.daily-legend-item--claimed {
    color: #79a481;

    border-color:
        rgba(84, 144, 96, .10);
}


.daily-legend-item--missed {
    color: #98736d;

    border-color:
        rgba(151, 81, 73, .08);
}


.daily-calendar {
    display: grid;

    gap: 10px;
}


.daily-week {
    display: grid;
    grid-template-columns:
        82px minmax(0, 1fr);

    gap: 9px;
}


.daily-week__head {
    display: flex;
    flex-direction: column;
    justify-content: center;

    min-height: 124px;
    padding: 9px;

    background:
        rgba(255, 255, 255, .014);

    border:
        1px solid rgba(255, 255, 255, .032);

    border-radius: 4px;
}


.daily-week__head span {
    color: #9da5a9;

    font-size: 10px;
    line-height: 14px;
    font-weight: 700;
}


.daily-week__head small {
    margin-top: 2px;

    color: #5f696f;

    font-size: 8px;
    line-height: 11px;
}


.daily-week__grid {
    display: grid;
    grid-template-columns:
        repeat(7, minmax(0, 1fr));

    gap: 6px;
}


/* ==========================================================================
   DAY CARD
   ========================================================================== */

.daily-card {
    position: relative;

    display: flex;
    flex-direction: column;

    min-width: 0;
    min-height: 124px;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            rgba(16, 20, 23, .97),
            rgba(9, 13, 16, .985)
        );

    border:
        1px solid rgba(255, 255, 255, .045);

    border-radius: 4px;

    transition:
        transform .16s ease,
        border-color .16s ease,
        box-shadow .16s ease;
}


.daily-card:hover {
    transform:
        translateY(-1px);
}


.daily-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    min-height: 27px;
    padding: 0 7px;

    border-bottom:
        1px solid rgba(255, 255, 255, .035);
}


.daily-card__day {
    color: #7e888e;

    font-size: 8px;
    line-height: 11px;
    font-weight: 700;

    text-transform: uppercase;
}


.daily-card__special {
    color: #c8ba69;

    font-size: 10px;
}


.daily-card__reward {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;

    flex: 1;

    min-width: 0;
    padding: 7px 5px 5px;
}


.daily-card__icon-wrap {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 39px;
    height: 39px;

    margin-bottom: 4px;

    background:
        rgba(255, 255, 255, .018);

    border:
        1px solid rgba(255, 255, 255, .045);

    border-radius: 4px;
}


.daily-card__icon {
    display: block;

    width: 34px;
    height: 34px;

    object-fit: contain;

    cursor: help;

    transition:
        filter .16s ease,
        transform .16s ease;
}


.daily-card__icon:hover {
    filter:
        brightness(1.13);

    transform:
        scale(1.05);
}


.daily-card__count {
    position: absolute;

    right: -4px;
    bottom: -4px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 18px;
    height: 16px;

    padding: 0 4px;

    color: #ddd48d;
    background: #0a0e11;

    border:
        1px solid rgba(209, 194, 113, .14);

    border-radius: 8px;

    font-size: 7px;
    font-weight: 700;
}


.daily-card__check {
    position: absolute;

    top: -5px;
    right: -5px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 16px;
    height: 16px;

    color: #b9e3bf;
    background: #28442e;

    border:
        1px solid rgba(126, 181, 136, .25);

    border-radius: 50%;

    font-size: 7px;
}


.daily-card__item-name {
    width: 100%;

    overflow: hidden;

    color: #9da6aa;

    font-size: 8px;
    line-height: 10px;
    font-weight: 600;

    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}


.daily-card__empty-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    margin-bottom: 4px;

    color: #4f595f;

    background:
        rgba(255, 255, 255, .012);

    border:
        1px dashed rgba(255, 255, 255, .04);

    border-radius: 4px;
}


.daily-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 4px;

    min-height: 28px;
    padding: 4px 6px;

    border-top:
        1px solid rgba(255, 255, 255, .035);
}


.daily-card__points {
    color: #8f8660;

    font-size: 7px;
    line-height: 9px;
    font-weight: 700;

    white-space: nowrap;
}


.daily-card__points span {
    color: #c6b96f;
}


.daily-card__status {
    color: #5f696f;

    font-size: 7px;
    line-height: 9px;
    font-weight: 700;

    text-transform: uppercase;
}


.daily-card__claim {
    min-height: 22px;
    padding: 0 6px;

    color: #ded28b;
    background:
        rgba(204, 188, 105, .055);

    border:
        1px solid rgba(204, 188, 105, .13);

    border-radius: 3px;

    font-family: inherit;
    font-size: 7px;
    line-height: 9px;
    font-weight: 700;

    cursor: pointer;
}


/* ==========================================================================
   STATES
   ========================================================================== */

.daily-card--today {
    border-color:
        rgba(212, 197, 115, .28);

    box-shadow:
        inset 0 2px 0 rgba(213, 198, 117, .72),
        0 0 14px rgba(197, 178, 83, .05);
}


.daily-card--today
.daily-card__day {
    color: #d2c678;
}


.daily-card--claimed {
    border-color:
        rgba(86, 145, 97, .095);

    background:
        linear-gradient(
            180deg,
            rgba(13, 20, 16, .95),
            rgba(9, 14, 12, .985)
        );
}


.daily-card--claimed
.daily-card__status {
    color: #6f9877;
}


.daily-card--missed {
    opacity: .68;
}


.daily-card--missed
.daily-card__status {
    color: #916c67;
}


.daily-card--locked {
    opacity: .50;
}


.daily-card--unavailable {
    opacity: .34;
}


.daily-card--special {
    background:
        radial-gradient(
            circle at 50% 23%,
            rgba(207, 188, 92, .055),
            transparent 45%
        ),
        linear-gradient(
            180deg,
            rgba(17, 20, 21, .98),
            rgba(10, 13, 15, .99)
        );
}


/* ==========================================================================
   TOOLTIP
   ========================================================================== */

#droplist-tooltip {
    position: fixed;
    z-index: 9999999;

    pointer-events: none;
}


/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1000px) {

    .daily-week {
        grid-template-columns: 1fr;
    }


    .daily-week__head {
        min-height: auto;
    }


    .daily-week__grid {
        grid-template-columns:
            repeat(4, minmax(0, 1fr));
    }

}


@media (max-width: 760px) {

    .daily-hero,
    .daily-catchup,
    .daily-calendar-head {
        align-items: stretch;
        flex-direction: column;
    }


    .daily-balance {
        width: 100%;
    }


    .daily-overview {
        grid-template-columns: 1fr;
    }


    .daily-overview__main {
        grid-template-columns: 1fr;
    }


    .daily-overview__stats {
        width: 100%;
    }


    .daily-overview-stat {
        flex: 1;
    }


    .daily-catchup__actions {
        flex-direction: column;
    }


    .daily-catchup-btn {
        width: 100%;
    }


    .daily-week__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}

/* ==========================================================================
   DAILY V2 — КНОПКА "КУПИТЬ ZZ" + УВЕЛИЧЕННАЯ ТИПОГРАФИКА
   ========================================================================== */

/*
|--------------------------------------------------------------------------
| Баланс — приводим к тому же виду, что UCP / Characters / Donate
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-balance {
    grid-template-columns:
        minmax(145px, 1fr)
        112px;

    min-width: 285px;
    min-height: 72px;
}


.daily-rewards-page .daily-balance__label {
    padding: 12px 15px 0;

    font-size: 9px;
    line-height: 11px;
}


.daily-rewards-page .daily-balance__value {
    padding: 2px 15px 11px;

    font-size: 22px;
    line-height: 26px;
}


.daily-rewards-page .daily-balance__value small {
    font-size: 13px;
}


/* Максимальная специфичность, чтобы глобальные стили ссылок не перебивали кнопку */
.daily-rewards-page a.daily-balance__button,
.daily-rewards-page a.daily-balance__button:link,
.daily-rewards-page a.daily-balance__button:visited {
    grid-column: 2 !important;
    grid-row: 1 / 3 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    height: 100% !important;
    min-height: 72px !important;

    margin: 0 !important;
    padding: 0 12px !important;

    color: #292a1d !important;

    background:
        linear-gradient(
            180deg,
            #e2d694 0%,
            #c9bc77 100%
        ) !important;

    border: 0 !important;
    border-left:
        1px solid rgba(255, 255, 255, .12) !important;

    border-radius: 0 !important;

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .16) !important;

    font-family: inherit !important;
    font-size: 11px !important;
    line-height: 14px !important;
    font-weight: 700 !important;

    text-align: center !important;
    text-decoration: none !important;
    text-shadow: none !important;

    cursor: pointer;
}


.daily-rewards-page a.daily-balance__button:hover {
    color: #1f2016 !important;

    background:
        linear-gradient(
            180deg,
            #eadf9e 0%,
            #d5c880 100%
        ) !important;

    text-decoration: none !important;
}


/*
|--------------------------------------------------------------------------
| Hero
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-eyebrow,
.daily-rewards-page .daily-section-kicker {
    font-size: 11px;
    line-height: 14px;
}


.daily-rewards-page .daily-title {
    font-size: 33px;
    line-height: 37px;
}


.daily-rewards-page .daily-description {
    font-size: 14px;
    line-height: 20px;
}


/*
|--------------------------------------------------------------------------
| Текущий месяц / прогресс
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-overview__month strong {
    font-size: 18px;
    line-height: 22px;
}


.daily-rewards-page .daily-overview__month small {
    font-size: 10px;
    line-height: 14px;
}


.daily-rewards-page .daily-progress__head {
    font-size: 10px;
    line-height: 13px;
}


.daily-rewards-page .daily-progress__head strong {
    font-size: 11px;
}


.daily-rewards-page .daily-overview-stat span {
    font-size: 9px;
    line-height: 12px;
}


.daily-rewards-page .daily-overview-stat strong {
    font-size: 18px;
    line-height: 22px;
}


/*
|--------------------------------------------------------------------------
| Требования
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-requirements strong {
    font-size: 11px;
    line-height: 15px;
}


/*
|--------------------------------------------------------------------------
| Навёрстывание
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-catchup__content strong {
    font-size: 12px;
    line-height: 16px;
}


.daily-rewards-page .daily-catchup__content p {
    font-size: 10px;
    line-height: 14px;
}


.daily-rewards-page .daily-catchup-btn {
    min-height: 36px;

    font-size: 10px;
    line-height: 13px;
}


.daily-rewards-page .daily-catchup-btn strong {
    font-size: 10px;
}


/*
|--------------------------------------------------------------------------
| Заголовок календаря
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-calendar-head h2 {
    font-size: 23px;
    line-height: 27px;
}


.daily-rewards-page .daily-calendar-head p {
    font-size: 10px;
    line-height: 14px;
}


.daily-rewards-page .daily-legend-item {
    min-height: 25px;

    padding: 0 8px;

    font-size: 9px;
}


/*
|--------------------------------------------------------------------------
| Недели
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-week__head span {
    font-size: 11px;
    line-height: 15px;
}


.daily-rewards-page .daily-week__head small {
    font-size: 9px;
    line-height: 12px;
}


/*
|--------------------------------------------------------------------------
| Карточки дней
|--------------------------------------------------------------------------
*/

.daily-rewards-page .daily-card {
    min-height: 130px;
}


.daily-rewards-page .daily-card__top {
    min-height: 29px;

    padding: 0 8px;
}


.daily-rewards-page .daily-card__day {
    font-size: 9px;
    line-height: 12px;
}


.daily-rewards-page .daily-card__special {
    font-size: 11px;
}


.daily-rewards-page .daily-card__item-name {
    font-size: 9px;
    line-height: 12px;
}


.daily-rewards-page .daily-card__count {
    min-width: 19px;
    height: 17px;

    font-size: 8px;
}


.daily-rewards-page .daily-card__footer {
    min-height: 30px;

    padding: 4px 7px;
}


.daily-rewards-page .daily-card__points {
    font-size: 8px;
    line-height: 10px;
}


.daily-rewards-page .daily-card__status {
    font-size: 8px;
    line-height: 10px;
}


.daily-rewards-page .daily-card__claim {
    min-height: 24px;

    padding: 0 7px;

    font-size: 8px;
    line-height: 10px;
}


/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 760px) {

    .daily-rewards-page .daily-balance {
        min-width: 0;
    }


    .daily-rewards-page a.daily-balance__button,
    .daily-rewards-page a.daily-balance__button:link,
    .daily-rewards-page a.daily-balance__button:visited {
        min-height: 72px !important;
    }

}

/* ==========================================================================
   V3 — ITEM CHOICE
   ========================================================================== */

.daily-card__choice-icons {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    min-height: 56px;
    padding: 3px 5px 17px;
}


.daily-card__choice-icon {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 40px;
    height: 40px;

    margin-left: -9px;

    padding: 2px;

    overflow: hidden;

    background:
        rgba(5, 8, 10, .94);

    border:
        1px solid rgba(210, 194, 111, .13);

    border-radius: 4px;

    box-shadow:
        0 3px 10px rgba(0, 0, 0, .26);
}


.daily-card__choice-icon:first-child {
    margin-left: 0;
}


.daily-card__choice-icon img {
    display: block;

    width: 34px;
    height: 34px;

    object-fit: contain;

    cursor: help;
}


.daily-card__choice-count {
    position: absolute;

    left: 50%;
    bottom: 0;

    transform: translateX(-50%);

    padding: 2px 6px;

    color: #cdbf73;

    background:
        rgba(6, 9, 11, .97);

    border:
        1px solid rgba(205, 190, 112, .11);

    border-radius: 10px;

    font-size: 8px;
    line-height: 11px;

    white-space: nowrap;
}


.daily-card__item-name--choice {
    color: #c4b96f;
}


/* --------------------------------------------------------------------------
   Choice modal
   -------------------------------------------------------------------------- */

html.daily-choice-lock,
html.daily-choice-lock body {
    overflow: hidden !important;
}


.daily-choice-modal {
    position: fixed;
    z-index: 10000000;

    inset: 0;

    display: none;
    align-items: center;
    justify-content: center;

    padding: 28px;

    font-family: inherit;
}


.daily-choice-modal.is-open {
    display: flex;
}


.daily-choice-modal__backdrop {
    position: absolute;
    inset: 0;

    background:
        rgba(2, 5, 8, .83);

    backdrop-filter:
        blur(4px);
}


.daily-choice-modal__dialog {
    position: relative;
    z-index: 2;

    width: min(720px, 100%);
    max-height: calc(100vh - 56px);

    padding: 23px;

    overflow-y: auto;

    color: #c9d0d4;

    background:
        radial-gradient(
            circle at 10% 0%,
            rgba(131, 82, 173, .08),
            transparent 35%
        ),
        linear-gradient(
            180deg,
            #11151a,
            #0b0f13
        );

    border:
        1px solid rgba(150, 99, 195, .32);

    border-top-color:
        #a85cd2;

    border-radius: 5px;

    box-shadow:
        0 24px 65px rgba(0, 0, 0, .60),
        0 0 28px rgba(131, 70, 173, .08);
}


.daily-choice-modal__dialog--wide {
    width: min(920px, 100%);
}


.daily-choice-modal__close {
    position: absolute;

    top: 11px;
    right: 13px;

    width: 28px;
    height: 28px;

    padding: 0;

    color: #7d878d;
    background: transparent;

    border: 0;

    font-size: 22px;
    line-height: 28px;

    cursor: pointer;
}


.daily-choice-modal__eyebrow {
    margin-bottom: 5px;

    color: #c7b76c;

    font-size: 10px;
    line-height: 13px;
    font-weight: 700;

    letter-spacing: .6px;
    text-transform: uppercase;
}


.daily-choice-modal h3 {
    margin: 0;

    color: #eef0f1;

    font-size: 23px;
    line-height: 28px;
    font-weight: 700;
}


.daily-choice-modal > .daily-choice-modal__dialog > p,
.daily-choice-modal__dialog > p {
    margin: 7px 35px 18px 0;

    color: #758087;

    font-size: 11px;
    line-height: 17px;
}


.daily-choice-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 9px;
}


.daily-choice-option {
    display: block;

    margin: 0;

    cursor: pointer;
}


.daily-choice-option > input {
    position: absolute;

    opacity: 0;
    pointer-events: none;
}


.daily-choice-option__inner {
    position: relative;

    display: flex;
    align-items: center;

    gap: 10px;

    min-height: 76px;
    padding: 10px;

    background:
        rgba(255, 255, 255, .015);

    border:
        1px solid rgba(255, 255, 255, .055);

    border-radius: 4px;

    transition:
        border-color .17s ease,
        background .17s ease,
        transform .17s ease,
        box-shadow .17s ease;
}


.daily-choice-option:hover
.daily-choice-option__inner {
    transform:
        translateY(-1px);

    background:
        rgba(205, 184, 102, .025);

    border-color:
        rgba(205, 184, 102, .14);
}


.daily-choice-option > input:checked
+
.daily-choice-option__inner {
    background:
        radial-gradient(
            circle at 20% 50%,
            rgba(178, 96, 214, .11),
            transparent 60%
        ),
        rgba(205, 184, 102, .025);

    border-color:
        rgba(186, 112, 219, .50);

    box-shadow:
        inset 3px 0 0 #a75ad0,
        0 0 18px rgba(148, 72, 185, .07);
}


.daily-choice-option__icon {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 52px;

    width: 52px;
    height: 52px;

    padding: 3px;

    background:
        rgba(3, 6, 9, .72);

    border:
        1px solid rgba(205, 190, 112, .09);

    border-radius: 4px;
}


.daily-choice-option__icon img {
    display: block;

    width: 44px;
    height: 44px;

    object-fit: contain;

    cursor: help;
}


.daily-choice-option__icon b {
    position: absolute;

    right: -5px;
    bottom: -4px;

    min-width: 22px;

    padding: 1px 5px;

    color: #eadb7e;

    background:
        #070a0c;

    border:
        1px solid rgba(205, 190, 112, .16);

    border-radius: 8px;

    font-size: 8px;
    line-height: 11px;

    text-align: center;
}


.daily-choice-option__inner strong {
    display: block;

    min-width: 0;

    color: #c3cbd0;

    font-size: 11px;
    line-height: 15px;
    font-weight: 700;
}


.daily-choice-option__inner small {
    margin-left: auto;

    color: #756a91;

    font-size: 8px;
    line-height: 11px;
}


.daily-choice-submit {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 7px;

    width: 100%;
    min-height: 40px;

    margin-top: 14px;
    padding: 0 14px;

    color: #e1d681;

    background:
        linear-gradient(
            180deg,
            rgba(60, 52, 27, .85),
            rgba(20, 19, 13, .98)
        );

    border:
        1px solid #75683a;

    border-radius: 4px;

    font-family: inherit;
    font-size: 10px;
    line-height: 14px;
    font-weight: 700;

    cursor: pointer;
}


.daily-choice-all {
    display: grid;

    gap: 14px;
}


.daily-choice-day {
    padding: 12px;

    background:
        rgba(255, 255, 255, .012);

    border:
        1px solid rgba(255, 255, 255, .04);

    border-radius: 4px;
}


.daily-choice-day__title {
    margin-bottom: 9px;

    color: #cabb6d;

    font-size: 11px;
    line-height: 15px;
    font-weight: 700;
}


@media (max-width: 760px) {

    .daily-choice-modal {
        padding: 14px;
    }


    .daily-choice-grid {
        grid-template-columns: 1fr;
    }


    .daily-choice-option__inner {
        min-height: 70px;
    }

}



/* ==========================================================================
   V4 — INLINE CHOICE SWITCHER
   ========================================================================== */

.daily-card__choice-picker {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;

    width: 100%;
    min-width: 0;
}


.daily-card__choice-head {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 6px;

    min-height: 44px;
    margin-bottom: 4px;
}


.daily-card__choice-preview {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    background:
        rgba(255, 255, 255, .018);

    border:
        1px solid rgba(255, 255, 255, .05);

    border-radius: 4px;
}


.daily-card__choice-preview-image {
    display: block;

    width: 34px;
    height: 34px;

    object-fit: contain;

    cursor: help;

    transition:
        filter .16s ease,
        transform .16s ease;
}


.daily-card__choice-preview-image:hover {
    filter:
        brightness(1.12);

    transform:
        scale(1.05);
}


.daily-card__choice-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    color: #a99e67;

    font-size: 14px;
}


.daily-card__choice-switch {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 18px;
    height: 26px;
    padding: 0;

    color: #cbbb6b;
    background:
        rgba(204, 188, 105, .07);

    border:
        1px solid rgba(204, 188, 105, .15);

    border-radius: 4px;

    font-size: 8px;

    cursor: pointer;

    transition:
        background .16s ease,
        transform .16s ease,
        border-color .16s ease;
}


.daily-card__choice-switch:hover {
    background:
        rgba(204, 188, 105, .14);

    border-color:
        rgba(204, 188, 105, .28);

    transform:
        translateX(1px);
}


.daily-card__choice-switch[hidden] {
    display: none !important;
}


.daily-card__choice-hint {
    margin-top: 3px;

    color: #8d845b;

    font-size: 7px;
    line-height: 9px;
    font-weight: 700;

    text-align: center;
}


.daily-card__item-name--choice {
    color: #c9be77;

    line-height: 10px;
    white-space: nowrap;
}


.daily-rewards-page .daily-card__item-name--choice {
    width: 100%;

    overflow: hidden;

    text-overflow: ellipsis;
}

/* ==========================================================================
   V5 — COMPACT INLINE CHOICE
   ========================================================================== */

/*
 * Убираем лишнюю высоту у карточки с выбором:
 * одна иконка + компактная стрелка со счётчиком.
 */

.daily-card__choice-picker {
    width: 100%;
    min-height: 0;
}


.daily-card__choice-head {
    gap: 5px;

    min-height: 39px;
    margin-bottom: 4px;
}


.daily-card__choice-preview {
    width: 39px;
    height: 39px;

    flex: 0 0 39px;
}


.daily-card__choice-preview-image {
    width: 34px;
    height: 34px;
}


.daily-card__choice-switch {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 1px;

    width: 21px;
    height: 39px;

    flex: 0 0 21px;

    padding: 2px 0;

    color: #d7c66d;

    background:
        linear-gradient(
            180deg,
            rgba(195, 170, 70, .10),
            rgba(91, 76, 28, .055)
        );

    border:
        1px solid rgba(205, 184, 88, .19);

    border-radius: 4px;

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .025);

    line-height: 1;

    transform: none;
}


.daily-card__choice-switch i {
    font-size: 8px;
    line-height: 9px;
}


.daily-card__choice-index {
    display: block;

    color: #95884d;

    font-size: 6px;
    line-height: 7px;
    font-weight: 700;

    white-space: nowrap;
}


.daily-card__choice-switch:hover {
    color: #f0de7d;

    background:
        linear-gradient(
            180deg,
            rgba(206, 181, 76, .17),
            rgba(104, 87, 33, .09)
        );

    border-color:
        rgba(218, 195, 93, .34);

    box-shadow:
        0 0 9px rgba(207, 179, 73, .055);

    transform: none;
}


.daily-card__choice-switch:hover
.daily-card__choice-index {
    color: #c2b15f;
}


/*
 * Название занимает ровно ту же высоту,
 * что и название обычной награды.
 */
.daily-card__item-name--choice {
    width: 100%;

    margin-top: 0;

    overflow: hidden;

    color: #aeb5b6;

    font-size: 8px;
    line-height: 10px;
    font-weight: 600;

    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/*
 * Старый hint из v4 больше не используется.
 * Оставляем защиту на случай старого HTML в кэше.
 */
.daily-card__choice-hint {
    display: none !important;
}


/*
 * Карточка с выбором не должна увеличиваться
 * относительно обычных карточек.
 */
.daily-card__reward:has(.daily-card__choice-picker) {
    padding-top: 7px;
    padding-bottom: 5px;
}


/*
 * Чуть выделяем стрелку на сегодняшнем дне.
 */
.daily-card--today
.daily-card__choice-switch {
    border-color:
        rgba(218, 195, 91, .31);

    background:
        linear-gradient(
            180deg,
            rgba(211, 184, 70, .15),
            rgba(100, 81, 25, .08)
        );
}


/*
 * Footer всегда остаётся внутри карточки.
 */
.daily-card__footer {
    flex: 0 0 auto;
}


.daily-card__reward {
    min-height: 0;
}

/* ==========================================================================
   V6 — CALENDAR TYPOGRAPHY x1.5
   ========================================================================== */

/*
 * Увеличиваем читаемость календаря, не меняя сетку 7 дней.
 */

.daily-week__head {
    min-height: 140px;
}


.daily-week__head span {
    font-size: 14px;
    line-height: 18px;
}


.daily-week__head small {
    margin-top: 4px;

    font-size: 11px;
    line-height: 14px;
}


.daily-card {
    min-height: 140px;
}


.daily-card__top {
    min-height: 31px;
    padding: 0 8px;
}


.daily-card__day {
    font-size: 11px;
    line-height: 14px;
}


.daily-card__special {
    font-size: 14px;
    line-height: 16px;
}


.daily-card__reward {
    padding:
        8px 5px
        6px;
}


.daily-card__item-name,
.daily-card__item-name--choice {
    font-size: 11px;
    line-height: 14px;
}


.daily-card__points {
    font-size: 10px;
    line-height: 13px;
}


.daily-card__status {
    font-size: 9px;
    line-height: 12px;
}


.daily-card__claim {
    min-height: 26px;

    padding: 0 8px;

    font-size: 10px;
    line-height: 13px;
}


.daily-card__footer {
    min-height: 33px;

    padding:
        5px 7px;
}


/*
 * Счётчик xN на иконке.
 */
.daily-card__count {
    min-width: 21px;
    height: 18px;

    padding: 0 5px;

    font-size: 9px;
    line-height: 11px;
}


/*
 * Галочка "получено".
 */
.daily-card__check {
    width: 18px;
    height: 18px;

    font-size: 8px;
}


/*
 * Стрелка выбора предмета.
 */
.daily-card__choice-switch {
    width: 23px;
    height: 41px;

    flex-basis: 23px;
}


.daily-card__choice-switch i {
    font-size: 10px;
    line-height: 11px;
}


.daily-card__choice-index {
    font-size: 8px;
    line-height: 9px;
}


/*
 * Легенда справа сверху.
 */
.daily-legend-item {
    font-size: 10px;
    line-height: 13px;
}


/*
 * Подсказка под заголовком "Награды месяца".
 */
.daily-calendar-head p {
    font-size: 11px;
    line-height: 15px;
}


/*
 * Чуть увеличиваем заголовки секции календаря.
 */
.daily-calendar-head h2 {
    font-size: 25px;
    line-height: 30px;
}


.daily-calendar-head .daily-section-kicker {
    font-size: 11px;
    line-height: 14px;
}


/*
 * На узких экранах оставляем увеличенный шрифт,
 * но не даём карточке раздуваться слишком сильно.
 */
@media (max-width: 760px) {

    .daily-card {
        min-height: 136px;
    }


    .daily-week__head {
        min-height: 136px;
    }

}

/* ==========================================================================
   V7 — READABLE CALENDAR + FIXED FOOTER
   ========================================================================== */

/*
 * В старой части CSS используются более специфичные селекторы
 * .daily-rewards-page .daily-card__...
 * Поэтому здесь используем такую же/большую специфичность.
 */


/* --------------------------------------------------------------------------
   Card size
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-card {
    min-height: 148px;
}


.daily-rewards-page .daily-week__head {
    min-height: 148px;
}


/* --------------------------------------------------------------------------
   Week labels
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-week__head span {
    font-size: 14px;
    line-height: 18px;
}


.daily-rewards-page .daily-week__head small {
    margin-top: 4px;

    font-size: 11px;
    line-height: 15px;
}


/* --------------------------------------------------------------------------
   Day header
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-card__top {
    min-height: 32px;

    padding: 0 8px;
}


.daily-rewards-page .daily-card__day {
    font-size: 12px;
    line-height: 15px;
}


.daily-rewards-page .daily-card__special {
    font-size: 14px;
    line-height: 16px;
}


/* --------------------------------------------------------------------------
   Reward
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-card__reward {
    min-height: 0;

    padding:
        8px 5px
        6px;
}


.daily-rewards-page .daily-card__item-name,
.daily-rewards-page .daily-card__item-name--choice {
    font-size: 12px;
    line-height: 15px;

    font-weight: 600;
}


.daily-rewards-page .daily-card__count {
    min-width: 22px;
    height: 19px;

    padding: 0 5px;

    font-size: 10px;
    line-height: 12px;
}


.daily-rewards-page .daily-card__check {
    width: 19px;
    height: 19px;

    font-size: 9px;
}


/* --------------------------------------------------------------------------
   Choice arrow
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-card__choice-switch {
    width: 24px;
    height: 42px;

    flex: 0 0 24px;
}


.daily-rewards-page .daily-card__choice-switch i {
    font-size: 11px;
    line-height: 12px;
}


.daily-rewards-page .daily-card__choice-index {
    font-size: 8px;
    line-height: 9px;
}


/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-card__footer {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 4px;

    flex: 0 0 auto;

    min-height: 36px;

    padding:
        5px 6px;
}


/*
 * Глобальные стили form иногда дают высоту/отступ.
 * Полностью нейтрализуем их внутри карточки.
 */
.daily-rewards-page .daily-card__footer form {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    width: auto;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1;
}


.daily-rewards-page .daily-card__points {
    min-width: 0;

    font-size: 10px;
    line-height: 13px;

    white-space: nowrap;
}


.daily-rewards-page .daily-card__status {
    font-size: 10px;
    line-height: 13px;

    white-space: nowrap;
}


.daily-rewards-page .daily-card__claim {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 46px;
    min-height: 25px;

    margin: 0 !important;
    padding: 0 6px !important;

    font-size: 10px;
    line-height: 12px;

    white-space: nowrap;
}


/* --------------------------------------------------------------------------
   Calendar heading / legend
   -------------------------------------------------------------------------- */

.daily-rewards-page .daily-calendar-head h2 {
    font-size: 26px;
    line-height: 31px;
}


.daily-rewards-page .daily-calendar-head p {
    font-size: 12px;
    line-height: 16px;
}


.daily-rewards-page .daily-calendar-head .daily-section-kicker {
    font-size: 12px;
    line-height: 15px;
}


.daily-rewards-page .daily-legend-item {
    font-size: 10px;
    line-height: 13px;
}


/* --------------------------------------------------------------------------
   Narrow screens
   -------------------------------------------------------------------------- */

@media (max-width: 760px) {

    .daily-rewards-page .daily-card,
    .daily-rewards-page .daily-week__head {
        min-height: 144px;
    }

}

/* ==========================================================================
   V8 — CLEAN TWO-LINE CARD FOOTER
   ========================================================================== */

.daily-rewards-page .daily-card {
    min-height: 158px;
}

.daily-rewards-page .daily-week__head {
    min-height: 158px;
}

.daily-rewards-page .daily-card__footer {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 3px;
    min-height: 48px;
    padding: 4px 6px 6px;
}

.daily-rewards-page .daily-card__points {
    display: block;
    width: 100%;
    min-width: 0;
    font-size: 10px;
    line-height: 13px;
    text-align: center;
    white-space: nowrap;
}

.daily-rewards-page .daily-card__footer form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.daily-rewards-page .daily-card__status {
    display: block;
    width: 100%;
    font-size: 10px;
    line-height: 13px;
    text-align: center;
    white-space: nowrap;
}

.daily-rewards-page .daily-card__claim {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-width: 0;
    min-height: 24px;
    margin: 0 !important;
    padding: 0 5px !important;
    font-size: 10px;
    line-height: 12px;
    white-space: nowrap;
}

.daily-rewards-page
.daily-card--today
.daily-card__claim {
    color: #eadb7e;
    background:
        linear-gradient(
            180deg,
            rgba(177, 144, 43, .16),
            rgba(84, 68, 21, .10)
        );
    border-color:
        rgba(215, 187, 83, .26);
}

.daily-rewards-page
.daily-card--claimed
.daily-card__status {
    color: #6fa47a;
}

.daily-rewards-page
.daily-card--missed
.daily-card__status {
    color: #9b7069;
}

.daily-rewards-page
.daily-card--locked
.daily-card__status {
    color: #4f585d;
}

@media (max-width: 760px) {

    .daily-rewards-page .daily-card,
    .daily-rewards-page .daily-week__head {
        min-height: 154px;
    }

}

/* ==========================================================================
   V9 — TODAY BUTTON BOTTOM SPACING
   ========================================================================== */

/*
 * Сегодняшняя карточка: кнопка больше не прилипает к нижней рамке.
 */
.daily-rewards-page
.daily-card--today
.daily-card__footer {
    padding:
        4px 7px
        9px !important;
}


/*
 * Немного сужаем кнопку и центрируем её,
 * чтобы вокруг неё появился визуальный воздух.
 */
.daily-rewards-page
.daily-card--today
.daily-card__footer form {
    display: flex !important;
    justify-content: center;

    width: 100% !important;
}


.daily-rewards-page
.daily-card--today
.daily-card__claim {
    width:
        calc(100% - 6px) !important;

    min-height: 24px;

    margin:
        0 auto !important;
}


/*
 * Если это кнопка выбора без form,
 * применяется тот же отступ.
 */
.daily-rewards-page
.daily-card--today
> .daily-card__footer
> .daily-card__claim {
    width:
        calc(100% - 6px) !important;

    margin:
        0 auto !important;
}

/* ==========================================================================
   V10 — LIFT TODAY CLAIM BUTTON
   ========================================================================== */

/*
 * Сегодняшняя карточка получает немного дополнительной высоты,
 * чтобы кнопка не лежала на нижней границе.
 */
.daily-rewards-page
.daily-card--today {
    min-height: 164px;
}


/*
 * Footer сегодняшнего дня делаем чуть свободнее.
 */
.daily-rewards-page
.daily-card--today
.daily-card__footer {
    min-height: 54px !important;

    padding:
        4px 7px
        12px !important;
}


/*
 * Форма кнопки не должна занимать лишнюю высоту.
 */
.daily-rewards-page
.daily-card--today
.daily-card__footer form {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


/*
 * Реально поднимаем кнопку вверх.
 */
.daily-rewards-page
.daily-card--today
.daily-card__claim {
    position: relative;

    top: -5px;

    width:
        calc(100% - 8px) !important;

    min-height: 24px;

    margin:
        0 auto 4px !important;

    padding:
        0 6px !important;
}


/*
 * Если кнопка находится напрямую в footer без form,
 * работает то же самое.
 */
.daily-rewards-page
.daily-card--today
.daily-card__footer
> .daily-card__claim {
    top: -5px;

    margin:
        0 auto 4px !important;
}

