body {
    background-color: #050505;
    color: #e0e0e0;
    font-family: 'Inter', sans-serif;
    margin: 0;
}

.serif { font-family: 'Cinzel', serif; }
.gold-text { color: #D4AF37; }
.border-mystic { border-color: rgba(212, 175, 55, 0.15); }

.sidebar {
    background-color: #080808;
    border-right: 1px solid rgba(212, 175, 55, 0.1);
}

.fade-in {
    animation: fadeIn 0.5s ease-in;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: translateY(0); }
}

::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: #050505; }
::-webkit-scrollbar-thumb { background: #D4AF37; border-radius: 10px; }

@keyframes fadeOut {
    from { opacity: 1; transform: translateY(0); }
    to   { opacity: 0; transform: translateY(-8px); }
}

.fade-out {
    animation: fadeOut 0.7s ease-out forwards;
}

@media (max-width: 1024px) {
    .sidebar-mobile-active { transform: translateX(0) !important; }
}

@media (orientation: landscape) and (max-width: 1024px) {
    #sidebar-santuari {
        display: block !important;
        overflow-y: scroll !important;
        padding: 0.75rem !important;
    }
    #menu-biblioteca {
        display: block !important;
        flex: none !important;
        overflow-y: visible !important;
        min-height: unset !important;
        height: auto !important;
    }
}
