:root {
    --background: hsl(291, 38%, 12%);
    --foreground: hsl(300, 10%, 95%);
    --primary: hsl(330, 85%, 60%);
    --primary-foreground: hsl(0, 0%, 100%);
    --accent: hsl(38, 95%, 58%);
    --accent-foreground: hsl(270, 50%, 15%);
    --muted: hsl(291, 38%, 25%);
    --muted-foreground: hsl(291, 10%, 65%);
    --border: hsl(291, 38%, 25%);
    --purple-button: hsl(270, 60%, 30%);
    --lose-color: #222;
  }

  

  
  
  .wheel-container {
    position: relative;
    z-index: 10;
    margin: 1rem 0;
  }
  


  .wheel-stand {
    position: absolute;
    z-index: -1;
    bottom: -120px;
    width: 100%;
    display: flex;
    justify-content: center;
    height: 150px;
  }
  
  .stand-base {
    width: 120px;
    height: 70px;
    background: linear-gradient(to bottom, var(--accent), var(--accent));
    border-radius: 0.5rem 0.5rem 0 0;
    border-left: 6px solid hsl(38, 100%, 40%);
    border-right: 6px solid hsl(38, 100%, 40%);
    border-top: 6px solid hsl(38, 100%, 50%);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    animation: stand-appear 0.5s ease-out forwards;
  }
  
  .stand-shadow {
    position: absolute;
    bottom: 70px;
    width: 160px;
    height: 14px;
    background-color: hsl(0, 0%, 64%);
    border-radius: 9999px;
  }
  
  @keyframes stand-appear {
    0% {
      transform: translateY(100%);
      opacity: 0;
    }
    100% {
      transform: translateY(0);
      opacity: 1;
    }
  }
  
  .wheel-outer {
    position: relative;
    width: 450px;
    height: 450px;
    border: 12px solid var(--accent);
    border-radius: 50%;
    background-color: var(--background);
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.5);
  }
  
  .pointer {
    position: absolute;
    top: -32px;
    left: 50%;
    transform: translateX(-50%);
    width: 48px;
    height: 64px;
    background: linear-gradient(to bottom, hsl(45, 100%, 50%), var(--accent));
    clip-path: polygon(50% 100%, 15% 40%, 0 0, 100% 0, 85% 40%);
    z-index: 30;
  }
  
  .pointer-glow {
    position: absolute;
    left: 12px;
    right: 12px;
    top: 8px;
    height: 16px;
    background: hsl(270, 100%, 60%);
    border-radius: 9999px;
    filter: blur(2px);
  }
  
  .pointer-highlight {
    position: absolute;
    left: 16px;
    right: 16px;
    top: 12px;
    height: 8px;
    background: hsl(270, 100%, 90%);
    border-radius: 9999px;
  }
  
  .lights-container {
    position: absolute;
    inset: 0;
  }
  
  .light-bulb {
    position: absolute;
    width: 100%;
    height: 100%;
  }
  
  .light-bulb-inner {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: hsla(60, 100%, 50%, 0.5);
    transition: all 0.3s;
  }
  
  .light-bulb.spinning .light-bulb-inner {
    background: hsl(60, 100%, 50%);
    box-shadow: 0 0 10px 2px rgb(249, 249, 225);
    animation: pulse-light 1.5s infinite ease-in-out;
  }
  
  @keyframes pulse-light {
    0%,
    100% {
      opacity: 1;
      box-shadow: 0 0 10px 2px hsla(60, 85%, 90%, 1);
    }
    50% {
      opacity: 0.5;
      box-shadow: 0 0 20px 5px hsla(60, 85%, 95%, 1);
    }
  }
  
  .wheel-inner {
    width: 100%;
    height: 100%;
    transition: transform 6s cubic-bezier(0.25, 1, 0.5, 1);
    border-radius: 50%;
  }
  
  .wheel-svg {
    width: 100%;
    height: 100%;
  }
  
  .wheel-svg text {
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.5px;
  }
  
  .wheel-center {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .star-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(
      to bottom right,
      hsla(60, 100%, 80%, 1),
      var(--accent)
    );
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);
    color: hsla(60, 100%, 50%, 1);
    filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.5));
  }
  
  .controls {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 4rem;
    z-index: 10;
  }
  
  .spin-button-wheel{
    font-family: "Poppins", sans-serif;
    font-size: 1.25rem;
    padding: 0.75rem 1.5rem;
    border-radius: 9999px;
    background: rgba(254, 82, 2, 0.955);
    color: aliceblue;
    border: none;
    cursor: pointer;
    box-shadow: 0 0 20px rgb(153, 51, 51);
    transition: all 0.3s;
    position: relative;
    top: 20px;
  }
  
  .spin-button-wheel:hover {
    transform: scale(1.05);
    background: hsla(0, 95%, 49%, 0.922);
  }
  
  .spin-button:disabled {
    background: var(--purple-button);
    color: var(--primary-foreground);
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
  }
  
  .status-text {
    font-family: "Source Code Pro", monospace;
    font-size: 0.875rem;
    color: var(--foreground);
    margin-top: 2.2rem;
  }
  
  .win-modal {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.8);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 50;
    transition: opacity 0.3s ease;
  }
  
  .modal-content {
    background: var(--muted);
    border: 2px solid var(--accent);
    padding: 2.5rem;
    border-radius: 1rem;
    text-align: center;
    box-shadow: 0 0 40px hsla(45, 86%, 58%, 0.5);
    max-width: 90%;
    width: 450px;
    height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease, opacity 0.3s ease;
  }
  
  #close-modal {
    position: absolute;
    top: 12px;
    right: 16px;
    font-size: 32px;
    color: white;
    cursor: pointer;
    z-index: 99;
  }
  
  .modal-title {
    font-size: 2rem;
    color: var(--accent);
    margin-top: 1rem;
    margin-bottom: 0.5rem;
  }
  
  .modal-desc {
    font-size: 1rem;
    color: var(--primary);
    margin-bottom: 1rem;
  }
  
  .win-animation {
    font-size: 3rem;
    animation: flash 1s infinite;
    margin-bottom: 1rem;
  }
  
  @keyframes flash {
    0% {
      opacity: 1;
    }
    50% {
      opacity: 0.5;
    }
    100% {
      opacity: 1;
    }
  }
  
  .win-icon {
    margin: 1rem auto;
  }
  
  .win-text {
    font-size: 1.75rem;
    color: var(--foreground);
    font-weight: bold;
    margin-bottom: 1rem;
  }
  
  .timer-label {
    font-size: 0.875rem;
    color: var(--muted-foreground);
    margin-bottom: 0.5rem;
  }
  
  .countdown-timer {
    font-size: 1.5rem;
    color: hsl(0, 100%, 50%);
    font-weight: bold;
    background: hsla(0, 100%, 50%, 0.1);
    padding: 0.5rem 1rem;
    border-radius: 0.3125rem;
    border: 1px solid hsl(0, 100%, 50%);
    margin-bottom: 1rem;
  }
  
  .claim-button {
    background: var(--accent);
    color: var(--accent-foreground);
    border: none;
    padding: 0.75rem 1.5rem;
    font-size: 1.25rem;
    border-radius: 0.3125rem;
    cursor: pointer;
    transition: background 0.3s;
    margin-bottom: 2rem;
  }
  
  .claim-button:hover {
    background: hsl(45, 100%, 50%);
  }
  
  .coins {
    position: absolute;
    inset: 0;
    pointer-events: none;
  }
  
  .coin {
    position: absolute;
    width: 20px;
    height: 20px;
    background: var(--accent);
    border-radius: 50%;
    animation: fly 2s ease-out forwards;
  }
  
  @keyframes fly {
    0% {
      transform: translateY(0);
      opacity: 1;
    }
    100% {
      transform: translateY(-200px) rotate(360deg);
      opacity: 0;
    }
  }
  
  /* Стили для картинки */
  .bonus-image {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    z-index: 10;
  }
  
  .bonus-image img {
    max-width: 150px;
    height: auto;
  }
  
.main-container {
  padding:  90px 0 190px 0;
}



  /* Мобільна адаптація */
  @media (max-width: 600px) {
    .wheel-outer {
      width: 300px;
      height: 300px;
    }
  
    .wheel-svg text {
      font-size: 12px;
    }
  
    .modal-content {
      width: 90%;
      padding: 1.5rem;
      height: auto;
    }
  
    .win-text {
      font-size: 1.25rem;
    }
  
    .bonus-image {
      position: static;
      margin: 1rem auto;
      transform: none;
    }
  
    .bonus-image img {
      max-width: 100px;
    }
   
  }


  




  .wheel-wrap {
    display: flex;
    align-items: center; 
    justify-content: space-between;
    flex-direction: row-reverse;

  }
  
  .wheel-content {
    display: flex;
    flex-direction: column;
    margin-left: 160px;
  }
  
  .bonus-title {
    font-size: 5rem;
    color: rgba(255, 255, 255, 0.291);
 
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  
  .bonus-subtitle {
    font-size: 1.125rem;
    color: var(--muted-foreground);
    font-family: "Inter", sans-serif;
    line-height: 1.6;
  }
  



  @media (max-width: 768px) {
    .wheel-wrap {
      flex-direction: column;
      align-items: center;
    }
  
    .wheel-content {
      align-items: center;
      text-align: center;
      margin-left: 0;
    }
    .bonus-title {
      font-size: 44px;
     color: white;
   
      margin-bottom: 1rem;
      display: flex;
      align-items: center;
      gap: 0.5rem;
    }
  }
  


  .bonus-disclaimer {
    margin-top: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background-color: rgba(255, 255, 255, 0.05);
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: 0.95rem;
    color: var(--muted-foreground);
    border: 1px solid var(--border);
  }
  
  .disclaimer-icon {
    font-size: 1.3rem;
  }
  
  @media (max-width: 480px) {
    .bonus-disclaimer {
      flex-direction: column;
      text-align: center;
      font-size: 0.85rem;
    }
  
    .disclaimer-icon {
      font-size: 1.2rem;
    }
  }
  



  