
    .ava-host-ui,.ava-host-ui *{box-sizing:border-box}.ava-host-ui{font-family:inherit;color:#202020;width:100%;max-width:1600px;margin:auto}
    .ava-host-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px}.ava-host-head h1{margin:0;font-size:34px}.ava-host-head p{margin:6px 0 0;color:#777}
    .ava-host-card{background:#fff;border:1px solid #e6e6e6;border-radius:18px;overflow:hidden}.ava-host-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:11px 15px;background:#285f68;color:#fff;text-decoration:none;font-weight:650;cursor:pointer}
    .ava-host-btn.light{background:#f5f5f5;color:#222;border:1px solid #e5e5e5}.ava-host-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef5f5;color:#285f68;font-size:12px;font-weight:650}
    .ava-host-field{display:flex;flex-direction:column;gap:6px}.ava-host-field label{font-size:13px;font-weight:650;color:#555}.ava-host-field input,.ava-host-field select,.ava-host-field textarea{width:100%;border:1px solid #ddd;border-radius:10px;padding:11px 12px;font:inherit;background:#fff}
    .ava-field-help{display:block;margin-top:-1px;color:#858585;font-size:11px;line-height:1.4;font-weight:500}
    @media(max-width:800px){.ava-host-head{align-items:flex-start;flex-direction:column}.ava-host-head h1{font-size:29px}}
    


    body .ava-host-calendar-shell{
        width:100vw;max-width:none;
        margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
        padding:0 6px 12px;
    }
    body .ava-calendar-view-single{padding-bottom:24px}
    .ava-host-calendar-shell .ava-host-head{max-width:none;margin:0 0 10px;padding:0 8px}
    .ava-calendar-view-gantt{padding-top:0!important;margin-top:0}
    /* Pagina calendario: niente switcher WPML/footer sotto il blocco */
    .wpml-ls, [class*="wpml-ls"], #lang_sel, #lang_sel_list, .fusion-language-switcher, .menu-item-language, .wpml-ls-statics-footer{display:none!important}
    #footer, .fusion-footer, .fusion-footer-widget-area, .fusion-footer-copyright-area, .fusion-copyright-content{display:none!important}
    body .ava-host-calendar-shell{overflow:hidden}
    body.ava-host-calendar-active{overflow:hidden!important}
    body.ava-host-calendar-active .wpml-ls,
    body.ava-host-calendar-active [class*="wpml-ls"],
    body.ava-host-calendar-active .fusion-language-switcher,
    body.ava-host-calendar-active .menu-item-language,
    body.ava-host-calendar-active #lang_sel,
    body.ava-host-calendar-active #lang_sel_list{display:none!important}
    .ava-calendar-app{
        border:1px solid #e4e4e4;border-radius:18px;background:#fff;overflow:hidden;
        display:grid;grid-template-columns:260px minmax(0,1fr) 520px;position:relative;
        align-items:start;
    }
    .ava-calendar-app.is-gantt{height:calc(100vh - 140px);min-height:700px;grid-template-columns:260px minmax(0,1fr);}
    .ava-calendar-app.is-single{height:calc(100vh - 180px);min-height:0;}
    .ava-calendar-app.is-gantt .ava-calendar-list{height:100%;overflow:hidden;}
    .ava-calendar-app.is-single .ava-calendar-list,
    .ava-calendar-app.is-single .ava-calendar-rules{height:100%;overflow:auto;}
    .ava-calendar-app.is-gantt .ava-calendar-main,
    .ava-calendar-app.is-single .ava-calendar-main{height:100%;overflow:auto;}

    /* LEFT */
    .ava-calendar-list{border-right:1px solid #e6e6e6;background:#fff;display:flex;flex-direction:column;min-width:0;z-index:12}
    .ava-calendar-list-top{
        height:82px;flex:0 0 82px;
        border-bottom:1px solid #e6e6e6;background:#fafafa;
        padding:8px 9px;display:flex;flex-direction:column;justify-content:center;gap:7px
    }
    .ava-calendar-app.is-single .ava-calendar-list-top{position:sticky;top:0;z-index:3}
    .ava-calendar-app.is-gantt .ava-calendar-list-top{
        height:130px;flex:0 0 130px;justify-content:flex-start;padding-top:12px;padding-bottom:12px
    }
    .ava-calendar-list-head{font-weight:750;display:flex;align-items:center;justify-content:space-between;font-size:13px}
    .ava-calendar-search input{width:100%;height:34px;border:1px solid #ddd;border-radius:9px;padding:0 10px;font-size:12px}
    .ava-calendar-properties{
        overflow:auto;flex:1;overscroll-behavior:contain;
        scrollbar-width:none;-ms-overflow-style:none;
    }
    .ava-calendar-app.is-gantt .ava-calendar-properties{padding-bottom:18px}
    .ava-calendar-properties::-webkit-scrollbar{width:0;height:0;display:none}
    .ava-calendar-property{
        height:76px;min-height:76px;padding:8px 9px;
        display:grid;grid-template-columns:46px minmax(0,1fr) 24px;gap:9px;align-items:center;
        border-bottom:1px solid #ececec;color:#222;text-decoration:none
    }
    .ava-calendar-property:hover,.ava-calendar-property.is-active{background:#edf6f6}
    .ava-calendar-property img{width:46px;height:46px;border-radius:8px;object-fit:cover}
    .ava-calendar-property-title{font-size:12px;font-weight:650;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
    .ava-sync-check{width:18px;height:18px;border-radius:5px;border:1px solid #cfcfcf;background:#fff;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:800}
    .ava-sync-check.is-on{background:#0b8a8c;border-color:#0b8a8c}
    .ava-sync-check.is-on:before{content:"✓"}

    /* CENTER GANTT */
    .ava-calendar-main{min-width:0;overflow:auto;background:#fff;position:relative;max-height:none}
    .ava-gantt-toolbar{
        height:48px;position:sticky;top:0;left:0;z-index:22;background:#fff;border-bottom:1px solid #e8e8e8;
        display:flex;align-items:center;padding:0 10px;gap:7px
    }
    .ava-gantt-toolbar a{
        height:34px;min-width:34px;border:1px solid #ddd;border-radius:9px;background:#fff;color:#222;
        text-decoration:none;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;padding:0 10px
    }
    .ava-gantt-toolbar a.ava-gantt-today{font-size:12px;font-weight:700;min-width:58px}
    .ava-gantt-top{height:82px;position:sticky;top:48px;background:#fff;border-bottom:1px solid #ddd;z-index:10;min-width:34400px}
    .ava-gantt-days{display:grid;grid-template-columns:repeat(430,80px);height:82px}
    .ava-gantt-day{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #eee;font-size:10px;color:#666}
    .ava-gantt-day strong{font-size:14px;color:#222;margin-top:2px}
    .ava-gantt-day.is-past{background:#e2e2e2;color:#8a8a8a}
    .ava-gantt-day.is-today{box-shadow:inset 0 -3px 0 #0b8a8c}
    .ava-gantt-row{height:76px;display:grid;grid-template-columns:repeat(430,80px);position:relative;min-width:34400px;border-bottom:1px solid #eee}
    .ava-gantt-cell{
        position:relative;border-right:1px solid #eee;background:#fff;cursor:pointer;
        user-select:none;-webkit-user-select:none;touch-action:none
    }
    .ava-gantt-cell.is-past{background:#d8d8d8!important;color:#888;cursor:default}
    .ava-gantt-cell.is-custom{background:#d9eceb}
    .ava-gantt-cell.is-selected{outline:2px solid #0a7f80;outline-offset:-2px;background:#c6e2e0!important}
    .ava-gantt-cell.is-external{background:#f1f1f1;cursor:default}
    .ava-gantt-price{
        position:absolute;left:8px;bottom:8px;right:auto;top:auto;
        font-size:12px;font-weight:750;color:#333;line-height:1
    }
    .ava-day-state{display:none!important}
    .ava-day-state:before{content:"";width:7px;height:7px;border-radius:50%;background:#8bbdbb}
    .ava-day-state.is-unavailable:before{background:#c9c9c9}
    .ava-external-mark{position:absolute;left:9px;right:9px;top:38px;height:4px;background:#d0d0d0;border-radius:2px}
    .ava-external-mark:before{content:"";position:absolute;left:0;top:-3px;width:10px;height:10px;border-radius:2px;background:#d8d8d8}
    .ava-ical-source{
        position:absolute;left:7px;bottom:7px;z-index:6;
        width:20px;height:20px;border-radius:6px;
        display:inline-flex;align-items:center;justify-content:center;
        background:#fff;border:1px solid rgba(0,0,0,.10);
        font-size:10px;font-weight:800;line-height:1;
        box-shadow:0 2px 7px rgba(0,0,0,.08)
    }
    .ava-ical-source.is-airbnb{color:#ff385c}
    .ava-ical-source.is-booking{color:#003b95}
    .ava-ical-source.is-booking:after{content:".";color:#00a1e0}
    .ava-month-cell .ava-ical-source{left:10px;bottom:10px;width:24px;height:24px;font-size:11px}
    .ava-booking-bar{
        position:absolute;top:24px;height:30px;border-radius:9px;background:#078c91;color:#fff;padding:6px 10px;
        font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:5;cursor:pointer
    }

    /* SINGLE CALENDAR */
    .ava-single-scroll{height:auto;min-height:100%;overflow:visible;padding:20px 20px 24px}
    .ava-month{margin-bottom:48px}
    .ava-month h2{font-size:30px;margin:0 0 15px;text-transform:capitalize}
    .ava-month-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px}
    .ava-month-week{font-size:11px;color:#777;text-align:center;padding:5px}
    .ava-month-cell{
        min-height:142px;border:1px solid #ddd;border-radius:15px;padding:11px;position:relative;cursor:pointer;
        background:#fff;user-select:none;-webkit-user-select:none;touch-action:none
    }
    .ava-month-cell.is-past{background:#cfcfcf!important;border-color:#c4c4c4;color:#7d7d7d;cursor:default}
    .ava-month-cell.is-custom{background:#d9eceb;border-color:#bedbd9}
    .ava-month-cell.is-selected{outline:2px solid #0a7f80;outline-offset:-2px;background:#c6e2e0!important}
    .ava-month-cell.is-external{background:#f0f0f0;cursor:default}
    .ava-month-cell.is-empty{visibility:hidden}
    .ava-month-price{position:absolute;left:11px;bottom:11px;font-size:13px;font-weight:700;color:#444}
    .ava-month-state{position:absolute;right:11px;bottom:11px;font-size:10px;color:#777}
    .ava-month-booking{
        position:absolute;left:-5px;right:-5px;top:47px;background:#078c91;color:#fff;border-radius:0;
        padding:7px 9px;font-size:11px;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;z-index:7
    }
    .ava-month-booking.is-segment-start{left:8px;border-radius:999px 0 0 999px}
    .ava-month-booking.is-segment-end{right:8px;border-radius:0 999px 999px 0}
    .ava-month-booking.is-segment-start.is-segment-end{left:8px;right:8px;border-radius:999px}
    .ava-month-booking.is-segment-middle{color:transparent}

    .ava-minstay-badge{
        position:absolute;right:10px;top:9px;display:inline-flex;align-items:center;gap:4px;
        padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid #dde5e5;
        font-size:10px;font-weight:750;color:#24363a;line-height:1;z-index:4;box-shadow:0 1px 4px rgba(0,0,0,.04)
    }
    .ava-minstay-badge:before{content:"☾";font-size:13px;color:#285f68;line-height:1}
    .ava-gantt-cell .ava-minstay-badge{left:6px;right:auto;top:7px;font-size:9px;padding:3px 6px}
    .ava-gantt-cell .ava-minstay-badge:before{font-size:11px}

    /* PERSONALIZZAZIONI */
    .ava-custom-edit{
        display:none;position:absolute;z-index:15;border:0;
        background:#285f68;color:#fff;border-radius:999px;
        font-weight:750;cursor:pointer;white-space:nowrap;
        box-shadow:0 5px 18px rgba(30,72,78,.18)
    }
    .ava-gantt-cell .ava-custom-edit{
        left:6px;right:6px;bottom:6px;height:26px;padding:0 7px;font-size:9px
    }
    .ava-month-cell .ava-custom-edit{
        left:10px;bottom:10px;min-height:34px;padding:0 12px;font-size:11px
    }
    .is-custom.is-custom-focused .ava-custom-edit{
        display:inline-flex;align-items:center;justify-content:center
    }
    .is-custom.is-custom-focused .ava-gantt-price,
    .is-custom.is-custom-focused .ava-month-price{opacity:0}
    .ava-custom-edit:hover{background:#214f57}

    /* RIGHT PANELS */
    .ava-calendar-rules{border-left:1px solid #e6e6e6;background:#fff;overflow:visible;padding:12px}
    .ava-calendar-app.is-gantt .ava-calendar-rules{
        position:fixed;z-index:9995;right:0;top:96px;bottom:0;
        width:500px;max-width:calc(100vw - 285px);
        border:1px solid #e1e5e5;border-right:0;
        border-radius:22px 0 0 22px;background:#fff;
        box-shadow:-14px 0 45px rgba(25,45,48,.16);
        overflow:auto;
        padding:22px 22px 24px 76px;
        transform:translateX(calc(100% - 54px));
        opacity:1;pointer-events:auto;
        transition:transform .22s ease;
    }
    .ava-calendar-app.is-gantt .ava-calendar-rules.is-visible{transform:translateX(0)}
    .ava-calendar-app.is-gantt .ava-calendar-rules.is-collapsed{
        transform:translateX(calc(100% - 54px));
        overflow:hidden;
        padding-left:54px;
    }
    .ava-calendar-app.is-gantt .ava-calendar-rules.is-collapsed .ava-gantt-panel-content{
        visibility:hidden;opacity:0;pointer-events:none;
    }

    .ava-gantt-panel-toggle{display:none}
    .ava-calendar-app.is-gantt .ava-gantt-panel-toggle{
        display:flex;
        position:absolute;left:9px;top:18px;z-index:20;
        width:38px;height:52px;margin:0;
        align-items:center;justify-content:center;
        border:1px solid #dce2e2;background:#fff;
        border-radius:12px;cursor:pointer;
        font-size:28px;font-weight:700;color:#334;
        box-shadow:0 3px 12px rgba(0,0,0,.08);
    }


    /* ---------------------------------------------------------
       PANNELLO MODIFICA DATE
       "Modifica per periodo" non compare più fra le sezioni normali.
       Viene spostato dentro l'overlay quando vengono selezionate date.
       --------------------------------------------------------- */

    /* Nel Gantt continuiamo a nascondere i costi extra dalla colonna normale. */
    .ava-calendar-app.is-gantt [data-rule-card="extra-costs"]{display:none!important}

    /* Nascondi la card periodo SOLO quando si trova nella lista sezioni normale. */
    .ava-gantt-panel-content [data-rule-card="period"]{
        display:none!important;
    }

    .ava-calendar-app.is-single .ava-gantt-panel-content > [data-rule-card="period"],
    .ava-calendar-app.is-single .ava-gantt-panel-content form + [data-rule-card="period"]{
        display:none!important;
    }

    /* La colonna singola deve poter ospitare l'overlay a tutta altezza. */
    .ava-calendar-app.is-single .ava-calendar-rules{
        position:relative;
    }

    /* Overlay comune a Gantt + calendario singolo. */
    .ava-gantt-period-popup{
        display:none;
        position:absolute;
        inset:0;
        z-index:30;
        background:#fff;
        overflow:auto;
        padding:24px 22px 28px 22px;
    }

    .ava-calendar-app.is-gantt .ava-gantt-period-popup{
        border-radius:22px 0 0 22px;
    }

    .ava-calendar-app.is-single .ava-gantt-period-popup{
        border-radius:0;
    }

    .ava-gantt-period-popup.is-open{
        display:block;
    }

    /*
     * Una volta spostata dentro il popup, la card deve diventare
     * il contenuto vero e proprio del popup, non un accordion.
     */
    .ava-gantt-period-popup [data-rule-card="period"]{
        display:block!important;
        border:0!important;
        border-radius:0!important;
        margin:0!important;
        background:transparent!important;
        box-shadow:none!important;
        overflow:visible!important;
    }

    .ava-gantt-period-popup [data-rule-card="period"] > .ava-rule-toggle{
        display:none!important;
    }

    .ava-gantt-period-popup [data-rule-card="period"] > .ava-rule-body{
        display:block!important;
        padding:0!important;
    }
    .ava-gantt-period-popup-head{
        position:sticky;top:0;z-index:5;
        display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
        background:#fff;padding:0 0 16px;margin-bottom:16px;
        border-bottom:1px solid #eceeee
    }
    .ava-gantt-period-popup-head h3{
        margin:0;font-size:20px;line-height:1.15
    }
    .ava-gantt-period-popup-head p{
        margin:5px 0 0;font-size:12px;line-height:1.45;color:#777
    }
    .ava-gantt-period-popup-close{
        flex:0 0 auto;width:40px;height:40px;border:1px solid #dfe4e4;border-radius:50%;
        background:#fff;font-size:24px;line-height:1;cursor:pointer;color:#333
    }
    .ava-calendar-app.is-gantt .ava-gantt-panel-content{
        min-height:100%;
    }
    .ava-calendar-app.is-gantt .ava-selected-summary{
        margin-top:4px;
    }

    .ava-rule-card{border:1px solid #e7e7e7;border-radius:14px;margin-bottom:10px;background:#fff;overflow:hidden}
    .ava-rule-toggle{width:100%;appearance:none;border:0;background:#fff;padding:22px 18px;min-height:108px;display:flex;align-items:flex-start;justify-content:space-between;text-align:left;font:inherit;font-size:15px;font-weight:750;color:#222;cursor:pointer;gap:10px}
    .ava-rule-toggle:after{content:"›";font-size:22px;line-height:1;transition:transform .18s ease;color:#555;margin-top:2px}
    .ava-rule-card.is-open .ava-rule-toggle:after{transform:rotate(90deg)}
    .ava-rule-toggle-copy{display:flex;flex-direction:column;align-items:flex-start}
    .ava-rule-toggle-copy small{font-size:12px;font-weight:500;line-height:1.35;color:#7a7a7a;margin-top:4px}
    .ava-rule-body{display:none;padding:0 14px 15px}.ava-rule-card.is-open .ava-rule-body{display:block}
    .ava-rule-muted{font-size:12px;line-height:1.45;color:#727272}
    .ava-rule-info{padding:11px;border-radius:9px;background:#f3f7f7;color:#47666a;font-size:12px;line-height:1.4}
    .ava-selected-summary{padding:10px 11px;border:1px solid #dce7e7;border-radius:10px;background:#f6fafa;font-size:12px;line-height:1.45;margin-bottom:12px}
    .ava-rule-actions{display:flex;gap:7px;flex-wrap:wrap}.ava-rule-actions .ava-host-btn{flex:1}
    .ava-rule-inline{display:grid;grid-template-columns:1fr 1fr 36px;gap:6px;margin-bottom:6px}
    .ava-rule-status{font-size:12px;margin-top:8px;min-height:18px}.ava-rule-status.ok{color:#207443}.ava-rule-status.err{color:#a33}
    .ava-period-core{display:grid;gap:12px}
    .ava-period-core-card{border:1px solid #e4e7e7;border-radius:18px;padding:16px;background:#fff;display:grid;gap:13px}
    .ava-period-core-copy strong{display:block;font-size:15px;color:#222;margin-bottom:3px}
    .ava-period-core-copy small{display:block;font-size:11px;line-height:1.4;color:#777}
    .ava-period-price-input{height:54px;border:1px solid #dfe3e3;border-radius:14px;padding:0 14px;display:flex;align-items:center;gap:8px;background:#fafbfb}
    .ava-period-price-input span{font-size:16px;font-weight:750;color:#555}
    .ava-period-price-input input{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;height:100%!important;font-size:18px!important;font-weight:700!important;width:100%}
    .ava-period-availability{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:#f4f5f5;border-radius:14px}
    .ava-period-availability button{border:0;border-radius:10px;min-height:42px;background:transparent;font-weight:700;font-size:12px;cursor:pointer;color:#555}
    .ava-period-availability button.is-active{background:#fff;color:#285f68;box-shadow:0 1px 6px rgba(0,0,0,.08)}
    .ava-add-personalization{width:100%;margin-top:14px;border:1px solid #e2e6e6;border-radius:18px;padding:16px;background:#fff;display:flex;justify-content:space-between;align-items:center;text-align:left;cursor:pointer;color:#222}
    .ava-add-personalization strong{display:block;font-size:14px;margin-bottom:4px}
    .ava-add-personalization small{display:block;font-size:11px;color:#777;line-height:1.4}
    .ava-add-personalization-arrow{font-size:24px;transition:transform .18s ease}
    .ava-add-personalization.is-open .ava-add-personalization-arrow{transform:rotate(90deg)}
    .ava-personalization-panel{display:none;margin-top:10px;border:1px solid #dce5e5;border-radius:18px;padding:16px;background:#f8fbfb}
    .ava-personalization-panel.is-open{display:block}
    .ava-personalization-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;border-bottom:1px solid #e3e8e8;margin-bottom:14px}
    .ava-personalization-head strong{display:block;font-size:15px;margin-bottom:4px}
    .ava-personalization-head small{font-size:11px;color:#777;line-height:1.4}
    .ava-personalization-close{width:32px;height:32px;border:1px solid #dce2e2;border-radius:50%;background:#fff;font-size:20px;cursor:pointer}
    .ava-personalization-block{margin-bottom:16px}
    .ava-personalization-block>label{display:block;font-size:12px;font-weight:750;margin-bottom:8px}
    .ava-percent-direction{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:9px}
    .ava-percent-direction button{min-height:40px;border:1px solid #dce3e3;background:#fff;border-radius:11px;cursor:pointer;font-weight:700;color:#555}
    .ava-percent-direction button.is-active{background:#285f68;color:#fff;border-color:#285f68}
    .ava-percent-value{height:52px;border:1px solid #dce3e3;border-radius:13px;background:#fff;display:flex;align-items:center;padding:0 13px}
    .ava-percent-value input{flex:1;border:0!important;background:transparent!important;box-shadow:none!important;height:100%!important;padding:0!important;font-size:17px!important;font-weight:700!important}
    .ava-percent-value span{font-size:15px;font-weight:700}
    .ava-personalization-block input[data-min-stay]{width:100%;height:52px;border:1px solid #dce3e3!important;border-radius:13px!important;background:#fff!important;padding:0 13px!important;font-size:16px!important;font-weight:700}
    .ava-remove-personalization{width:100%;margin-top:4px}
    .ava-period-save-row{margin-top:14px}.ava-period-save-row .ava-host-btn{width:100%;min-height:48px}

    .ava-discount-stack{display:grid;gap:10px}
    .ava-discount-card{border:1px solid #e3e3e3;border-radius:14px;padding:13px;background:#fff}
    .ava-discount-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
    .ava-discount-card-title{font-size:13px;font-weight:750;color:#222}
    .ava-discount-card-sub{font-size:11px;color:#777;margin-top:2px;line-height:1.35}
    .ava-discount-value{font-size:23px;font-weight:800;white-space:nowrap}
    .ava-discount-edit{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
    .ava-duration-list{display:grid;gap:8px;margin-top:8px}
    .ava-duration-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid #e8e8e8;border-radius:11px;background:#fafafa}
    .ava-duration-chip strong{font-size:12px}
    .ava-duration-chip button{border:0;background:transparent;font-size:18px;cursor:pointer;color:#777}
    .ava-add-duration{display:none;margin-top:9px;padding:10px;border:1px dashed #ccc;border-radius:11px;background:#fafafa}
    .ava-add-duration.is-open{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;align-items:end}
    .ava-discount-save-status{font-size:11px;color:#607070;min-height:16px;margin-top:7px}

    .ava-readonly-grid{display:grid;gap:8px}.ava-readonly-row{padding:10px;border-radius:10px;background:#f6f6f6}.ava-readonly-row small{display:block;color:#777;font-size:11px;margin-bottom:3px}

    /* BOOKING POPUP */
    .ava-booking-popover{
        position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px
    }
    .ava-booking-popover.is-open{display:flex}
    .ava-booking-popover-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35)}
    .ava-booking-popover-card{
        position:relative;z-index:2;width:min(470px,100%);background:#fff;border-radius:18px;padding:22px;
        box-shadow:0 24px 80px rgba(0,0,0,.24)
    }
    .ava-booking-popover-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:25px;cursor:pointer}
    .ava-booking-popover-card h3{margin:0 0 15px;font-size:22px}
    .ava-booking-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
    .ava-booking-detail{padding:10px;border-radius:10px;background:#f6f6f6}.ava-booking-detail small{display:block;color:#777;font-size:11px;margin-bottom:3px}
    /* Nasconde footer/theme solo in questa pagina Host */
    #footer, .fusion-footer, .fusion-footer-widget-area, .fusion-footer-copyright-area, .fusion-copyright-content{display:none!important}
    body .fusion-builder-row:last-child, body .fusion-layout-column:last-child{margin-bottom:0!important;padding-bottom:0!important}
    body .post-content > *:last-child{margin-bottom:0!important}

    @media(max-width:1180px){
        .ava-calendar-app{grid-template-columns:220px minmax(850px,1fr) 430px}
        .ava-host-calendar-shell{overflow-x:auto}
    }
    

/* AVA HOME — CALENDARIO HOST DESKTOP */
@media (min-width:1181px){
  body:has(.ava-host-calendar-shell) #main{
    padding:16px clamp(30px,3.4vw,52px) 14px!important;
  }
  body .ava-host-calendar-shell{
    width:100%;
    max-width:none;
    margin:0!important;
    padding:0;
  }
  .ava-host-calendar-shell .ava-host-head{margin:0 0 14px;padding:0}
  .ava-calendar-app{
    grid-template-columns:250px minmax(560px,1fr) 440px;
    border:0;
    border-radius:0;
  }
  .ava-calendar-app.is-gantt{grid-template-columns:250px minmax(0,1fr)}
  .ava-calendar-search input{
    height:40px;
    border:1px solid var(--ava-border-strong,#cfd7d7);
    border-radius:12px;
    padding:0 12px;
    background:#fff;
  }
}



/* AVA HOME — GERARCHIA TITOLI CALENDARIO HOST */
.ava-host-calendar-shell .ava-host-head h2{
  margin:0;
  font-size:clamp(27px,2.25vw,32px)!important;
  font-weight:800;
  line-height:1.08;
  letter-spacing:-.025em;
}
.ava-host-calendar-shell .ava-month > h3{
  margin:0 0 14px;
  font-size:20px!important;
  font-weight:800;
  line-height:1.2!important;
}
.ava-host-calendar-shell .ava-popup h3{
  margin:0;
  font-size:22px!important;
  line-height:1.2!important;
}
