/* Prenotazione online */
.pr-n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--surface);font-family:Figtree,sans-serif;font-size:15px;font-weight:700;margin-right:10px;vertical-align:3px}
.pr-luoghi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pr-card{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--line);border-radius:14px;padding:14px;background:var(--surface);cursor:pointer;position:relative}
.pr-card input{position:absolute;opacity:0;pointer-events:none}
.pr-card i{width:12px;height:12px;border-radius:50%;flex:none;margin-top:5px}
.pr-card>span{display:flex;flex-direction:column;gap:3px}
.pr-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}
.pr-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.pr-sel{font:inherit;font-size:16px;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.pr-giorni{display:flex;flex-direction:column;gap:12px}
.pr-mese{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pr-mese>span{flex-basis:100%;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.pr-g,.pr-o{font:inherit;cursor:pointer;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);border-radius:12px}
.pr-g{width:54px;padding:6px 0;display:flex;flex-direction:column;align-items:center;line-height:1.15}
.pr-g small{font-size:11.5px;color:var(--muted);text-transform:uppercase}
.pr-g b{font-size:19px}
.pr-ore{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.pr-o{padding:9px 16px;font-weight:600;font-size:15.5px}
.pr-g:hover,.pr-o:hover{border-color:var(--accent)}
.pr-g.on,.pr-o.on{background:var(--accent);border-color:var(--accent);color:var(--surface)}
.pr-g.on small{color:inherit}
.pr-scelta{font-weight:600;color:var(--accent);margin:0}
.pr-riep{font-size:18px;line-height:1.5;margin:0}
@media (max-width:640px){.pr-luoghi{grid-template-columns:minmax(0,1fr)}.pr-g{width:calc((100% - 36px)/7)}}
.qwrap [hidden]{display:none!important}
/* Area operatori */
.qf input[type=password]{font:inherit;font-size:16px;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px;width:100%;box-sizing:border-box}
.op-esci{font-weight:600;color:var(--accent)}
.op-msg{background:var(--ok-bg);color:var(--ok);border-radius:10px;padding:12px 16px;font-weight:600}
.op-nav{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.op-nav h2{font-size:19px;margin:0}
.op-nav .ghost{font-size:14px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);text-decoration:none;color:var(--fg)}
.op-sett{display:flex;flex-direction:column;gap:6px}
.op-g{display:grid;grid-template-columns:62px minmax(0,1fr);grid-template-areas:"n b" "n t";gap:2px 10px;align-items:center;padding:8px 10px;border:1.5px solid var(--line);border-radius:12px;text-decoration:none;color:var(--fg);background:var(--surface)}
.op-g:hover{border-color:var(--accent)}
.op-g.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}
.op-g.fuori{opacity:.4}
.op-gn{grid-area:n;font-size:13px;text-transform:uppercase;color:var(--muted)}
.op-gn b{font-size:19px;color:var(--fg);display:block}
.op-bar{grid-area:b;position:relative;height:14px;border-radius:7px;background:#e9e2d4;overflow:hidden}
.op-bar i,.op-leg i{position:absolute;top:0;bottom:0;background:#44A862}
.op-bar i.mio,.op-leg i.mio{background:#8C5CC9}
.op-txt{grid-area:t;font-size:13px;color:var(--muted)}
.op-leg i{position:relative;display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-left:6px}
.op-ore{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.op-list{list-style:none;margin:0;padding:0}
.op-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);flex-wrap:wrap}
.op-list li:first-child{border-top:0}
.op-sm{font:inherit;font-size:14px;padding:5px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--fg)}
.op-riep{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.op-riep>div{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:12px;padding:12px}
.op-riep b{font-size:22px}
.pr-piede{display:flex;justify-content:center;gap:10px;font-size:13.5px;color:var(--muted);padding:8px 0 4px;border-top:1px solid var(--line)}.pr-piede a{color:var(--muted)}.pr-piede a:hover{color:var(--accent)}
.pr-avviso{background:#FBEBDD;border:1.5px solid #E2A46E;color:#7A3E10;border-radius:12px;padding:12px 16px;line-height:1.45;font-size:15.5px}
.pr-avviso b{color:#7A3E10}
.intro .pr-avviso{margin:4px 0 2px}
.pr-o.pr-altro{border-style:dashed;color:var(--accent)}
.pr-o.pr-altro.on{border-style:solid;color:var(--surface)}
.pr-azioni{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:6px 0 14px}
.pr-azioni .ghost{display:inline-block;font-weight:600;padding:9px 16px;border-radius:999px;border:2px solid var(--accent);color:var(--accent);text-decoration:none}
.pr-azioni button.book{border:0;font:inherit;font-weight:600;cursor:pointer}
