.game-container {
    display: none;
    width: 100%;
    max-width: 1000px;
    height: 500px;
    position: relative;
}

.walk-boundary {
    width: 100%;
    height: 100%;
    position: relative;
}

.goose-character {
    width: 450px;
    height: 450px;
    position: absolute;
    bottom: -20px;
    left: 0;
    animation: walkAround 15s infinite linear;
    transition: transform 0.3s ease;
    z-index: 2;
}

.goose-body-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
    animation: bobbing 0.6s infinite ease-in-out alternate;
}

/* Интерактивная шея */
#goose-neck-area {
    cursor: pointer;
}

#goose-neck {
    transition: fill 0.3s ease, stroke 0.3s ease;
}

#goose-neck-area:hover #goose-neck {
    stroke: #FF8C00;
}

/* Голова (не реагирует на клики визуально как кнопка) */
#goose-head-group {
    cursor: default;
}

.goose-character.paused,
.goose-character.paused .goose-body-wrapper,
.goose-character.paused .leg-left,
.goose-character.paused .leg-right {
    animation-play-state: paused;
}

/* Анимации */
@keyframes walkAround {
    0% { left: -100px; transform: scaleX(-1); }
    45% { left: calc(100% - 350px); transform: scaleX(-1); }
    50% { left: calc(100% - 350px); transform: scaleX(1); }
    95% { left: -100px; transform: scaleX(1); }
    100% { left: -100px; transform: scaleX(-1); }
}

@keyframes walkLegs {
    0% { transform: rotate(-25deg); }
    100% { transform: rotate(25deg); }
}

@keyframes bobbing {
    0% { transform: translateY(0); }
    100% { transform: translateY(-12px); }
}

.leg-left, .leg-right { transform-origin: 220px 330px; }
.leg-left { animation: walkLegs 0.3s infinite alternate ease-in-out; }
.leg-right { animation: walkLegs 0.3s infinite alternate-reverse ease-in-out; }

/* Попап */
.promo-popup {
    position: absolute;
    bottom: 250px;
    right: 40px;
    transform-origin: 100% 100%;
    transform: scale(0) rotate(15deg);
    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
    width: 200px;
    background: #ffffff;
    border: 3px solid #ff8c00;
    border-radius: 12px;
    padding: 15px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
    z-index: 10;
}

.promo-popup.show {
    transform: scale(1) rotate(0deg);
}

.popup-arrow {
    position: absolute;
    bottom: -15px;
    left: 20px;
    width: 0; height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 15px solid #ff8c00;
}

.popup-arrow::after {
    content: '';
    position: absolute;
    bottom: 3px; left: -10px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 13px solid #ffffff;
}

.popup-content { text-align: center; position: relative; color: #000; }
.popup-title { font-weight: bold; color: #e67e00; margin: 5px 0; }
.popup-content p { color: #000 !important; }
.close-btn { position: absolute; top: -10px; right: -5px; font-size: 20px; cursor: pointer; color: #999; }
.promo-code { background: #fff3e0; border: 2px dashed #ff8c00; padding: 8px; font-weight: bold; color: #d84315; margin-top: 10px; border-radius: 6px; }
.limit-counter { opacity:0; margin-top: 15px; font-size: 1.1rem; font-weight: 600; color: #475569; background: #e2e8f0; padding: 8px 16px; border-radius: 20px; }
