body {
    cursor: none;
    background: #05060a;
  }
  
  .cursor {
    position: fixed;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00ff88;
    box-shadow: 0 0 10px #00ff88;
    pointer-events: none;
    transform: translate(-50%, -50%);
    z-index: 9999;
  }
  
  .candle {
    position: fixed;
    width: 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    pointer-events: none;
    opacity: 0.55;
    z-index: 999;
    animation: fade 1.1s ease-out forwards;
  }
  
  .candle-body {
    width: 100%;
    border-radius: 1px;
  }
  
  .candle-body.green {
    background: linear-gradient(to top, rgba(0,255,100,0.9), rgba(0,255,160,0.4));
    box-shadow: 0 0 8px rgba(0,255,100,0.4);
  }
  
  .candle-body.red {
    background: linear-gradient(to bottom, rgba(255,80,80,0.9), rgba(255,140,140,0.45));
    box-shadow: 0 0 8px rgba(255,0,0,0.35);
  }
  
  .candle-wick {
    width: 1px;
    background: rgba(255,255,255,0.5);
    margin: 0 auto;
  }
  
  @keyframes fade {
    0% {opacity: 0.0; transform: translateY(0) scaleY(0.4);}
    50% {opacity: 0.9; transform: translateY(-2px) scaleY(1);}
    100% {opacity: 0; transform: translateY(-12px) scaleY(1.2);}
  }
  
  
.cta-wrap {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: clamp(10px, 3vw, 18px);
    align-items: center;
  }
  
  /* строка с адресом */
  .token-address{
    display:inline-flex;
    align-items:center;
    gap:clamp(6px, 2vw, 10px);
    padding:clamp(12px,4vw,16px) clamp(16px,6vw,22px);
    margin-top:20px;
    border-radius:12px;
    background:#1a1a1a;
    border:1px solid rgba(0,255,255,0.2);
    color:#00ffe0;
    font-family:'Press Start 2P', monospace;
    font-size:clamp(0.7rem, 2.2vw, 0.88rem);
    user-select:none;
    cursor:pointer;
    position:relative;
    transition:transform .12s ease, box-shadow .12s ease, background .2s ease;
    box-shadow:0 0 15px rgba(0,255,255,0.1);
  }
  .token-address:hover{
    background:#222;
    box-shadow:0 0 20px rgba(0,255,255,0.2);
  }
  .token-address:active{ 
    transform:scale(.98);
    box-shadow:0 0 10px rgba(0,255,255,0.15);
  }
  .token-address .tag{ 
    color:#ff00ff; 
    margin-right:4px;
    text-shadow:0 0 8px rgba(255,0,255,0.6);
  }
  .token-address-value{
    color:#00ffe0;
    text-shadow:0 0 8px rgba(0,255,224,0.5);
    letter-spacing:0.5px;
    word-break:break-all;
  }
  .copy-btn{
    margin-left:6px;
    padding:8px 10px;
    border-radius:8px;
    border:none;
    background:linear-gradient(135deg,#ff00ff,#00fff7);
    color:#000;
    font-size:0.75rem;
    cursor:pointer;
    display:inline-block;
  }
  .copied{
    position:absolute;
    top:-42px;
    left:50%;
    transform:translateX(-50%) scale(0.8);
    background:#0a0a0a;
    border:1px solid rgba(0,255,157,0.4);
    color:#00ff9d;
    padding:8px 14px;
    border-radius:8px;
    font-size:0.7rem;
    font-family:'Press Start 2P', monospace;
    opacity:0;
    pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;
    box-shadow:0 0 20px rgba(0,255,157,0.3), inset 0 0 10px rgba(0,255,157,0.1);
    white-space:nowrap;
    z-index:1000;
  }
  .copied.show{
    opacity:1 !important;
    transform:translateX(-50%) scale(1) !important;
    display:block !important;
  }
  
  /* кнопка OPEN WINDOW */
  .btn-window {
    margin: clamp(24px, 6vw, 36px) auto;
    display: block;
    background: linear-gradient(135deg, #00fff7, #ff00ff) !important;
    animation: pulse-glow 2s ease-in-out infinite;
    font-size: clamp(0.82rem, 2.4vw, 1.05rem);
    padding: clamp(14px, 5vw, 18px) clamp(26px, 8vw, 40px);
  }
  
  @keyframes pulse-glow {
    0%, 100% { 
      box-shadow: 0 0 20px #00fff7, 0 0 30px rgba(0, 255, 247, 0.3); 
    }
    50% { 
      box-shadow: 0 0 40px #ff00ff, 0 0 60px rgba(255, 0, 255, 0.5), 0 0 80px rgba(0, 255, 247, 0.3); 
    }
  }
  
  /* Fortune Text - падающее предсказание */
  .fortune-falling {
    position: fixed;
    font-family: 'Press Start 2P', monospace;
    font-size: 0.65rem;
    line-height: 1.4;
    color: #ffffff;
    text-align: center;
    text-shadow: 0 0 10px rgba(0, 255, 247, 0.8), 0 0 20px rgba(255, 0, 255, 0.5);
    min-width: 220px;
    max-width: min(360px, 70vw);
    word-wrap: break-word;
    pointer-events: none;
    z-index: 100;
    white-space: normal;
    transform-origin: 50% 100%;
    transform: translate(-50%, -100%) rotate(var(--fortune-rotate, 0deg));
    
    /* Рамка - расширена */
    padding: 14px 20px;
    border: 2px solid rgba(0, 255, 247, 0.6);
    border-radius: 8px;
    background: rgba(5, 6, 10, 0.85);
    box-shadow: 
      0 0 15px rgba(0, 255, 247, 0.4),
      inset 0 0 10px rgba(0, 255, 247, 0.1);
    
    /* Плавное появление */
    opacity: 0;
    animation: fortune-appear 0.32s ease-out forwards;
  }
  
  @keyframes fortune-appear {
    0% {
      opacity: 0;
      transform: translate(-50%, -120%) rotate(var(--fortune-rotate, 0deg)) scale(0.65);
      filter: blur(6px);
      box-shadow:
        0 0 30px rgba(0, 255, 247, 0.35),
        inset 0 0 16px rgba(0, 255, 247, 0.12);
    }
    100% {
      opacity: 1;
      transform: translate(-50%, -100%) rotate(var(--fortune-rotate, 0deg)) scale(1);
      filter: blur(0);
    }
  }

  .fortune-falling.fortune-fade-out {
    animation: fortune-fade-out 0.9s ease-in forwards;
  }

  .fortune-falling.fortune-fade-out-fast {
    animation-duration: 0.45s;
  }

  @keyframes fortune-fade-out {
    0% {
      opacity: 1;
      transform: translate(-50%, -100%) rotate(var(--fortune-rotate, 0deg)) scale(1);
      box-shadow:
        0 0 24px rgba(0, 255, 247, 0.5),
        inset 0 0 16px rgba(0, 255, 247, 0.18);
      filter: blur(0);
    }
    50% {
      opacity: 0.65;
      transform: translate(-50%, -102%) rotate(var(--fortune-rotate, 0deg)) scale(1.04);
      box-shadow:
        0 0 38px rgba(0, 255, 247, 0.65),
        inset 0 0 26px rgba(0, 255, 247, 0.3);
      filter: blur(2px);
    }
    100% {
      opacity: 0;
      transform: translate(-50%, -100%) rotate(var(--fortune-rotate, 0deg)) scale(1.08);
      box-shadow:
        0 0 56px rgba(0, 255, 247, 0.0),
        inset 0 0 0 rgba(0, 255, 247, 0);
      filter: blur(6px);
    }
  }
  
  
  
  @media (max-width: 600px) {
    body {
      background: #05060a;
    }
    .token-address {
      flex-wrap: wrap;
      justify-content: center;
      text-align: center;
    }
    .token-address-value {
      font-size: 0.68rem;
    }
    .copied {
      top: -52px;
      font-size: 0.6rem;
    }
    .candle {
      width: 3px;
    }
  }

  @media (min-width: 1024px) {
    .token-address {
      font-size: 0.95rem;
      padding: 18px 26px;
    }
    .token-address-value {
      font-size: 0.92rem;
    }
  }

  @media (hover: none) {
    body {
      cursor: auto;
    }
    .cursor {
      display: none;
    }
  }