/* ElbaMyLove - scheda-mangiare.css : specifici della scheda MANGIARE (ristoranti) */
.elm-twocol-right{ overflow:visible; }   /* Mangiare: sidebar non scrolla (override del condiviso) */
/* ---- la cucina ---- */
            /* La cucina: niente pill -> icone GRANDI con etichetta sotto (icona = mask
               .elm-am-ico colorata da --svc-tint, oppure SVG inline di fallback). */
            .mng-cucina-wrap{display:flex;flex-wrap:wrap;gap:2rem 2.8rem;margin-top:.4rem}
            .mng-cucina-item{display:flex;flex-direction:column;align-items:center;gap:.65rem;text-align:center;--svc-tint:var(--gold-dk,#8a6a38)}
            .mng-cucina-item .elm-am-ico,.mng-cucina-item svg,.mng-cucina-item img{width:56px;height:56px;display:inline-block}
            .mng-cucina-item .lbl{font-family:'Lora',serif;font-size:1.15rem;color:var(--ink);line-height:1.1}
            @media (max-width:560px){.mng-cucina-wrap{gap:1.5rem 2.1rem}.mng-cucina-item .elm-am-ico,.mng-cucina-item svg,.mng-cucina-item img{width:46px;height:46px}.mng-cucina-item .lbl{font-size:1.05rem}}
/* ---- menu categorie ---- */
            .mng-mn-cat{border:1px solid var(--line);border-radius:12px;margin-bottom:.9rem;overflow:hidden;background:#fff}
            .mng-mn-cat-h{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none;padding:1rem 1.2rem;font-family:'Lora',serif;font-size:1.2rem;color:var(--ink);font-weight:600}
            .mng-mn-cat-h::-webkit-details-marker{display:none}
            .mng-mn-cat-h i{color:var(--gold-dk);transition:transform .25s ease}
            .mng-mn-cat[open] .mng-mn-cat-h i{transform:rotate(180deg)}
            .mng-mn-cat[open] .mng-mn-cat-h{background:var(--sand-lt,#f6f1e8)}
            .mng-mn-cat-body{padding:.3rem 1.2rem 1rem}
            .mng-mn-item{padding:.7rem 0;border-top:1px dashed var(--line)}
            .mng-mn-item:first-child{border-top:0}
            .mng-mn-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
            .mng-mn-name{font-family:'Lora',serif;font-size:1.08rem;color:var(--ink)}
            .mng-mn-price{flex:0 0 auto;white-space:nowrap;font-family:'Lora',serif;font-weight:600;color:var(--gold-dk)}
            .mng-mn-price em{font-size:.85rem;font-weight:400;font-style:italic;color:var(--ink-2)}
            .mng-mn-desc{font-size:.92rem;color:var(--ink-2);margin-top:.25rem}
            .mng-mn-subhead{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dk);margin:.9rem 0 .3rem}
            .mng-mn-fs{display:inline-flex;align-items:center;gap:.5rem;margin-top:.6rem;font-size:.9rem;color:var(--gold-dk);text-decoration:none}
            .mng-mn-fs:hover{text-decoration:underline}
/* ---- sidebar indirizzo + prenota CTA ---- */
        /* Riusa il GUSCIO + il FOOT della card Dormire (.elm-side-form / .elm-side-form-foot
           / .elm-trust-row). Qui CTA primaria "ricca" + contatti rifiniti + rassicurazione. */
        .mng-side-addr{font-size:.82rem;color:var(--ink-2);margin-top:.5rem;display:flex;gap:.35rem;align-items:flex-start;justify-content:center}
        .mng-side-addr i{color:var(--gold-dk);margin-top:.15rem}
        .mng-side-open{display:inline-flex;align-items:center;gap:.4rem;margin-top:.7rem;font-size:.8rem;font-weight:600;padding:.3rem .8rem;border-radius:999px}
        .mng-side-open.is-year{background:#e9f5ec;color:#1f7a35}
        .mng-side-open.is-seasonal{background:var(--ivory);color:var(--gold-dk)}
        .mng-side-open i{font-size:.95rem}
        /* CTA primaria ricca: icona in cerchio + titolo + sottotitolo + freccia */
        .mng-side-cta{display:flex;align-items:center;gap:.8rem;width:100%;padding:.85rem 1rem;border-radius:12px;text-decoration:none;color:#fff;background:var(--cta,#df6834);box-shadow:0 12px 24px -10px rgba(223,104,52,.55);transition:transform .15s,box-shadow .2s,filter .2s}
        .mng-side-cta:hover{filter:brightness(.93);color:#fff;transform:translateY(-1px);box-shadow:0 16px 30px -10px rgba(223,104,52,.6)}
        .mng-side-cta.is-wa{background:#25D366;box-shadow:0 12px 24px -10px rgba(37,211,102,.5)}
        .mng-side-cta.is-wa:hover{background:#1da851}
        .mng-side-cta .ic{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
        .mng-side-cta .tx{display:flex;flex-direction:column;line-height:1.25;flex:1;min-width:0}
        .mng-side-cta .tx .t1{font-weight:700;font-size:1rem}
        .mng-side-cta .tx .t2{font-size:.75rem;opacity:.9;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .mng-side-cta .ar{font-size:1rem;opacity:.85;flex-shrink:0;transition:transform .2s}
        .mng-side-cta:hover .ar{transform:translateX(3px)}
        /* Forzo il bianco su testo+icone della CTA: il tema (GoodLayers) imporrebbe
           il colore link scuro con specificita' alta -> testo illeggibile su marrone. */
        .elm-side-form .mng-side-cta,
        .elm-side-form .mng-side-cta:hover,
        .elm-side-form .mng-side-cta .t1,
        .elm-side-form .mng-side-cta .t2,
        .elm-side-form .mng-side-cta i{color:#fff !important}
        /* Separatore "oppure" */
        .mng-side-or{display:flex;align-items:center;gap:.7rem;margin:1.1rem 0;color:var(--mute,#9a958b);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}
        .mng-side-or::before,.mng-side-or::after{content:"";flex:1;height:1px;background:var(--line)}
        /* Contatti rifiniti (outline morbido) */
        .mng-side-contacts{display:flex;flex-direction:column;gap:.5rem}
        .mng-side-c{display:inline-flex;align-items:center;gap:.6rem;padding:.7rem .9rem;border:1.5px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.92rem;transition:border-color .2s,background .2s,color .2s}
        .mng-side-c i{font-size:1.05rem;color:var(--cta,#df6834)}
        .mng-side-c b{font-weight:600;margin-left:auto;color:var(--ink-2);font-size:.86rem}
        .mng-side-c:hover{border-color:var(--cta,#df6834);color:var(--cta,#df6834);background:#fdf0ec}
        .mng-side-c.wa i{color:#25D366}
        .mng-side-c.wa:hover{border-color:#25D366;color:#1da851;background:#f1fbf4}
/* ---- orari ristorante (formato 2) ---- */
                .elm-hours2-title{font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dk);margin:1rem .95rem .45rem}
                .elm-hours2{border:1px solid var(--line);border-radius:12px;background:#fff;margin:0 .95rem}
                .elm-hours2-state{font-weight:600;font-size:.92rem;padding:.7rem .95rem;border-bottom:1px solid var(--line)}
                .elm-hours2.is-open .elm-hours2-state{color:#1c7a3f}
                .elm-hours2.is-closed .elm-hours2-state{color:#b23b2e}
                .elm-hours2-list{list-style:none;margin:0;padding:.3rem}
                .elm-hours2-list .elm-hr-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.3rem .6rem;border-radius:7px;font-size:.9rem;color:var(--ink-2);line-height:1.2}
                .elm-hours2-list .elm-hr-row .d{flex:0 0 auto;text-transform:capitalize}
                .elm-hours2-list .elm-hr-row .h{text-align:right}
                .elm-hours2-list .elm-hr-row .h.closed{color:var(--ink-3,#9a8f7a)}
                .elm-hours2-list .elm-hr-row.is-today{background:var(--sand-lt,#f6f1e8);font-weight:700;color:var(--ink)}
                .elm-hours2-list .elm-hr-row.is-today .h.closed{color:#b23b2e}
/* ---- fascia Prenota un tavolo ---- */
.mng-bk-band{background:linear-gradient(180deg,#fff,#faf6f1);border-top:1px solid #ece1d6;border-bottom:1px solid #ece1d6;padding:3rem 1.4rem}
.mng-bk-inner{max-width:860px;margin:0 auto}
.mng-bk-head{text-align:center;margin-bottom:2rem}
.mng-bk-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#a23617;margin-bottom:.5rem}
.mng-bk-h2{font-family:'Lora',serif;font-size:1.9rem;color:#2a2018;margin:0 0 .6rem}
.mng-bk-h2 em{font-style:italic;color:#a23617}
.mng-bk-sub{color:#5a4a3c;font-size:1rem;line-height:1.6;max-width:620px;margin:0 auto}
/* Label e campi standard = stile CONDIVISO Dormire/Preventivo (.fullwidth +
   .form-control-lg dentro .htmlFullList). Qui solo i due selettori a CARD. */
.mng-bk-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-bottom:.3rem}
.mng-bk-day{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.7rem .2rem;background:#fff;border:1.5px solid #ece1d6;border-radius:12px;cursor:pointer;transition:all .15s;font-family:inherit}
.mng-bk-day:hover{border-color:#c9a96b}
.mng-bk-day .dow{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#9a8f7c}
.mng-bk-day .dnum{font-size:1.3rem;font-weight:700;color:#2a2018;line-height:1}
.mng-bk-day .mon{font-size:.75rem;color:#9a8f7c;text-transform:uppercase}
.mng-bk-day.is-sel{border-color:#c44a26;background:#fbeee8}
.mng-bk-day.is-sel .dnum,.mng-bk-day.is-sel .dow,.mng-bk-day.is-sel .mon{color:#a23617}
/* ORARIO a CARD (fasce Pranzo/Cena), stesso linguaggio delle card giorno */
.mng-bk-times{display:flex;flex-direction:column;gap:.95rem;margin-bottom:1.6rem}
.mng-bk-tgl{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9a8f7c;margin-bottom:.45rem;display:flex;align-items:center;gap:.35rem}
.mng-bk-tgl i{color:#c44a26}
.mng-bk-tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:.45rem}
.mng-bk-time,.mng-bk-pax{padding:.6rem .3rem;background:#fff;border:1.5px solid #ece1d6;border-radius:10px;cursor:pointer;font-family:inherit;font-size:.98rem;font-weight:600;color:#2a2018;transition:all .15s;text-align:center}
.mng-bk-time:hover,.mng-bk-pax:hover{border-color:#c9a96b}
.mng-bk-time.is-sel,.mng-bk-pax.is-sel{border-color:#c44a26;background:#fbeee8;color:#a23617}
/* Persone: chip numeriche tappabili (stessa lingua delle card), niente piu' select orfana */
.mng-bk-paxgrid{display:grid;grid-template-columns:repeat(9,1fr);gap:.45rem;max-width:600px;margin-bottom:.3rem}
@media (max-width:560px){.mng-bk-paxgrid{grid-template-columns:repeat(5,1fr)}}
.mng-bk-status{display:none;margin-top:1rem;padding:.8rem 1rem;border-radius:9px;font-size:.92rem;font-weight:500}
.mng-bk-status.is-error{display:block;background:#fbe7e2;color:#a23617;border:1px solid #f0c9bd}
.mng-bk-status.is-ok{display:block;background:#e9f5ec;color:#1f7a35;border:1px solid #bfe4c8}
.mng-bk-done{display:none;text-align:center;padding:2rem 1rem}
.mng-bk-done.is-on{display:block}
.mng-bk-done .ico{width:60px;height:60px;border-radius:50%;background:#e9f5ec;color:#1f7a35;display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 1rem}
.mng-bk-done .big{font-family:'Lora',serif;font-size:1.4rem;color:#2a2018;margin-bottom:.4rem}
.mng-bk-done p{color:#5a4a3c;margin:0}
@media (max-width:680px){.mng-bk-days{grid-template-columns:repeat(4,1fr)}.mng-bk-grid{grid-template-columns:1fr}}

/* ---- Form "Prenota un tavolo" (#prenota-tavolo) su MOBILE (2026-09-21) ----
   Solo spaziature e misure dei campi: card giorno/orario/persone e JS invariati.
   Ritmo: 6px etichetta->campo, 8px etichetta->card, 16px campo->campo, 24px tra i blocchi
   (Giorno / Orario / Persone / dati). Alcuni !important battono gli stili inline del markup
   (margin-top su "Orario" e sul blocco "Persone") e il pb-2 di Bootstrap. */
@media (max-width:575.98px){
    /* margini laterali: da 46px a ~26px per lato -> campi ~336px su 390 */
    #prenota-tavolo.mng-bk-band{padding-left:12px;padding-right:12px}
    #prenota-tavolo .prev-card{padding-left:14px;padding-right:14px}
    #prenota-tavolo label.fullwidth{display:block;margin:0 0 6px;line-height:1.35}
    #prenota-tavolo .mng-bk-days,
    #prenota-tavolo .mng-bk-times,
    #prenota-tavolo .mng-bk-paxgrid{margin-top:8px}
    /* stacco tra i blocchi */
    #prenota-tavolo .mng-bk-days + input + label.fullwidth{margin-top:24px !important}
    #prenota-tavolo .mng-bk-times + input + div{margin-top:24px !important}
    #prenota-tavolo .htmlFullList{margin-bottom:0}
    #prenota-tavolo .htmlFullList + .htmlFullList{margin-top:24px}
    /* campi dati: 16px tra uno e l'altro anche dentro la stessa .row */
    #prenota-tavolo .htmlFullList > .row{padding-bottom:0 !important;margin-bottom:0}
    #prenota-tavolo .htmlFullList > .row + .row{margin-top:16px !important}
    #prenota-tavolo .row > .col-md-6 + .col-md-6{margin-top:16px}
    /* Note e prefisso allineati agli altri campi */
    #prenota-tavolo textarea.form-control{font-size:1.25rem;padding:.5rem 1rem}
    #prenota-tavolo .tel-prefix-btn{font-size:1.1rem}
    /* Privacy: checkbox da 24px (era 13px), testo allineato */
    #prenota-tavolo fieldset.round-border{margin-top:24px;padding:16px 14px}
    #prenota-tavolo .label-privacy{padding-left:0 !important;display:flex;align-items:flex-start;gap:12px}
    #prenota-tavolo #mngBkPrivacy{width:24px;height:24px;flex:0 0 24px;margin:0;position:static !important}
    #prenota-tavolo #mngBkSubmit{margin-top:20px}
}
