/* CARDS OWNER
----------------------------------------------- */
.col-main:has(.ncard) {padding: 0;}
.page-padding:has(.ncard) {padding: var(--indent); padding-bottom: 0; padding-top: 30px;}
.page-padding:has(.ncard) .sect__header {display: none;}
.page-padding:has(.ncard) .speedbar {border-radius: 0;}
.ncard ~ .pagination .pagination__pages {justify-content: center;}
.ncard__bg {height: 398px; border-radius: 10px; overflow: hidden; position: relative; background-color: #000; 
    background-position: center center; background-size: cover; background-repeat: no-repeat; 
    z-index: 1; margin: 0 -20px; margin-bottom: -318px !important;}
.ncard__bg::before{
  content:"";
  position:absolute;
  inset:-3%;
  background: inherit;
  background-position:center;
  background-size: cover;
  background-repeat:no-repeat;

  transform-origin: 50% 50%;
  animation: bgZoom 10s ease-in-out infinite;

  will-change: transform;
  filter: saturate(1.05) contrast(1.02);
  pointer-events:none;
}

@keyframes bgZoom{
  0%   { transform: translate3d(0,0,0) scale(1.01); } 
  50%  { transform: translate3d(0,0,0) scale(1.08); } 
  100% { transform: translate3d(0,0,0) scale(1.01); }
}
.ncard__bg > img, .ncard__bg > video, .ncard__bg::after {position: absolute; left: 0; top: 0; width: 100%; height: 100%; 
    display: block; object-fit: cover;}
.ncard__main {position: relative; z-index: 5; gap: 30px;}
.ncard__bg::after {z-index: 5; content: ''; backdrop-filter: blur(8px) saturate(100%); background-color: rgba(0,0,0,0.3);}
.ncard__img {width: 265px; background-color: rgba(255,255,255,0.2); padding: 10px; box-shadow: var(--bsh); border-radius: 15px; display: block;}
.ncard__img > img, .ncard__img > video {display: block; width: 100%; aspect-ratio: 288 / 432; border-radius: 12px; object-fit: cover;}
.ncard__meta-item {display: block; padding-left: 50px; position: relative; font-weight: 700;}
.ncard__meta-item .fal {width: 40px; height: 40px; border-radius: 50%; position: absolute; left: 0; top: 50%; margin-top: -20px;
    border: 1px solid var(--bdc); font-size: 18px; color: var(--tt-2);}
.ncard__meta-item div {font-size: 12px; text-transform: uppercase; font-weight: 400; color: var(--tt-2);}
.rank-sss {--clr: var(--accent-darker);}
.rank-ass {--clr: var(--accent-s);}
.rank-s-gold {--clr: #ffd700;}
.rank-s, .rank-s_plus {--clr: #a74ccf;}
.rank-a, .rank-a_plus {--clr: #d93134;}
.rank-b, .rank-b_plus {--clr: #2094e4;}
.rank-c, .rank-c_plus {--clr: #0b5b41;}
.rank-d, .rank-d_plus {--clr: #999797;}
.rank-e, .rank-e_plus {--clr: #9c6f51;}
.ncard__meta [class*=rank] {color: var(--clr);text-transform: uppercase;}
.ncard__meta [class*=rank] .fal {border-color: var(--bdc); color: var(--tt-2);}
.ncard__tabs::before, .ncard__tabs::after {content: ''; flex-grow: 1; height: 2px; background-color: var(--bg-2);}
.ncard__tabs-btns {border: 1px solid var(--bdc); padding: 5px; gap: 5px; border-radius: 6px;}
.ncard__tabs-btn {min-width: 200px; flex-grow: 1; border-radius: 8px; height: 32px;}
.tabs__navigate__unlocked {width: 40px; height: 40px; border-radius: 4px; display: grid; place-items: center; 
    font-size: 18px; color: var(--tt); background: var(--bg-2);}
.tabs__navigate__unlocked--active {background: #772ce8; color: #fff;}
.ncard__owners-list, .ncard__history-list {display: grid; gap: 35px; grid-template-columns: repeat(auto-fill,minmax(100px,1fr));}
.card-show__owner {display: block; width: 100%; text-align: center; border-radius: 8px; position: relative;
    padding: 10px; background-color: var(--bg-2); border: 0;}
.card-show__owner--online {box-shadow: 0 0 0 1px green}
.card-show__owner.card-show__owner--black {background-color: #1b1b1b; color: hsla(0,0%,100%,.77)}
.card-show__owner.card-show__owner--light {background-color: #f3f3f3; color: #161616}
.card-show__owner-image {width: 100%; position: static;}
.card-show__owner-image img {display: block; border-radius: 6px; 
    width: 40px; height: 40px; object-fit: cover; margin: 0 auto;}
.card-show__owner-name {display: block; margin-top: 10px; font-size: 13px; font-weight: 400;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.card-show__owner-icon {position: absolute; width: 24px; height: 24px; top: -12px; right: -12px;}
.ncard__about {padding: 20px; border: 1px solid var(--bdc); border-radius: 10px; text-align: center;
    border-right-color: var(--accent); border-right-width: 3px; border-left-color: var(--accent); border-left-width: 3px;}
.ncard__about-legend {gap: 10px 20px; padding: 16px 0; font-size: 15px; font-weight: 700;}
.ncard__about i, .card-show__owner-icon i {display: inline-flex; align-items: center; justify-content: center; 
    width: 24px; height: 24px; border-radius: 50%; font-size: 12px; flex-shrink: 0; opacity: 0.9;}
.ncard__about i.fa-exchange, .card-show__owner-icon i.fa-exchange {background-color: green; color: #fff;}
.ncard__about i.fa-lock, .card-show__owner-icon i.fa-lock {background-color: #d93134; color: #fff;}
.ncard__about i.fa-trophy-alt, .card-show__owner-icon .fa-trophy-alt {background-color: orange; color: #fff;}
.ncard__about i.fa-star, .card-show__owner-icon .fa-star {background-color: var(--accent); color: #fff;}
.ncard__about i.fa-user, .card-show__owner-icon i.fa-user {background-color: violet; color: #fff;}
.ncard__about i {margin-right: 5px;}
.card-show__owner-icon i {box-shadow: 0 0 0 5px var(--bg), var(--bsh-2);}

.timeline {display: none; justify-content: center;}
.timeline__list {display: flex; flex-direction: column; position: relative;
  margin-left: 20px; padding-left: 20px; border-left: 2px solid var(--bdc);
  margin-bottom: 20px; width: 600px; max-width: 100%;}
.timeline__author {display: block; margin-bottom: 4px;
  overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1;
  line-clamp: 1; -webkit-box-orient: vertical; max-width: 220px;}
.timeline__date {font-size: 14px; color: var(--tt-2); margin-bottom: 7px;}
.timeline__item {display: flex; align-items: center; margin-bottom: 20px; position: relative;}
.timeline__item:last-of-type {margin-bottom: 0;}
.timeline__marker {width: 10px; height: 10px; background-color: #8b00ff;
  border-radius: 50%; position: absolute; left: -6px; top: 50%; transform: translateY(-50%);}
.timeline__content {background: var(--bg); padding: 10px; border: 1px solid var(--bdc); border-radius: 12px;}
.timeline__content img {width: 200px;}
.history__item {background: var(--bg-2); padding: 15px; border-radius: 10px; width: 100%; margin-bottom: 15px;}
.history__item:last-of-type {margin-bottom: 0;}
.history__item-header {display: flex; justify-content: space-between; gap: 15px;
    margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid var(--bdc);}
.history__name {text-overflow: ellipsis; overflow: hidden; white-space: nowrap; flex: 1 1 0; min-width: 50px; max-width: 100%;}
.history__name a {font-weight: 500; color: #8b00ff;}
.history__date {font-size: 14px; color: var(--tt-2); flex-shrink: 0;}
.history__body {display: flex; align-items: center; margin-bottom: 10px; overflow: auto;}
.history__body:last-of-type {margin-bottom: 0;}
.history__body::before {content: "+"; height: 35px; width: 35px;
    background: rgba(0,0,0,0.05); display: flex; align-items: center; justify-content: center;
    margin-right: 10px; border-radius: 50%; font-size: 25px; font-weight: 500; line-height: 8px; flex-shrink: 0;}
.history__body--gained::before {content: "+"; color: #093;}
.history__body--lost::before {content: "-"; color: #fc363b;}
.history__body-item {width: 75px; margin-right: 10px; flex-shrink: 0;}

.as-center {align-self: center; text-align: center;}
.ncard__main-title {font-size: 22px;}
.ncard__main-title a {display: inline-block; font-weight: 700; vertical-align: middle; 
    padding: 6px 0; box-shadow: inset 0 -3px var(--accent-gold), inset 0 3px var(--accent-gold); margin-left: 10px;}
.ncard__offer-send-btn {background-color: #772ce8; gap: 10px; height: auto; white-space: normal;
    padding: 10px 20px 10px 60px; overflow: hidden; margin: -10px 0; position: relative;}
.ncard__offer-send-btn .fal {display: grid; place-items: center; font-size: 18px; width: 40px; height: 100%; 
    background-color: rgba(0,0,0,0.2); position: absolute; left: 0; top: 0;}
.ncard__userlist2 {display: grid; gap: 15px; grid-template-columns: repeat(auto-fill,minmax(260px,1fr));}
.profile__friends-item {background-color: var(--bg-2); padding: 10px; border-radius: 6px; gap: 15px; 
    font-size: 15px; display: flex; align-items: center;}
.profile__friends-avatar {width: 40px; flex-shrink: 0; position: relative;}
.profile__friends-avatar img {width: 100%; aspect-ratio: 1/1; display: block; border-radius: 4px; object-fit: cover;}
.profile__friends-avatar img.frame {position: absolute; left: -5px; top: -5px; width: 50px; height: 50px; max-width: 50px; z-index: 3;}
.profile__friends-info {flex: 1 1 0; min-width: 50px; max-width: 100%; display: flex; flex-direction: column; gap: 5px;}
.profile__friends-time {font-size: 13px; color: var(--tt-2);}
.profile__friends-time:empty {display: none;}
.ncard__notfound .fal {color: red; font-size: 40px;}

.tabs__navigate__unlocked:hover {background-color: var(--accent-darker); color: #fff;}
.ncard__meta a:hover .fal, .card-show__owner:hover, a.ncard__img:hover, .profile__friends-item:hover 
{background-color: var(--accent); color: #fff; border-color: var(--accent);}
.ncard__main-title a:hover {color: var(--accent);}

@media screen and (max-width: 1220px) {
    .ncard__owners-list, .ncard__history-list {gap: 20px;}
}
@media screen and (max-width: 760px) {
    .ncard__tabs::before, .ncard__tabs::after {display: none;}
    .ncard__tabs-btns {width: 100%;}
    .timeline__list {margin-left: 0;}
}
@media screen and (max-width: 470px) {
    .ncard__bg {height: 370px;}
    .ncard__owners-list, .ncard__history-list {gap: 10px; grid-template-columns: repeat(3,minmax(0,1fr));}
    .card-show__owner-icon {top: -6px; right: -6px;}
    .ncard__about-legend > div, .ncard__offer-send-btn {width: 100%;}
    .ncard__userlist2 {gap: 10px;}
    .ncard__main-title a {display: block; width: max-content; max-width: 100%; margin: 10px auto 0 auto;}
    .ncard__tabs-btn {min-width: auto;}
}


/* CARDS PACK
----------------------------------------------- */
.ta-center {text-align: center;}
.lootbox__wrapper {position: relative; max-width: 100%; border-radius: 6px; overflow: hidden;}
.lootbox__images {position: relative; z-index: 1; height: 170px; margin: 40px 0 20px 0;}
.lootbox__image {bottom: -50px; width: 140px; left: 50%; margin-left: -70px; position: absolute;
    display: block; flex-shrink: 0; cursor: pointer; border-radius: 6px; 
    transition: transform 0.3s linear; opacity: 0;}
.step1 .lootbox__image {animation: moves 400ms linear 300ms 1 normal forwards; 
    --delay: calc(var(--idx)*200); animation-delay: var(--delay);}
.step2 .lootbox__image:nth-of-type(2) {transform: rotate(-18deg) translate(-59px, -47px); z-index: 1;}
.step2 .lootbox__image:nth-of-type(5) {transform: translate(0, -39px); z-index: 5;}
.step2 .lootbox__image:nth-of-type(3) {transform: rotate(18deg) translate(59px, -47px); z-index: 1;}
.step2 .lootbox__image:nth-of-type(1) {transform: rotate(-34deg) translate(-105px, -68px);}
.step2 .lootbox__image:nth-of-type(4) {transform: rotate(34deg) translate(105px, -68px);}
.lootbox__descr {border: 8px solid var(--bdc); padding: 20px; gap: 20px; max-width: 900px; width: 100%; margin: 0 auto; 
    background-color: var(--bg); position: relative; z-index: 3; font-size: 14px; line-height: 1.5; border-radius: 8px;}
.lootbox__descr span:not([class]), .lootbox__counter, .lootbox__balance, .lootbox__counter__s {color: #8b00ff;}
.lootbox__descr a {text-decoration: underline; color: var(--accent);}
.dt-is-active .lootbox__descr a {color: var(--accent-gold);}
.lootbox__descr a span:not([class]) {color: inherit;}
.lootbox__descr-section {display: flex; flex-direction: column; gap: 10px;}
.lootbox__descr-section--bd {border: 1px solid var(--bdc); border-left: 0; border-right: 0; padding: 30px 0;}
.lootbox__descr-title {font-size: 24px; line-height: 1.2;}
.lootbox__descr-subtitle {font-size: 18px; line-height: 1.3; margin-bottom: 10px;}
.lootbox__descr ul li {position: relative; padding-left: 25px; margin-left: 25px;}
.lootbox__descr ul li::before {content:"\f058"; font-weight: 300; font-family:'Font Awesome 5 Pro'; 
	color: var(--accent-green); position: absolute; left: 0; top: 0;}

.lootbox__middle, .lootbox__footer, .lootbox__row {max-width: 900px; width: 100%; margin: 0 auto;}
.lootbox__footer:has([style="display: none;"]) {display: none;}
.lootbox__title {font-size: 24px; font-weight: 700; text-align: center; margin-bottom: 40px;}
.lootbox__list, .lootbox__middle {display: grid; gap: 40px; grid-template-columns: repeat(3,1fr);}
.lootbox__middle-item {background-color: var(--bg-2); padding: 15px; border-radius: 10px; text-align: center; cursor: pointer;}
.lootbox__middle-item--active {box-shadow: 0 0 0 1px green}
.lootbox__middle-count {font-weight: 700; font-size: 18px; margin-bottom: 10px;}
.lootbox__middle-price {font-size: 15px;}
.lootbox__list img {display: block; width: 100%; aspect-ratio: 288/432; border-radius: 14px;}
.lootbox__card {cursor: pointer; transition: box-shadow 0.1s; border-radius: 10px;}
.lootbox__card:hover {box-shadow: var(--bsh);transform: translateY(-4px);transition: transform .25s ease, filter .25s ease;}
.lootbox__open-btn {min-width: 273px; height: 50px; font-size: 15px; font-weight: 500;}
@keyframes bounceX {
  0% {transform: scale(1);}
  30% {transform: scale(1.1);}
  50% {transform: scale(0.9);}
  70% {transform: scale(1.05);}
  100% {transform: scale(1);}
}
.lootbox__card[data-rank=s], .lootbox__card[data-rank=ass], .lootbox__card[data-rank=s_plus], .lootbox__card[data-rank=a_plus], .lootbox__card[data-rank=b_plus], .lootbox__card[data-rank=c_plus], .lootbox__card[data-rank=d_plus], .lootbox__card[data-rank=e_plus] {animation: bounceX 1s ease; animation-iteration-count: 3; animation-fill-mode: forwards;}


/* CARDS PACK ANIMATION
----------------------------------------------- */
.lootbox__list {position: relative; --gap: 40px; 
    --width: calc((100% - var(--gap)*2)/3); --margin: calc(var(--width) + var(--gap));}
.cd {width: var(--width); height: 100%; border-radius: 10px; background-color: #000; 
    position: absolute; left: 50%; top: 0; transform: translate(-50%,0); z-index: 10; 
    transition: margin 0.3s linear; opacity: 0; overflow: hidden;}
.cd > * {display: block; width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0;}
.step1 .lootbox__card {opacity: 0; pointer-events: none;}
.step2 .cd {animation: moves 300ms linear 150ms 1 normal forwards; 
    --delay: calc(var(--idx)*200); animation-delay: var(--delay);}
.step3 .cd:nth-child(6) {margin-left: var(--margin);}
.step3 .cd:nth-child(4) {margin-left: calc(-1*var(--margin));}
@keyframes moves {
    0% {translate: 0 0; rotate: 0; opacity: 0; scale: 0.8 0.8;}
    20% {translate: 0 0; rotate: 0; opacity: 1; scale: 1 1;}
    60% {translate: var(--x) var(--y); rotate: var(--z); opacity: 1; scale: 1 1;}
    100% {translate: 0 0; rotate: 0; opacity: 1; scale: 1 1;}
}
@media screen and (max-width: 760px) {
    .lootbox__list {--gap: 20px;}
}


@media screen and (max-width: 760px) {
    body:has(.ncard) .header {box-shadow: none;}
    .lootbox__descr {margin: 0 var(--indent-negative); border-width: 0; width: calc(100% + var(--indent)*2);
        padding: 40px var(--indent); border-top-width: 10px; border-bottom-width: 10px; border-radius: 0;}
    .lootbox__list, .lootbox__middle {gap: 20px;}
}
@media screen and (max-width: 470px) {
    .lootbox__images {scale: 0.8 0.8; transform-origin: center center; margin: 0;}
    .lootbox__descr ul li {margin-left: 0;}
    .lootbox__descr .checkbox {text-align: left; font-weight: 400; margin-top: 10px;}
    .lootbox__middle-count {font-weight: 700; font-size: 15px; margin-bottom: 5px;}
    .lootbox__middle-price {font-size: 14px;}
    .lootbox__middle-item {padding: 10px 0;}
}

/* CARDS USERS TOP
----------------------------------------------- */
.ncard__my-reward:empty {display: none;}
.ncard__my-reward h2 {margin: 0;}
.ncard__menu-tabs {overflow-x: auto; overflow-y: hidden; flex-wrap: nowrap; margin-bottom: -2px; gap: 40px;}
.ncard__menu-tabs a {display: flex; align-items: center; white-space: nowrap; height: 42px;  
    position: relative; font-size: 12px; font-weight: 500; text-transform: uppercase; flex-shrink: 0; justify-content: center;}
.ncard__menu-tabs a[class*=active] {border: 2px solid var(--bdc); border-bottom-color: transparent !important; 
    border-top-color: var(--accent); background-color: var(--bg-2); padding: 0 20px; border-radius: 10px 10px 0 0;}
.ncard__menu-content {background-color: var(--bg-2); margin: 0 var(--indent-negative); 
    border-top: 2px solid var(--bdc); padding: var(--indent);}
.ncard__users-toplist {display: grid; gap: 10px; grid-template-columns: repeat(1,minmax(0,1fr)); justify-items: center;}
.ncard__users-toplist .card-inline {background-color: var(--bg); box-shadow: var(--bsh-2); 
    padding: 10px; border: 1px solid var(--bdc); width: 610px;}
.ncard__users-toplist .profile-frame {left: 10px; top: 10px;}
.ncard__users-toplist .card-inline::after {content: attr(data-place); pointer-events: none; font-size: 44px; 
    font-weight: 700; opacity: 0.1; position: absolute; right: 0; bottom: 0; line-height: 1;}
@media screen and (max-width: 760px) {
    .ncard__menu-tabs {justify-content: flex-start; gap: 25px;}
    .ncard__users-toplist .card-inline {width: 100%;}
    .ncard__menu-tabs a {flex-grow: 1;}
}


.anime-cards__text {text-align: center;}


/* CLUBS LIST
----------------------------------------------- */
.club-top-list__item {width: 100%; height: 120px; overflow: hidden; margin: 0 !important;
    background-position: center; background-size: cover; border-radius: 10px; color: white;}
.club-top-list__inner {position: relative; width: 100%; height: 100%; padding: 11px 15px;}
.club-top-list__inner::before {content: ""; display: block; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.4);}
.club-top-list__inner::after {content: ''; width: 120px; aspect-ratio: 1/1; display: block; 
    rotate: -35deg; translate: 0% -50%; transform-origin: left bottom;
    background: linear-gradient(160deg, #eacc7f, #ad9c72); position: absolute; left: 0; top: 0; opacity: 0.5;}
.club-top-list__content {z-index: 3; position: relative; height: 100%;
    display: flex; flex-direction: column; justify-content: space-between;}
.club-top-list__row {display: flex; justify-content: space-between; align-items: center; line-height: 1.3; font-size: 17px;}
.club-top-list__place {font-weight: 700; text-transform: uppercase; 
    background: linear-gradient(160deg, #eacc7f 0%, #ad9c72 100%);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;}
.club-top-list__place img {width: 25px !important; margin-right: 5px;}
.club-top-list__name {font-weight: 600; color: white; flex: 1 1 0; display: block; margin-left: 20px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 50px; max-width: 100%; text-align: right;}
.club-top-list__count {display: flex; font-size: 12px; color: #ede9e9; justify-content: space-between; gap: 5px;}

.nclub {--accent-club: #772ce8; padding: var(--indent); padding-bottom: 0;}
.nclub__sect-title-top::before, .nclub__sect-title-top::after {content: ''; width: 60px; height: 30px; display: block;
    background: url(../images/stars.svg) center center / 100% auto no-repeat; opacity: 0.9;}
.nclub__top-carou {padding: 20px; border-radius: 10px; color: #fff; margin: -20px; margin-bottom: 0px;
    background-image: linear-gradient(to bottom right, var(--ui-bg-accent), var(--accent));}
.nclub__top-carou-content:not(.owl-carousel) {display: flex; overflow: hidden; gap: 20px;}
.nclub__top-carou-content:not(.owl-carousel) .club-top-list__item {flex-shrink: 0; width: calc((100% - 60px)/4);}
.nclub__btn-create {background-color: var(--accent);}
.nclub__btn-my, .nclub__btn-base {background: none; border: 1px solid var(--accent); color: var(--tt);}
.nclub__sect-title {font-size: 24px; font-weight: 700;}
.nclub__sect-title span {font-weight: 400; font-size: 16px; margin-left: 5px; color: var(--tt-2);}
.nclub__list-clubs {display: grid; gap: 40px 30px; grid-template-columns: repeat(auto-fill,minmax(260px,1fr));}
.nclub__sect-header {margin-bottom: 20px;}
.club-list__item {background-color: var(--bg-2); border-radius: 10px; padding: 25px; position: relative; 
    display: flex; flex-direction: column; gap: 15px; text-align: center; 
    border: 1px solid #e3e3e3; box-shadow: 0 10px 10px -10px rgba(0,0,0,0.13);}
.club-list__item--active {}
.club-list__item::before, .club-list__item::after {content: ''; width: 80%; height: 10px; border-radius: 8px 8px 0 0; 
    background-color: rgba(0,0,0,0.1); position: absolute; z-index: -1; left: 10%; bottom: 100%; 
    border: 1px solid var(--bdc); border-bottom: 0; box-sizing: border-box;}
.club-list__item::after {margin-bottom: 10px; height: 8px; left: 20%; width: 60%; background-color: rgba(0,0,0,0.03);}
.club-list__position {position: absolute; left: 10px; top: 10px; font-size: 12px; width: 30px; text-align: center;
    border-radius: 4px; padding: 1px 5px; background-color: var(--accent-club); color: #fff;}
.club-list__avatar {align-self: center; border-radius: 50%; width: 110px; aspect-ratio: 1/1; position: relative; overflow: hidden;}
.club-list__avatar img {display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;}
.club-list__name {font-size: 20px; font-weight: 600; line-height: 1.3;}
.club-list__level {color: var(--tt-2); margin-top: -10px;}
.club-list__members {align-self: center; border: 2px solid var(--bdc); font-size: 12px; padding: 6px 12px; border-radius: 18px;}
.club__level-bar, .club__level-bar--fill {height: 8px; border-radius: 4px; background-color: var(--bg); margin-top: auto;}
.club__level-bar--fill {background-color: var(--accent-club);}
.club-list__item:hover {border-color: var(--accent-club);}

.dt-is-active .club-list__item {border: 1px solid #2b2a2a; box-shadow: 0 10px 10px -10px rgba(0,0,0,0.63);}
.dt-is-active .club-list__item::before {background-color: rgba(255,255,255,0.1);}
.dt-is-active .club-list__item::after {background-color: rgba(255,255,255,0.05);}
.dt-is-active .nclub__sect-title, .dt-is-active .club-list__name {color: #fff;}
.club-top-list .owl-nav button {background-color: var(--bg); color: var(--tt); box-shadow: var(--bsh); font-size: 18px;}

@media screen and (max-width: 1220px) {
    body:has(.nclub) .header {box-shadow: none;}
    .nclub {--indent: 20px;}
    .nclub__top-carou {margin: 0;}
    .nclub__list-clubs {gap: 40px 20px;}
    .nclub__top-carou-content:not(.owl-carousel) .club-top-list__item {width: calc((100% - 40px)/3);}
}
@media screen and (max-width: 950px) {
    .nclub__top-carou-content:not(.owl-carousel) .club-top-list__item {width: calc((100% - 20px)/2);}
}
@media screen and (max-width: 760px) {
    .nclub__top-carou-content:not(.owl-carousel) .club-top-list__item {width: calc((100% - 0px)/1);}
    .nclub__ctrl, .nclub__btn-create, .nclub__sect-title {width: 100%; gap: 10px;}
    .nclub__ctrl > * {flex: 1 1 0;}
}
@media screen and (max-width: 470px) {
    .nclub__top-carou-content:not(.owl-carousel) .club-top-list__item {width: calc((100% - 0px)/1);}
    .club-list__item {display: grid; gap: 10px 20px; grid-auto-flow: row dense; text-align: left;
        grid-template-columns: auto minmax(0,1fr); grid-template-rows: auto auto 1fr auto}
    .club-list__avatar {grid-column: 1 / 2; grid-row: 1 / 4; align-self: start;}
    .club-list__name {font-size: 18px; line-height: 1.3; padding-top: 10px;}
    .club-list__level {margin: -5px 0 5px 0;}
    .club-list__members {justify-self: start; align-self: start;}
    .club__level-bar {grid-column: 1 / -1; margin-top: 10px;}
}

/* CARDS 
----------------------------------------------- */
.ncard__tabs--smaller .ncard__tabs-btns {max-width: 90%;}
.ncard__tabs--smaller .ncard__tabs-btn {min-width: 0;}
.owl-item .anime-cards__item-wrapper {margin: 0; width: 100%;}
.owl-item .anime-cards__item-wrapper-gl {margin: 0; width: 100%;}
.anime-cards__item {cursor: pointer; background: none; padding: 0; box-shadow: none; border-radius: 0; 
    background-color: var(--bg-3); border: 1px solid var(--bdc); border-radius: 8px; padding: 3px;}
.anime-cards__image {background-color: #000; border-radius: 9px;}
.anime-cards__image img {display: block; width: 100%; aspect-ratio: 288/432; border-radius: 8px;}
.anime-cards__owned-by-user {border-color: #d38105 !important; background-color: #f0610224 !important;}
.anime-cards__owned-by-user-want {border-color: #05801a !important; background-color: #0db42959 !important;}
.anime-cards__owned-by-user-want{
	box-shadow:
		0 0 0 2px rgba(76, 255, 122, .95),
		0 0 18px rgba(76, 255, 122, .45);
	border-radius:12px;
}
.anime-cards__owned-by-user-want::after{
	content:'❤';
	position:absolute;
	top: 10px;
	right: 10px;
	width:22px;
	height:22px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:rgba(22,22,22,.72);
	color:#5dff8a;
	font-size:12px;
	font-weight:700;
	backdrop-filter:blur(4px);
}

#cards-carousel:not(.owl-carousel), #cards-carousel-2:not(.owl-carousel), 
#cards-carousel-showcase:not(.owl-carousel) {display: flex; overflow: hidden; gap: 10px;}
#cards-carousel .owl-nav button, #cards-carousel-2 .owl-nav button, 
.club-top-list-main .owl-nav button, #cards-carousel-showcase .owl-nav button {background-color: var(--bg); color: var(--tt); box-shadow: var(--bsh); font-size: 18px;}
#cards-carousel .owl-prev, #cards-carousel-2 .owl-prev, .club-top-list-main .owl-prev {left: -20px;}
#cards-carousel .owl-next, #cards-carousel-2 .owl-next, .club-top-list-main .owl-next {right: -20px;}
#cards-carousel, #cards-carousel-2, #cards-carousel-showcase {margin: 0; padding: 0;}
#cards-carousel:not(.owl-carousel) > *, #cards-carousel-2:not(.owl-carousel) > *, 
#cards-carousel-showcase:not(.owl-carousel) > * {flex-shrink: 0; width: calc((100% - 50px)/6); margin: 0; padding: 0;}
#cards-carousel-2:not(.owl-carousel) > * {width: calc((100% - 50px)/6);}
#cards-carousel-showcase .owl-prev {left: -20px;}
#cards-carousel-showcase .owl-next {right: -20px;}

.tabs__nav {display: flex; justify-content: center; flex-wrap: wrap; gap: 10px;}
.tabs__item {height: 36px; min-width: 36px; padding: 0 15px; font-size: 14px; gap: 5px;
    background-color: var(--bg-2); color: var(--tt); border-radius: 4px; white-space: nowrap;}
.tabs__item--active {background-color: #772ce8; color: #fff;}
.tabs__item .fa-eraser, .tabs__item .fa-stars {font-size: 18px;}
[data-rank=""], [data-rank="ass"] {font-size: 12px;}
.tabs__item span {font-size: 12px;}

.anime-cards {background-color: var(--bg-2); padding: 20px var(--indent); margin: 0 var(--indent-negative); 
    display: grid !important; gap: 10px; grid-template-columns: repeat(auto-fill,minmax(min(25%,160px),1fr));}
.anime-cards .anime-cards__item-wrapper {width: 100%; margin: 0; padding: 0;}
.anime-cards .anime-cards__item {--bg-2: var(--bg);}
.anime-cards .ncard__main-title {font-size: 18px; grid-column: 1 / -1; padding-bottom: 10px;}

.aweaking {
    width: 12px;
    height: 12px;
    background: url(/templates/New/images/awakening.webp) 0 center / 12px no-repeat;
}
.celestial {
    width: 12px;
    height: 12px;
    filter: grayscale(1);
    background: url(/templates/New/images/celestial_stone.png) 0 center / 12px no-repeat;
}
.card-awakening-done::after {
    content: attr(data-awakening);
    position: absolute;
    top: 38px;
    right: 3px;
    color: white;
    border-radius: 6px 0 0 6px;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 6px;
    background: var(--gradient);
    border: 1px solid var(--bg-2);
}
.uspnew__cards .card-awakening-done::after {
    top: 18px;
}

@media screen and (max-width: 1220px) {
    .page-padding:has(.ncard-list) {--indent: 20px; --indent-negative: -20px;}
    #cards-carousel:not(.owl-carousel) > * {width: calc((100% - 50px)/6);}
    #cards-carousel-2:not(.owl-carousel) > * {width: calc((100% - 50px)/6);}
    #cards-carousel-showcase:not(.owl-carousel) > * {width: calc((100% - 50px)/6);}
}
@media screen and (max-width: 950px) {
    #cards-carousel:not(.owl-carousel) > * {width: calc((100% - 40px)/5);}
    #cards-carousel-2:not(.owl-carousel) > * {width: calc((100% - 40px)/5);}
    #cards-carousel-showcase:not(.owl-carousel) > * {width: calc((100% - 40px)/5);}
}
@media screen and (max-width: 760px) {
    .ncard__tabs--smaller .ncard__tabs-btns {max-width: 100%;}
    .anime-cards__item {padding: 2px;}
    #cards-carousel:not(.owl-carousel) > * {width: calc((100% - 30px)/4);}
    #cards-carousel-2:not(.owl-carousel) > * {width: calc((100% - 30px)/4);}
    #cards-carousel-showcase:not(.owl-carousel) > * {width: calc((100% - 30px)/4);}
    .tabs__nav {gap: 5px;}
    .tabs__item {flex-grow: 1;}
}
@media screen and (max-width: 470px) {
    #cards-carousel:not(.owl-carousel) > * {width: calc((100% - 20px)/3);}
    #cards-carousel-2:not(.owl-carousel) > * {width: calc((100% - 20px)/3);}
    #cards-carousel-showcase:not(.owl-carousel) > * {width: calc((100% - 20px)/3);}
    .card-awakening-done::after { top: 30px; right: 2px; font-size: 9px; padding: 1px 4px;border-radius: 4px 0 0 4px;}
}

/* =====================================================================
   ANIMESSS / CARD ATELIER
   Visual layer. Existing classes, ranks, carousel geometry and pack
   reveal states above remain the functional foundation.
   Theme colours follow --bg, --bg-2, --tt, --bdc and --accent.
   ===================================================================== */

/* 01. Card frames and collections */
.anime-cards__item:not(.club-boost__image) {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
  padding: 4px;
  border: 1px solid var(--bdc);
  border-radius: 14px;
  background-color: var(--bg);
  box-shadow: 0 3px 10px rgba(18, 12, 28, .045);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.anime-cards__image { overflow: hidden; border-radius: 10px; }
.anime-cards__image :is(img, video) {
  display: block;
  width: 100%;
  aspect-ratio: 288 / 432;
  object-fit: cover;
  border-radius: 10px;
}
.anime-cards__item-wrapper,
.anime-cards__item-wrapper-gl { min-width: 0; }
.anime-cards {
  gap: 16px 12px;
  padding-top: 24px;
  padding-bottom: 24px;
  background-color: var(--bg-2);
  background-image: radial-gradient(ellipse at 0 0, rgba(158, 41, 79, .055), transparent 65%);
  border-top: 1px solid var(--bdc);
  border-bottom: 1px solid var(--bdc);
}
.anime-cards .ncard__main-title {
  font-size: 18px;
  line-height: 1.45;
  font-weight: 700;
  padding-bottom: 12px;
  margin-bottom: 2px;
  border-bottom: 1px solid var(--bdc);
}
.anime-cards__text { line-height: 1.5; overflow-wrap: anywhere; }

/* Gold = owned; green = wanted. No permanent animation on collection tiles. */
.anime-cards__owned-by-user:not(.club-boost__image) {
  border-color: #c48c37 !important;
  background-color: rgba(196, 140, 55, .12) !important;
  box-shadow: 0 0 0 1px rgba(196, 140, 55, .1), 0 4px 12px rgba(196, 140, 55, .08);
}
.anime-cards__owned-by-user-want:not(.club-boost__image) {
  border-color: #31a775 !important;
  background-color: rgba(49, 167, 117, .14) !important;
  box-shadow: 0 0 0 1px rgba(49, 167, 117, .2), 0 4px 14px rgba(49, 167, 117, .12);
  border-radius: 14px;
}
.anime-cards__owned-by-user-want:not(.club-boost__image)::after {
  top: 9px;
  right: 9px;
  width: 24px;
  height: 24px;
  border: 1px solid rgba(124, 236, 173, .45);
  background: rgba(15, 41, 30, .92);
  color: #92efba;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .18);
  pointer-events: none;
}
.card-awakening-done { position: relative; }
.card-awakening-done::after {
  z-index: 2;
  min-width: 20px;
  text-align: center;
  line-height: 1.5;
  background-color: var(--accent-s, #772ce8);
  box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
  pointer-events: none;
}
/* Both states can share one element: reserve ::after for awakening. */
.anime-cards__owned-by-user-want.card-awakening-done::after {
  content: attr(data-awakening);
  display: block;
  top: 38px;
  right: 4px;
  width: auto;
  height: auto;
  padding: 2px 6px;
  border: 1px solid var(--bg-2);
  border-radius: 6px 0 0 6px;
  background: var(--gradient, var(--accent-s, #772ce8));
  color: #fff;
  font-size: 11px;
}
.uspnew__cards .anime-cards__owned-by-user-want.card-awakening-done::after { top: 18px; }

/* 02. Filters and navigation */
.ncard__tabs { gap: 12px; }
.ncard__tabs::before, .ncard__tabs::after { height: 1px; background: var(--bdc); }
.ncard__tabs-btns {
  box-sizing: border-box;
  min-width: 0;
  padding: 5px;
  gap: 5px;
  border-radius: 14px;
  background: var(--bg-2);
  border-color: var(--bdc);
}
.ncard__tabs-btn {
  height: 30px;
  padding: 0 18px;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 500;
  border: 1px solid;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
/* Menu colours match the labyrinth controls. Geometry stays in the original rules. */
.ncard__tabs {
  --nc-menu-bg: var(--bg, #fff);
  --nc-menu-text: var(--tt, #24232a);
  --nc-menu-line: color-mix(in srgb, var(--nc-menu-text) 13%, var(--nc-menu-bg));
  --nc-menu-hover: #eeedf0;
  --nc-menu-hover-line: #b8b3be;
  --nc-menu-active: #35343b;
  --nc-menu-active-hover: #46444d;
  --nc-menu-active-line: #56535e;
  --nc-menu-active-text: #f7f5f8;
  --nc-menu-focus: #6d6376;
}
:is(.dt-is-active, .dle_theme_dark, [data-theme="dark"]) .ncard__tabs,
.ncard__tabs:is(.dt-is-active, .dle_theme_dark, [data-theme="dark"]) {
  --nc-menu-hover: #2c2932;
  --nc-menu-hover-line: #615b6b;
  --nc-menu-active: #34323b;
  --nc-menu-active-hover: #45414d;
  --nc-menu-active-line: #615b6b;
  --nc-menu-active-text: #f0edf3;
  --nc-menu-focus: #aca3b7;
}
.ncard__tabs .ncard__tabs-btns .ncard__tabs-btn {
  background: var(--nc-menu-bg);
  color: var(--nc-menu-text);
  border-color: var(--nc-menu-line);
  box-shadow: none;
  transform: none;
  filter: none;
}
.ncard__tabs .ncard__tabs-btns .ncard__tabs-btn :is(i, svg, span) { color: inherit; }
.ncard__tabs .ncard__tabs-btns .ncard__tabs-btn:is(.is-active, .active, .btn--active, .tabs__item--active, .ncard__tabs-active, [aria-current="page"], [aria-selected="true"]) {
  background: var(--nc-menu-active);
  color: var(--nc-menu-active-text);
  border-color: var(--nc-menu-active-line);
  box-shadow: inset 0 1px #ffffff0d;
}
@media (hover: hover) and (pointer: fine) {
  .ncard__tabs .ncard__tabs-btns .ncard__tabs-btn:not(:disabled):not([aria-disabled="true"]):hover {
    background: var(--nc-menu-hover);
    color: var(--nc-menu-text);
    border-color: var(--nc-menu-hover-line);
    box-shadow: none;
    transform: none;
    filter: none;
  }
  .ncard__tabs .ncard__tabs-btns .ncard__tabs-btn:is(.is-active, .active, .btn--active, .tabs__item--active, .ncard__tabs-active, [aria-current="page"], [aria-selected="true"]):not(:disabled):not([aria-disabled="true"]):hover {
    background: var(--nc-menu-active-hover);
    color: var(--nc-menu-active-text);
    border-color: var(--nc-menu-active-line);
    box-shadow: inset 0 1px #ffffff0d;
  }
}
.ncard__tabs .ncard__tabs-btns .ncard__tabs-btn:focus-visible {
  outline: 2px solid var(--nc-menu-focus);
  outline-offset: 3px;
}
.ncard__tabs .ncard__tabs-btns .ncard__tabs-btn:is(:disabled, [aria-disabled="true"]) {
  opacity: .45;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}
:is(.ncard, .ncard-list, .ncard__tabs, .ncard__menu-content, .anime-cards) .tabs__nav {
  gap: 7px;
  align-items: center;
}
:is(.ncard, .ncard-list, .ncard__tabs, .ncard__menu-content, .anime-cards) .tabs__item {
  box-sizing: border-box;
  min-height: 40px;
  height: auto;
  padding: 9px 14px;
  border: 1px solid var(--bdc);
  border-radius: 10px;
  color: var(--tt);
  font-size: 13px;
  line-height: 1.4;
  transition: background-color .18s ease, border-color .18s ease;
}
:is(.ncard, .ncard-list, .ncard__tabs, .ncard__menu-content, .anime-cards) .tabs__item--active {
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
}
.tabs__navigate__unlocked { border: 1px solid var(--bdc); border-radius: 10px; }
.tabs__navigate__unlocked--active { background: var(--accent); border-color: var(--accent); color: #fff; }
.tabs__navigate__unlocked:hover { background: var(--accent); border-color: var(--accent); color: #fff; }
.ncard__menu-tabs {
  display: flex;
  gap: 7px;
  padding: 5px;
  margin-bottom: 16px;
  border: 1px solid var(--bdc);
  border-radius: 14px;
  background: var(--bg-2);
  scrollbar-width: thin;
}
.ncard__menu-tabs a {
  height: 40px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: 13px;
  text-transform: none;
  font-weight: 500;
  color: var(--tt);
}
.ncard__menu-tabs a[class*=active] {
  padding: 0 18px;
  border: 1px solid var(--accent);
  border-bottom-color: var(--accent) !important;
  border-radius: 9px;
  background: var(--accent);
  color: #fff;
}
.ncard__menu-content {
  border-top: 1px solid var(--bdc);
  background-image: radial-gradient(ellipse at top right, rgba(158, 41, 79, .045), transparent 65%);
}

/* 03. Single card: art, metadata, owners */
.ncard__bg { border-radius: 20px; }
.ncard__bg::before { animation-duration: 18s; }
.ncard__bg::after {
  backdrop-filter: blur(12px) saturate(.85);
  background: linear-gradient(135deg, rgba(23, 14, 31, .35), rgba(23, 14, 31, .12) 55%, rgba(158, 41, 79, .25));
}
.ncard__img {
  box-sizing: border-box;
  max-width: 100%;
  padding: 8px;
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 20px;
  background: rgba(255, 255, 255, .14);
  box-shadow: 0 16px 38px rgba(14, 9, 24, .2);
}
.ncard__img > :is(img, video) { border-radius: 13px; }
.ncard__meta-item { padding-left: 54px; line-height: 1.55; }
.ncard__meta-item .fal { border-radius: 12px; color: var(--accent); }
.ncard__meta-item div { font-size: 11px; font-weight: 500; letter-spacing: .045em; }
.ncard__main-title { font-size: clamp(20px, 2vw, 26px); line-height: 1.4; overflow-wrap: anywhere; }
.ncard__main-title a {
  box-sizing: border-box;
  padding: 5px 12px;
  border: 1px solid var(--bdc);
  border-left: 3px solid var(--accent-gold, #c9af1c);
  border-radius: 8px;
  box-shadow: none;
  background: var(--bg-2);
  font-size: .8em;
}
.ncard__owners-list, .ncard__history-list {
  gap: 18px 14px;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 105px), 1fr));
}
.card-show__owner {
  box-sizing: border-box;
  padding: 14px 9px 12px;
  border: 1px solid var(--bdc);
  border-radius: 14px;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.card-show__owner-image img { width: 44px; height: 44px; border-radius: 12px; }
.card-show__owner-name { font-weight: 500; }
.card-show__owner-icon { top: -7px; right: -5px; }
.card-show__owner-icon i { box-shadow: 0 0 0 3px var(--bg); }
.card-show__owner--online { border-color: #31a775; box-shadow: inset 0 -2px #31a775; }
.card-show__owner:hover { background-color: var(--bg-2); color: var(--tt); border-color: var(--accent); }
.card-show__owner--black:hover { background-color: #1b1b1b; color: rgba(255,255,255,.88); }
.card-show__owner--light:hover { background-color: #f3f3f3; color: #161616; }
.ncard__about {
  padding: 22px;
  border: 1px solid var(--bdc);
  border-top: 3px solid var(--accent);
  border-radius: 16px;
  background: var(--bg-2);
  line-height: 1.65;
}
.ncard__about-legend { gap: 8px 12px; padding: 12px 0; font-size: 13px; font-weight: 500; }
.ncard__about-legend > div {
  padding: 5px 9px;
  border: 1px solid var(--bdc);
  border-radius: 9px;
  background: var(--bg);
}
.ncard__offer-send-btn {
  min-height: 44px;
  margin: 0;
  padding: 12px 20px 12px 58px;
  background: var(--accent);
  color: #fff;
  border-radius: 11px;
  line-height: 1.4;
}
.ncard__userlist2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 12px; }
.ncard__userlist2 .profile__friends-item { border: 1px solid var(--bdc); border-radius: 12px; }
.ncard__userlist2 .profile__friends-item:hover { background: var(--bg-2); color: var(--tt); border-color: var(--accent); }
.ncard__notfound { padding: 30px 16px; text-align: center; line-height: 1.6; }
.ncard__notfound .fal { color: var(--accent); opacity: .65; }

/* 04. History and ranking */
.history__item { box-sizing: border-box; padding: 16px; border: 1px solid var(--bdc); border-radius: 14px; }
.history__item-header { gap: 10px; padding-bottom: 12px; margin-bottom: 12px; }
.history__name a { color: var(--accent); }
.history__date, .timeline__date { font-size: 12px; }
.history__body { padding-bottom: 4px; scrollbar-width: thin; }
.history__body::before { width: 28px; height: 28px; font-size: 20px; }
.timeline__list { box-sizing: border-box; }
.timeline__marker { left: -26px; background: var(--accent); box-shadow: 0 0 0 4px var(--bg); }
.timeline__content { max-width: 100%; padding: 14px; border-radius: 14px; }
.timeline__content img { max-width: 100%; height: auto; border-radius: 10px; }
.timeline__author { font-weight: 500; }
.ncard__users-toplist { gap: 12px; }
.ncard__users-toplist .card-inline {
  box-sizing: border-box;
  position: relative;
  width: min(100%, 720px);
  min-width: 0;
  border-radius: 14px;
  box-shadow: 0 3px 12px rgba(18, 12, 28, .035);
}
.ncard__users-toplist .card-inline::after { right: 10px; bottom: 6px; font-size: 40px; }
.ncard__users-toplist .card-inline[data-place="1"] { border-color: #c8a457; background-image: linear-gradient(110deg, rgba(200,164,87,.1), transparent 65%); }
.ncard__users-toplist .card-inline[data-place="2"] { border-color: #9aa5b7; }
.ncard__users-toplist .card-inline[data-place="3"] { border-color: #b98764; }
.ncard__my-reward:not(:empty) {
  padding: 16px 20px;
  margin-bottom: 16px;
  border: 1px solid var(--bdc);
  border-left: 3px solid var(--accent-gold, #c9af1c);
  border-radius: 12px;
  background: var(--bg-2);
}

/* 05. Packs. Keep reveal classes and the three-column deck geometry. */
.lootbox__wrapper { border-radius: 18px; }
.lootbox__images { margin-top: 32px; }
.lootbox__image { border-radius: 11px; box-shadow: 0 12px 24px rgba(14,9,24,.16); }
.lootbox__descr {
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
  padding: 26px;
  gap: 22px;
  border: 1px solid var(--bdc);
  border-top: 3px solid var(--accent);
  border-radius: 18px;
  background-color: var(--bg);
  background-image: radial-gradient(ellipse at 100% 0, rgba(158,41,79,.045), transparent 60%);
  box-shadow: 0 6px 24px rgba(18,12,28,.04);
  line-height: 1.65;
}
.lootbox__descr-title { font-size: clamp(21px, 2.5vw, 28px); font-weight: 700; line-height: 1.3; }
.lootbox__descr-subtitle { font-size: 17px; font-weight: 700; margin-bottom: 4px; }
.lootbox__descr-section--bd { padding: 20px 0; }
.lootbox__descr ul li { margin-left: 0; margin-bottom: 6px; }
.lootbox__descr span:not([class]), .lootbox__counter, .lootbox__balance, .lootbox__counter__s { color: var(--accent); font-variant-numeric: tabular-nums; }
.lootbox__descr a { text-underline-offset: 3px; }
.lootbox__descr a span:not([class]) { color: inherit; }
.lootbox__title { font-size: clamp(20px, 2.5vw, 28px); line-height: 1.35; margin-bottom: 26px; }
.lootbox__middle { gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lootbox__middle-item {
  box-sizing: border-box;
  position: relative;
  min-width: 0;
  padding: 20px 10px;
  border: 1px solid var(--bdc);
  border-radius: 14px;
  background: var(--bg-2);
  transition: border-color .18s ease, background-color .18s ease;
}
.lootbox__middle-item--active {
  border-color: var(--accent);
  background-image: linear-gradient(135deg, rgba(158,41,79,.09), transparent);
  box-shadow: inset 0 0 0 1px var(--accent);
}
.lootbox__middle-count { font-size: 20px; margin-bottom: 6px; }
.lootbox__middle-price { font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.lootbox__list { --gap: 24px; gap: var(--gap); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lootbox__card { min-width: 0; border-radius: 14px; box-shadow: 0 6px 18px rgba(18,12,28,.1); }
.lootbox__card:hover { transform: none; box-shadow: 0 8px 24px rgba(18,12,28,.18); }
.lootbox__list img { height: auto; object-fit: cover; }
.cd { border-radius: 14px; }
.lootbox__open-btn {
  box-sizing: border-box;
  min-width: min(273px, 100%);
  max-width: 100%;
  height: auto;
  min-height: 48px;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: var(--accent);
  color: #fff;
  font-weight: 700;
  white-space: normal;
  line-height: 1.45;
}

/* 06. Clubs. A restrained rose-and-gold identity. */
.nclub { --accent-club: var(--accent); }
.nclub__top-carou {
  padding: 22px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  background-color: #33202e;
  background-image: radial-gradient(ellipse at top right, rgba(201,149,91,.18), transparent 60%), linear-gradient(125deg, #251c2b, var(--accent));
}
.nclub__sect-title { font-size: clamp(20px, 2vw, 25px); line-height: 1.4; }
.nclub__sect-title span { font-size: 13px; }
.nclub__sect-title-top::before, .nclub__sect-title-top::after { width: 38px; opacity: .7; }
.nclub__sect-header { gap: 14px; }
.nclub__ctrl { gap: 8px; }
.nclub__btn-create, .nclub__btn-my, .nclub__btn-base {
  box-sizing: border-box;
  min-height: 42px;
  height: auto;
  padding: 10px 16px;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.4;
  white-space: normal;
  text-align: center;
}
.nclub__btn-create { color: #fff; }
.nclub__btn-my, .nclub__btn-base { border-color: var(--bdc); background: var(--bg-2); }
.club-top-list__item { height: 136px; border-radius: 14px; }
.club-top-list__inner { padding: 14px 16px; }
.club-top-list__inner::before { background: linear-gradient(180deg, rgba(13,9,20,.4), rgba(13,9,20,.84)); }
.club-top-list__inner::after { opacity: .2; pointer-events: none; }
.club-top-list__row { font-size: 16px; }
.club-top-list__name { margin-left: 12px; }
.club-top-list__count { padding-top: 10px; border-top: 1px solid rgba(255,255,255,.18); }
.nclub__list-clubs { gap: 24px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); }
.club-list__item {
  box-sizing: border-box;
  min-width: 0;
  padding: 24px 20px 20px;
  gap: 14px;
  border: 1px solid var(--bdc);
  border-radius: 18px;
  background-color: var(--bg-2);
  background-image: radial-gradient(ellipse at 50% 0, rgba(158,41,79,.075), transparent 65%);
  box-shadow: 0 5px 16px rgba(18,12,28,.04);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.club-list__item::before, .club-list__item::after { content: none; }
.club-list__item--active { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
.club-list__position { left: 12px; top: 12px; min-width: 30px; width: auto; padding: 4px 8px; border-radius: 8px; line-height: 1.3; }
.club-list__avatar { width: 96px; border: 3px solid var(--bg); border-radius: 24px; box-shadow: 0 5px 16px rgba(18,12,28,.1); }
.club-list__name { font-size: 19px; font-weight: 700; overflow-wrap: anywhere; }
.club-list__level { font-size: 12px; margin-top: -6px; }
.club-list__members { padding: 6px 12px; border-width: 1px; background: var(--bg); line-height: 1.4; }
.club-list__item .club__level-bar { height: 6px; overflow: hidden; border-radius: 10px; }
.club-list__item .club__level-bar--fill { height: 6px; border-radius: inherit; background: var(--accent-club); }
.dt-is-active .club-list__item { border-color: var(--bdc); box-shadow: 0 5px 16px rgba(0,0,0,.12); }
.dt-is-active .club-list__item--active { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }

/* 07. Carousel controls: keep the pre-initialisation item widths above. */
:is(#cards-carousel, #cards-carousel-2, #cards-carousel-showcase, .club-top-list, .club-top-list-main, .nclub__top-carou-content) .owl-nav button {
  box-sizing: border-box;
  width: 36px;
  height: 36px;
  border: 1px solid var(--bdc);
  border-radius: 11px;
  background: var(--bg);
  color: var(--tt);
  box-shadow: 0 4px 14px rgba(18,12,28,.1);
  font-size: 16px;
}
:is(#cards-carousel, #cards-carousel-2, #cards-carousel-showcase, .club-top-list-main, .nclub__top-carou-content) .owl-dot span { border-radius: 10px; background: var(--bdc); }
:is(#cards-carousel, #cards-carousel-2, #cards-carousel-showcase, .club-top-list-main, .nclub__top-carou-content) .owl-dot.active span { background: var(--accent); }

/* 08. Interaction. Outlines do not move nearby controls. */
:is(.ncard, .ncard-list, .nclub, .lootbox__wrapper) :is(a, button, input, select, [tabindex]):focus-visible,
:is(.anime-cards__item, .card-show__owner, .ncard__tabs-btn, .tabs__navigate__unlocked, .lootbox__middle-item):focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}
:is(.ncard__offer-send-btn, .lootbox__open-btn, .nclub__btn-create):disabled,
:is(.ncard__offer-send-btn, .lootbox__open-btn, .nclub__btn-create)[aria-disabled="true"] {
  opacity: .5;
  cursor: not-allowed;
  box-shadow: none;
}
@media (hover: hover) and (pointer: fine) {
  .anime-cards__item:not(.club-boost__image):hover { border-color: var(--accent); box-shadow: 0 5px 18px rgba(18,12,28,.14); }
  .club-list__item:hover { border-color: var(--accent); box-shadow: 0 8px 22px rgba(18,12,28,.09); }
  .lootbox__middle-item:hover { border-color: var(--accent); }
  .ncard__offer-send-btn:hover, .lootbox__open-btn:not(:disabled):hover { background-color: var(--accent); filter: brightness(1.08); }
}

/* Progressive enhancement: tint follows a customised site accent. */
@supports (background: color-mix(in srgb, red 10%, transparent)) {
  .anime-cards { background-image: radial-gradient(ellipse at 0 0, color-mix(in srgb, var(--accent) 6%, transparent), transparent 65%); }
  .club-list__item { background-image: radial-gradient(ellipse at 50% 0, color-mix(in srgb, var(--accent) 8%, transparent), transparent 65%); }
  .lootbox__middle-item--active { background-image: linear-gradient(135deg, color-mix(in srgb, var(--accent) 10%, transparent), transparent); }
}

/* 09. Responsive layout */
@media screen and (max-width: 950px) {
  .anime-cards { grid-template-columns: repeat(auto-fill, minmax(min(100%, 130px), 1fr)); }
  .nclub__list-clubs { gap: 18px; }
}
@media screen and (max-width: 760px) {
  .anime-cards { gap: 12px 10px; padding-top: 18px; padding-bottom: 18px; }
  .ncard__tabs-btns { width: 100%; }
  .ncard__tabs-btn { min-width: 0; flex: 1 1 auto; padding: 0 12px; }
  .ncard__menu-tabs a { flex-grow: 0; padding: 0 14px; }
  .ncard__menu-tabs a[class*=active] { padding: 0 14px; }
  .ncard__about { padding: 16px; }
  .ncard__about-legend { font-size: 12px; }
  .lootbox__descr { width: 100%; margin: 0 auto; padding: 20px; border-width: 1px; border-top-width: 3px; border-radius: 16px; }
  .lootbox__list { --gap: 14px; gap: var(--gap); }
  .lootbox__middle { gap: 10px; }
  .lootbox__middle-item { padding: 16px 8px; }
  .nclub__top-carou { padding: 16px; border-radius: 16px; }
  .nclub__ctrl { flex-wrap: wrap; }
}
@media screen and (max-width: 470px) {
  .anime-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 7px; }
  .anime-cards__item:not(.club-boost__image) { padding: 3px; border-radius: 11px; }
  .anime-cards__image, .anime-cards__image :is(img, video) { border-radius: 7px; }
  .anime-cards__owned-by-user-want:not(.club-boost__image)::after { width: 20px; height: 20px; top: 7px; right: 7px; font-size: 10px; }
  .anime-cards__owned-by-user-want.card-awakening-done::after { width: auto; height: auto; top: 30px; right: 3px; padding: 1px 4px; font-size: 9px; }
  .uspnew__cards .anime-cards__owned-by-user-want.card-awakening-done::after { top: 18px; }
  .ncard__bg { border-radius: 14px; }
  .ncard__main { gap: 20px; }
  .ncard__tabs-btn { min-height: 42px; height: auto; padding: 10px; white-space: normal; line-height: 1.4; }
  .ncard__owners-list, .ncard__history-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 10px; }
  .card-show__owner { padding: 12px 6px 10px; border-radius: 11px; }
  .card-show__owner-image img { width: 40px; height: 40px; border-radius: 10px; }
  .card-show__owner-name { font-size: 11px; }
  .ncard__about-legend > div { box-sizing: border-box; width: auto; max-width: 100%; flex: 1 1 120px; }
  .ncard__offer-send-btn { width: 100%; }
  .history__item { padding: 12px; }
  .history__item-header { flex-wrap: wrap; gap: 5px; }
  .history__date { width: 100%; font-size: 11px; }
  .lootbox__descr { padding: 16px; font-size: 13px; }
  .lootbox__middle { gap: 7px; }
  .lootbox__middle-item { padding: 14px 6px; border-radius: 11px; }
  .lootbox__middle-count { font-size: 16px; }
  .lootbox__middle-price { font-size: 12px; }
  .lootbox__list { --gap: 9px; }
  .lootbox__list img, .lootbox__card, .cd { border-radius: 9px; }
  .lootbox__open-btn { width: 100%; }
  .club-list__item { padding: 18px 14px 14px; gap: 10px 14px; border-radius: 15px; }
  .club-list__position { left: 8px; top: 8px; z-index: 1; padding: 3px 6px; font-size: 11px; }
  .club-list__avatar { width: 76px; border-radius: 19px; align-self: start; }
  .club-list__name { padding-top: 3px; font-size: 17px; }
  .club-list__level { margin: -3px 0 0; }
  .club-list__members { padding: 5px 8px; font-size: 11px; }
  .nclub__sect-title-top::before, .nclub__sect-title-top::after { width: 24px; }
}

/* Reduce decoration whil.ncard__meta-iteme allowing reveal animations to finish visibly. */
@media (prefers-reduced-motion: reduce) {
  .ncard__bg::before { animation: none; will-change: auto; }
  .step1 .lootbox__image, .step2 .cd {
    animation-duration: .01ms;
    animation-delay: 0ms;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
  }
  .lootbox__card[data-rank] { animation-duration: .01ms; animation-iteration-count: 1; }
  .lootbox__image, .cd, .lootbox__card,
  .anime-cards__item:not(.club-boost__image), .club-list__item,
  .card-show__owner, .ncard__tabs-btn, .lootbox__middle-item { transition: none; }
}