.cases-main-block>a[class^=icon],
.cases-main-block .main-case,
.cases-main-block .roulette>#sound-point,
.cases-main-block .roulette .roulette-slider,
#prize .modal-content {
    -webkit-background-size: 100%;
    -moz-background-size: 100%;
    -o-background-size: 100%;
    background-size: 100%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.cases-main-block {
    width: 100%;
    border-radius: var(--br-16);
    padding: .3rem;
    height: auto;
    overflow: hidden;
    position: relative;
    text-align: center;
    background-color: var(--card);
}

.cases-main-block .live-list-wrap {
    overflow: hidden
}

.cases-main-block .live-list-wrap .live-list {
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 5px;
    position: relative
}

.live-link-gold {
    background: linear-gradient(180deg, rgba(81, 55, 17, 0), #c58b1c78), #74581f3b;
}

.live-link-red {
    background: linear-gradient(180deg, rgba(81, 25, 17, 0), #c5301c3d), #2b1719;
}

.live-link-pink {
    background: linear-gradient(180deg, rgba(81, 17, 29, 0), #d138663d), #2c1a23;
}

.live-link-purple {
    background: linear-gradient(180deg, rgba(34, 17, 81, 0), #7d2ecc3d), #201f2b;
}

.live-link-blue {
    background: linear-gradient(180deg, rgba(26, 17, 81, 0), #5269e03d), #1a1c29;
}

.live-link-turquoise {
    background: linear-gradient(180deg, rgba(36, 70, 78, 0), #52acc038), #1b2831;
}

.live-link-grey {
    background: linear-gradient(180deg, rgba(73, 78, 84, 0), #828a963d), #1d1d25;
}

.subject_color {
    border-radius: 10px;
    padding: 10px;
    max-width: 40px;
    display: flex;
    justify-content: center;
}

.cases-main-block .live-list-wrap .live-list .live-item {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link {
    position: relative;
    font-weight: 500;
    font-size: var(--font-size-s);
    -webkit-transition: none;
    transition: none;
    width: 125px;
    height: 91px;
    display: block;
    text-align: center;
    padding-bottom: 15px;
    background-size: 100% 100%;
    border-radius: var(--br-8);
    color: var(--text-default);
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link:before {
    content: "";
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link:hover:before {
    opacity: 1
}

.live-link:hover .live-hover {
    transform: translateY(-100%);
    visibility: visible !important;
    opacity: 1 !important;
}

.live-link:hover .live-inner {
    transform: translateY(-100%);
    visibility: visible !important;
    opacity: 0 !important;
}


.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap {
    width: 100%;
    height: 100%;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transition: -webkit-transform .5s ease;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-inner {
    width: 100%;
    height: 100%;
    padding-top: 7px;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: .5s;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-inner .live-image-wrap .live-image {
    height: 62px;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-inner .live-title {
    margin-top: -2px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    padding: 0 8px;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-hover {
    width: 100%;
    height: 100%;
    padding-top: 5px;
    visibility: hidden;
    opacity: 0;
    transition: .5s;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-hover .live-case-image {
    margin: 5px 0;
}

.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-hover .live-case-image img {
    height: 53px;
}

.cases-main-block>a[class^=icon] {
    width: 30px;
    height: 30px;
    display: block;
    position: absolute;
    opacity: .2;
    cursor: pointer;
    top: 155px
}

.cases-main-block>a[class^=icon].icon-open-cases {
    background-image: url(../../../../modules/module_page_casesnew/assets/img/icon-inventory.png);
    right: 50px
}

.cases-main-block>a[class^=icon].icon-back-to-cases {
    background-image: url(../../../../modules/module_page_casesnew/assets/img/icon-back.png);
    left: 50px
}

.cases-main-block>a[class^=icon]:hover {
    opacity: .5
}

.cases-main-block h2 {
    display: flex;
    text-transform: uppercase;
    font-size: var(--font-size-l);
    color: var(--text-custom);
    text-align: center;
    width: max-content;
    margin: 1rem auto;
    animation: 800;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    line-height: normal;
}

.cases-main-block h2 svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: currentColor;
}

@media(max-width:991.99px) {
    .cases-main-block h2 {
        font-size: 15px
    }

    .cases-main-block h2 svg {
        width: 15px;
        height: auto;
        fill: var(--span);
    }
}

.cases-main-block .info-block {
    position: relative;
    background: url(../../../../modules/module_page_casesnew/assets/img/info-block-bg.jpg);
    padding: 20px;
    margin-bottom: 10px;
    border-radius: 4px;
    box-shadow: 0 0 96px -15px #c64f47
}

.cases-main-block .info-block>h3 {
    color: #64ca00;
    text-shadow: 0 2px 4px rgba(133, 214, 0, .25)
}

.cases-main-block .info-block>ul {
    margin-left: 15px;
    margin-bottom: 0;
    color: #fff
}

.cases-main-block .info-block>p {
    color: #fff
}

.cases-main-block .main-case {
    background: url(../../../../modules/module_page_casesnew/assets/img/case-bg.png);
    min-height: 253px;
    line-height: 253px;
    text-align: center;
    max-width: 600px !important;
    width: 100%;
    display: block;
    margin: 0 auto;
    margin-bottom: 20px
}

.cases-main-block .main-case img {
    max-width: 300px
}

@media(max-width:991.99px) {
    .cases-main-block .main-case {
        min-height: 150px;
        line-height: 150px;
        background: 0 0
    }

    .cases-main-block .main-case img {
        max-width: 100%
    }

    .cases-main-block button.open-case {
        font-size: 12px
    }
}

.cases-main-block div#open-sum {
    width: 140px;
    margin: 0 auto;
    line-height: normal;
    border: 0;
    font-weight: var(--font-weight-7);
    font-size: var(--font-size-m);
    color: var(--text-custom)
}

.cases-main-block button.open-case[disabled] {
    opacity: .5
}

.cases-main-block button.open-case-fast[disabled] {
    background-image: linear-gradient(135deg, #1e252fc7 0%, #485390ad 46%, #1e252fba 100%) !important;
    opacity: .5
}

@media(max-width:991.99px) {
    .cases-main-block button.open-case {
        font-size: 16px
    }
}

.cases-main-block .roulette {
    padding: 27px 17px 36px;
    position: relative;
    width: 100%;
    height: 243px;
    max-width: 650px !important;
    margin: 0 auto;
}

.cases-main-block .roulette>#sound-point {
    z-index: 2;
    width: 35px;
    height: 35px;
    display: block;
    position: absolute;
    right: 57px;
    top: 0;
    cursor: pointer
}

.cases-main-block .roulette>#sound-point.sound-on {
    background-image: url(../../../../modules/module_page_casesnew/assets/img/icon-sound-on.png);
    transition: .7s;
    opacity: .7;
}

.cases-main-block .roulette>#sound-point.sound-off {
    background-image: url(../../../../modules/module_page_casesnew/assets/img/icon-sound-off.png);
    transition: .7s;
    opacity: .7;
}

.cases-main-block .roulette>#sound-point:hover {
    transition: .7s;
    opacity: 1
}

.cases-main-block .roulette .roulette-slider {
    padding: 0 30px;
    position: relative;
    background-position: 50% 50%;
    height: 173px
}

.cases-main-block .roulette .roulette-slider:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    width: 37%;
    height: 100%;
    background: linear-gradient(90deg, var(--card) 15%, transparent);
    z-index: 1;
}

.cases-main-block .roulette .roulette-slider:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    width: 37%;
    height: 100%;
    background: linear-gradient(270deg, var(--card) 15%, transparent);
    z-index: 1;
}

.cases-main-block .roulette .roulette-slider .r-left,
.cases-main-block .roulette .roulette-slider .r-right {
    position: absolute;
    left: -24px;
    top: -8px;
    bottom: 0;
    display: block;
    background: url(../../../../modules/module_page_casesnew/assets/img/r-left.png) no-repeat;
    width: 73px;
    height: 394px
}

.cases-main-block .roulette .roulette-slider .r-right {
    position: absolute;
    right: -37px;
    top: 3px;
    background: url(../../../../modules/module_page_casesnew/assets/img/r-right.png) no-repeat;
    width: 83px;
    height: 379px
}

.cases-main-block .roulette .roulette-slider .r-side,
.cases-main-block .roulette .roulette-slider .r-side2 {
    left: 16px;
    width: calc(50% - 16px);
    top: 4px;
    bottom: 0;
    position: absolute;
    background: url(../../../../modules/module_page_casesnew/assets/img/r-side.png) repeat-x
}

.cases-main-block .roulette .roulette-slider .r-side2 {
    right: 14px;
    width: calc(50% - 14px);
}

.cases-main-block .roulette .roulette-slider .top-arr,
.cases-main-block .roulette .roulette-slider .bottom-arr {
    z-index: 1;
    background-position: top;
    width: max-content;
    height: max-content;
    position: absolute;
    left: 50%;
    top: .5rem;
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
}

.cases-main-block .roulette .roulette-slider .bottom-arr {
    background-position-x: 1px;
    background-position-y: bottom;
    bottom: .3rem;
    top: unset;
}

.cases-main-block .roulette .roulette-slider .top-arr svg {
    rotate: 180deg
}

.cases-main-block .roulette .roulette-slider .bottom-arr svg,
.cases-main-block .roulette .roulette-slider .top-arr svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: var(--span);
}

.cases-main-block .roulette .roulette-slider .roulette-area {
    overflow: hidden;
    width: calc(100% + 30px);
    height: 100%;
    margin-left: -14px
}

.cases-main-block .roulette .roulette-slider .roulette-area #roulette {
    height: 150px;
    width: 190px;
    top: 15px;
    position: relative;
    margin: 0 auto
}

.cases-main-block .roulette .roulette-slider .roulette-area #roulette .roulette-inner {
    transition: 0s linear;
    position: relative;
    top: 0;
    white-space: nowrap;
    height: 100%;
    width: 100%
}

.cases-main-block .roulette .roulette-slider .roulette-area #roulette .roulette-inner .subject-block {
    box-shadow: none !important
}

#cases>p {
    color: #64ca00;
    text-shadow: 0 2px 4px rgba(133, 214, 0, .25);
    font-size: 20px;
    margin-left: 15px;
    font-weight: 700
}

#cases .case-block {
    /* overflow: hidden; */
    display: inline-block;
    position: relative;
    min-height: 280px;
    width: 240px;
    margin: 5px;
}

#cases .case-block a.case-link {
    display: block;
    color: #fff;
    -webkit-transition: color .3s ease;
    transition: color .3s ease;
    position: relative;
    padding: 5px 0;
    width: 100%;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

.case-link:hover .case-price {
    filter: brightness(110%);
}

#cases .case-block a.case-link:hover span.case-img-wrap {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

#cases .case-block span.case-img-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1;
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    position: relative;
    height: 160px
}

#cases .case-block span.case-img-wrap .case-img {
    max-width: 90%;
    max-height: 250px
}

#cases .case-block span.case-span-wrap {
    display: grid;
    margin-top: 15px;
    position: relative;
    z-index: 1;
    justify-items: center;
}

#cases .case-block span.case-span-wrap .case-price {
    font-size: var(--font-size-m);
    color: #433722;
    font-weight: var(--font-weight-7);
    position: relative;
    padding-inline: 1rem;
    min-width: 5.2rem;
    height: var(--input-height);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition-duration);
}

#cases .case-block span.case-span-wrap .case-name {
    display: block;
    color: var(--text-default);
    text-align: center;
    font-size: var(--font-size-default);
    margin-top: .3rem;
    font-weight: var(--font-weight-7);
    transition: .3s;
    white-space: nowrap;
}

#cases .case-block span.case-span-wrap .case-price:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: -1;
    background-color: var(--money);
    border-radius: var(--br-8);
}

#subjects .subject-block,
#roulette .subject-block,
#wins .subject-block {
    overflow: hidden;
    display: inline-block;
    position: relative;
    height: 140px;
    width: 180px;
    margin: 5px;
    border-radius: 10px;
}

#subjects .subject-block.gold,
#roulette .subject-block.gold,
#wins .subject-block.gold {
    background: linear-gradient(180deg, rgba(81, 55, 17, 0), rgb(197 139 28 / 47%) 90%), rgb(116 88 31 / 23%);
}

#subjects .subject-block.gold .subject>span:nth-child(1),
#roulette .subject-block.gold .subject>span:nth-child(1),
#wins .subject-block.gold .subject>span:nth-child(1) {
    color: #eabd6a;
}

#subjects .subject-block.red,
#roulette .subject-block.red,
#wins .subject-block.red {
    background: linear-gradient(180deg, rgba(81, 25, 17, 0), rgba(197, 48, 28, .24) 90%), #2b1719;
}

#subjects .subject-block.red .subject>span:nth-child(1),
#roulette .subject-block.red .subject>span:nth-child(1),
#wins .subject-block.red .subject>span:nth-child(1) {
    color: #f2625a;
}

#subjects .subject-block.purple,
#roulette .subject-block.purple,
#wins .subject-block.purple {
    background: linear-gradient(180deg, rgba(34, 17, 81, 0), rgba(125, 46, 204, .24) 90%), #201f2b;
}

#subjects .subject-block.purple .subject>span:nth-child(1),
#roulette .subject-block.purple .subject>span:nth-child(1),
#wins .subject-block.purple .subject>span:nth-child(1) {
    color: #9170c1;
}

#subjects .subject-block.blue,
#roulette .subject-block.blue,
#wins .subject-block.blue {
    background: linear-gradient(180deg, rgba(26, 17, 81, 0), rgb(82 105 224 / 24%) 90%), #1a1c29;
}

#subjects .subject-block.blue .subject>span:nth-child(1),
#roulette .subject-block.blue .subject>span:nth-child(1),
#wins .subject-block.blue .subject>span:nth-child(1) {
    color: #7280cf;
}

#subjects .subject-block.turquoise,
#roulette .subject-block.turquoise,
#wins .subject-block.turquoise {
    background: linear-gradient(180deg, rgba(36, 70, 78, 0), rgba(82, 172, 192, .22) 90%), #1b2831;
}

#subjects .subject-block.turquoise .subject>span:nth-child(1),
#roulette .subject-block.turquoise .subject>span:nth-child(1),
#wins .subject-block.turquoise .subject>span:nth-child(1) {
    color: #88c3da;
}

#subjects .subject-block.grey,
#roulette .subject-block.grey,
#wins .subject-block.grey {
    background: linear-gradient(180deg, rgba(73, 78, 84, 0), rgba(130, 138, 150, .24) 90%), #1d1d25;
}

#subjects .subject-block.grey .subject>span:nth-child(1),
#roulette .subject-block.grey .subject>span:nth-child(1),
#wins .subject-block.grey .subject>span:nth-child(1) {
    color: #adafb6;
}

#subjects .subject-block.pink,
#roulette .subject-block.pink,
#wins .subject-block.pink {
    background: linear-gradient(180deg, rgba(81, 17, 29, 0), rgba(209, 56, 102, .24) 90%), #2c1a23;
}

#subjects .subject-block.pink .subject>span:nth-child(1),
#roulette .subject-block.pink .subject>span:nth-child(1),
#wins .subject-block.pink .subject>span:nth-child(1) {
    color: #d87699;
}

#subjects .subject-block>.subject-services,
#roulette .subject-block>.subject-services,
#wins .subject-block>.subject-services {
    height: 140px;
    width: 100%;
    display: table;
    padding: 6px;
}

#subjects .subject-block>.subject-services .subject-fix,
#roulette .subject-block>.subject-services .subject-fix,
#wins .subject-block>.subject-services .subject-fix {
    display: table-cell;
    height: auto;
    text-align: center;
    position: relative;
}

#subjects .subject-block>.subject-services .subject-fix .subject,
#roulette .subject-block>.subject-services .subject-fix .subject {
    position: absolute;
    bottom: 0px;
    left: 5px;
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-start;
}

#subjects .subject-block>.subject-services .subject-fix .subject span,
#roulette .subject-block>.subject-services .subject-fix .subject span,
#wins .subject-block>.subject-services .subject-fix .subject span {
    display: block
}

#subjects .subject-block>.subject-services .subject-fix .subject span:nth-child(1),
#roulette .subject-block>.subject-services .subject-fix .subject span:nth-child(1),
#wins .subject-block>.subject-services .subject-fix .subject span:nth-child(1) {
    font-size: 13px;
    font-weight: 700;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

#subjects .subject-block>.subject-services .subject-fix .subject span:nth-child(2),
#subjects .subject-block>.subject-services .subject-fix .subject span:nth-child(3),
#roulette .subject-block>.subject-services .subject-fix .subject span:nth-child(2),
#roulette .subject-block>.subject-services .subject-fix .subject span:nth-child(3),
#wins .subject-block>.subject-services .subject-fix .subject span:nth-child(2),
#wins .subject-block>.subject-services .subject-fix .subject span:nth-child(3) {
    line-height: 10px;
    font-size: 10px;
    font-weight: 400;
    color: var(--text-default);
    text-transform: uppercase;
}

#subjects .subject-block>.subject-services .subject-fix .subject span:nth-child(3),
#roulette .subject-block>.subject-services .subject-fix .subject span:nth-child(3),
#wins .subject-block>.subject-services .subject-fix .subject span:nth-child(3) {
    margin-bottom: 5px
}

#wins .subject-block .subject-price {
    position: absolute;
    z-index: 3;
    top: -4px;
    right: 6px;
    color: var(--text-custom);
    font-size: 11px;
    font-weight: 600;
    padding: 5px 12px 5px 5px;
}

#wins .subject-block {
    overflow: visible
}

#wins .subject-block .subject-price:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: -1;
    background-color: var(--money);
    -webkit-transform: skewX(-15deg);
    transform: skewX(-15deg);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    border-radius: 5px;
    -webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
    box-shadow: 6px 6px 0px rgb(0 0 0 / 8%);
}

#wins .subject-block .subject-hover {
    position: absolute;
    bottom: 10px;
    width: 100%;
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: transform .3s ease, opacity .3s ease;
    transition: transform .3s ease, opacity .3s ease, -webkit-transform .3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 2
}

#wins .subject-block:hover .subject-hover {
    -webkit-transform: none;
    transform: none;
    opacity: 1
}

#wins .subject-block .subject-hover a {
    display: inline-block;
    color: var(--span);
    font-weight: 600;
    letter-spacing: .5px;
    border-radius: 6px;
    text-transform: uppercase;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    font-size: 11px;
    position: relative;
    overflow: hidden;
    padding: 8px 11px;
    background: var(--bg-modal);
}

.bonuses-title {
    color: var(--text-default);
    font-weight: var(--font-weight-8);
    font-family: var(--font-family-1);
    font-size: var(--font-size-l);
    margin-bottom: 1rem;
}

.bonuses-but {
    position: relative;
    margin-block: 1rem .1rem;
    display: flex;
    align-items: center;
    gap: .3rem;
    justify-content: space-between;
}

#wins .subject-block .subject-hover a:hover {
    text-decoration: none;
    cursor: pointer
}

#drop-area {
    border: 2px dashed var(--transparent-20-w);
    border-radius: 12px;
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#drop-area p {
    font-size: var(--font-size-s);
    font-weight: var(--font-weight-5);
    color: var(--text-custom);
}

#drop-area.highlight {
    border-color: var(--span);
}

.my-form {
    margin-bottom: 10px
}

#gallery {
    margin: 0;
}

#gallery img {
    width: 150px;
    margin-bottom: 10px;
    margin-right: 10px;
    vertical-align: middle
}

#fileElem {
    display: none;
}

.float_none {
    float: none !important
}

.swal2-container {
    background: url(../../../../modules/module_page_casesnew/assets/img/rally.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-size: cover;
}

.knopkacases {
    margin-top: 15px;
    width: max-content;
    justify-content: center;
    display: inline-flex;
    white-space: nowrap;
}

.infoblock1:hover {
    background: var(--span);
    border-radius: 6px
}

.infoblock2:hover {
    background: #373c66;
    border-radius: 6px
}

.deletebut {
    cursor: pointer;
    white-space: nowrap;
    text-align: center;
    padding: 15px;
    outline: none;
    font-size: .8rem;
    background: #c83f3f;
    color: #fff;
    font-weight: 700;
    border-radius: 6px;
    word-wrap: break-word;
    transition: .7s;
    position: absolute;
    margin: -44px 0;
    right: 25px
}

.edittsbtn {
    cursor: pointer;
    white-space: nowrap;
    text-align: center;
    padding: 9px 8px;
    outline: none;
    font-size: .8rem;
    background: var(--span);
    color: #fff;
    font-weight: 700;
    border-radius: 6px;
    word-wrap: break-word;
    transition: .7s;
    margin-right: -40px
}

.swal2-popup #swal2-content {
    background-color: var(--card);
    padding: 2rem;
    border-radius: var(--br-20);
    display: flex !important;
    flex-direction: column;
}

.swal2-content span {
    color: var(--money) !important;
}

.donatggwp {
    min-height: 91px;
    background-color: var(--transparent-3-w);
    padding: 5px;
    border-radius: var(--br-12);
    border: 1px solid var(--transparent-3-w);
    display: flex;
}

.live-username {
    width: 109px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
    margin: 0 auto;
}

span.case-open {
    font-size: var(--font-size-xs);
    margin: 0 auto 0.5rem;
    color: var(--text-secondary);
}

.userbar__cases {
    display: flex;
    justify-content: center;
    border: 1px solid var(--transparent-3-w);
    background-color: var(--card);
    border-radius: var(--br-12);
    margin-block: .3rem;
}

.username__cases {
    font-size: var(--font-size-m);
    font-weight: var(--font-weight-7);
    color: var(--text-default);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.flexmenu_cases {
    display: flex;
    align-items: center;
    padding: .5rem;
    gap: .3rem;
}

.secondblock__cases {
    text-align: left;
    display: grid;
}

.userbalance_cases {
    display: flex;
    color: var(--money);
    font-size: var(--font-size-m);
    font-weight: var(--font-weight-5);
    align-items: center;
    gap: .5rem;
}

.userbalance_cases svg {
    fill: var(--money);
    width: 1rem;
    height: 1rem;
}

.price_case {
    font-weight: 800;
    color: var(--money);
    background-color: var(--money-bg);
    padding: 10px 30px;
    border-radius: 6px;
    font-size: 14px;
}

.price_block_kostyl {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

b.price_text {
    font-weight: 500;
    text-transform: uppercase;
    color: var(--text-custom);
    font-size: 12px;
}

.case_btn {
    display: flex;
    background-color: var(--button);
    border-radius: 8px;
    width: max-content;
    color: var(--text-default);
    height: 40px;
    padding: 0 15px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 1px;
    transition: .3s;
    cursor: pointer;
    align-items: center;
    justify-content: center;
}

.case_btn:hover {
    background-color: var(--button-hover);
    color: var(--span);
    transition: .3s;
}

.case_btn svg {
    width: 12px;
    height: auto;
    fill: var(--text-custom);
    transition: .3s;
}

.case_btn:hover svg {
    fill: var(--text-default);
    transition: .3s;
}

.buttons_adm_case {
    display: flex;
    justify-content: flex-end;
    gap: 5px;
    align-items: center;
}

.case-buttons_bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
}

.delete_taken_cases {
    display: flex;
    justify-content: center;
    background-color: var(--button);
    border-radius: 8px;
    margin-top: 10px;
    padding: 10px 10px;
    color: var(--text-default);
    text-transform: uppercase;
    font-weight: 700;
    transition: .3s;
    cursor: pointer;
    font-size: 12px;
}

.delete_taken_cases:hover {
    background-color: var(--button-hover);
    color: var(--red);
    transition: .3s;
}

.recommended {
    display: flex;
    font-size: 12px;
    margin: 10px auto;
    text-transform: uppercase;
    color: var(--red);
    font-weight: 700;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    max-width: 300px;
    padding: 14px;
    border-radius: 8px;
    user-select: none;
}

.auth_info {
    display: flex;
    color: var(--orange);
    gap: .5rem;
    flex-direction: row;
    padding: 1rem;
    width: max-content;
    border: 1px dashed rgb(246 185 73 / 30%);
    margin: 20px auto;
    border-radius: var(--br-12);
    justify-content: center;
    background-color: rgb(246 185 73 / 10%);
    align-items: center;
    white-space: nowrap;
    font-size: var(--font-size-m);
    font-weight: var(--font-weight-6);
    cursor: pointer;
}

.auth_info svg {
    display: flex;
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 6px;
    fill: var(--orange);
    align-items: center;
    justify-content: center;
    flex: none;
}

.auth_info_text {
    white-space: nowrap;
    display: flex;
}

#balance_content {
    color: var(--money);
    line-height: normal;
    display: flex;
    align-items: center;
    gap: .3rem;
}


.card_edit_block {
    margin: 0 -5px;
}

form#subject_delete {
    margin-top: -43px;
}

.case_buttons {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (min-width: 1500px) {
    .card-header {
        padding: 15px 20px 15px 20px;
    }
}

img.subject-image {
    margin-left: auto;
    margin-right: auto;
    width: 6rem;
    height: 6rem;
}

.case_userbar_btn {
    display: flex;
    gap: .3rem;
}

.case_balance_name {
    display: flex;
    align-items: center;
    gap: .8rem;
}

.case_balance_name img {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: var(--br-8);
}

.cases-section__title {
    margin: 10px 0 16px;
}

.new-title {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
    line-height: 19px;
    text-align: left;
    text-transform: uppercase;
    color: #fff;
}

.new-title__text {
    display: flex;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media(max-width:991.99px) {
    .flexmenu_cases {
        gap: 5px;
        padding-bottom: 10px;
    }

    .flexmenu_cases {
        flex-direction: column;
    }

    .case_userbar_btn {
        flex-direction: row;
    }

    .new-title {
        font-size: 22px;
        line-height: 26px;
    }
}

#live_content {
    overflow-x: scroll;
}

#live_content::-webkit-scrollbar {
    display: none;
}

.case_img {
    width: 2.5rem;
    height: 2.5rem;
}

.cases__open-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: .5rem;
    margin-block: 1rem;
}

.case_settings-form,
.cases__settings-buttons,
.cases-label,
#subject_content_html {
    display: flex;
    flex-direction: column;
}

.cases__settings-buttons {
    gap: .15rem;
}

#subject_content_html {
    align-items: flex-start;
    white-space: normal;
}

#subject_content_html br {
    display: none;
}

.cases__list-img,
.cases__list-case {
    width: 2rem;
    height: 2rem;
    border-radius: var(--br-50);
}

.cases__list-case {
    border-radius: unset;
}

.cases__list-gap {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.cases__yourwin {
    font-weight: var(--font-weight-6) !important;
    letter-spacing: unset !important;
    margin-block: 1rem !important;
}

.cases__auth-button {
    margin: 0 auto;
}
/* ===== Знижки на кейси (додано) ===== */
.case-discount-badge {
    position: absolute;
    top: 6px;
    right: 6px;
    background: linear-gradient(135deg, #ff3b3b, #d60000);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    padding: 4px 7px;
    border-radius: 6px;
    box-shadow: 0 2px 6px rgba(0,0,0,.35);
    z-index: 2;
    pointer-events: none;
}

.case-discount-badge--inline {
    position: static;
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
}

#cases .case-block span.case-span-wrap .case-price--old {
    text-decoration: line-through;
    opacity: .55;
    font-size: .85em;
    height: auto;
    min-width: auto;
    padding-inline: .5rem;
}
#cases .case-block span.case-span-wrap .case-price--old:before {
    display: none;
}

#cases .case-block span.case-span-wrap .case-price--new {
    color: #ff3b3b;
}

.price_case--old {
    text-decoration: line-through;
    opacity: .55;
    font-size: .85em;
    margin-right: 8px;
}

.price_case--new {
    color: #ff3b3b;
    font-weight: 700;
}

.case-discount-admin-badge {
    display: inline-block;
    background: #d60000;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 5px;
}

/* ===== Статистика (гравець + адмін) ===== */
.cases-stats-wrap { display: flex; flex-direction: column; gap: 16px; }
.cases-stats-bar { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.cases-stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.cases-stat-card {
    background: var(--card);
    border: 1px solid var(--grey);
    border-radius: var(--br-16);
    padding: 16px 18px;
}
.cases-stat-card .cases-stat-label { font-size: var(--font-size-xs); opacity: .6; margin-bottom: 6px; }
.cases-stat-card .cases-stat-value { font-size: var(--font-size-xl); font-weight: var(--font-weight-8); }
.cases-stat-card .cases-stat-sub { font-size: var(--font-size-xs); opacity: .55; margin-top: 4px; }
.cases-stat-card.accent .cases-stat-value { color: var(--money, #ffc100); }
.cases-stats-note { font-size: var(--font-size-xs); opacity: .55; margin-top: 8px; }
.cases-stats-search { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }
.cases-stats-search input { flex: 1 1 260px; }
.cases-rank { font-weight: var(--font-weight-8); opacity: .8; width: 40px; }
.cases-me { color: var(--money, #ffc100); font-size: var(--font-size-xs); margin-left: 6px; }
.cases-empty { text-align: center; opacity: .6; padding: 18px 0; }

/* ===== Сторінка тех. робіт (у стилі 503 сайту) ===== */
.cases-maint { display: flex; justify-content: center; padding: 30px 0 10px; }
.cases-maint__card {
    display: grid;
    grid-template-columns: minmax(200px, 300px) 1fr;
    width: 100%;
    max-width: 1030px;
    background: var(--card);
    border: 1px solid var(--grey);
    border-radius: 28px;
    overflow: hidden;
}
.cases-maint__left {
    display: flex; flex-direction: column; justify-content: space-between;
    padding: 0 0 22px;
    border-right: 1px solid var(--grey);
    background: linear-gradient(180deg, rgba(46, 204, 113, .10), transparent 70%);
}
.cases-maint__art { flex: 1; display: flex; align-items: center; justify-content: center; min-height: 260px; }
.cases-maint__art svg { width: 120px; height: 120px; opacity: .55; color: var(--span, #ccc); }
.cases-maint__left .cases-maint__btns { padding: 0 22px; }
.cases-maint__right { display: flex; flex-direction: column; padding: 34px 30px 22px; text-align: center; }
.cases-maint__title { font-weight: var(--font-weight-7); opacity: .8; }
.cases-maint__code {
    font-size: clamp(70px, 12vw, 130px); font-weight: 900; line-height: 1;
    opacity: .08; letter-spacing: 2px; margin: 26px 0 24px;
}
.cases-maint__msg { color: #ff4d4d; font-weight: var(--font-weight-7); font-size: var(--font-size-l); }
.cases-maint__sub { opacity: .6; margin-top: 10px; }
.cases-maint__right .cases-maint__btns { margin-top: auto; padding-top: 70px; }
.cases-maint__btns { display: flex; gap: 12px; }
.cases-maint__btn {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 8px;
    padding: 14px 16px; border-radius: 14px; background: rgba(255,255,255,.07);
    color: var(--span, #ddd); text-decoration: none; font-weight: var(--font-weight-6);
    transition: background .15s;
}
.cases-maint__btn:hover { background: rgba(255,255,255,.12); }
.cases-maint__btn.gold { background: rgba(255, 193, 0, .10); color: #ffc87a; }
.cases-maint__btn.gold:hover { background: rgba(255, 193, 0, .18); }
.cases-maint-admin-note {
    margin: 0 0 12px; padding: 10px 14px; border-radius: 12px;
    background: rgba(255, 77, 77, .12); color: #ff6b6b; font-size: var(--font-size-s);
}
@media (max-width: 768px) {
    .cases-maint__card { grid-template-columns: 1fr; }
    .cases-maint__left { border-right: 0; border-bottom: 1px solid var(--grey); }
    .cases-maint__art { min-height: 150px; }
    .cases-maint__right { padding: 24px 18px 18px; }
    .cases-maint__right .cases-maint__btns { padding-top: 30px; }
}

/* ===== Лайв-стрічка: компактніша картка, "термін · час тому" в один рядок ===== */
.cases-main-block .live-list-wrap .live-list .live-item .live-link {
    height: 100px;
    padding-bottom: 0;
    box-sizing: border-box;
}
.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-inner .live-image-wrap .live-image {
    display: block;
    margin: 0 auto;
    height: 62px;
}
.cases-main-block .live-list-wrap .live-list .live-item .live-link .live-inner-wrap .live-inner .live-title { line-height: 16px; }
.live-time {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin-top: 2px;
    padding: 0 6px;
    font-size: 10px;
    line-height: 12px;
    opacity: .6;
    white-space: nowrap;
    pointer-events: none;
}
.live-time .live-desc { min-width: 0; overflow: hidden; text-overflow: ellipsis; flex: 0 1 auto; }
.live-time .live-desc + .live-ago::before { content: "·"; margin-right: 4px; }
.live-time .live-ago { flex: 0 0 auto; }

/* ===== Мітки кейсів: NEW / HOT / LIMITED / SALE ===== */
.case-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 3;
    padding: 4px 9px;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .6px;
    color: #fff;
    text-transform: uppercase;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .35);
    pointer-events: none;
}
.case-badge--new     { background: linear-gradient(135deg, #2ecc71, #18a058); }
.case-badge--hot     { background: linear-gradient(135deg, #ff9f1a, #ff3b30); }
.case-badge--limited { background: linear-gradient(135deg, #a259ff, #6a2cdc); }
.case-badge--sale    { background: linear-gradient(135deg, #ff4d8d, #d6204f); }
.case-badge--static  { position: static; display: inline-block; box-shadow: none; }

/* ===== Очищення лічильника відкриттів ===== */
.clear-opens-list { display: flex; flex-direction: column; gap: 8px; max-height: 340px; overflow-y: auto; margin: 12px 0; text-align: left; }
.clear-opens-row { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; background: rgba(255,255,255,.04); }
.clear-opens-row .clear-opens-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.clear-opens-row .clear-opens-count { opacity: .6; font-size: 12px; white-space: nowrap; }
.clear-opens-note { font-size: 12px; opacity: .6; text-align: left; }

/* =====================================================================
   НОВИЙ ДИЗАЙН КАРТОК ПРЕДМЕТІВ / АДМІНКИ КЕЙСА
   Кольори беруться з теми neo3, у дужках — запасні значення.
   ===================================================================== */
:root {
    --cs-accent: #7c8cf8;                                            /* кнопка "Відкрити" / "Додати" */
    --cs-accent-hover: #909ef9;
    --cs-surface: var(--transparent-5-w, rgba(255, 255, 255, .05));  /* фон карток і кнопок */
    --cs-surface-2: var(--transparent-10-w, rgba(255, 255, 255, .08));
    --cs-border: var(--transparent-5-w, rgba(255, 255, 255, .06));
    --cs-text: var(--text-default, #fff);
    --cs-text-2: var(--text-secondary, #8d8d8d);
    --cs-chance: #f0c75e;
    --cs-ok: #3fd47a;
    --cs-warn: #f0a33c;
    --cs-bad: #ff5b5b;
}

/* ---------- сітка ---------- */
.cs-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr));
    text-align: left;
}

.cs-grid--player {
    padding: 0 20px;
}

.cs-section-title {
    justify-content: center;
    text-align: center;
    margin: 28px auto 18px !important;
    padding: 0 !important;
    background: none !important;
    color: var(--cs-text) !important;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .02em;
}

/* ---------- картка ---------- */
.cs-item {
    --rc: #8a8a8a;
    position: relative;
    height: 230px;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background:
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 30%, transparent) 0%, transparent 58%),
        var(--cs-surface);
    isolation: isolate;
    user-select: none;
}

.cs-item__rarity {
    position: absolute;
    top: 16px;
    left: 16px;
    width: 18px;
    height: 5px;
    border-radius: 3px;
    background: var(--rc);
    box-shadow: 0 0 10px color-mix(in srgb, var(--rc) 70%, transparent);
    z-index: 3;
}

.cs-item__top {
    position: absolute;
    top: 12px;
    right: 12px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
    z-index: 3;
    line-height: 1.1;
}

.cs-item__chance {
    color: var(--cs-chance);
    font-size: 12px;
    font-weight: 600;
}

.cs-item__sale {
    color: var(--cs-text);
    font-size: 12px;
    font-weight: 600;
    opacity: .85;
}

.cs-item__meta {
    position: relative;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 16px;
}

/* діагональні смуги за картинкою (якщо в інвентарі не задано свій background_logo) */
.cs-item__stripes {
    position: absolute;
    width: 8.5rem;
    height: 7rem;
    opacity: .9;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 100'%3E%3Cg stroke='%23fff' stroke-opacity='.06' stroke-width='9' stroke-linecap='round'%3E%3Cpath d='M18 40 40 18M50 40 72 18M82 40 104 18M8 72 30 50M40 72 62 50M72 72 94 50M24 94 46 72M56 94 78 72M88 94 110 72'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
    z-index: 1;
}

.cs-item__logo {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

.cs-item__logo svg {
    width: 7rem;
    height: auto;
    fill: var(--cs-text);
    opacity: .05;
}

.cs-item__meta img {
    position: relative;
    max-height: 6.4rem;
    max-width: 80%;
    object-fit: contain;
    z-index: 2;
    filter: drop-shadow(0 8px 14px rgba(0, 0, 0, .35));
    transition: transform .25s ease;
}

.cs-item:hover .cs-item__meta img {
    transform: translateY(-4px) scale(1.05);
}

.cs-item__warn {
    position: relative;
    z-index: 2;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-weight: 800;
    font-size: 1.4rem;
    color: var(--cs-bad);
    background: color-mix(in srgb, var(--cs-bad) 15%, transparent);
}

.cs-item__info {
    padding: 0 16px 16px;
    line-height: 18px;
    z-index: 3;
    transition: opacity .2s, transform .2s;
}

.cs-item__name,
.cs-item__desc {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cs-item__name {
    color: var(--cs-text);
    font-size: 14px;
    font-weight: 600;
}

.cs-item__desc {
    color: var(--cs-text-2);
    font-size: 13px;
}

.cs-item--missing {
    outline: 1px dashed color-mix(in srgb, var(--cs-bad) 60%, transparent);
    outline-offset: -1px;
}

/* ---------- дії адміна на картці (як в інвентарі: з'являються при наведенні) ---------- */
.cs-item__actions {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: .6rem;
    display: flex;
    gap: .4rem;
    z-index: 4;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .2s, transform .2s;
}

.cs-item__actions button {
    flex: 1;
    padding: 8px 6px;
    border-radius: 6px;
    font-size: 12px;
    background: rgba(20, 20, 20, .55);
    backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 255, 255, .14);
    color: var(--cs-text);
    cursor: pointer;
}

.cs-item__actions button:hover {
    background: rgba(255, 255, 255, .1);
}

.cs-item__actions .cs-item__del:hover {
    border-color: var(--cs-bad);
    color: var(--cs-bad);
}

.cs-item--admin:hover .cs-item__info {
    opacity: 0;
    transform: translateY(-4px);
}

.cs-item--admin:hover .cs-item__actions {
    opacity: 1;
    transform: translateY(0);
}

@media (hover: none) {
    .cs-item--admin .cs-item__actions { opacity: 1; transform: none; }
    .cs-item--admin .cs-item__info { opacity: 0; }
}

/* ---------- адмінка кейса ---------- */
.cs-admin {
    background: var(--card, #1b1b1b);
    border-radius: var(--br-12, 12px);
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cs-admin__head {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px;
    border-radius: 10px;
    border: 1px solid var(--cs-border);
    flex-wrap: wrap;
}

.cs-admin__back {
    width: 52px;
    height: 52px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    background: var(--cs-surface);
    flex-shrink: 0;
    transition: background .2s;
}

.cs-admin__back:hover {
    background: var(--cs-surface-2);
}

.cs-admin__back svg {
    width: 18px;
    height: 18px;
    fill: var(--cs-text);
}

.cs-admin__case-img {
    width: 80px;
    height: 76px;
    border-radius: 8px;
    background: var(--cs-surface);
    display: grid;
    place-items: center;
    flex-shrink: 0;
}

.cs-admin__case-img img {
    max-width: 64px;
    max-height: 64px;
    object-fit: contain;
}

.cs-admin__case-info {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.cs-admin__case-name {
    font-size: 18px;
    font-weight: 600;
    color: var(--cs-text);
}

.cs-admin__tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.cs-tag {
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 500;
    color: var(--cs-text-2);
    background: var(--cs-surface);
}

.cs-tag--sale { color: var(--cs-ok); }
.cs-tag--muted { color: var(--cs-bad); }

.cs-admin__sum {
    margin-left: auto;
    width: min(460px, 100%);
    display: flex;
    flex-direction: column;
    gap: 10px;
    --sum-color: var(--cs-ok);
}

.cs-admin__sum--under { --sum-color: var(--cs-warn); }
.cs-admin__sum--over { --sum-color: var(--cs-bad); }

.cs-admin__sum-row {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: var(--cs-text);
}

.cs-admin__sum-row b {
    color: var(--sum-color);
    font-weight: 600;
}

.cs-admin__sum-bar {
    height: 5px;
    border-radius: 3px;
    background: var(--cs-surface-2);
    overflow: hidden;
}

.cs-admin__sum-bar i {
    display: block;
    height: 100%;
    border-radius: 3px;
    background: var(--sum-color);
    transition: width .4s;
}

.cs-admin__toolbar {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
    padding: 6px;
    border-radius: 10px;
    border: 1px solid var(--cs-border);
}

.cs-admin__toolbar-group {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.cs-tool {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 20px;
    border-radius: 8px;
    background: var(--cs-surface);
    color: var(--cs-text);
    font-size: 15px;
    font-weight: 500;
    border: 0;
    cursor: pointer;
    transition: background .2s, color .2s;
    white-space: nowrap;
}

.cs-tool svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
    flex-shrink: 0;
}

.cs-tool:hover:not([disabled]) {
    background: var(--cs-surface-2);
}

.cs-tool[disabled] {
    opacity: .4;
    cursor: not-allowed;
}

.cs-tool--icon {
    padding: 12px 14px;
}

.cs-tool--accent:hover:not([disabled]) {
    color: var(--cs-accent);
}

.cs-empty {
    padding: 40px 20px;
    text-align: center;
    color: var(--cs-text-2);
    border-radius: 10px;
    border: 1px dashed var(--cs-border);
}

/* ---------- блок відкриття кейса ---------- */
.cs-open {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 10px;
    flex-wrap: wrap;
    margin: 22px auto 6px;
    padding: 0 16px;
}

.cs-open__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 220px;
    padding: 16px 36px;
    border-radius: 8px;
    border: 0;
    background: var(--cs-accent);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .02em;
    cursor: pointer;
    transition: background .2s, transform .1s, opacity .2s;
}

.cs-open__btn:hover:not([disabled]) {
    background: var(--cs-accent-hover);
}

.cs-open__btn:active:not([disabled]) {
    transform: translateY(1px);
}

.cs-open__btn[disabled] {
    opacity: .5;
    cursor: wait;
}

.cs-open__btn b { font-weight: 800; }

.cs-open__btn s {
    opacity: .6;
    font-weight: 500;
    font-size: 13px;
}

.cs-open__discount {
    padding: 3px 6px;
    border-radius: 5px;
    font-size: 11px;
    font-style: normal;
    font-weight: 700;
    color: #fff;
    background: var(--cs-bad);
}

.cs-open__fast {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    padding: 0 18px;
    border-radius: 8px;
    border: 1px solid var(--cs-border);
    background: var(--cs-surface);
    cursor: pointer;
    min-height: 52px;
}

.cs-open__fast span {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--cs-text);
    opacity: .85;
}

.cs-open__fast input {
    display: none;
}

.cs-open__fast i {
    position: relative;
    width: 40px;
    height: 22px;
    border-radius: 11px;
    background: var(--cs-surface-2);
    transition: background .2s;
}

.cs-open__fast i::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #6b6b6b;
    transition: transform .2s, background .2s;
}

.cs-open__fast input:checked + i {
    background: color-mix(in srgb, var(--cs-accent) 45%, transparent);
}

.cs-open__fast input:checked + i::after {
    transform: translateX(18px);
    background: #fff;
}

@media (max-width: 767.98px) {
    .cs-grid { grid-template-columns: repeat(auto-fill, minmax(8.8rem, 1fr)); gap: 8px; }
    .cs-grid--player { padding: 0 10px; }
    .cs-item { height: 200px; }
    .cs-item__meta img { max-height: 5rem; }
    .cs-admin__sum { margin-left: 0; }
    .cs-tool { flex: 1; justify-content: center; padding: 11px 14px; font-size: 14px; }
    .cs-open__btn, .cs-open__fast { width: 100%; justify-content: center; }
}

/* =====================================================================
   НОВИЙ ДИЗАЙН (ч.2): навігація, юзербар, адмінка, рулетка, таймер
   ===================================================================== */

/* ---------- верхні вкладки ---------- */
.admin_nav.cs-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px;
    border-radius: var(--br-12, 12px);
    background: var(--card, #1b1b1b);
}

.cs-nav__item {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 18px;
    border-radius: 8px;
    background: var(--cs-surface);
    color: var(--cs-text) !important;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s, color .2s;
}

.cs-nav__item svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
    flex-shrink: 0;
}

.cs-nav__item:hover {
    background: var(--cs-surface-2);
}

.cs-nav__item.active {
    background: var(--cs-accent);
    color: #fff !important;
}

.cs-maint-note {
    margin-top: 8px;
    padding: 12px 16px;
    border-radius: 10px;
    font-size: 13px;
    color: #ff8a8a;
    background: color-mix(in srgb, var(--cs-bad) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--cs-bad) 25%, transparent);
}

/* ---------- юзербар (нік, баланс, кнопки) ---------- */
.userbar__cases.cs-userbar {
    border: 0;
    border-radius: var(--br-12, 12px);
    background: var(--card, #1b1b1b);
}

.cs-userbar .case_userbar_btn .button,
.cs-userbar .pay-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    height: 44px;
    padding: 0 18px;
    border-radius: 8px;
    border: 0;
    font-size: 14px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    white-space: nowrap;
    transition: background .2s, color .2s;
}

.cs-userbar .case_userbar_btn .button {
    background: var(--cs-surface);
    color: var(--cs-text);
}

.cs-userbar .case_userbar_btn .button:hover {
    background: var(--cs-surface-2);
}

.cs-userbar .case_userbar_btn .button svg,
.cs-userbar .pay-link svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}

.cs-userbar .case_userbar_btn {
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

/* ---------- панелі адмінки ---------- */
.cs-panel {
    background: var(--card, #1b1b1b);
    border-radius: var(--br-12, 12px);
    padding: 14px;
}

.cs-panel__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--cs-border);
    font-size: 15px;
    font-weight: 600;
    color: var(--cs-text);
}

.cs-tool--sm {
    padding: 8px 14px;
    font-size: 13px;
}

.cs-tool--primary {
    justify-content: center;
    width: 100%;
    background: var(--cs-accent);
    color: #fff;
    font-weight: 600;
}

.cs-tool--primary:hover:not([disabled]) {
    background: var(--cs-accent-hover) !important;
}

/* ---------- таблиці ---------- */
.cs-table-wrap {
    overflow-x: auto;
    margin: 0 -4px;
}

.cs-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 4px;
    font-size: 13px;
}

.cs-table th {
    padding: 4px 10px 6px;
    text-align: left;
    font-size: 12px;
    font-weight: 500;
    color: var(--cs-text-2);
    white-space: nowrap;
}

.cs-table td {
    padding: 8px 10px;
    background: var(--cs-surface);
    color: var(--cs-text);
    white-space: nowrap;
    vertical-align: middle;
}

.cs-table td:first-child { border-radius: 8px 0 0 8px; }
.cs-table td:last-child { border-radius: 0 8px 8px 0; }

.cs-table tbody tr:hover td {
    background: var(--cs-surface-2);
}

.cs-table__img {
    width: 52px;
}

.cs-table__img img {
    width: 36px;
    height: 36px;
    object-fit: contain;
    display: block;
}

.cs-table__name {
    font-weight: 600;
}

.cs-table__name a {
    color: var(--cs-text);
}

.cs-table__name a:hover {
    color: var(--cs-accent);
}

.cs-table__act {
    width: 1%;
    text-align: right;
}

.cs-muted {
    color: var(--cs-text-2);
}

/* ---------- кнопка ⋮ і меню ---------- */
.cs-dots {
    width: 34px;
    height: 34px;
    display: inline-grid;
    place-items: center;
    border-radius: 8px;
    border: 1px solid var(--cs-border);
    background: var(--cs-surface);
    cursor: pointer;
    transition: background .2s, border-color .2s;
}

.cs-dots svg {
    width: 4px;
    height: 16px;
    fill: var(--cs-text);
}

.cs-dots:hover,
.cs-dots.active {
    background: var(--cs-surface-2);
    border-color: rgba(255, 255, 255, .14);
}

.cs-menu {
    position: fixed;
    z-index: 1000;
    display: none;
    flex-direction: column;
    gap: 6px;
    min-width: 230px;
    padding: 8px;
    border-radius: 12px;
    background: #171717;
    border: 1px solid rgba(255, 255, 255, .07);
    box-shadow: 0 14px 40px rgba(0, 0, 0, .55);
    text-align: left;
}

.cs-menu.open {
    display: flex;
    animation: cs-menu-in .14s ease;
}

@keyframes cs-menu-in {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: none; }
}

.cs-menu a,
.cs-menu button {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 12px 14px;
    border-radius: 8px;
    border: 0;
    background: rgba(255, 255, 255, .05);
    color: #d4d4d4 !important;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s, color .15s;
}

.cs-menu a svg,
.cs-menu button svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
    flex-shrink: 0;
}

.cs-menu a:hover,
.cs-menu button:hover {
    background: rgba(255, 255, 255, .09);
    color: #fff !important;
}

.cs-menu .cs-menu__danger {
    background: color-mix(in srgb, var(--cs-bad) 14%, transparent);
    color: var(--cs-bad) !important;
}

.cs-menu .cs-menu__danger:hover {
    background: color-mix(in srgb, var(--cs-bad) 22%, transparent);
    color: #ff7a7a !important;
}

/* ---------- форма налаштувань ---------- */
.cs-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.cs-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cs-field label {
    font-size: 12px;
    color: var(--cs-text-2);
}

.cs-field input,
.cs-field select {
    width: 100%;
    height: 42px;
    padding: 0 12px;
    border-radius: 8px;
    border: 1px solid transparent;
    background: var(--cs-surface);
    color: var(--cs-text);
    font-size: 14px;
    outline: none;
    transition: border-color .2s;
}

.cs-field input:focus,
.cs-field select:focus {
    border-color: color-mix(in srgb, var(--cs-accent) 60%, transparent);
}

.cs-field select option {
    background: #1b1b1b;
}

.cs-switch {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    font-size: 14px;
    color: var(--cs-text);
    user-select: none;
}

.cs-switch input {
    display: none;
}

.cs-switch i {
    position: relative;
    width: 40px;
    height: 22px;
    flex-shrink: 0;
    border-radius: 11px;
    background: var(--cs-surface-2);
    transition: background .2s;
}

.cs-switch i::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #6b6b6b;
    transition: transform .2s, background .2s;
}

.cs-switch input:checked + i {
    background: color-mix(in srgb, var(--cs-accent) 45%, transparent);
}

.cs-switch input:checked + i::after {
    transform: translateX(18px);
    background: #fff;
}

.cs-danger-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cs-danger-list button {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 12px 14px;
    border-radius: 8px;
    border: 0;
    background: color-mix(in srgb, var(--cs-bad) 10%, transparent);
    color: var(--cs-bad);
    font-size: 14px;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: background .15s;
}

.cs-danger-list button svg {
    width: 12px;
    height: 12px;
    fill: currentColor;
    flex-shrink: 0;
}

.cs-danger-list button:hover {
    background: color-mix(in srgb, var(--cs-bad) 18%, transparent);
}

/* ---------- рулетка ---------- */
.cases-main-block .roulette {
    max-width: 1500px !important;
    height: auto;
    padding: 0 20px;
    margin: 10px auto 0;
}

.cases-main-block .roulette > #sound-point {
    top: 10px;
    right: 32px;
    z-index: 3;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background-color: rgba(0, 0, 0, .35);
    background-position: center;
    background-size: 18px;
    background-repeat: no-repeat;
}

.cases-main-block .roulette .roulette-slider {
    height: 260px;
    padding: 0;
    border-radius: 16px;
    background: rgba(0, 0, 0, .28);
    overflow: hidden;
}

.cases-main-block .roulette .roulette-slider:before,
.cases-main-block .roulette .roulette-slider:after,
.cases-main-block .roulette .roulette-slider .r-side,
.cases-main-block .roulette .roulette-slider .r-side2,
.cases-main-block .roulette .roulette-slider .r-left,
.cases-main-block .roulette .roulette-slider .r-right {
    display: none !important;
}

.cases-main-block .roulette .roulette-slider .roulette-area {
    width: 100%;
    margin: 0;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14%, #000 86%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 14%, #000 86%, transparent 100%);
}

.cases-main-block .roulette .roulette-slider .roulette-area #roulette {
    --roll-w: 200px;
    width: var(--roll-w);
    height: 224px;
    top: 18px;
}

.cases-main-block .roulette .roulette-slider .top-arr,
.cases-main-block .roulette .roulette-slider .bottom-arr {
    z-index: 3;
    top: 2px;
}

.cases-main-block .roulette .roulette-slider .bottom-arr {
    top: unset;
    bottom: 2px;
}

.cases-main-block .roulette .roulette-slider .top-arr svg,
.cases-main-block .roulette .roulette-slider .bottom-arr svg {
    width: 14px;
    height: 12px;
    fill: var(--cs-accent);
    filter: drop-shadow(0 0 6px color-mix(in srgb, var(--cs-accent) 70%, transparent));
}

#roulette .subject-block.cs-roll {
    --rc: #8a8a8a;
    display: inline-flex;
    flex-direction: column;
    vertical-align: top;
    position: relative;
    width: calc(var(--roll-w) - 10px);
    height: 224px;
    margin: 0 5px;
    border-radius: 10px;
    overflow: hidden;
    white-space: normal;
    text-align: left;
    background:
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 30%, transparent) 0%, transparent 58%),
        rgba(255, 255, 255, .05);
    transition: opacity .35s, filter .35s, transform .35s, background .35s;
}

.cs-roll__meta {
    position: relative;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 14px;
}

.cs-roll__meta img {
    position: relative;
    z-index: 2;
    max-height: 6.4rem;
    max-width: 80%;
    object-fit: contain;
    filter: drop-shadow(0 8px 14px rgba(0, 0, 0, .35));
}

/* після зупинки: виграш підсвічено, решта притемнена */
#roulette.is-done .subject-block.cs-roll {
    opacity: .35;
    filter: saturate(.4);
}

#roulette.is-done .subject-block.cs-roll.is-win {
    opacity: 1;
    filter: none;
    background:
        radial-gradient(160% 120% at 0% 0%, color-mix(in srgb, var(--rc) 55%, transparent) 0%, color-mix(in srgb, var(--rc) 18%, transparent) 70%),
        rgba(255, 255, 255, .06);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rc) 55%, transparent) !important;
}

/* ---------- таймер безкоштовного кейса ---------- */
.cs-timer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin: 24px auto 4px;
}

.cs-timer__title {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--cs-text-2);
}

.cs-timer .Timer {
    display: flex !important;
    align-items: stretch;
    gap: 8px;
    font-family: inherit !important;
}

.cs-timer .Timer .etTitle {
    display: none;
}

.cs-timer .Timer .etUnit {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    min-width: 72px;
    padding: 12px 10px 10px;
    border-radius: 10px;
    background: var(--cs-surface);
}

.cs-timer .Timer .etUnit .etNumber {
    width: auto !important;
    margin: 0 !important;
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 700;
    line-height: 1;
    color: var(--cs-text) !important;
    font-variant-numeric: tabular-nums;
}

.cs-timer .Timer .etUnit .etSign {
    flex-basis: 100%;
    margin-top: 6px;
    font-size: 11px !important;
    text-transform: lowercase;
    color: var(--cs-text-2);
}

.cs-timer .Timer .etSep {
    display: none !important;
}

@media (max-width: 767.98px) {
    .admin_nav.cs-nav { overflow-x: auto; flex-wrap: nowrap; }
    .cases-main-block .roulette { padding: 0 8px; }
    .cases-main-block .roulette .roulette-slider { height: 210px; }
    .cases-main-block .roulette .roulette-slider .roulette-area #roulette { height: 176px; }
    #roulette .subject-block.cs-roll { height: 176px; }
    .cs-roll__meta img { max-height: 4.6rem; }
    .cs-timer .Timer .etUnit { min-width: 60px; }
    .cs-timer .Timer .etUnit .etNumber { font-size: 22px !important; }
    .cs-userbar .case_userbar_btn .button, .cs-userbar .pay-link { height: 40px; padding: 0 12px; font-size: 13px; }
}

/* =====================================================================
   НОВИЙ ДИЗАЙН (ч.3): кнопка відкриття, лайв-стрічка, список кейсів, вікно виграшу
   ===================================================================== */

/* ---------- кнопка "Відкрити" + перемикач: однакова висота, без стилів теми ---------- */
.cs-open {
    align-items: center;
}

.cs-open .cs-open__btn,
.cs-open .cs-open__fast {
    box-sizing: border-box !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    line-height: 1 !important;
    vertical-align: middle;
}

.cs-open .cs-open__btn {
    min-width: 240px;
    padding: 0 32px !important;
    border-radius: 10px !important;
    font-family: inherit;
    font-size: 15px !important;
    letter-spacing: .03em !important;
    box-shadow: 0 8px 24px color-mix(in srgb, var(--cs-accent) 28%, transparent);
}

.cs-open .cs-open__btn span,
.cs-open .cs-open__btn b,
.cs-open .cs-open__btn s,
.cs-open .cs-open__btn em {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.cs-open .cs-open__btn b {
    padding: 6px 10px;
    border-radius: 7px;
    background: rgba(255, 255, 255, .18);
}

.cs-open .cs-open__fast {
    padding: 0 18px !important;
    border-radius: 10px !important;
}

/* ---------- лайв-стрічка ---------- */
.donatggwp.cs-live-bar {
    min-height: 0;
    padding: 8px;
    border: 0;
    border-radius: var(--br-12, 12px);
    background: var(--card, #1b1b1b);
}

.cs-live-bar .live-list-wrap {
    width: 100%;
    -webkit-mask-image: linear-gradient(90deg, #000 85%, transparent);
    mask-image: linear-gradient(90deg, #000 85%, transparent);
}

.cs-live-bar .live-list {
    gap: 8px !important;
    margin: 0;
    padding: 0;
    list-style: none;
    min-height: 112px;
}

.cases-main-block .live-list-wrap .live-list .live-item.cs-live {
    flex-shrink: 0;
    width: 150px;
    height: 112px;
    border-radius: 10px;
    overflow: hidden;
    animation: cs-live-in .45s ease;
}

@keyframes cs-live-in {
    from { opacity: 0; transform: translateX(-20px) scale(.96); }
    to { opacity: 1; transform: none; }
}

.cs-live__link {
    --rc: #8a8a8a;
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: var(--cs-text) !important;
    text-decoration: none;
    background:
        radial-gradient(140% 100% at 0% 0%, color-mix(in srgb, var(--rc) 32%, transparent) 0%, transparent 62%),
        var(--cs-surface);
}

.cs-live .cs-live__link { --rc: inherit; }

.cs-live .cs-item__rarity {
    top: 10px;
    left: 10px;
    width: 14px;
    height: 4px;
}

.cs-live__front,
.cs-live__back {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    padding: 0 8px 8px;
    transition: transform .35s ease, opacity .35s ease;
}

.cs-live__img {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
}

.cs-live__img img {
    max-height: 54px;
    max-width: 90px;
    object-fit: contain;
    filter: drop-shadow(0 6px 10px rgba(0, 0, 0, .35));
}

.cs-live__name {
    max-width: 100%;
    font-size: 12px;
    font-weight: 600;
    line-height: 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cs-live__meta.live-time {
    max-width: 100%;
    margin-top: 1px;
    font-size: 10px;
    color: var(--cs-text-2);
    opacity: 1;
}

.cs-live__back {
    justify-content: center;
    gap: 3px;
    opacity: 0;
    transform: translateY(100%);
    background: rgba(12, 12, 12, .55);
    backdrop-filter: blur(4px);
}

.cs-live__back img {
    max-height: 48px;
    max-width: 80px;
    object-fit: contain;
}

.cs-live__user {
    max-width: 100%;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cs-live__case {
    max-width: 100%;
    font-size: 10px;
    color: var(--cs-text-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cs-live__link:hover .cs-live__front {
    opacity: 0;
    transform: translateY(-30%);
}

.cs-live__link:hover .cs-live__back {
    opacity: 1;
    transform: none;
}

/* ---------- список кейсів ---------- */
.cs-cases {
    padding: 6px 16px 10px;
}

.cs-cases__title {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 26px 0 14px;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--cs-text);
}

.cs-cases__title::before,
.cs-cases__title::after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .1));
}

.cs-cases__title::after {
    background: linear-gradient(270deg, transparent, rgba(255, 255, 255, .1));
}

.cs-cases__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 230px));
    justify-content: center;
    gap: 12px;
}

.cs-case {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 16px 14px 16px;
    border-radius: 14px;
    background: var(--cs-surface);
    color: var(--cs-text) !important;
    text-decoration: none;
    overflow: hidden;
    isolation: isolate;
    transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.cs-case::before {
    content: "";
    position: absolute;
    top: 14px;
    left: 50%;
    width: 130px;
    height: 130px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: var(--cs-accent);
    filter: blur(55px);
    opacity: .12;
    z-index: -1;
    transition: opacity .25s;
}

.cs-case:hover {
    transform: translateY(-4px);
    background: var(--cs-surface-2);
    box-shadow: 0 14px 30px rgba(0, 0, 0, .35);
}

.cs-case:hover::before {
    opacity: .28;
}

.cs-case .cs-case__badge {
    top: 10px;
    left: 10px;
}

.cs-case__discount {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
    padding: 4px 8px;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 800;
    color: #fff;
    background: var(--cs-bad);
}

.cs-case__img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 150px;
    width: 100%;
}

.cs-case__img img {
    max-width: 92%;
    max-height: 150px;
    object-fit: contain;
    filter: drop-shadow(0 10px 18px rgba(0, 0, 0, .4));
    transition: transform .3s ease;
}

.cs-case:hover .cs-case__img img {
    transform: scale(1.06) rotate(-2deg);
}

.cs-case--locked .cs-case__img img {
    filter: grayscale(.5) brightness(.75) drop-shadow(0 10px 18px rgba(0, 0, 0, .4));
}

.cs-case__name {
    margin-top: 6px;
    max-width: 100%;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cs-case__opens {
    font-size: 11px;
    color: var(--cs-text-2);
}

.cs-case__price {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    padding: 9px 18px;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    background: var(--cs-accent);
    transition: background .2s;
}

.cs-case:hover .cs-case__price {
    background: var(--cs-accent-hover);
}

.cs-case__price s {
    font-size: 12px;
    font-weight: 500;
    opacity: .65;
}

.cs-case__price--free {
    background: var(--cs-ok);
    color: #0d2a18;
}

.cs-case:hover .cs-case__price--free {
    background: #57e08d;
}

.cs-case__timer {
    margin-top: 8px;
}

.cs-case__timer .eTimer,
.cs-case__timer [class^="eTimer"] {
    display: flex !important;
    gap: 4px;
    font-family: inherit !important;
}

.cs-case__timer .etTitle,
.cs-case__timer .etSep {
    display: none !important;
}

.cs-case__timer .etUnit {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    min-width: 40px;
    padding: 6px 4px 5px;
    border-radius: 7px;
    background: rgba(255, 255, 255, .06);
}

.cs-case__timer .etUnit .etNumber {
    width: auto !important;
    margin: 0 !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 700;
    line-height: 1;
    color: var(--cs-text) !important;
    font-variant-numeric: tabular-nums;
}

.cs-case__timer .etUnit .etSign {
    flex-basis: 100%;
    margin-top: 3px;
    font-size: 9px !important;
    color: var(--cs-text-2);
}

/* ---------- вікно виграшу (SweetAlert) ---------- */
.swal2-popup:has(.cs-win) {
    padding: 0 !important;
    background: transparent !important;
}

.swal2-html-container:has(.cs-win) {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.cs-win {
    --rc: #8a8a8a;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 22px 22px 20px;
    border-radius: 18px;
    background:
        radial-gradient(120% 70% at 50% 0%, color-mix(in srgb, var(--rc) 30%, transparent) 0%, transparent 70%),
        #1a1a1a;
    border: 1px solid rgba(255, 255, 255, .07);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .6);
    color: var(--cs-text);
    font-family: inherit;
    animation: cs-win-in .35s cubic-bezier(.2, .9, .3, 1.2);
}

@keyframes cs-win-in {
    from { opacity: 0; transform: scale(.9) translateY(10px); }
    to { opacity: 1; transform: none; }
}

.cs-win__title {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--cs-text-2);
}

.cs-win__card {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 220px;
    height: 190px;
    margin: 8px 0 6px;
    border-radius: 14px;
    background:
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 38%, transparent) 0%, transparent 60%),
        rgba(255, 255, 255, .05);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rc) 40%, transparent), 0 0 40px color-mix(in srgb, var(--rc) 22%, transparent);
}

.cs-win__card .cs-item__stripes {
    width: 10rem;
    height: 8rem;
}

.cs-win__card img {
    position: relative;
    z-index: 2;
    max-width: 75%;
    max-height: 140px;
    object-fit: contain;
    filter: drop-shadow(0 10px 18px rgba(0, 0, 0, .45));
    animation: cs-win-float 3s ease-in-out infinite;
}

@keyframes cs-win-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

.cs-win__name {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
    color: color-mix(in srgb, var(--rc) 55%, #fff);
    text-align: center;
}

.cs-win__desc {
    font-size: 14px;
    color: var(--cs-text-2);
    text-align: center;
}

.cs-win__note {
    margin-top: 4px;
    font-size: 14px;
}

.cs-win__ok {
    color: var(--cs-ok);
    font-weight: 600;
}

.cs-win__btns {
    display: flex;
    gap: 8px;
    width: 100%;
    margin-top: 12px;
}

.cs-win__btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    padding: 0 14px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(255, 255, 255, .05);
    color: var(--cs-text) !important;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s, opacity .2s;
}

.cs-win__btn:hover {
    background: rgba(255, 255, 255, .1);
}

.cs-win__btn--main {
    border-color: transparent;
    background: var(--cs-accent);
    color: #fff !important;
}

.cs-win__btn--main:hover {
    background: var(--cs-accent-hover);
}

.cs-win__btn.is-busy,
.cs-win__btn[disabled] {
    opacity: .5;
    cursor: wait;
}

@media (max-width: 767.98px) {
    .cs-cases { padding: 4px 8px 8px; }
    .cs-cases__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .cs-case__img { height: 110px; }
    .cs-case__img img { max-height: 110px; }
    .cs-case__name { font-size: 13px; }
    .cs-case__timer .etUnit { min-width: 32px; }
    .cs-case__timer .etUnit .etNumber { font-size: 13px !important; }
    .cs-open .cs-open__btn { min-width: 0; }
    .cs-win__btns { flex-direction: column; }
}

/* зміст кейса — по центру, як список кейсів */
.cs-grid.cs-grid--player {
    grid-template-columns: repeat(auto-fit, minmax(10.5rem, 12.5rem));
    justify-content: center;
}

@media (max-width: 767.98px) {
    .cs-grid.cs-grid--player { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* старий SweetAlert: прибираємо сіру підкладку навколо нового вікна виграшу */
.swal2-popup #swal2-content:has(.cs-win),
.swal2-content:has(.cs-win) {
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
}

.swal2-content .cs-win span { color: inherit !important; }
.swal2-content .cs-win .cs-win__ok { color: var(--cs-ok) !important; }

.cs-win__btn:focus { outline: none; }
.cs-win__btn:focus-visible { outline: 2px solid rgba(255,255,255,.5); outline-offset: 2px; }

/* =====================================================================
   НОВИЙ ДИЗАЙН (ч.4)
   ===================================================================== */

/* Колір акценту — з шаблону neo (той самий, що в інвентарі та вкладках) */
:root {
    --cs-accent: var(--span, #7c8cf8);
    --cs-accent-hover: color-mix(in srgb, var(--span, #7c8cf8) 82%, #fff);
}

/* ---------- яскравіші предмети: світіння кольором рідкості посередині, як в інвентарі ---------- */
.cs-item {
    background:
        radial-gradient(60% 50% at 50% 42%, color-mix(in srgb, var(--rc) 34%, transparent) 0%, transparent 100%),
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 26%, transparent) 0%, transparent 58%),
        linear-gradient(180deg, color-mix(in srgb, var(--rc) 10%, transparent), transparent 70%),
        var(--cs-surface);
}

#roulette .subject-block.cs-roll {
    background:
        radial-gradient(60% 50% at 50% 42%, color-mix(in srgb, var(--rc) 34%, transparent) 0%, transparent 100%),
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 26%, transparent) 0%, transparent 58%),
        linear-gradient(180deg, color-mix(in srgb, var(--rc) 10%, transparent), transparent 70%),
        rgba(255, 255, 255, .05);
}

.cs-live__link {
    background:
        radial-gradient(60% 55% at 50% 40%, color-mix(in srgb, var(--rc) 36%, transparent) 0%, transparent 100%),
        radial-gradient(140% 100% at 0% 0%, color-mix(in srgb, var(--rc) 24%, transparent) 0%, transparent 62%),
        var(--cs-surface);
}

.cs-win__card {
    background:
        radial-gradient(60% 55% at 50% 45%, color-mix(in srgb, var(--rc) 42%, transparent) 0%, transparent 100%),
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 30%, transparent) 0%, transparent 60%),
        rgba(255, 255, 255, .05);
}

/* ---------- рулетка: ширина картки задається тут (JS читає це значення) ---------- */
.cases-main-block .roulette .roulette-slider .roulette-area #roulette .roulette-inner {
    font-size: 0;
}

@media (max-width: 575.98px) {
    .cases-main-block .roulette .roulette-slider .roulette-area #roulette { --roll-w: 150px; }
}

/* ---------- список кейсів: без сірих підкладок, кейси більші ---------- */
.cs-cases__grid {
    grid-template-columns: repeat(auto-fit, minmax(210px, 250px));
    gap: 18px 14px;
}

.cs-case {
    background: transparent;
    padding: 6px 10px 10px;
    overflow: visible;
}

.cs-case:hover {
    background: transparent;
    box-shadow: none;
    transform: translateY(-5px);
}

.cs-case::before {
    top: 30px;
    width: 160px;
    height: 160px;
    opacity: .1;
}

.cs-case:hover::before {
    opacity: .3;
}

.cs-case__img {
    height: 200px;
}

.cs-case__img img {
    max-height: 200px;
    max-width: 100%;
}

.cs-case__name {
    margin-top: 8px;
    font-size: 16px;
}

.cs-case .cs-case__badge {
    top: 8px;
    left: 14px;
}

.cs-case__discount {
    top: 8px;
    right: 14px;
}

.cs-case__price--free {
    color: #fff;
    background: var(--cs-accent);
}

.cs-case:hover .cs-case__price--free {
    background: var(--cs-accent-hover);
}

@media (max-width: 767.98px) {
    .cs-cases__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 8px; }
    .cs-case__img { height: 140px; }
    .cs-case__img img { max-height: 140px; }
}

/* анімація появи — лише для нових записів, не для тих, що вже є при завантаженні */
.cases-main-block .live-list-wrap .live-list .live-item.cs-live { animation: none; }
.cases-main-block .live-list-wrap .live-list .live-item.cs-live.cs-live--new { animation: cs-live-in .45s ease; }

/* =====================================================================
   Компактніші картки призів (майже квадратні, як у референсі)
   ===================================================================== */
.cs-grid,
.cs-grid.cs-grid--player {
    grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
    gap: 10px;
}

.cs-grid.cs-grid--player {
    grid-template-columns: repeat(auto-fit, minmax(9.5rem, 11.5rem));
    justify-content: center;
}

.cs-item {
    height: auto;
    aspect-ratio: 1 / 1.04;
    min-height: 168px;
    border-radius: 10px;
}

.cs-item__rarity { top: 13px; left: 13px; width: 16px; height: 4px; }
.cs-item__top { top: 9px; right: 11px; }
.cs-item__chance, .cs-item__sale { font-size: 11px; }
.cs-item__meta { margin-top: 12px; }
.cs-item__meta img { max-height: 5.2rem; max-width: 72%; }
.cs-item__stripes { width: 7rem; height: 5.6rem; }
.cs-item__info { padding: 0 13px 12px; line-height: 16px; }
.cs-item__name { font-size: 13px; }
.cs-item__desc { font-size: 12px; }

.cs-item--admin .cs-item__actions button { padding: 7px 4px; font-size: 11px; }

@media (max-width: 767.98px) {
    .cs-grid.cs-grid--player { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cs-item { min-height: 150px; }
    .cs-item__meta img { max-height: 4.4rem; }
}

/* =====================================================================
   v6: кілька рулеток, панель результату, рідкісний виграш, обмеження, розміри
   ===================================================================== */

/* ---------- кнопка відкриття: без підсвітки під/навколо ---------- */
.cs-open .cs-open__btn { box-shadow: none !important; }
.cs-open .cs-open__btn[disabled] { opacity: .45; cursor: not-allowed; }

.cs-open-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin: 22px auto 6px;
    padding: 0 16px;
}

.cs-open-wrap .cs-open { margin: 0; padding: 0; }

/* x1–x5 */
.cs-mult {
    display: inline-flex;
    height: 56px;
    padding: 4px;
    gap: 2px;
    border-radius: 10px;
    background: var(--cs-surface);
    border: 1px solid var(--cs-border);
    box-sizing: border-box;
}

.cs-mult__btn {
    min-width: 48px;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    color: var(--cs-text-2) !important;
    font-family: inherit;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.cs-mult__btn:hover:not([disabled]) { color: var(--cs-text) !important; background: rgba(255, 255, 255, .05) !important; }
.cs-mult__btn.active { background: rgba(255, 255, 255, .1) !important; color: var(--cs-text) !important; }
.cs-mult__btn[disabled] { opacity: .3; cursor: not-allowed; }

.cs-open-blocked {
    padding: 14px 22px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    color: #ff8a8a;
    background: color-mix(in srgb, var(--cs-bad) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--cs-bad) 25%, transparent);
}

.cs-limit-info {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
}

.cs-limit-chip {
    padding: 5px 10px;
    border-radius: 7px;
    font-size: 12px;
    color: var(--cs-text-2);
    background: var(--cs-surface);
}

.cs-limit-chip b { color: var(--cs-text); }

/* ---------- панель результату ---------- */
.cs-result {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    width: 100%;
    animation: cs-result-in .3s ease;
}

.cs-result[hidden] { display: none; }

@keyframes cs-result-in {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
}

.cs-result__items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
}

.cs-result__chip {
    --rc: #8a8a8a;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 5px 12px 5px 6px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 600;
    color: var(--cs-text);
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--rc) 30%, transparent), transparent 80%),
        var(--cs-surface);
    border: 1px solid color-mix(in srgb, var(--rc) 35%, transparent);
}

.cs-result__chip img { width: 30px; height: 30px; object-fit: contain; }
.cs-result__chip.is-rare { box-shadow: 0 0 18px color-mix(in srgb, var(--rc) 55%, transparent); }

.cs-result__btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.cs-rbtn {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 230px;
    height: 56px;
    padding: 0 22px;
    border-radius: 10px;
    border: 1.5px solid color-mix(in srgb, var(--cs-accent) 70%, transparent);
    background: transparent;
    color: var(--cs-text) !important;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none !important;
    cursor: pointer;
    transition: background .15s, opacity .15s;
}

.cs-rbtn { flex-direction: row; gap: 10px; }
.cs-rbtn svg { width: 17px; height: 17px; fill: currentColor; color: var(--cs-accent); }
.cs-rbtn:hover { background: color-mix(in srgb, var(--cs-accent) 12%, transparent); }

.cs-rbtn--main {
    flex-direction: column;
    gap: 2px;
    border-color: transparent;
    background: var(--cs-accent);
    color: #fff !important;
}

.cs-rbtn--main svg { color: #fff; }
.cs-rbtn--main:hover { background: var(--cs-accent-hover); }
.cs-rbtn small { font-size: 10px; font-weight: 500; opacity: .8; }
.cs-rbtn.is-busy { opacity: .5; pointer-events: none; }

/* ---------- рулетки (основна + копії для x2–x5) ---------- */
.cases-main-block .roulette .roulette-slider .roulette-area .cs-roulette {
    --roll-w: 200px;
    position: relative;
    width: var(--roll-w);
    height: 224px;
    top: 18px;
    margin: 0 auto;
}

.cases-main-block .roulette .roulette-slider .roulette-area .cs-roulette .roulette-inner {
    position: relative;
    top: 0;
    width: 100%;
    height: 100%;
    white-space: nowrap;
    font-size: 0;
    transition: 0s linear;
}

.cs-roulette .subject-block.cs-roll {
    --rc: #8a8a8a;
    display: inline-flex;
    flex-direction: column;
    vertical-align: top;
    position: relative;
    width: calc(var(--roll-w) - 10px);
    height: 224px;
    margin: 0 5px;
    border-radius: 10px;
    overflow: hidden;
    white-space: normal;
    text-align: left;
    box-shadow: none;
    background:
        radial-gradient(60% 50% at 50% 42%, color-mix(in srgb, var(--rc) 34%, transparent) 0%, transparent 100%),
        radial-gradient(140% 95% at 0% 0%, color-mix(in srgb, var(--rc) 26%, transparent) 0%, transparent 58%),
        linear-gradient(180deg, color-mix(in srgb, var(--rc) 10%, transparent), transparent 70%),
        rgba(255, 255, 255, .05);
    transition: opacity .35s, filter .35s, transform .35s, background .35s;
}

.cs-roulette.is-done .subject-block.cs-roll { opacity: .35; filter: saturate(.4); }

.cs-roulette.is-done .subject-block.cs-roll.is-win {
    opacity: 1;
    filter: none;
    background:
        radial-gradient(160% 120% at 0% 0%, color-mix(in srgb, var(--rc) 55%, transparent) 0%, color-mix(in srgb, var(--rc) 18%, transparent) 70%),
        rgba(255, 255, 255, .06);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rc) 55%, transparent) !important;
}

/* рідкісний виграш — пульсуюче світіння */
.cs-roulette.is-done .subject-block.cs-roll.is-rare {
    box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--rc) 80%, #fff), 0 0 0 0 transparent !important;
    animation: cs-rare-pulse 1.4s ease-in-out infinite;
}

.cs-roulette.is-done .subject-block.cs-roll.is-rare img {
    animation: cs-rare-pop .6s cubic-bezier(.2, 1.4, .4, 1) both;
}

@keyframes cs-rare-pulse {
    0%, 100% { filter: brightness(1) drop-shadow(0 0 0 transparent); }
    50% { filter: brightness(1.18) drop-shadow(0 0 14px var(--rc)); }
}

@keyframes cs-rare-pop {
    from { transform: scale(.7); }
    to { transform: scale(1.12); }
}

.cs-confetti {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    z-index: 99999;
    pointer-events: none;
}

/* x2–x5: рулетки компактніші, одна під одною */
#cs_rolls.cs-multi .roulette-slider {
    height: 186px;
    margin-bottom: 8px;
}

#cs_rolls.cs-multi .roulette-slider .roulette-area .cs-roulette { height: 160px; top: 13px; }
#cs_rolls.cs-multi .cs-roulette .subject-block.cs-roll { height: 160px; }
#cs_rolls.cs-multi .cs-roll__meta { margin-top: 10px; }
#cs_rolls.cs-multi .cs-roll__meta img { max-height: 4.4rem; }
#cs_rolls.cs-multi .cs-item__info { padding: 0 12px 10px; }
#cs_rolls.cs-multi .roulette-slider .top-arr svg,
#cs_rolls.cs-multi .roulette-slider .bottom-arr svg { width: 11px; height: 9px; }

@media (max-width: 575.98px) {
    .cases-main-block .roulette .roulette-slider .roulette-area .cs-roulette { --roll-w: 150px; }
    .cs-mult__btn { min-width: 38px; }
    .cs-rbtn { min-width: 0; width: 100%; }
    .cs-result__btns { width: 100%; flex-direction: column; }
}

/* ---------- розміри з адмінки ---------- */
.cs-grid.cs-grid--player {
    grid-template-columns: repeat(auto-fit, minmax(calc(9.5rem * var(--cs-k-item, 1)), calc(11.5rem * var(--cs-k-item, 1))));
}
.cs-grid--player .cs-item { min-height: calc(168px * var(--cs-k-item, 1)); }
.cs-grid--player .cs-item__meta img { max-height: calc(5.2rem * var(--cs-k-item, 1)); }

.cs-cases__grid {
    grid-template-columns: repeat(auto-fit, minmax(calc(210px * var(--cs-k-case, 1)), calc(250px * var(--cs-k-case, 1))));
}
.cs-case__img { height: calc(200px * var(--cs-k-case, 1)); }
.cs-case__img img { max-height: calc(200px * var(--cs-k-case, 1)); }

.cases-main-block .live-list-wrap .live-list .live-item.cs-live {
    width: calc(150px * var(--cs-k-live, 1));
    height: calc(112px * var(--cs-k-live, 1));
}
.cs-live-bar .live-list { min-height: calc(112px * var(--cs-k-live, 1)); }
.cs-live__img img { max-height: calc(54px * var(--cs-k-live, 1)); max-width: calc(90px * var(--cs-k-live, 1)); }

@media (max-width: 767.98px) {
    .cs-grid.cs-grid--player { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cs-cases__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cs-case__img, .cs-case__img img { height: auto; max-height: calc(140px * var(--cs-k-case, 1)); }
}

/* ---------- кейс у списку: обмеження ---------- */
.cs-case__limits {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    margin-top: 2px;
}

.cs-case__limits span {
    padding: 3px 7px;
    border-radius: 6px;
    font-size: 11px;
    color: var(--cs-text-2);
    background: var(--cs-surface);
}

.cs-case__price--off {
    color: var(--cs-text-2) !important;
    background: var(--cs-surface) !important;
}

/* ---------- адмінка ---------- */
.cs-sizes {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px;
    border-radius: 10px;
    background: var(--cs-surface);
}

.cs-sizes__title { font-size: 12px; color: var(--cs-text-2); }

.cs-range {
    display: grid;
    grid-template-columns: 1fr 1.4fr 44px;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: var(--cs-text);
}

.cs-range input[type="range"] { width: 100%; accent-color: var(--cs-accent); }
.cs-range b { text-align: right; font-variant-numeric: tabular-nums; color: var(--cs-text-2); }

.cs-btn-row { display: flex; gap: 8px; }
.cs-btn-row .cs-tool { flex: 1; justify-content: center; }

.cs-tool--warn {
    color: #ffb04d;
    background: color-mix(in srgb, #ffb04d 12%, transparent);
}

.cs-tool--warn:hover:not([disabled]) { background: color-mix(in srgb, #ffb04d 20%, transparent) !important; }

.cs-hint { font-size: 12px; color: var(--cs-text-2); line-height: 1.4; }
.cs-field label small { opacity: .7; }

.cs-table__sub {
    margin-top: 3px;
    font-size: 11px;
    font-weight: 400;
    color: var(--cs-text-2);
}

.cs-limits {
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .03);
    border: 1px dashed rgba(255, 255, 255, .1);
}

.cs-limits__title { margin-bottom: 6px; font-size: 13px; font-weight: 600; }
.cs-limits__title small { font-weight: 400; opacity: .6; }
.cs-limits__row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }

#cs_admin_grid .cs-item[draggable="true"] { cursor: grab; }
#cs_admin_grid .cs-item.is-dragging { opacity: .35; outline: 2px dashed var(--cs-accent); outline-offset: -2px; }

.cs-admin__hint {
    margin-left: auto;
    align-self: center;
    font-size: 12px;
    color: var(--cs-text-2);
}

.cs-admin__hint { margin: -2px 0 0 4px !important; }
