/* Main Theme - Layout Principale con Sfondo #324a6d e Testi Bianco/Oro */

:root {
    /* Colori Principali */
    --main-bg-color: #324a6d;
    --main-text-color: #ffffff;
    --main-accent-color: #D4AF37; /* Oro */
    --main-accent-light: #F4D03F; /* Oro chiaro */
    --main-accent-dark: #B8941F; /* Oro scuro */
    
    /* Colori Secondari */
    --main-border-color: rgba(212, 175, 55, 0.3);
    --main-shadow-color: rgba(0, 0, 0, 0.3);
}

/* Applica lo sfondo principale a tutto il sito */
html, body {
    background-color: var(--main-bg-color) !important;
    color: var(--main-text-color) !important;
    min-height: 100vh;
}

/* Main Layout Wrapper */
.main-layout-wrapper {
    background-color: var(--main-bg-color) !important;
    color: var(--main-text-color) !important;
}

/* Navbar */
.navbar-sticky {
    background-color: var(--main-bg-color) !important;
    border-bottom-color: var(--main-border-color) !important;
    box-shadow: 0 2px 8px var(--main-shadow-color) !important;
}

.navbar-container {
    background-color: var(--main-bg-color) !important;
}

/* Main Content */
.main-content {
    background-color: var(--main-bg-color) !important;
    color: var(--main-text-color) !important;
}

/* Footer */
.main-footer {
    background-color: var(--main-bg-color) !important;
    border-top-color: var(--main-border-color) !important;
    color: var(--main-text-color) !important;
}

.main-footer h4 {
    color: var(--main-accent-color) !important;
}

.main-footer a {
    color: rgba(255, 255, 255, 0.8) !important;
    transition: color 0.3s ease;
}

.main-footer a:hover {
    color: var(--main-accent-color) !important;
}

.main-footer p {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Testi Principali */
h1, h2, h3, h4, h5, h6 {
    color: var(--main-text-color) !important;
}

p, span, div, a {
    color: var(--main-text-color) !important;
}

/* Link */
a {
    color: var(--main-accent-color) !important;
    transition: color 0.3s ease;
}

a:hover {
    color: var(--main-accent-light) !important;
}

/* Pulsanti */
button, .btn, .rz-button {
    color: var(--main-text-color) !important;
}

/* Override per Radzen Components */
:deep(.rz-text),
:deep(.rz-text-h1),
:deep(.rz-text-h2),
:deep(.rz-text-h3),
:deep(.rz-text-h4),
:deep(.rz-text-h5),
:deep(.rz-text-h6),
:deep(.rz-text-body) {
    color: var(--main-text-color) !important;
}

/* Card e Surface */
:deep(.rz-card) {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border-color: var(--main-border-color) !important;
    color: var(--main-text-color) !important;
}

/* Input e Form */
:deep(.rz-input),
:deep(.rz-inputtext),
:deep(.rz-textarea) {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: var(--main-border-color) !important;
    color: var(--main-text-color) !important;
}

:deep(.rz-input:focus),
:deep(.rz-inputtext:focus),
:deep(.rz-textarea:focus) {
    border-color: var(--main-accent-color) !important;
    box-shadow: 0 0 0 0.2rem rgba(212, 175, 55, 0.25) !important;
}

/* Hamburger Menu */
.nav-hamburger {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: var(--main-border-color) !important;
    color: var(--main-text-color) !important;
}

.nav-hamburger:hover {
    background: var(--main-accent-color) !important;
    border-color: var(--main-accent-color) !important;
    color: var(--main-bg-color) !important;
}

/* Mobile Menu Dropdown */
.mobile-menu-dropdown {
    background-color: rgba(50, 74, 109, 0.98) !important;
    border-color: var(--main-border-color) !important;
    box-shadow: 0 8px 24px var(--main-shadow-color) !important;
}

.nav-button-mobile {
    color: var(--main-text-color) !important;
}

.nav-button-mobile:hover {
    color: var(--main-accent-color) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .navbar-container {
        background-color: var(--main-bg-color) !important;
    }
}

