/* ========================================
   USER IMMOBILI - Stile Certificato-Energetico.it
   ======================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

body {
    font-family: 'Inter', system-ui, sans-serif;
}

.dataTables_filter { display: none; }
.table-responsive { overflow-x: auto; }
.card { 
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); 
    margin-bottom: 1rem; 
    border-radius: var(--radius-lg, 1rem);
    transition: all 0.3s ease;
}
.card:hover {
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}
.btn-sm { 
    padding: 0.5rem 1rem; 
    font-size: 0.875rem; 
    border-radius: var(--radius, 0.5rem);
    font-weight: 600;
    font-family: 'Inter', system-ui, sans-serif;
}
.h4 { 
    font-size: 1.5rem; 
    font-weight: 600; 
    line-height: 1.2; 
    font-family: 'Inter', system-ui, sans-serif;
    color: var(--gray-900, #212121);
}
.text-info { color: #000000 !important; }
.text-muted { color: var(--gray-600, #757575) !important; }
.text-danger { color: var(--color-danger, #f44336) !important; }
.hide { display: none !important; }
.d-none { display: none !important; }
.spinner-border { width: 3rem; height: 3rem; color: var(--color-primary, #4caf50); }
.alert { 
    border-radius: var(--radius, 0.5rem); 
    padding: 1rem 1.25rem; 
    margin-bottom: 1rem; 
    border: none;
    font-family: 'Inter', system-ui, sans-serif;
}
.alert-danger { 
    color: #b71c1c; 
    background-color: #ffebee; 
}
.button-container { text-align: center; }
.table th { 
    border-top: none; 
    font-weight: 600; 
    font-family: 'Inter', system-ui, sans-serif;
}
.table td { vertical-align: middle; }

/* Stili per la pagina MioImmobile */
.xml-menu {
    margin-bottom: 20px;
}

.xml-menu .btn-group {
    width: 100%;
}

.xml-menu .btn-group .btn {
    flex: 1;
    padding: 0.875rem 1.25rem;
    font-weight: 600;
    border-radius: 0;
    transition: all 0.3s ease;
    font-family: 'Inter', system-ui, sans-serif;
    letter-spacing: 0.3px;
}

.xml-menu .btn-group .btn:first-child {
    border-top-left-radius: var(--radius, 0.5rem);
    border-bottom-left-radius: var(--radius, 0.5rem);
}

.xml-menu .btn-group .btn:last-child {
    border-top-right-radius: var(--radius, 0.5rem);
    border-bottom-right-radius: var(--radius, 0.5rem);
}

.xml-menu .btn-group .btn.active {
    background: linear-gradient(135deg, var(--color-primary, #4caf50), var(--primary-700, #388e3c));
    border: none;
    color: white;
    box-shadow: 0 4px 12px rgba(76, 175, 80, 0.3);
}

.xml-menu .btn-group .btn:not(.active) {
    background-color: white;
    border: 1px solid var(--gray-300, #e0e0e0);
    color: var(--gray-700, #616161);
}

.xml-menu .btn-group .btn:hover:not(.active) {
    background-color: var(--primary-50, #e8f5e9);
    border-color: var(--color-primary, #4caf50);
    color: var(--primary-700, #388e3c);
}

.immobile-preventivo .xml-element {
    transition: opacity 0.3s ease;
}

.dati-identificativi .card-img-container {
    width: 100%;
    min-height: 200px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.media .avatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
}

.riqualificazione-immobile .btn-outline-info {
    border-color: var(--color-info);
    color: var(--color-info);
}

.riqualificazione-immobile .btn-outline-info:hover {
    background-color: var(--color-info);
    border-color: var(--color-info);
    color: white;
}

.prestazione-energetica-box {
    background: linear-gradient(135deg, var(--color-primary, #4caf50), var(--primary-700, #388e3c));
    border-radius: var(--radius-lg, 1rem);
    padding: 2rem;
    color: white;
    text-align: center;
    margin: 20px 0;
    box-shadow: 0 6px 20px rgba(76, 175, 80, 0.3);
    font-family: 'Inter', system-ui, sans-serif;
}

.prestazione-energetica-box h3 {
    font-size: 2.5rem;
    font-weight: bold;
    margin: 0;
}

.btn-group .btn {
    margin-right: 10px;
}

.btn-group .btn:last-child {
    margin-right: 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .xml-menu .btn-group {
        flex-direction: column;
        width: 100%;
    }
    
    .xml-menu .btn-group .btn {
        border-radius: 5px !important;
        margin-bottom: 10px;
    }
    
    .xml-menu .btn-group .btn:last-child {
        margin-bottom: 0;
    }
    
    .dati-identificativi .card-img-container {
        min-height: 150px;
    }
    
    .btn-group:not(.xml-menu .btn-group) {
        display: flex;
        flex-direction: column;
    }
    
    .btn-group:not(.xml-menu .btn-group) .btn {
        margin-right: 0;
        margin-bottom: 10px;
    }
    
    .btn-group:not(.xml-menu .btn-group) .btn:last-child {
        margin-bottom: 0;
    }
}