 /* ===== ТЁМНЫЙ ДИЗАЙН + SPAWNGATE ===== */
 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
     background: #0b1120;
     background-image:
         radial-gradient(ellipse at 30% 10%, rgba(56, 189, 248, 0.08) 0%, transparent 60%),
         radial-gradient(ellipse at 85% 85%, rgba(99, 102, 241, 0.06) 0%, transparent 55%),
         radial-gradient(ellipse at 50% 50%, rgba(14, 165, 233, 0.03) 0%, transparent 70%);
     display: flex;
     align-items: center;
     justify-content: center;
     min-height: 100vh;
     padding: 20px;
     color: #e2e8f0;
 
 }

 /* ===== КОНТЕЙНЕР ДЛЯ SPAWNGATE ЧАСТИЦ ===== */
 .spawngate-container {
     position: fixed;
     inset: 0;
     pointer-events: none;
     z-index: 0;
     overflow: hidden;
 }

 .spawngate-particle {
     position: absolute;
     border-radius: 50%;
     pointer-events: none;
     will-change: transform, opacity;
     animation: spawngateFloat 4s ease-out forwards;
     filter: blur(0.5px);
 }

 @keyframes spawngateFloat {
     0% {
         transform: translate(0, 0) scale(0.3);
         opacity: 0;
     }

     15% {
         opacity: 1;
     }

     100% {
         transform: translate(var(--dx), var(--dy)) scale(1.8);
         opacity: 0;
     }
 }

 /* Второй тип частиц — искры */
 .spawngate-spark {
     position: absolute;
     width: 2px;
     height: 2px;
     border-radius: 50%;
     pointer-events: none;
     animation: spawngateSpark 1.8s ease-out forwards;
 }

 @keyframes spawngateSpark {
     0% {
         transform: translate(0, 0) scale(1);
         opacity: 0.9;
     }

     100% {
         transform: translate(var(--dx), var(--dy)) scale(0);
         opacity: 0;
     }
 }

 /* ===== КАРТОЧКА ===== */
 .card {
     background: #111827;
     border: 1px solid rgba(56, 189, 248, 0.15);
     border-radius: 32px;
     width: 100%;
     max-width: 430px;
     position: relative;
     overflow: visible;
     box-shadow:
         0 20px 60px rgba(0, 0, 0, 0.6),
         0 0 40px rgba(56, 189, 248, 0.04),
         0 0 0 1px rgba(56, 189, 248, 0.06) inset;
     z-index: 1;
     transition: box-shadow 0.4s ease, border-color 0.4s ease;
 }

 .card:hover {
     border-color: rgba(56, 189, 248, 0.3);
     box-shadow:
         0 20px 60px rgba(0, 0, 0, 0.7),
         0 0 60px rgba(56, 189, 248, 0.08),
         0 0 0 1px rgba(56, 189, 248, 0.1) inset;
 }

 /* Spawngate-свечение вокруг карточки */
 .card::before {
     content: '';
     position: absolute;
     inset: -2px;
     border-radius: 34px;
     background: linear-gradient(145deg,
             rgba(56, 189, 248, 0.12) 0%,
             rgba(15, 23, 42, 0.4) 40%,
             rgba(99, 102, 241, 0.08) 100%);
     z-index: -1;
     pointer-events: none;
     opacity: 0;
     transition: opacity 0.5s ease;
 }

 .card:hover::before {
     opacity: 1;
 }

 .card-inner {
     padding: 36px 28px 28px;
     position: relative;
     z-index: 1;
     background: #111827;
     border-radius: 32px;
 }

 /* ===== АВАТАР ===== */
 .avatar-wrapper {
     display: flex;
     justify-content: center;
     margin-bottom: 8px;
     position: relative;
 }

 .avatar-outer-ring {
     position: relative;
     display: flex;
     align-items: center;
     justify-content: center;
     width: 100px;
     height: 100px;
     border-radius: 50%;
     background: conic-gradient(from 0deg, #0ea5e9, #1e293b, #38bdf8, #0f172a, #0ea5e9, #1e293b, #38bdf8, #0ea5e9);
     padding: 3px;
     box-shadow:
         0 6px 24px rgba(56, 189, 248, 0.12),
         0 2px 8px rgba(0, 0, 0, 0.4);
     animation: avatarRingSpin 8s linear infinite;
 }

 @keyframes avatarRingSpin {
     0% {
         transform: rotate(0deg);
     }

     100% {
         transform: rotate(360deg);
     }
 }

 .avatar-inner {
     width: 100%;
     height: 100%;
     border-radius: 50%;
     background: #0f172a;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 44px;
     position: relative;
     z-index: 2;
     border: 2px solid #1e293b;
     overflow: hidden;
     box-shadow: inset 0 2px 12px rgba(0, 0, 0, 0.5);
     animation: avatarRingSpin 8s linear infinite reverse;
 }

 .avatar-inner img {
     border-radius: 50%;
     width: 100%;
     height: 100%;
     object-fit: cover;
     filter: brightness(0.95) contrast(1.05);
     transition: transform 0.3s ease, filter 0.3s ease;
 }

 .avatar-inner img:hover {
     transform: scale(1.06);
     filter: brightness(1.05) contrast(1.1);
 }

 .avatar-inner::after {
     content: '';
     position: absolute;
     top: 10%;
     left: 20%;
     width: 30%;
     height: 20%;
     background: rgba(255, 255, 255, 0.12);
     border-radius: 50%;
     filter: blur(8px);
     pointer-events: none;
 }

 .status-dot {
     position: absolute;
     bottom: 4px;
     right: 4px;
     width: 20px;
     height: 20px;
     background: #22c55e;
     border-radius: 50%;
     border: 3px solid #111827;
     z-index: 5;
     box-shadow: 0 2px 10px rgba(34, 197, 94, 0.3);
     animation: statusPulseDark 2.4s ease-in-out infinite;
 }

 @keyframes statusPulseDark {

     0%,
     100% {
         box-shadow: 0 2px 8px rgba(34, 197, 94, 0.3);
     }

     50% {
         box-shadow: 0 2px 20px rgba(34, 197, 94, 0.7);
     }
 }

 /* ===== ЗАГОЛОВОК ===== */
 .title-block {
     text-align: center;
     margin-bottom: 4px;
 }

 .main-title {
     font-size: 28px;
     font-weight: 800;
     background: linear-gradient(135deg, #38bdf8, #818cf8, #38bdf8);
     background-size: 200% 200%;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
     letter-spacing: -0.5px;
     line-height: 1.2;
     animation: gradientShift 4s ease infinite;
 }

 @keyframes gradientShift {

     0%,
     100% {
         background-position: 0% 50%;
     }

     50% {
         background-position: 100% 50%;
     }
 }

 .sub-title {
     font-size: 13px;
     color: #94a3b8;
     font-weight: 500;
     letter-spacing: 0.6px;
     margin-top: 2px;
 }

 /* ===== НАПРАВЛЕНИЕ ===== */
 .exchange-direction {
     background: #0f172a;
     border: 1px solid rgba(56, 189, 248, 0.12);
     border-radius: 18px;
     padding: 16px 20px;
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 16px;
     margin: 18px 0 20px;
     transition: border-color 0.3s ease, box-shadow 0.3s ease;
 }

 .exchange-direction:hover {
     border-color: rgba(56, 189, 248, 0.3);
     box-shadow: 0 0 20px rgba(56, 189, 248, 0.05);
 }

 .currency-badge {
     font-weight: 700;
     font-size: 18px;
     letter-spacing: -0.2px;
     display: flex;
     align-items: center;
     gap: 8px;
     color: #e2e8f0;
 }

 .currency-badge.from {
     color: #f1f5f9;
 }

 .currency-badge.to {
     color: #cbd5e1;
 }

 .arrow-divider {
     display: flex;
     align-items: center;
     gap: 6px;
     color: #475569;
 }

 .arrow-line {
     width: 30px;
     height: 2px;
     background: #38bdf8;
     border-radius: 4px;
     box-shadow: 0 0 8px rgba(56, 189, 248, 0.5);
 }

 .arrow-head {
     font-size: 14px;
     color: #38bdf8;
     text-shadow: 0 0 10px rgba(56, 189, 248, 0.6);
 }

 /* ===== ФИШКИ ===== */
 .features-row {
     display: flex;
     gap: 10px;
     margin-bottom: 20px;
 }

 .feature-chip {
     flex: 1;
     background: #0f172a;
     border: 1px solid rgba(56, 189, 248, 0.1);
     border-radius: 14px;
     padding: 12px 4px;
     text-align: center;
     font-size: 12px;
     font-weight: 600;
     color: #7dd3fc;
     letter-spacing: 0.1px;
     display: flex;
     flex-direction: column;
     align-items: center;
     gap: 4px;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
     transition: all 0.25s ease;
 }

 .feature-chip:hover {
     border-color: rgba(56, 189, 248, 0.35);
     background: #1e293b;
     transform: translateY(-2px);
     box-shadow: 0 6px 20px rgba(56, 189, 248, 0.08);
 }

 .feature-chip .chip-icon {
     font-size: 20px;
 }

 /* ===== БОНУС ===== */
 .bonus-banner {
     background: #0f172a;
     border: 1px solid rgba(56, 189, 248, 0.15);
     border-radius: 18px;
     padding: 16px 18px;
     text-align: center;
     margin-bottom: 20px;
     position: relative;
     overflow: hidden;
     transition: border-color 0.3s ease, box-shadow 0.3s ease;
 }

 .bonus-banner:hover {
     border-color: rgba(56, 189, 248, 0.35);
     box-shadow: 0 0 30px rgba(56, 189, 248, 0.06);
 }

 .bonus-banner::after {
     content: '';
     position: absolute;
     top: -50%;
     left: -50%;
     width: 200%;
     height: 200%;
     background: conic-gradient(from 0deg, transparent, rgba(56, 189, 248, 0.03), transparent, rgba(99, 102, 241, 0.03), transparent);
     animation: bonusRotate 6s linear infinite;
     pointer-events: none;
 }

 @keyframes bonusRotate {
     0% {
         transform: rotate(0deg);
     }

     100% {
         transform: rotate(360deg);
     }
 }

 .bonus-text {
     font-size: 17px;
     font-weight: 700;
     color: #7dd3fc;
     letter-spacing: -0.3px;
     position: relative;
     z-index: 1;
 }

 .bonus-sub {
     font-size: 11px;
     color: #64748b;
     margin-top: 4px;
     position: relative;
     z-index: 1;
 }

 /* ===== ВАРИАНТЫ ===== */
 .options-row {
     display: flex;
     gap: 10px;
     margin-bottom: 24px;
 }

 .option-card {
     flex: 1;
     background: #0f172a;
     border: 1px solid rgba(56, 189, 248, 0.1);
     border-radius: 18px;
     padding: 18px 10px;
     text-align: center;
     cursor: default;
     transition: all 0.3s ease;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
 }

 .option-card:hover {
     border-color: rgba(56, 189, 248, 0.4);
     background: #1e293b;
     transform: translateY(-4px);
     box-shadow: 0 12px 30px rgba(56, 189, 248, 0.1);
 }

 .option-icon {
     font-size: 28px;
     margin-bottom: 6px;
 }

 .option-label {
     font-weight: 700;
     font-size: 14px;
     color: #e2e8f0;
     letter-spacing: -0.2px;
 }

 .option-desc {
     font-size: 11px;
     color: #64748b;
     margin-top: 4px;
 }

 /* ===== TELEGRAM ССЫЛКА ===== */
 .telegram-link {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 10px;
     padding: 14px;
     background: linear-gradient(135deg, #0ea5e9, #0284c7);
     border: 1px solid rgba(56, 189, 248, 0.3);
     border-radius: 16px;
     text-decoration: none;
     color: #ffffff;
     font-weight: 600;
     font-size: 14px;
     transition: all 0.3s ease;
     margin-bottom: 18px;
     box-shadow: 0 4px 20px rgba(14, 165, 233, 0.25);
     position: relative;
     overflow: hidden;
 }

 .telegram-link::before {
     content: '';
     position: absolute;
     top: 0;
     left: -100%;
     width: 100%;
     height: 100%;
     background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
     transition: left 0.5s ease;
 }

 .telegram-link:hover::before {
     left: 100%;
 }

 .telegram-link:hover {
     background: linear-gradient(135deg, #38bdf8, #0ea5e9);
     border-color: rgba(56, 189, 248, 0.6);
     color: #ffffff;
     transform: translateY(-2px);
     box-shadow: 0 8px 30px rgba(14, 165, 233, 0.4);
 }

 .telegram-link:active {
     transform: translateY(0);
 }

 .telegram-icon {
     font-size: 20px;
     display: flex;
     align-items: center;
 }

 /* ===== ФУТЕР ===== */
 .footer-row {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 14px;
     font-size: 11px;
     color: #64748b;
     letter-spacing: 0.3px;
 }

 .footer-row .live-indicator {
     display: flex;
     align-items: center;
     gap: 6px;
 }

 .live-dot {
     width: 8px;
     height: 8px;
     border-radius: 50%;
     background: #22c55e;
     animation: pulseDark 1.8s infinite;
     box-shadow: 0 0 10px rgba(34, 197, 94, 0.5);
 }

 @keyframes pulseDark {

     0%,
     100% {
         opacity: 1;
         transform: scale(1);
     }

     50% {
         opacity: 0.4;
         transform: scale(1.6);
     }
 }

 .sep {
     width: 3px;
     height: 3px;
     border-radius: 50%;
     background: #334155;
 }

 /* Адаптив */
 @media (max-width: 400px) {
     .card-inner {
         padding: 24px 16px 20px;
     }

     .main-title {
         font-size: 24px;
     }

     .features-row {
         flex-wrap: wrap;
     }

     .feature-chip {
         flex: 1 1 28%;
     }
 }

 .exchange-direction img {
     border-radius: 50%;
 }