html, body {
  margin: 0;
  padding: 0;
  /* возвращаем обычный поток и скролл */
  width: 100%;
  min-height: 100%;
  background-color: #0b0c10;
}

  * {
    box-sizing: border-box;
    min-width: 0;
    margin: 0;
    padding: 0;
  }
  
  :root {
  --spacing: 1px;
  --radius-round: 817.36px;
}

  @font-face {
    font-family: 'SF Pro Display';
    src: url("/SFPRODISPLAYBOLD.OTF") format('opentype');
    font-weight: bold;
    font-style: normal;
  }
  
  body {
    font-family: 'SF Pro Display', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background: #0b0c10;
    color: #eee;
    margin: 0; 
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    min-height: 100vh;
    touch-action: pan-y;
    overscroll-behavior-y: contain;
  }

.app-container {
  width: 100%;
  max-width: 800px;       /* <-- ограничиваем, чтобы карточки не растягивались слишком широко */
  margin: 0 auto;         /* по центру */
  padding: 20px;
  box-sizing: border-box;
  position: relative;
}

  header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    width: 100%;
  }

  h1 {
    margin: 0;
    font-weight: 700;
    font-size: 24px;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 60%;
  }

  .balance {
    background: #333;
    padding: 6px 12px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 18px;
    white-space: nowrap;
  }

  .stars-icon {
    margin-right: 6px;
    color: gold;
  }

  #case-selection {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .case-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    cursor: pointer;
    padding: 8px;
    background: #131417;
    border-radius: 12px;
  }

  .case-card:hover {
    transform: scale(1.05);
  }

  .case-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
  }

  .case-info {
    padding-bottom: 16px;
    transition: .3s;
  }

  .case-name {
    margin-top: 12px;
    color: #fff;
    text-align: center;
    font-size: 14px;
    line-height: 18px;
    margin-bottom: 8px;
  }

  .case-price {
    display: flex;
    align-items: center;
    justify-content: center;
  }

.custom-padding {
  padding: calc(var(--spacing) * 3);
}

  #case-opening {
    width: 100%;
    display: none;
    flex-direction: column;
    margin-top: 60px;
  }

  #case-opening.active {
    display: flex;
  }

  button {
    margin-top: 15px;
    background: #ff9800;
    border: none;
    border-radius: 25px;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 16px;
    cursor: pointer;
    color: white;
    transition: background-color 0.3s ease;
    width: 100%;
  }

  /* ▼▼▼ Обновленные стили слот-машины ▼▼▼ */
  .case_opening_process {
    width: 100%;
    overflow: hidden;
    position: relative;
    margin: 20px 0;
  }

  .case_opening_items_list {
    width: 100%;
    overflow: hidden;
  }

  .case_opening_items_wrapper {
    width: 100%;
    overflow: hidden;
  }

  .case_opening_items {
    display: flex;
    gap: 1px;
    will-change: transform;
    width: max-content;
  }

  .case_opening_item {
    flex: 0 0 110px;
    background: #1e1f26;
    border-radius: 10px;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 110px;
  }

  .case_opening_item_img {
    width: 60px;
    height: 60px;
    margin-bottom: 8px;
  }

  .case_opening_item_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .case_opening_item_description {
    font-size: 12px;
    color: #fff;
    margin-bottom: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
  }

  .case_opening_item_cost {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    color: #FFCA5A;
    font-size: 14px;
    font-weight: 600;
  }

  .case_opening_item_cost-stars {
    width: 16px;
    height: 16px;
  }

  /* Индикатор выигрыша */
  .slot-indicator {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    pointer-events: none;
  }

  .top-indicator {
    top: -1px;
  }

  .bottom-indicator {
    bottom: -1px;
    transform: translateX(-50%) rotate(180deg);
  }

  .triangle {
    width: 0;
    height: 0;
    border-left: 7.5px solid transparent;
    border-right: 7.5px solid transparent;
    border-top: 15px solid cyan;
  }

  /* Градиенты по краям */
  .slot-fade {
    position: absolute;
    top: 0;
    width: 50px;
    height: 100%;
    z-index: 5;
    pointer-events: none;
  }

  .slot-fade.left {
    left: 0;
    background: linear-gradient(to right, #0b0c10, transparent);
  }

  .slot-fade.right {
    right: 0;
    background: linear-gradient(to left, #0b0c10, transparent);
  }

  .case-header {
    position: relative;
    width: 100%;
  }

  .case-header-row {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
  }

  .case-title {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    max-width: 60%;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .open-case-button {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    background-color: rgba(0, 122, 255, 1);
    width: 100%;
    line-height: 24px;
    border: none;
    border-radius: 12px;
    padding: 13px 22px;
    font-size: 18px;
    text-transform: unset;
    font-weight: 500;
    color: #fff;
    cursor: pointer;
    transition: background 0.3s ease;
    margin: 15px auto 0;
  }

  .open-case-button:hover {
    background: #1976d2;
  }

  .open-case-icon {
    width: 18px;
    height: 18px;
  }

  .case_opening_process_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    width: 100%;
  }

  .case_opening_process_btn button {
    padding: 10px 20px;
    border-radius: 8px;
    background: #161920;
    display: flex
;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: none;
    outline: none;
    color: #7f8bad;
    font-family: SF Pro Display;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

  .case_opening_process_btn img {
    width: 25px;
    height: 25px;
  }

  .case-contents {
    margin-top: 30px;
    width: 100%;
    color: #ddd;
    overflow: hidden;
  }

  .case-contents h3 {
    margin-bottom: 40px;
    color: #fff;
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    line-height: 26px;
    text-transform: uppercase;
    text-align: center;
}

  .case-contents ul {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
  }

  .case-contents li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
  }

  .item-info {
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: 70%;
    overflow: hidden;
    flex-shrink: 1;
  }

  .item-info img {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 6px;
    object-fit: contain;
    background: #222;
    border: 1px solid #444;
  }

  .item-info span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 1;
  }

  .result-message {
    margin-top: 15px;
    font-weight: 700;
    font-size: 18px;
    min-height: 24px;
    text-align: center;
    color: #ffa500;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-sizing: border-box;
    padding: 0 10px;
  }

  .about_item_bg {
    width: 100%;
    height: 238px;
    border-radius: 10px;
    background: #161920;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
  }

  .about_item_bg img {
    max-width: 80%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 10px;
  }

#backToSelection {
  width: 37px !important;  /* Можно поставить меньше (например, 25px) */
  min-width: auto !important; /* Отключаем минимальную ширину */
  padding: 0 5px !important; /* Уменьшаем внутренние отступы */
  height: 37px !important;  /* Уменьшаем высоту */
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #2d2d2d !important;
  border: 1.5px solid #444 !important;
  border-radius: 10px;
  cursor: pointer;
  flex-shrink: 0 !important; /* Запрещаем сжатие */
  flex-grow: 0 !important;   /* Запрещаем растягивание */
}

#backToSelection svg {
  width: 16px;
  height: 16px;
  stroke: #5a5a5a !important;
  stroke-width: 2;
}

* {
  scrollbar-width: thin;
  scrollbar-color: #5a5a5a #2d2d2d;
}

::-webkit-scrollbar {
    width:8px;
    height: 8px
}

::-webkit-scrollbar-track {
    background: #2d2d2d;
    border-radius: 4px
}

::-webkit-scrollbar-thumb {
    background: #5a5a5a;
    border: 1px solid #2d2d2d;
    border-radius: 4px
}

::-webkit-scrollbar-thumb:hover {
    background: #6a6a6a
}

::-webkit-scrollbar-corner {
    background: #2d2d2d
}

.back-arrow {
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #2d2d2d; /* ← Новый фон */
  border: 1.5px solid #444;
  border-radius: 10px;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease;
  padding: 0;
}

.back-arrow svg {
  width: 20px;
  height: 20px;
  stroke: #5a5a5a; /* ← Новый цвет стрелки */
  stroke-width: 2;
}

  .back-arrow:hover {
    background-color: #2a2c34;
  }
  
  @media (max-width: 480px) {
    #case-selection {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }
    
    .case-image {
      height: 90px;
    }
    
    .case-name {
      font-size: 13px;
    }
    
    .case-price {
      font-size: 13px;
    }

    .case-contents li {
      flex-wrap: wrap;
      gap: 8px;
    }
    
    .item-info {
      max-width: 100%;
      width: 100%;
    }
    
    .item-info span {
      flex-grow: 1;
    }
    
    .result-message {
      font-size: 16px;
    }
  }

  @media (min-width: 420px) and (max-width: 767px) {
    .profile-container[data-v-47cb848d] {
        max-width:424px
    }
}

  @media (max-width: 400px) {
  .case_items_content {
    grid-template-columns: 1fr;
  }
}

  @media (max-width: 360px) {
    #case-selection {
      grid-template-columns: 1fr;
      max-width: 300px;
    }
    
    .case-image {
      height: 120px;
    }
    
    .app-container {
      padding: 15px;
    }
  }

.case_items_content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
    margin: 0 auto 100px;
    width: 100%;
    max-width: 1200px;
    box-sizing: border-box;
}

.case_item {
    position: relative;
    min-height: 158px;
    border-radius: 13px;
    background: #161920;
    border: 1px solid #3c434930;
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    cursor: pointer;
    justify-content: center;
    gap: 4px;
    box-sizing: border-box;
}

.case_item-percent {
  position: relative;
  display: flex;
  align-items: center;
}

.chance_tooltip {
  margin-left: 5px;
  font-size: 12px;
  color: #aaa;
}

.case_item_content {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-grow: 1;
    justify-content: center;
}

.case_item-img {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 90px;
    margin: 20px 0 10px;
    position: relative;
}

.case_item p {
    color: #fff;
    text-align: center;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.case_item_name {
    margin-top: 10px;
    height: 32px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 16px;
    text-overflow: ellipsis;
}

.case_item-price-list {
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 5px 0 39px;
}

.case_item-price {
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 5px 0 39px;
}

.case_item_tgs {
  width: 60px;
  height: 60px;
}

.nft-image {
  width: 26px !important;
  height: 48px !important;
  object-fit: contain;
}

#live-drop-bar {
  width: 100%;
  overflow: hidden;
  height: 48px;
  background: #121418;
  border-bottom: 1px solid #1e1f26;
  padding: 6px 0;
  display: flex;
  align-items: center;
  position: relative;
}

#live-drop-track {
  display: flex;
  animation: scrollDrops 40s linear infinite;
  gap: 0;
  min-width: 100%;
  width: max-content;
}

.live-drop-item {
  flex: 0 0 60px;
  width: 60px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.live-drop-item img,
.live-drop-item tgs-player {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.case_winned_items_grid.single {
  display: flex;
  justify-content: center;
}
.case_winned_item {
  text-align: center;
}

.top_nav {
    width: 100%;
    position: relative;
    z-index: 10;
    max-width: 1200px;
    margin: 0 auto 10px;
}

.user__profile {
    display: flex;
    align-items: center;
    gap: 8px;
}

.user_avatar img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}

.user_name {
  font-size: 15px;
  color: white;
  font-weight: 600;
}

.logged_user_profile {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 10px;
}

.nav_logged_user {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    cursor: pointer;
    overflow: hidden;
}
.nav_logged_user img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.nav_logged_user-name {
    font-size: 16px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 70px;
}

.nav_topup {
    display: flex;
    padding: 7px 10px;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    margin-left: auto;
    background: #161920;
    gap: 8px;
}

.nav_topup-item {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  font-weight: 600;
  color: white;
}

.nav_topup-item img {
  width: 16px;
  height: 16px;
}

.nav_topup-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_3366_23120)'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%2024C18.6274%2024%2024%2018.6274%2024%2012C24%205.37258%2018.6274%200%2012%200C5.37258%200%200%205.37258%200%2012C0%2018.6274%205.37258%2024%2012%2024ZM12.8571%206.85714C12.8571%206.38376%2012.4734%206%2012%206C11.5266%206%2011.1429%206.38376%2011.1429%206.85714V11.1429H6.85714C6.38376%2011.1429%206%2011.5266%206%2012C6%2012.4734%206.38376%2012.8571%206.85714%2012.8571H11.1429V17.1429C11.1429%2017.6162%2011.5266%2018%2012%2018C12.4734%2018%2012.8571%2017.6162%2012.8571%2017.1429V12.8571H17.1429C17.6162%2012.8571%2018%2012.4734%2018%2012C18%2011.5266%2017.6162%2011.1429%2017.1429%2011.1429H12.8571V6.85714Z'%20fill='%23007AFF'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_3366_23120'%3e%3crect%20width='24'%20height='24'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e");
    cursor: pointer;
    color: #223251;
    font-weight: 500;
    line-height: 14px
}

.nav_topup-balance {
  display: flex;
  gap: 8px;
}

.nav_topup-balance-item {
    display: flex;
    align-items: center;
    background: #0b0c10;
    padding: 2px 8px;
    border-radius: 8px;
}

.nav_topup-balance-summ {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    margin-left: 4px;
}

.category_chips_scroll {
  overflow-x: auto;
  white-space: nowrap;
  padding: 10px;
  margin-top: 40px; /* Добавьте отступ сверху равный высоте навигации */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  position: relative;
  z-index: 1; /* Меньше чем у навигации */
}

.category_chips {
    display: flex;
    white-space: nowrap;
    float: left;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 20px;
}

.category_chips_scroll::-webkit-scrollbar {
  display: none; /* Chrome, Safari */
}

.category_chip {
    padding: 6px 14px;
    background: #131417;
    border-radius: 20px;
    cursor: pointer;
    font-size: 15px;
    transition: background .2s
}

.category_chip.active {
    background: #3b3e41;
    color: #fff;
}

.card_image img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border: none;
    outline: none;
    transition: transform .3s ease;
}

.card_prices {
    display: flex;
    align-items: center;
    justify-content: center;
}

.case-price {
    display: flex;
    align-items: center;
}

.nav_topup-stars-icon {
    width: 18px;
    height: 18px;
}

.item_real_price {
    font-weight: 500;
    font-size: 20px;
    line-height: 24px;
    color: #fff;
    margin-left: 4px;
}

.nav_profile {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 10px 16px;
    background-color: #0b0c10;
    box-shadow: 0 -2px 5px #0000001a;
    z-index: 9;
    margin-bottom: 0;
}

.profile-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.avatars {
  border-radius: 817.36px;
  padding: 6.55px;
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  position: relative;
  aspect-ratio: 1;
}

.profile-avatar {
    border-radius: var(--radius-round);
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1
}

.profile-info {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
}

.profile-name {
  color: var(--color-text);
  font-size: 24px;
  font-weight: var(--font-weight-semibold);
}

.profile-id {
  background: rgba(255, 255, 255, .05);
  border-radius: 10px;
  padding: 8px 16px;
  color: var(--color-text);
  font-size: 12px;
  line-height: 20px;
  font-weight: var(--font-weight-semibold);
  height: 36px;
  display: flex;
  align-items: center;
}

/* Остальной CSS перенесён из тз */
.balance-section {
    border-radius: 12px;
    padding: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    transition: all .3s ease
}

.balance-info {
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: flex-start;
}

.label-small {
  color: var(--color-text);
  font-size: 12px;
  line-height: 16px;
  letter-spacing: .01px;
  font-weight: 400;
  opacity: .5;
}

.balance-display {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
}

.balance-amount {
  color: var(--color-text);
  font-size: 18px;
  font-weight: var(--font-weight-semibold);
  transition: all .3s ease;
}

.coin-small {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
}

.balance-actions {
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
}

.deposit-button {
  background: #0075FF;
  border-radius: 10px;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  width: 104px;
  height: 36px;
  cursor: pointer;
  transition: all .2s ease;
}

.button-label {
  color: var(--color-text);
  font-size: 14px;
  line-height: 20px;
  font-weight: var(--font-weight-semibold);
}

.wallet-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.connect-wallet-button {
  background: #0075FF;
  border-radius: 12px;
  padding: 12px 16px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .2s ease;
}

.inventory-section {
  padding: 0 0 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
  width: 100%;
}

.inventory-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
  width: 100%;
}

.section-title {
  color: var(--color-text);
  font-size: 12px;
  line-height: 16px;
  letter-spacing: .01px;
  font-weight: 400;
  opacity: .5;
}

.buttons-profile-container {
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  position: relative;
}

.button {
  border-radius: 10px;
  border: 1px solid #ffffff24;
  padding: 8px 16px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  max-height: 36px;
  cursor: pointer;
  transition: background-color .2s ease;
}

.label {
  color: #fff;
  text-align: center;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
}

.empty-state {
  width: 100%;
  padding: 40px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  text-align: center;
}

.empty-state-message {
  color: var(--color-text);
  opacity: .7;
  font-size: 14px;
}

.open-cases-button {
  background: #0075FF;
  border-radius: 12px;
  padding: 10px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .2s ease;
}

.profile-page {
    padding: 0 0 90px;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 100%;
    min-height: 100vh; /* Добавьте это */
    background-color: #0b0c10; /* И это для фона */
}


.profile-container {
    padding: 12px 16px 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: 361px;
    box-sizing: border-box
}

.lightning-icon {
    width: 120px;
    height: 120px;
    position: absolute;
    left: calc(50% - 66.5px);
    top: calc(69% - 73px);
    transform: rotate(26deg) scale(1);
}

.lightning-svg {
    height: auto;
    position: absolute;
    left: -139px;
    transform: scale(.35) rotate(344deg);
    top: -48px;
    overflow: visible;
}

.banner-content {
    display: flex;
    flex-direction: row;
    gap: 5px;
    align-items: center;
    justify-content: flex-start;
    position: relative;
}

.coin-wrapper {
    width: 36px;
    height: 36px;
    position: relative;
    aspect-ratio: 1;
}

.banner-text {
    color: #fff;
    text-align: left;
    font-family: Inter-SemiBold, sans-serif;
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    position: relative;
}

.coin-svg {
    width: 36px;
    height: 36px;
    position: absolute;
    overflow: visible;
}

.free-case-banner {
    background: linear-gradient(115.39deg,#0098EA 0%,#3FBCFF 100%);
    border-radius: 16px;
    padding: 15px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    position: relative;
    box-shadow: 0 0 20px #3fbcff59;
    overflow: hidden;
    width: 100%
}

.telegram-button {
    background: #ffffff;
    border-radius: 10px;
    padding: 8px 16px;
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;
    justify-content: center;
    height: 36px;
    min-width: 72px;
    max-height: 36px;
    position: relative;
    box-shadow: 0 0 50px #ffffff80;
    border: none;
    cursor: pointer;
}

.button-label_ref {
    color: #151515;
    text-align: center;
    font-family: var(--font-family, "Inter-SemiBold", sans-serif);
    font-size: var(--font-size-sm, 14px);
    line-height: var(--line-height-sm, 20px);
    font-weight: var(--font-weight-semibold, 600);
    position: relative;
}

.profile-content-wrapper {
  width: 107%;
  margin-top: 30px;
}

.profile_content_wrapper {
  border-radius: 12px;
  padding: 16px;
}

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

.profile_content-head-label {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
}

.btn_sale_all {
    border-radius: 10px;
    gap: 8px;
    padding: 8px 18px;
    background: #007aff;
    max-width: 133px; /* Добавьте это */
    white-space: nowrap; /* Чтобы текст не переносился */
    overflow: hidden;
    text-overflow: ellipsis; /* Если текст слишком длинный */
}

.profile_items_list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.profile_items_list_item {
    padding: 12px 16px;
    border-radius: 12px;
    background: #1a1b1f;
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 12px;
}

.profile_items_list_item img {
    width: 84px;
    height: 84px
}

.profile_items_list_item_desc {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.profile_items_name {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    margin: 12px 0;
    text-align: center;
}

.profile_items_price {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0;
    gap: 4px;
}

.ton-icon {
  width: 16px;
  height: 16px;
}

.profile_item_actions_list {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
}

.profile_item_action {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    height: 42px;
    min-width: 142px;
    gap: 4px;
    padding: 8px 24px;
    background: #161920;
    border-radius: 10px;
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
    color: #fff;
}

.sell-btn svg,.sell-btn img {
    width: 16px;
    height: 16px;
    margin-left: 4px
}

.profile_item_action.sell-btn {
background: #161920;
    border: 1px solid #28292b;
}

.profile_item_action.withdraw-btn {
    background: #007aff;
}

.profile_items_price svg,.profile_items_price img {
    width: 18px;
    height: 18px;
}

#caseTitle {
  all: unset !important; /* Полный сброс всех стилей */
  display: block;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  color: white !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 !important;
  
  /* Явное отключение всех возможных эффектов */
  -webkit-text-stroke: 0 !important;
  text-stroke: 0 !important;
  text-shadow: none !important;
  text-decoration: none !important;
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
  filter: none !important;
  
  /* Отключение всех эффектов смешивания */
  mix-blend-mode: normal !important;
  background-blend-mode: normal !important;
  isolation: isolate !important;
  
  /* Оптимизация рендеринга */
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
  font-synthesis: none !important;
  
  /* Удаление псевдоэлементов */
  &::before, &::after {
    content: none !important;
    display: none !important;
  }
}

.text-solid {
  all: inherit !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  color: white !important;
}

.custom-padding .button--navy {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

.custom-padding .text-solid {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

.wallet-section[data-v-47cb848d] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.wallet-address {
  margin-top: 10px;
  font-size: 14px;
  color: #aaa;
  word-break: break-all;
}

.stars-modal-backdrop {
  display: none;
  align-items: center !important;
  justify-content: center !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: rgba(0, 0, 0, 0.7) !important;
  z-index: 1000 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.stars-modal-window {
  display: none;
  position: relative !important; /* Убедимся, что не absolute/fixed */
  margin: auto !important; /* Центрирование внутри flex-контейнера */
  min-width: 300px !important;
  max-width: 90% !important;
  width: auto !important;
  background-color: #23272f !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6) !important;
  color: #fff !important;
}

.stars-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  color: white;
  font-size: 18px;
  font-weight: 600;
  border-bottom: 1px solid #2B3540;
  position: relative;
}

.stars-modal-close {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  padding: 4px;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s;
}

.stars-modal-close:hover {
  background: #31343c;
}

.stars-modal-close svg {
  pointer-events: none; /* Чтобы клик срабатывал только на кнопке */
}

.stars-modal-content {
  padding: 16px;
  padding-bottom: 24px;
}

@keyframes fadeInScale {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes fadeInModal {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.stars-modal-window.closing {
  animation: fadeOutScale 0.3s ease forwards;
}

@keyframes fadeOutScale {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(0.9);
  }
}

/* Для анимации закрытия */
.stars-modal-window.closing {
  animation: slideDown 0.3s ease forwards;
}

.stars-modal-close:hover {
  background: #31343c;
}

.stars-modal-placeholder-header {
  color: #aaa;
  margin-bottom: 8px;
  font-size: 14px;
}

.stars-modal-input {
  width: 100%;
  padding: 12px;
  background: #2d2d2d;
  border: 1px solid #444;
  border-radius: 8px;
  color: white;
  font-size: 16px;
  margin-bottom: 15px;
  outline: none;
  transition: border 0.18s;
}

.stars-modal-input:focus {
  border-color: #0075FF;
}

.stars-modal-btn {
  background: #0075FF;
  color: white;
  border: none;
  border-radius: 8px;
  padding: 12px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
  width: 100%;
}

.stars-modal-btn:hover {
  background: #0066d9;
}

.hide-number-spin::-webkit-outer-spin-button,
.hide-number-spin::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.hide-number-spin {
    -moz-appearance: textfield;
}

.profile-page, .app-container {
  max-width: 100% !important;
  width: 100% !important;
}

/* Стили для раздела рефералов */
/* Основные стили для секции друзей */
#friends-section {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 70px; /* Оставляем место для нижнего меню */
  width: 100%;
  max-width: 100vw;
  padding: 15px;
  margin: 0;
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  background-color: #0b0c10;
  z-index: 5;
  margin-top: 62px;
  -webkit-overflow-scrolling: touch; /* Для плавного скролла на iOS */
}

/* Контейнер содержимого */
.referral-wrapper {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

/* Заголовки */
.ref-title {
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 8px;
  color: white;
  word-break: break-word;
  padding: 0 10px;
}

.ref-subtitle {
  text-align: center;
  color: #FFCA5A;
  font-size: 16px;
  margin-bottom: 20px;
  padding: 0 10px;
}

/* Кнопки */
.ref-actions {
display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 12px;
}

.invite-btn {
    width: 291px;
    height: 50px;
    border-radius: 10px;
    background-color: #007aff;
    color: #fff;
    padding: 15px 12px;
    border: none;
    display: flex
;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
}

.copy-btn {
    width: 50px;
    height: 50px;
    border-radius: 10px;
    background-color: #007aff;
    border: none;
    cursor: pointer;
    display: flex
;
    align-items: center;
    justify-content: center;
}

/* Список друзей */
#invitedFriendsList {
  max-height: 300px;
  overflow-y: auto;
  padding: 0 10px;
}

.invited-card {
  display: flex;
  align-items: center;
  padding: 12px;
  background: #23272f;
  border-radius: 10px;
  margin-bottom: 10px;
}

/* Адаптация для мобильных */
@media (max-width: 767px) {
  #friends-section {
    padding: 10px 15px;
  }
  
  .ref-title {
    font-size: 18px;
  }
  
  .ref-subtitle {
    font-size: 14px;
  }
}

/* Фикс для горизонтального скролла */
html, body {
  overflow-x: hidden;
  width: 100%;
}

.ref-output {
    margin-top: 40px;
}

.ref-output-label {
    display: flex
;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.output-title {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
}

.info-alert {
    width: 100%;
    padding: 4px 10px;
    background-color: #007aff21;
    color: #007aff;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    border-radius: 6px;
    margin-bottom: 16px;
}

.open_case_block {
  width: 100%;
  margin-top: 15px;
}

.promo-activation-block {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.promo-input {
  width: 100%;
  padding: 12px 16px;
  border-radius: 10px;
  background: #1E1F26;
  border: 1px solid #3C4349;
  color: white;
  font-size: 16px;
  outline: none;
}

.promo-input::placeholder {
  color: #7F8BAD;
}

.open_case_btn {
  width: 100%;
  padding: 12px;
  background: #007AFF;
  color: white;
  font-weight: 500;
  font-size: 16px;
  border: none;
  cursor: pointer;
  transition: background 0.2s;
}

.open_case_btn:hover {
  background: #0066D9;
}

.cases_block_title {
    text-align: center;
    display: flex;
    justify-content: center;
    padding: 10px 0;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.2;
    text-transform: uppercase;
    color: #fff;
    margin: 1px 0;
    border-radius: 8px;
    grid-column: 1 / -1; /* Растягиваем на всю ширину сетки */
}

  .mobile-menu-container {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #131417;
    border-top: 1px solid #2d2d2d;
    z-index: 100;
    padding: 8px 0;
    display: none;
  }

  .mob_menu_list {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 0 10px;
    width: 100%;
  }

  .mob_menu_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: #7f8bad;
    font-size: 12px;
    padding: 5px;
    border-radius: 8px;
    transition: all 0.2s ease;
    flex: 1;
    max-width: 25%;
    text-align: center;
  }

  .mob_menu_item img {
    width: 24px;
    height: 24px;
    margin-bottom: 4px;
  }

  .mob_menu_item p {
    margin: 0;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .mob_menu_item.active {
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
  }

  @media (max-width: 767px) {
    .mobile-menu-container {
      display: block;
    }
    
    .app-container {
      padding-bottom: 70px !important;
    }
    
    .profile-page {
      padding-bottom: 160px !important;
    }
  }

@keyframes scrollDrops {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}