/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Overlay scuro */
.slidein-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.55);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 999998;
}
.slidein-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Pannello slide-in */
.slidein-panel {
    position: fixed;
    top: 0;
    right: -420px; /* nascosto */
    width: 400px;
    height: 100%;
    background: #ffffff;
    box-shadow: -3px 0 10px rgba(0,0,0,0.2);
    transition: right 0.4s ease;
    z-index: 999999;
    padding: 20px;
    overflow-y: auto;
}
.slidein-panel.active {
    right: 0; /* visibile */
}

/* Header */
.slidein-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
}

/* Bottone chiudi in alto */
.slidein-close {
    background: none;
    border: none;
    font-size: 28px;
    cursor: pointer;
}

/* Pulsante fisso stile app (icona tonda) */
.slidein-close-fixed {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: #000;
    color: #fff;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    border: none;
    font-size: 22px;
    cursor: pointer;
    z-index: 1000000;
    display: none;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}
.slidein-panel.active .slidein-close-fixed {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Messaggio di conferma */
.slidein-success {
    font-size: 18px;
    padding: 40px 20px;
    text-align: center;
    color: #2c7a2c;
    font-weight: bold;
}