/* Brazilian Theme Additional Styles */
/* Додаткові стилі для бразильської тематики */

/* Brazilian Flag Colors */
:root {
    --brazil-green: #009C3B;
    --brazil-yellow: #FFDF00;
    --brazil-blue: #002776;
    --brazil-orange: #FF6B35;
    --brazil-gold: #FFD700;
    --brazil-dark-green: #006400;
    --brazil-light-green: #90EE90;
    --brazil-warm-yellow: #FFE135;
    --brazil-sunset: #FF8C42;
    --brazil-forest: #228B22;
}

/* Brazilian Pattern Background */
.brazilian-pattern {
    background-image: 
        radial-gradient(circle at 20% 80%, var(--brazil-yellow) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, var(--brazil-green) 0%, transparent 50%),
        radial-gradient(circle at 40% 40%, var(--brazil-blue) 0%, transparent 50%);
    background-size: 200px 200px, 300px 300px, 150px 150px;
    opacity: 0.1;
}

/* Carnival Theme Elements */
.carnival-decoration {
    position: relative;
    overflow: hidden;
}

.carnival-decoration::before {
    content: '🎉';
    position: absolute;
    top: -10px;
    left: -10px;
    font-size: 2rem;
    animation: carnivalFloat 3s ease-in-out infinite;
}

.carnival-decoration::after {
    content: '🎊';
    position: absolute;
    bottom: -10px;
    right: -10px;
    font-size: 1.5rem;
    animation: carnivalFloat 3s ease-in-out infinite reverse;
}

@keyframes carnivalFloat {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(10deg); }
}

/* Samba Dance Animation */
.samba-element {
    animation: sambaDance 2s ease-in-out infinite;
}

@keyframes sambaDance {
    0%, 100% { transform: rotate(0deg) scale(1); }
    25% { transform: rotate(5deg) scale(1.05); }
    50% { transform: rotate(0deg) scale(1.1); }
    75% { transform: rotate(-5deg) scale(1.05); }
}

/* Brazilian Tropical Elements */
.tropical-decoration {
    position: relative;
}

.tropical-decoration::before {
    content: '🌴';
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2.5rem;
    animation: palmSway 4s ease-in-out infinite;
}

@keyframes palmSway {
    0%, 100% { transform: translateX(-50%) rotate(0deg); }
    25% { transform: translateX(-50%) rotate(5deg); }
    75% { transform: translateX(-50%) rotate(-5deg); }
}

/* Brazilian Currency Theme */
.currency-theme {
    background: linear-gradient(45deg, var(--brazil-gold), var(--brazil-yellow));
    border: 3px solid var(--brazil-green);
    box-shadow: 0 10px 30px rgba(255, 215, 0, 0.3);
}

.currency-theme::before {
    content: '💰';
    position: absolute;
    top: -15px;
    right: -15px;
    font-size: 2rem;
    animation: moneyShine 2s ease-in-out infinite;
}

@keyframes moneyShine {
    0%, 100% { filter: brightness(1) drop-shadow(0 0 5px var(--brazil-gold)); }
    50% { filter: brightness(1.3) drop-shadow(0 0 15px var(--brazil-gold)); }
}

/* Brazilian Football Theme */
.football-theme {
    background: linear-gradient(135deg, var(--brazil-green), var(--brazil-blue));
    border: 2px solid var(--brazil-yellow);
}

.football-theme::before {
    content: '⚽';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 3rem;
    animation: footballBounce 1s ease-in-out infinite;
}

@keyframes footballBounce {
    0%, 100% { transform: translate(-50%, -50%) scale(1); }
    50% { transform: translate(-50%, -50%) scale(1.1); }
}

/* Brazilian Beach Theme */
.beach-theme {
    background: linear-gradient(45deg, var(--brazil-blue), var(--brazil-light-green));
    border: 2px solid var(--brazil-yellow);
}

.beach-theme::before {
    content: '🏖️';
    position: absolute;
    bottom: -10px;
    left: -10px;
    font-size: 2rem;
    animation: beachWave 3s ease-in-out infinite;
}

@keyframes beachWave {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}

/* Brazilian Coffee Theme */
.coffee-theme {
    background: linear-gradient(135deg, #8B4513, #A0522D);
    border: 2px solid var(--brazil-gold);
}

.coffee-theme::before {
    content: '☕';
    position: absolute;
    top: -15px;
    left: -15px;
    font-size: 2rem;
    animation: coffeeSteam 2s ease-in-out infinite;
}

@keyframes coffeeSteam {
    0%, 100% { transform: translateY(0px) scale(1); opacity: 0.8; }
    50% { transform: translateY(-10px) scale(1.1); opacity: 1; }
}

/* Brazilian Music Theme */
.music-theme {
    background: linear-gradient(45deg, var(--brazil-orange), var(--brazil-yellow));
    border: 2px solid var(--brazil-green);
}

.music-theme::before {
    content: '🎵';
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%);
    font-size: 2rem;
    animation: musicNote 1.5s ease-in-out infinite;
}

@keyframes musicNote {
    0%, 100% { transform: translateY(-50%) rotate(0deg); }
    50% { transform: translateY(-50%) rotate(15deg); }
}

/* Brazilian Nature Theme */
.nature-theme {
    background: linear-gradient(135deg, var(--brazil-forest), var(--brazil-green));
    border: 2px solid var(--brazil-yellow);
}

.nature-theme::before {
    content: '🌿';
    position: absolute;
    bottom: -15px;
    right: -15px;
    font-size: 2rem;
    animation: natureGrow 3s ease-in-out infinite;
}

@keyframes natureGrow {
    0%, 100% { transform: scale(1) rotate(0deg); }
    50% { transform: scale(1.2) rotate(5deg); }
}

/* Brazilian Festival Theme */
.festival-theme {
    background: linear-gradient(45deg, var(--brazil-orange), var(--brazil-yellow), var(--brazil-green));
    background-size: 200% 200%;
    animation: festivalColors 4s ease-in-out infinite;
    border: 3px solid var(--brazil-gold);
}

@keyframes festivalColors {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* Brazilian Sunset Theme */
.sunset-theme {
    background: linear-gradient(45deg, var(--brazil-sunset), var(--brazil-orange), var(--brazil-yellow));
    border: 2px solid var(--brazil-gold);
    position: relative;
    overflow: hidden;
}

.sunset-theme::before {
    content: '🌅';
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 3rem;
    animation: sunsetGlow 5s ease-in-out infinite;
}

@keyframes sunsetGlow {
    0%, 100% { filter: brightness(1) scale(1); }
    50% { filter: brightness(1.5) scale(1.1); }
}

/* Brazilian Diamond Theme */
.diamond-theme {
    background: linear-gradient(45deg, var(--brazil-blue), var(--brazil-green));
    border: 3px solid var(--brazil-gold);
    position: relative;
    overflow: hidden;
}

.diamond-theme::before {
    content: '💎';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2.5rem;
    animation: diamondSparkle 2s ease-in-out infinite;
}

@keyframes diamondSparkle {
    0%, 100% { 
        filter: brightness(1) drop-shadow(0 0 5px var(--brazil-gold));
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
    }
    50% { 
        filter: brightness(1.5) drop-shadow(0 0 20px var(--brazil-gold));
        transform: translate(-50%, -50%) scale(1.1) rotate(180deg);
    }
}

/* Brazilian Success Theme */
.success-theme {
    background: linear-gradient(135deg, var(--brazil-green), var(--brazil-light-green));
    border: 2px solid var(--brazil-gold);
    position: relative;
}

.success-theme::before {
    content: '✅';
    position: absolute;
    top: -15px;
    right: -15px;
    font-size: 2rem;
    animation: successCheck 1s ease-in-out infinite;
}

@keyframes successCheck {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.2); }
}

/* Brazilian Luck Theme */
.luck-theme {
    background: linear-gradient(45deg, var(--brazil-gold), var(--brazil-yellow));
    border: 3px solid var(--brazil-green);
    position: relative;
}

.luck-theme::before {
    content: '🍀';
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2.5rem;
    animation: luckSpin 3s ease-in-out infinite;
}

@keyframes luckSpin {
    0%, 100% { transform: translateX(-50%) rotate(0deg); }
    50% { transform: translateX(-50%) rotate(180deg); }
}

/* Brazilian Victory Theme */
.victory-theme {
    background: linear-gradient(135deg, var(--brazil-gold), var(--brazil-yellow), var(--brazil-green));
    background-size: 300% 300%;
    animation: victoryPulse 2s ease-in-out infinite;
    border: 3px solid var(--brazil-blue);
}

@keyframes victoryPulse {
    0%, 100% { 
        background-position: 0% 50%;
        transform: scale(1);
    }
    50% { 
        background-position: 100% 50%;
        transform: scale(1.05);
    }
}

/* Brazilian Prosperity Theme */
.prosperity-theme {
    background: linear-gradient(45deg, var(--brazil-gold), var(--brazil-yellow), var(--brazil-green));
    border: 3px solid var(--brazil-blue);
    position: relative;
    overflow: hidden;
}

.prosperity-theme::before {
    content: '🌟';
    position: absolute;
    top: -15px;
    left: -15px;
    font-size: 2rem;
    animation: prosperityShine 2s ease-in-out infinite;
}

.prosperity-theme::after {
    content: '💫';
    position: absolute;
    bottom: -15px;
    right: -15px;
    font-size: 1.5rem;
    animation: prosperityShine 2s ease-in-out infinite reverse;
}

@keyframes prosperityShine {
    0%, 100% { 
        filter: brightness(1) scale(1);
        transform: rotate(0deg);
    }
    50% { 
        filter: brightness(1.5) scale(1.2);
        transform: rotate(180deg);
    }
}

/* Brazilian Energy Theme */
.energy-theme {
    background: linear-gradient(45deg, var(--brazil-orange), var(--brazil-yellow));
    border: 2px solid var(--brazil-green);
    position: relative;
}

.energy-theme::before {
    content: '⚡';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2.5rem;
    animation: energyBolt 1s ease-in-out infinite;
}

@keyframes energyBolt {
    0%, 100% { 
        transform: translate(-50%, -50%) scale(1);
        filter: brightness(1);
    }
    50% { 
        transform: translate(-50%, -50%) scale(1.3);
        filter: brightness(1.5);
    }
}

/* Brazilian Harmony Theme */
.harmony-theme {
    background: linear-gradient(135deg, var(--brazil-green), var(--brazil-blue), var(--brazil-yellow));
    background-size: 200% 200%;
    animation: harmonyFlow 6s ease-in-out infinite;
    border: 2px solid var(--brazil-gold);
}

@keyframes harmonyFlow {
    0%, 100% { background-position: 0% 50%; }
    33% { background-position: 100% 50%; }
    66% { background-position: 50% 100%; }
}

/* Brazilian Celebration Theme */
.celebration-theme {
    background: linear-gradient(45deg, var(--brazil-orange), var(--brazil-yellow), var(--brazil-green), var(--brazil-blue));
    background-size: 400% 400%;
    animation: celebrationDance 4s ease-in-out infinite;
    border: 3px solid var(--brazil-gold);
}

@keyframes celebrationDance {
    0%, 100% { background-position: 0% 50%; }
    25% { background-position: 100% 50%; }
    50% { background-position: 100% 100%; }
    75% { background-position: 0% 100%; }
}

/* Brazilian Fortune Theme */
.fortune-theme {
    background: linear-gradient(135deg, var(--brazil-gold), var(--brazil-yellow), var(--brazil-green));
    border: 3px solid var(--brazil-blue);
    position: relative;
    overflow: hidden;
}

.fortune-theme::before {
    content: '💰';
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 3rem;
    animation: fortuneRain 2s ease-in-out infinite;
}

.fortune-theme::after {
    content: '🎰';
    position: absolute;
    bottom: -20px;
    right: -20px;
    font-size: 2rem;
    animation: fortuneRain 2s ease-in-out infinite reverse;
}

@keyframes fortuneRain {
    0%, 100% { 
        transform: translateX(-50%) translateY(0px) scale(1);
        filter: brightness(1);
    }
    50% { 
        transform: translateX(-50%) translateY(-10px) scale(1.2);
        filter: brightness(1.3);
    }
}

/* Responsive Brazilian Themes */
@media (max-width: 768px) {
    .brazilian-pattern {
        background-size: 100px 100px, 150px 150px, 75px 75px;
    }
    
    .carnival-decoration::before,
    .carnival-decoration::after {
        font-size: 1.5rem;
    }
    
    .tropical-decoration::before {
        font-size: 2rem;
    }
    
    .currency-theme::before,
    .football-theme::before,
    .beach-theme::before,
    .coffee-theme::before,
    .music-theme::before,
    .nature-theme::before,
    .sunset-theme::before,
    .diamond-theme::before,
    .success-theme::before,
    .luck-theme::before,
    .prosperity-theme::before,
    .prosperity-theme::after,
    .energy-theme::before,
    .fortune-theme::before,
    .fortune-theme::after {
        font-size: 1.5rem;
    }
}

/* Print styles for Brazilian themes */
@media print {
    .brazilian-pattern,
    .carnival-decoration::before,
    .carnival-decoration::after,
    .tropical-decoration::before,
    .currency-theme::before,
    .football-theme::before,
    .beach-theme::before,
    .coffee-theme::before,
    .music-theme::before,
    .nature-theme::before,
    .sunset-theme::before,
    .diamond-theme::before,
    .success-theme::before,
    .luck-theme::before,
    .prosperity-theme::before,
    .prosperity-theme::after,
    .energy-theme::before,
    .fortune-theme::before,
    .fortune-theme::after {
        display: none;
    }
}


