/* Liste raduni (raduni.php, /raduni-auto-questa-settimana): testata, barra filtri sotto il pollice,
   pannelli di scelta. Caricato dalle pagine con $pageInlineCss. */
.rl-head-wrap { max-width:1320px;margin:0 auto;padding:1.25rem 2rem .5rem; }
.rl-head { display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'t tools' 'c tools';align-items:end;column-gap:1rem; }
.rl-h1 { grid-area:t; }
.rl-count { grid-area:c; }
.rl-tools { grid-area:tools; }
.rl-h1 { font-family:'Barlow Condensed',sans-serif;font-weight:900;text-transform:uppercase;font-size:clamp(2rem,8.6vw,3.2rem);line-height:.95;letter-spacing:-.005em;color:var(--text);margin:0;text-wrap:balance; }
.rl-h1 span { color:var(--primary); }
.rl-count { margin:.35rem 0 0;font-size:.95rem;color:var(--text-muted);font-variant-numeric:tabular-nums; }
.rl-count b { color:var(--text);font-weight:600; }
.rl-tools { display:flex;gap:6px;flex-shrink:0; }
.rl-views { display:flex;gap:6px; }
.rl-sq { width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text-muted);cursor:pointer;text-decoration:none;transition:color .15s,border-color .15s;padding:0;font:inherit; }
.rl-sq:hover { color:var(--primary);border-color:var(--primary); }
.rl-sq-t { display:none; }
.rl-sq.on,.rl-sq.on:hover { color:#fff;background:var(--primary);border-color:var(--primary); }
.rl-sq:focus-visible,.rl-btn:focus-visible,.rl-chip:focus-visible,.rl-clear:focus-visible,.rl-opt:focus-visible,.rl-sheet-x:focus-visible,.rl-go:focus-visible { outline:2px solid var(--primary);outline-offset:2px; }
.rl-bar { display:flex;gap:8px;margin-top:1rem; }
.rl-btn { display:inline-flex;align-items:center;gap:.5rem;height:48px;padding:0 1rem;border:1.5px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text);cursor:pointer;text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1rem;letter-spacing:.04em;text-transform:uppercase;transition:color .15s,border-color .15s,background .15s;max-width:100%; }
.rl-btn svg { flex-shrink:0;color:var(--text-muted);transition:color .15s; }
.rl-btn:hover { border-color:var(--primary); }
.rl-btn:hover svg { color:var(--primary); }
.rl-btn.on { border-color:var(--primary);color:var(--primary); }
.rl-btn.on svg { color:var(--primary); }
.rl-btn[aria-busy="true"] { opacity:.7;cursor:progress; }
.rl-btn-t { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0; }
.rl-geo-msg { margin:.6rem 0 0;font-size:.9rem;color:var(--text-muted); }
.rl-active { display:flex;align-items:center;gap:6px;margin-top:.85rem;overflow-x:auto;scrollbar-width:none;padding-bottom:2px; }
.rl-active::-webkit-scrollbar { display:none; }
.rl-chip { flex:none;display:inline-flex;align-items:center;gap:.35rem;height:36px;padding:0 .7rem 0 .85rem;border:1px solid var(--border-light);border-radius:50px;color:var(--text);text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap; }
.rl-chip svg { color:var(--text-muted); }
.rl-chip:hover { border-color:var(--primary); }
.rl-chip:hover svg { color:var(--primary); }
.rl-clear { flex:none;display:inline-flex;align-items:center;height:36px;padding:0 .5rem;color:var(--primary);font-weight:700;font-size:.9rem;text-decoration:underline;text-underline-offset:3px; }
/* Pannelli di scelta */
.rl-sheet:not([open]) { display:none; }
.rl-sheet { margin:auto;border:1px solid var(--border);border-top:2px solid var(--primary);border-radius:10px;background:var(--bg-card);color:var(--text);padding:0 1.25rem 1.25rem;width:min(520px,calc(100vw - 2rem));max-height:min(80vh,720px);overflow:auto;overscroll-behavior:contain; }
body:has(.rl-sheet[open]) { overflow:hidden; }
.rl-sheet::backdrop { background:rgba(0,0,0,.6); }
.rl-sheet[open] { animation:rlSheetIn .32s cubic-bezier(.16,1,.3,1); }
@keyframes rlSheetIn { from { opacity:0;transform:translateY(16px); } to { opacity:1;transform:none; } }
.rl-sheet-hd { position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);padding:.75rem 0 .5rem;margin:0; }
.rl-sheet-t { font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:1.6rem;text-transform:uppercase;margin:0;color:var(--text); }
.rl-sheet-hd form { margin:0; }
.rl-sheet-x { width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--text-muted);cursor:pointer;margin-right:-10px;border-radius:6px; }
.rl-sheet-x:hover { color:var(--primary); }
.rl-sheet-sub { margin:0 0 .5rem;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted); }
.rl-opts { display:grid;grid-template-columns:1fr;column-gap:1.25rem; }
.rl-opts--2 { grid-template-columns:1fr 1fr; }
.rl-opt { display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:48px;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none;font-weight:600;font-size:1rem; }
.rl-opt span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.rl-opt b { font-weight:600;font-size:.9rem;color:var(--text-muted);font-variant-numeric:tabular-nums; }
.rl-opt:hover span,.rl-opt.on span,.rl-opt.on b,.rl-opt.on svg { color:var(--primary); }
.rl-opt.on span { font-weight:700; }
.rl-opt.zero span,.rl-opt.zero b { color:var(--text-dim); }
.rl-search { display:flex;gap:8px;margin-top:.25rem; }
.rl-search input { flex:1;min-width:0;height:52px;background:var(--bg-panel);border:1px solid var(--border-light);border-radius:10px;color:var(--text);padding:0 .9rem;font:inherit;font-size:1rem; }
.rl-search input:focus { outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(232,64,28,.12); }
.rl-go { height:52px;padding:0 1.1rem;background:var(--primary);border:1.5px solid var(--primary);border-radius:6px;color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.1rem;letter-spacing:.04em;text-transform:uppercase;cursor:pointer; }
.rl-go:hover { background:var(--primary-dark);border-color:var(--primary-dark); }
.rl-list .cards-section-inner { padding-top:1.25rem; }
.rl-empty-ico { color:var(--text-dim);margin-bottom:.75rem; }
@media (max-width:900px) {
  .rl-head-wrap { padding:1rem 16px .25rem; }
  .rl-head { grid-template-areas:'t t' 'c tools';row-gap:.5rem;align-items:center; }
  .rl-count { margin:0; }
  .rl-bar { position:fixed;left:0;right:0;bottom:0;z-index:997;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px 8px max(8px,env(safe-area-inset-bottom));background:var(--bg-card);border-top:1px solid var(--border); }
  .rl-btn { flex-direction:column;justify-content:center;gap:3px;height:56px;padding:0 4px;border:2px solid var(--primary);background:transparent;font-size:.85rem;letter-spacing:.02em; }
  .rl-btn.on { background:var(--primary);color:#fff; }
  .rl-btn.on svg { color:#fff; }
  /* Icone in alto con la scritta sotto */
  .rl-tools,.rl-views { gap:4px; }
  .rl-sq { flex-direction:column;gap:3px;width:58px;height:52px; }
  .rl-sq-t { display:block;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.68rem;letter-spacing:.04em;line-height:1;text-transform:uppercase; }
  .rl-btn-t { max-width:100%; }
  .rl-geo-msg { position:fixed;left:16px;right:16px;bottom:calc(80px + env(safe-area-inset-bottom));z-index:998;margin:0;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:.7rem .9rem;color:var(--text); }
  .rl-list .cards-section-inner { padding-top:1rem; }
  body { padding-bottom:calc(72px + env(safe-area-inset-bottom)); }
  .hdr-sticky-auth { display:none !important; }
  #pwaInstallBanner,#iosInstallBanner,#pushBanner { bottom:calc(84px + env(safe-area-inset-bottom)) !important; }
  #cookieBanner { bottom:calc(72px + env(safe-area-inset-bottom)) !important; }
  .rl-chip,.rl-clear { height:44px; }
  body.kb-open .rl-bar { display:none; }
  .rl-sheet { width:100%;max-width:100%;margin:auto 0 0;border-radius:10px 10px 0 0;border-left:0;border-right:0;border-bottom:0;max-height:82vh;max-height:82svh;padding-bottom:max(1.25rem,env(safe-area-inset-bottom)); }
  .rl-sheet[open] { animation-name:rlSheetUp; }
  @keyframes rlSheetUp { from { transform:translateY(100%); } to { transform:none; } }
  /* Cerca scende dall'alto: in basso la tastiera di iPhone coprirebbe il campo */
  #sheetCerca { margin:0 0 auto;border-radius:0 0 10px 10px;border-top:0;border-bottom:2px solid var(--primary);padding-top:max(0px,env(safe-area-inset-top)); }
  #sheetCerca[open] { animation-name:rlSheetDown; }
  @keyframes rlSheetDown { from { transform:translateY(-100%); } to { transform:none; } }
}
@media (max-width:380px) { .rl-opts--2 { grid-template-columns:1fr; } .rl-tools .rl-sq { width:52px; } }
@media (prefers-reduced-motion:reduce) { .rl-sheet[open],#sheetCerca[open] { animation:none; } }

/* ── Raduni questa settimana: briciole, elenco diviso per giorno, mappa, link in fondo ── */
.rw-crumbs { display:flex;flex-wrap:nowrap;gap:.4rem;overflow-x:auto;scrollbar-width:none;margin:0 0 .6rem;font-size:.78rem;color:var(--text-muted);white-space:nowrap; }
.rw-crumbs::-webkit-scrollbar { display:none; }
.rw-crumbs a { color:var(--text-muted);text-decoration:none; }
.rw-crumbs a:hover { color:var(--primary); }
.rw-crumbs span[aria-hidden] { color:var(--text-dim); }
.rw-crumbs [aria-current] { color:var(--text); }

.rw-day { margin-top:1.5rem; }
.rw-day:first-child { margin-top:0; }
.rw-day-hd { display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-top:2px solid var(--primary);padding:.75rem 0 1rem; }
.rw-day-t { margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.35rem;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);line-height:1.15; }
.rw-day-t span { color:var(--text); }
.rw-day-n { flex:none;font-size:.88rem;color:var(--text-muted);font-variant-numeric:tabular-nums; }
.rw-day-link { flex:none;display:inline-flex;align-items:center;min-height:44px;font-weight:700;font-size:.9rem;color:var(--primary);text-decoration:none; }
.rw-day-link:hover { text-decoration:underline;text-underline-offset:3px; }
.rw-next .rw-day-hd { border-top-color:var(--border-light); }

.rw-card { position:relative; }
.rw-km { position:absolute;top:.5rem;right:.5rem;z-index:3;background:rgba(0,0,0,.75);color:#fff;font-size:.72rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;font-variant-numeric:tabular-nums; }

.rw-past { margin-top:2rem;border-top:1px solid var(--border); }
.rw-past summary { display:flex;align-items:center;gap:.5rem;min-height:52px;cursor:pointer;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted); }
.rw-past summary b { font-family:'Barlow',sans-serif;font-weight:600;font-size:.9rem;color:var(--text-dim);font-variant-numeric:tabular-nums; }
.rw-past summary:hover { color:var(--text); }
.rw-past summary:focus-visible { outline:2px solid var(--primary);outline-offset:2px; }
.rw-past .cards-grid { padding:.5rem 0 1rem; }

.rw-empty-t { font-size:1.1rem;color:var(--text);margin:0 0 .5rem; }

.rw-more { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem 3rem;margin-top:3rem; }
.rw-more-b { min-width:0;border-top:2px solid var(--primary);padding-top:.75rem; }
.rw-more-t { margin:0 0 .25rem;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.2rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text); }
.rw-more .rl-opts--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rw-more .rl-opt svg { color:var(--text-dim); }
.rw-more .rl-opt:hover svg { color:var(--primary); }

.rw-map-bar { max-width:1320px;margin:0 auto;padding:.75rem 2rem;display:flex;gap:1rem;flex-wrap:wrap;font-size:.88rem;color:var(--text-muted); }
.rw-map-bar b { color:var(--text);font-variant-numeric:tabular-nums; }
.rw-map-warn { color:var(--orange); }
.rw-map { height:72vh;min-height:460px;max-height:800px;background:var(--bg-panel);z-index:0; }
.rw-popup .leaflet-popup-content-wrapper { background:transparent;border:none;box-shadow:none;padding:0; }
.rw-popup .leaflet-popup-content { margin:0; }
.rw-popup .leaflet-popup-tip { display:none; }
.rw-pop { background:var(--bg-card);border:1px solid var(--border);border-top:2px solid var(--primary);border-radius:8px;padding:.8rem 1rem;min-width:210px;font-family:'Barlow',sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.35); }
.rw-pop-tipo { font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.25rem; }
.rw-pop-t { font-weight:700;font-size:.95rem;color:var(--text);line-height:1.25;margin-bottom:.35rem; }
.rw-pop-m { font-size:.82rem;color:var(--text-muted); }
.rw-pop-a { display:inline-flex;align-items:center;min-height:36px;margin-top:.5rem;padding:0 .9rem;background:var(--primary);color:#fff !important;border-radius:6px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none; }

/* ── Raduni oggi: nota di ripiego, invito agli avvisi, domande frequenti ── */
.rw-note { display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem;margin-bottom:1.5rem; }
.rw-note p { margin:0;flex:1 1 280px;color:var(--text-muted);font-size:.95rem;line-height:1.55; }
.rw-note strong { color:var(--text); }

.rw-alert { display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin-top:2.5rem;padding:1.1rem 1.25rem;background:var(--bg-panel);border:1px solid var(--border);border-top:2px solid var(--primary);border-radius:10px; }
.rw-alert-ico { flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);color:var(--primary); }
.rw-alert-txt { flex:1 1 300px;min-width:0; }
.rw-alert-txt h2 { margin:0 0 .2rem;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.2rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text); }
.rw-alert-txt p { margin:0;font-size:.92rem;color:var(--text-muted);line-height:1.55; }
.rw-alert .btn { min-height:44px;display:inline-flex;align-items:center; }

.rw-faq details { border-bottom:1px solid var(--border); }
.rw-faq summary { display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:48px;padding:.6rem 0;cursor:pointer;list-style:none;font-weight:600;font-size:.98rem;color:var(--text); }
.rw-faq summary::-webkit-details-marker { display:none; }
.rw-faq summary::after { content:'+';flex:none;font-size:1.3rem;font-weight:400;color:var(--text-dim);line-height:1; }
.rw-faq details[open] summary::after { content:'\2212'; }
.rw-faq summary:hover { color:var(--primary); }
.rw-faq summary:focus-visible { outline:2px solid var(--primary);outline-offset:2px; }
.rw-faq p { margin:0 0 .9rem;font-size:.93rem;line-height:1.6;color:var(--text-muted);max-width:65ch; }

@media (max-width:900px) {
  .rw-day-t { font-size:1.2rem; }
  .rw-more { grid-template-columns:minmax(0,1fr);gap:1.75rem; }
  .rw-map-bar { padding:.6rem 16px; }
  .rw-map { height:calc(100svh - 230px);min-height:380px; }
}
@media (max-width:600px) {
  .rw-more .rl-opts--2 { grid-template-columns:minmax(0,1fr); }
}
