.intro-recensione {
    background-color: #f8f9fa;
    border: 1px solid #e2e6ea;
    border-radius: 6px;
    font-size: 16px;
    line-height: 1.6;
    color: #333;

    max-width: 600px !important;
    margin: 0 auto !important;
    padding: 20px !important;
}

.intro-recensione strong {
    display: block;
    font-size: 18px;
    color: #3661ab;
    margin-bottom: 10px;
}

@media (max-width: 768px) {
    .intro-recensione, .form-recensione {
        padding: 10px !important;
        margin-bottom: 20px !important;
    }
}

/* Form container */
.form-recensione {
    max-width: 600px !important;
    margin: 0 auto !important;
    padding: 30px 20px !important;
    font-family: inherit;
    font-size: 16px;
    color: #222;
}

/* Gruppi di input */
.form-recensione .form-group {
    margin-bottom: 24px;
}

/* Label e descrizioni */
.form-recensione label {
    display: block;
    font-weight: 600;
    margin-bottom: 0;
    color: #333;
}

.form-recensione small {
    display: block;
    font-size: 13px;
    color: #666;
    margin-bottom: 0;
}

/* Input & textarea */
/* Input & textarea - look pulito con interazione */
.form-recensione input[type="text"],
.form-recensione input[type="email"],
.form-recensione textarea {
    width: 100% !important;
    padding: 12px 14px !important;
    font-size: 15px !important;
    border: 1px solid #ccc !important; /* bordo grigio chiaro */
    border-radius: 6px !important;
    background-color: #fff !important; /* sfondo bianco */
    color: #333 !important;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s !important;
}

.form-recensione input:hover,
.form-recensione textarea:hover {
    border-color: #3661ab !important; /* bordo primario in hover */
}

.form-recensione input:focus,
.form-recensione textarea:focus {
    border-color: #3661ab !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Checkbox */
.form-recensione .checkbox-group label {
    display: flex;
    align-items: flex-start;
    font-weight: 400 !important;
    color: #666 !important;
    line-height: 1.4;
}

.form-recensione .checkbox-group input[type="checkbox"] {
    margin-top: 3px;
    margin-right: 10px;
}

/* Bottone submit */
.form-recensione button[type="submit"] {
    background-color: #3661ab;
    color: #fff;
    padding: 12px 25px;
    border: none;
    border-radius: 30px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.form-recensione button[type="submit"]:hover {
    background-color: #3661ab;
}

.js-stella-rating {
    display: flex;
    gap: 8px;
    margin: 10px 0;
}

.js-stella-rating input {
    display: none;
}

.js-stella-rating label {
    width: 32px;
    height: 32px;
    background-image: url('https://www.idealmedica.it/wp-content/uploads/2025/08/star-empty.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

.js-stella-rating label.active {
    background-image: url('https://www.idealmedica.it/wp-content/uploads/2025/08/star.svg');
}


/* Stile generale per la pagina di ringraziamento */
.box-grazie-recensione {
    max-width: 600px !important;
    margin: 50px auto !important;
    padding: 30px 20px !important;
    background-color: #fff;
    border-radius: 8px;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    text-align: center !important;
}

.box-grazie-recensione textarea {
    width: 100%;
    margin-bottom: 20px;
    padding: 12px;
    font-size: 15px;
    border: 1px solid #ccc;
    border-radius: 6px;
    resize: none;
    background-color: #f9f9f9;
    color: #333;
}

.box-grazie-recensione button#copiaTesto {
    background-color: #3661ab;
    color: #fff;
    padding: 10px 20px;
    border: none;
    border-radius: 30px;
    cursor: pointer;
    font-size: 15px;
    transition: background-color 0.2s ease-in-out;
}

.box-grazie-recensione button#copiaTesto:hover {
    background-color: #2e5495;
}

.box-grazie-recensione a {
    color: #3661ab;
    font-weight: 600;
    text-decoration: none;
}

.box-grazie-recensione a:hover {
    text-decoration: underline;
}

@media (max-width: 480px) {
    .box-grazie-recensione {
        padding: 10px !important;
        margin-bottom: 20px !important;
    }
}