/* ============================================
   MODALS CSS - SITO-GRATIS.COM

   Stili per Privacy e Cookie Policy modals.
   Usa le variabili CSS del progetto:
   --primary-color, --text-dark, --text-light
   ============================================ */

/* === MODAL BASE === */
.modal-content {
    border-radius: 10px;
    border: none;
    background-color: #ffffff !important;
}

.modal-header {
    background-color: var(--primary-color, #D32F2F);
    color: #ffffff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.modal-header .modal-title {
    font-weight: 600;
}

.modal-header .btn-close {
    filter: brightness(0) invert(1);
}

.modal-body {
    padding: 30px;
    background-color: #ffffff !important;
    color: var(--text-dark, #333333) !important;
}

.modal-body p,
.modal-body li,
.modal-body ul {
    color: var(--text-dark, #333333) !important;
}

.modal-body h6 {
    color: var(--primary-color, #D32F2F);
    font-weight: 700;
    margin-top: 20px;
    margin-bottom: 10px;
}

.modal-body h6:first-child {
    margin-top: 0;
}

.modal-body a {
    color: var(--primary-color, #D32F2F) !important;
}

.modal-body a:hover {
    text-decoration: underline;
}

.modal-footer {
    background-color: #f8f9fa;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

/* === MODAL SCROLLABLE === */
.modal-dialog-scrollable .modal-body {
    max-height: 60vh;
}

/* === RESPONSIVE === */
@media (max-width: 576px) {
    .modal-body {
        padding: 20px;
    }

    .modal-body h6 {
        font-size: 15px;
    }

    .modal-body p,
    .modal-body li {
        font-size: 14px;
    }
}

/* === MODAL POLICY (dark theme) === */
#modalPolicy {
    z-index: 10001;
}

#modalPolicy .modal-content {
    background: #0a0908 !important;
    color: rgba(245, 233, 200, 0.85);
    border: 1px solid rgba(201, 169, 97, 0.25);
    border-radius: 4px;
}

#modalPolicy .modal-header {
    background: #080807;
    border-bottom: 1px solid rgba(201, 169, 97, 0.2);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

#modalPolicy .modal-title {
    font-family: 'Cormorant Garant', Georgia, serif;
    font-size: 1.25rem;
    color: #c9a961;
    letter-spacing: 0.05em;
}

#modalPolicy .modal-body {
    max-height: 70vh;
    overflow-y: auto;
    background: #0a0908 !important;
    color: rgba(245, 233, 200, 0.85) !important;
    line-height: 1.75;
    padding: 28px 32px;
}

#modalPolicy .modal-body h1,
#modalPolicy .modal-body h2,
#modalPolicy .modal-body h3,
#modalPolicy .modal-body h4,
#modalPolicy .modal-body h5,
#modalPolicy .modal-body h6 {
    color: #c9a961;
    font-family: 'Cormorant Garant', Georgia, serif;
    margin-top: 1.4em;
    margin-bottom: 0.5em;
}

#modalPolicy .modal-body h1:first-child,
#modalPolicy .modal-body h2:first-child,
#modalPolicy .modal-body h3:first-child {
    margin-top: 0;
}

#modalPolicy .modal-body p,
#modalPolicy .modal-body li {
    color: rgba(245, 233, 200, 0.85) !important;
    font-size: 15px;
}

#modalPolicy .modal-body strong {
    color: #f5e9c8;
}

#modalPolicy .modal-body a {
    color: #c9a961 !important;
    text-decoration: underline;
}

#modalPolicy .modal-body a:hover {
    color: #e5d4a3 !important;
}

.policy-loading {
    text-align: center;
    padding: 32px;
    color: rgba(245, 233, 200, 0.5);
    font-style: italic;
}

.policy-error {
    text-align: center;
    padding: 32px;
    color: rgba(252, 165, 165, 0.8);
}

.policy-error a {
    color: #c9a961 !important;
    text-decoration: underline;
}

@media (max-width: 576px) {
    #modalPolicy .modal-body {
        padding: 20px 16px;
    }
}
