.agsd-av{--r:#b3261e;--g:#1f6f43;--gold:#c9a227;--ink:#2b2118;font-family:inherit;color:var(--ink);max-width:900px;margin:0 auto}
.agsd-av h3{font-family:Georgia,serif;color:var(--r);text-align:center;margin:.3em 0 .6em}
.agsd-av-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:10px;padding:14px;border-radius:14px;background:radial-gradient(circle at 20% 10%,#fff8e7,#f3e3c3);border:2px solid var(--gold)}
.agsd-av-day{position:relative;aspect-ratio:1;border-radius:10px;border:2px solid var(--g);background:#fff;color:var(--g);font:700 1.6em Georgia,serif;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .15s}
.agsd-av-day small{font:600 .42em system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em}
.agsd-av-day:hover:not([disabled]),.agsd-av-day:focus-visible{transform:scale(1.06);outline:3px solid var(--gold);outline-offset:2px}
.agsd-av-day[disabled]{background:repeating-linear-gradient(45deg,var(--r),var(--r) 8px,#9a1f18 8px,#9a1f18 16px);color:#fff;border-color:#7a1712;cursor:not-allowed}
.agsd-av-day.sel{background:var(--gold);color:#fff;border-color:#8a6d10}
.agsd-av-legend{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:10px 0;font-size:.95em}
.agsd-av-legend span{display:inline-flex;gap:6px;align-items:center}
.agsd-av-legend i{width:18px;height:18px;border-radius:4px;border:2px solid var(--g);background:#fff;display:inline-block}
.agsd-av-legend i.o{background:repeating-linear-gradient(45deg,var(--r),var(--r) 4px,#9a1f18 4px,#9a1f18 8px);border-color:#7a1712}
.agsd-av-legend i.s{background:var(--gold);border-color:#8a6d10}
.agsd-av-form{margin-top:14px;padding:16px;border-radius:12px;background:#fff;border:1px solid #ddd;display:grid;gap:10px;grid-template-columns:1fr 1fr}
.agsd-av-form .full{grid-column:1/-1}
.agsd-av-form label{display:flex;flex-direction:column;font-weight:600;gap:4px}
.agsd-av-form input[type=text],.agsd-av-form input[type=email],.agsd-av-form input[type=tel]{padding:10px;border:1px solid #bbb;border-radius:8px;font-size:16px}
.agsd-av-form .err{color:var(--r);font-weight:400;font-size:.9em}
.agsd-av-form .chk{flex-direction:row;font-weight:400;align-items:flex-start}
.agsd-av-hp{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}
.agsd-av-btn{background:var(--r);color:#fff;border:0;border-radius:999px;padding:12px 22px;font-weight:700;font-size:1em;cursor:pointer}
.agsd-av-btn[disabled]{opacity:.6}
.agsd-av-msg{padding:12px;border-radius:10px;margin:10px 0}
.agsd-av-msg.ok{background:#e6f4ea;color:var(--g)}.agsd-av-msg.ko{background:#fdecea;color:var(--r)}
.agsd-av-privacy{font-size:.85em;color:#555}
.agsd-av-map{border-radius:14px;border:2px solid var(--gold);overflow:hidden}
.agsd-av-list{list-style:none;padding:0;margin:12px 0}
.agsd-av-list li{padding:8px 10px;border-bottom:1px dashed #d8c08a}
.agsd-av-list b{color:var(--r);margin-right:6px}
.agsd-av-next{text-align:center;font-style:italic}
.agsd-av-pin{background:var(--r);color:#fff;border:2px solid var(--gold);border-radius:50%;width:30px!important;height:30px!important;display:flex;align-items:center;justify-content:center;font:700 13px Georgia,serif}
@media(max-width:560px){.agsd-av-form{grid-template-columns:1fr}.agsd-av-grid{grid-template-columns:repeat(4,1fr);gap:7px;padding:9px}}

/* ===== 0.9.1 Tema natalizio (solo dentro i blocchi del plugin) ===== */
.agsd-av-xmas{--fir:#1d4d33;--fir2:#2f6b48;--bord:#7d1d2c;--r:#b3261e;--gold:#c9a227;--cream:#fff9ec;position:relative;padding:14px 12px 18px;border-radius:18px;background-color:var(--fir);background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1.5px),radial-gradient(rgba(255,255,255,.35) 1px,transparent 1.5px);background-size:38px 38px,61px 61px;background-position:0 0,19px 27px;box-shadow:inset 0 0 0 3px var(--gold),0 6px 18px rgba(0,0,0,.18)}
.agsd-av-xmas::before{content:"";display:block;height:34px;margin:-6px -4px 6px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='34' viewBox='0 0 120 34'%3E%3Cpath d='M0 8 Q30 30 60 8 T120 8' fill='none' stroke='%232f6b48' stroke-width='7' stroke-linecap='round'/%3E%3Cpath d='M0 8 Q30 30 60 8 T120 8' fill='none' stroke='%23164029' stroke-width='2' stroke-dasharray='3 5'/%3E%3Ccircle cx='15' cy='16' r='4' fill='%23e8c547'/%3E%3Ccircle cx='38' cy='21' r='4' fill='%23d8343f'/%3E%3Ccircle cx='60' cy='9' r='4' fill='%23fff3c4'/%3E%3Ccircle cx='82' cy='16' r='4' fill='%23e8c547'/%3E%3Ccircle cx='105' cy='21' r='4' fill='%23d8343f'/%3E%3C/svg%3E") repeat-x 0 0/120px 34px;pointer-events:none}
.agsd-av-xmas .agsd-av-title{color:var(--cream);font-family:Georgia,"Times New Roman",serif;font-size:1.6em;text-shadow:0 2px 0 rgba(0,0,0,.35);margin:.1em 0 .5em}
.agsd-av-xmas .agsd-av-title::before,.agsd-av-xmas .agsd-av-title::after{content:"\2605";color:var(--gold);margin:0 .4em;font-size:.8em}
.agsd-av-xmas .agsd-av-grid{background:linear-gradient(#fff9ec,#f4e6c8);border:3px solid var(--gold);box-shadow:inset 0 0 0 4px var(--bord)}
.agsd-av-xmas .agsd-av-day{background:linear-gradient(160deg,#fff 0,#fdf6e4 100%);border:2px solid var(--fir2);color:var(--fir);box-shadow:0 3px 0 var(--fir),inset 0 0 0 4px #fff,inset 0 0 0 5px rgba(201,162,39,.55);border-radius:8px 8px 6px 6px}
.agsd-av-xmas .agsd-av-day::before{content:"";position:absolute;top:6px;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--gold)}
.agsd-av-xmas .agsd-av-day small{color:var(--fir2)}
.agsd-av-xmas .agsd-av-day[disabled]{background:repeating-linear-gradient(45deg,var(--r),var(--r) 8px,var(--bord) 8px,var(--bord) 16px);color:#fff;border-color:var(--bord);box-shadow:0 3px 0 #4f111b;opacity:1}
.agsd-av-xmas .agsd-av-day[disabled] small{color:#fff;background:rgba(0,0,0,.35);padding:1px 4px;border-radius:4px}
.agsd-av-xmas .agsd-av-day[disabled]::before{background:#fff}
.agsd-av-xmas .agsd-av-day.sel{background:linear-gradient(160deg,#e8c547,#c9a227);color:#3a2a00;border-color:#8a6d10}
.agsd-av-xmas .agsd-av-day.sel small{color:#3a2a00}
.agsd-av-xmas .agsd-av-legend{color:var(--cream)}
.agsd-av-xmas .agsd-av-legend i{background:#fff;border-color:var(--fir2)}
.agsd-av-xmas .agsd-av-legend i.o{background:repeating-linear-gradient(45deg,var(--r),var(--r) 4px,var(--bord) 4px,var(--bord) 8px);border-color:#fff}
.agsd-av-xmas .agsd-av-form{background:var(--cream);border:2px solid var(--gold)}
.agsd-av-xmas .agsd-av-btn{background:var(--bord);box-shadow:0 3px 0 #4f111b}
.agsd-av-xmas .agsd-av-btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.agsd-av-xmas .agsd-av-msg.ok{background:#e6f4ea}.agsd-av-xmas .agsd-av-msg.ko{background:#fdecea}
.agsd-av-mapframe{position:relative;padding:8px;border-radius:16px;background:linear-gradient(135deg,var(--gold),#e8d38a 50%,var(--gold));box-shadow:0 0 0 3px var(--bord)}
.agsd-av-xmas .agsd-av-map{border:0;border-radius:10px;background:#e9efe9;min-height:260px;position:relative;z-index:0}
.agsd-av-map-ko{display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;color:var(--bord);font-weight:600;background:var(--cream)!important}
.agsd-av-xmas .agsd-av-mapnote,.agsd-av-xmas .agsd-av-next{color:var(--cream);text-align:center}
.agsd-av-xmas .agsd-av-list{background:var(--cream);border-radius:12px;padding:6px 12px;border:2px solid var(--gold)}
.agsd-av-xmas .agsd-av-list b{color:var(--bord)}
.agsd-av-xmas .agsd-av-pin{background:var(--bord);border:2px solid var(--gold);box-shadow:0 0 0 2px #fff,0 2px 6px rgba(0,0,0,.4);width:32px!important;height:32px!important}
.agsd-av-xmas .leaflet-container a{color:#0b5a8a}
@keyframes agsdTwinkle{0%,100%{opacity:1}50%{opacity:.75}}
.agsd-av-xmas::before{animation:agsdTwinkle 3.5s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.agsd-av-xmas::before{animation:none}.agsd-av-day{transition:none}.agsd-av-day:hover:not([disabled]){transform:none}}
@media(max-width:560px){.agsd-av-xmas{padding:10px 6px 14px;border-radius:12px}.agsd-av-xmas .agsd-av-title{font-size:1.25em}.agsd-av-mapframe{padding:5px}}
.agsd-av-xmas .agsd-av-legend i.s{background:linear-gradient(160deg,#e8c547,#c9a227);border-color:#8a6d10}
.agsd-av-intro{text-align:center;margin:0 0 10px;font-weight:600}.agsd-av-xmas .agsd-av-intro{color:var(--cream)}
.agsd-av-wait{text-align:center;padding:34px 16px;margin:6px 0;border-radius:14px;background:var(--cream,#fff9ec);border:3px solid var(--gold,#c9a227);box-shadow:inset 0 0 0 4px var(--bord,#7d1d2c)}
.agsd-av-wait-star{font-size:48px;color:var(--gold,#c9a227);line-height:1}
.agsd-av-wait-t{font:700 1.3em Georgia,serif;color:var(--bord,#7d1d2c);margin:.4em 0}
.agsd-av-wait-c{font-size:1.1em;font-weight:600;color:var(--fir,#1d4d33)}
.agsd-av-wait-s{color:#4a3b2a}
