.main-content{
    scroll-behavior: smooth;
}

.level-wrapper {
    align-items: center;
    margin-bottom: 40px;
}
.level-title-tag {
    position: absolute;
    white-space: nowrap;
    font-size: 11px;
    font-weight: 800;
    color: #999;
    text-transform: uppercase;
    pointer-events: none;
}
.title-right {
    left: calc(50% + 34px);
    text-align: left;
    border: solid 2px var(--border);
        border-bottom-width: 4px;
    padding: 5px;
    border-radius: 0px 8px 8px 0px;
}
.title-left {
    right: calc(50% + 34px);
    text-align: right;
    border: solid 2px var(--border);
        border-bottom-width: 4px;
    padding: 5px;
    border-radius: 8px 0px 0px 8px;
}
.level-node.locked + .level-title-tag {
    opacity: 0.5;
}

@keyframes bounceIn {
    0% { transform: scale(0); opacity: 0; }
    70% { transform: scale(1.1); }
    100% { transform: scale(1); opacity: 1; }
}

.bonus-section-divider {
    width: 100%;
    text-align: center;
    border-bottom: 2px dashed #e5e7eb;
    line-height: 0.1em;
    margin: 40px 0 50px;
}
.bonus-section-divider span {
    background: var(--bg-app);
    padding: 0 15px;
    color: #a855f7;
    font-weight: 900;
    font-size: 0.75rem;
    letter-spacing: 1.5px;
}

/* Estilo do Nó Bônus */
.level-node.bonus {
    background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
    box-shadow: 0 6px 0 #5b21b6, 0 10px 20px rgba(124, 58, 237, 0.3) !important;
    color: white !important;
}

.level-node.bonus.completed {
    background: var(--yellow) !important;
    box-shadow: 0 6px 0 var(--yellow-shade) !important;
}

.level-node.no-energy {
    filter: grayscale(1);
    opacity: 0.6;
}

/* Estilos do Menu Mobile */
.mobile-status-bar {
    display: flex; /* Escondido por padrão (Desktop) */
    width: 100%;
    background: white;
    z-index: 2000;
    align-items: center;
    justify-content: space-between;
}

.status-logo{
    display: none;
}

.status-stats {
    display: flex;
    gap: 2px;
    align-items: center;
    flex-grow: 1;
    justify-content: end;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 4px;
    font-weight: 800;
    font-size: 1.2rem;
    padding: 0px 8px;
}

.stat-item.streak { color: #FF6B00; }
.stat-item.unit { color: var(--cyan); }
.stat-item.energy { color: var(--orange); }
.stat-item.energy.is-premium { color: var(--yellow-shade); }

/* --- BOTÃO DESAFIO DIÁRIO --- */
#btn-desafio-diario {
    position: fixed;
    bottom: 10px;
    right: calc(40% - 52px);
    background: linear-gradient(135deg, var(--yellow), var(--orange));
    color: white;
    padding: 12px 20px;
    border-radius: 30px;
    font-weight: 900;
    font-size: 0.95rem;
    display: flex;
    align-items: center;
    gap: 10px;
    z-index: 10;
    transition: all 0.3s ease;
    text-decoration: none;
    animation: pulseBtn 2s infinite;
}

#btn-desafio-diario #dd-subtitle { font-size: 0.75rem; font-weight: 700; opacity: 0.9; }

@keyframes pulseBtn {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

/* Classe de quando o desafio já foi concluído */
.dd-concluido {
    background: white !important;
    color: var(--text) !important;
    border: 2px solid #e5e7eb;
    animation: none !important;
}

@media (max-width: 768px) {
    .status-logo {
        display: flex;
        align-items: center;
        gap: 8px;
        color: var(--cyan);
        font-weight: 900;
        font-size: 1.2rem;
    }

    #btn-desafio-diario {
        bottom: 95px;
        right: 0;
        left: 0;
        margin: 0 auto;
        width: max-content;
        padding: 10px 15px;
    }
    
    .mobile-status-bar { 
        position: fixed;
        top: 0;
        left: 0;
        padding: 0 15px;
        height: 60px;
        border-bottom: 2px solid #eee;
    }
    .status-logo span{
        display: block;
    }
    .main-content { margin-top: 60px; }
    
    .world-section{
        width: 100% !important;
    }
    .banner-premium{
        display: none;
    }
}