/* Webooking Directory — stile minimo, pensato per essere sovrascritto dal child theme.
   Colori e font vengono dal tema (variabili Astra); qui solo struttura. */

.wb-count { font-weight: 400; opacity: .6; font-size: .85em; }
.wb-sep { opacity: .5; }

/* indice DMOZ (shortcode webooking_directory) e regioni */
.wb-directory, .wb-regioni { margin: 1.5em 0; }
.wb-cols-2 { column-count: 2; column-gap: 2.5rem; }
.wb-cols-3 { column-count: 3; column-gap: 2.5rem; }
.wb-cols-4 { column-count: 4; column-gap: 2rem; }
@media (max-width: 921px) { .wb-cols-3, .wb-cols-4 { column-count: 2; } }
@media (max-width: 600px) { .wb-cols-2, .wb-cols-3, .wb-cols-4 { column-count: 1; } }
.wb-directory__ramo { break-inside: avoid; margin: 0 0 1.4em; }
.wb-directory__titolo { margin: 0 0 .2em; font-size: 1.15em; }
.wb-directory__figli { margin: 0; line-height: 1.7; font-size: .95em; }
.wb-regioni__lista, .wb-figli { list-style: none; margin: 0; padding: 0; }
.wb-regioni__lista li { break-inside: avoid; line-height: 1.9; }
.wb-figli li { line-height: 1.9; }
.wb-figli--inline li { display: inline; }
.wb-figli--inline li + li::before { content: ", "; opacity: .5; }
.wb-archivio__sottocategorie .wb-figli { column-count: 3; column-gap: 2rem; }
@media (max-width: 921px) { .wb-archivio__sottocategorie .wb-figli { column-count: 2; } }
@media (max-width: 600px) { .wb-archivio__sottocategorie .wb-figli { column-count: 1; } }

/* liste di schede (archivi e shortcode) */
.wb-lista { list-style: none; margin: 0 0 1.5em; padding: 0; }
.wb-sito { padding: .9em 0; border-bottom: 1px solid rgba(0,0,0,.08); }
.wb-sito--con-immagine { display: flex; gap: 1.1em; align-items: flex-start; }
.wb-sito__immagine { flex: 0 0 150px; }
.wb-sito__immagine img { display: block; width: 150px; height: 100px; object-fit: cover; border-radius: 4px; }
.wb-sito__corpo { flex: 1 1 auto; min-width: 0; }
@media (max-width: 600px) { .wb-sito__immagine { flex-basis: 96px; } .wb-sito__immagine img { width: 96px; height: 72px; } }
.wb-sito__titolo { font-weight: 600; font-size: 1.05em; }
.wb-sito__dominio { font-size: .85em; opacity: .6; margin-left: .4em; }
.wb-sito__badge { display: inline-block; font-size: .75em; padding: .05em .5em; margin-left: .4em; border-radius: 3px; background: rgba(0,0,0,.06); text-decoration: none; vertical-align: middle; }
.wb-sito__excerpt { margin: .3em 0 .2em; }
.wb-sito__scheda { font-size: .85em; }

/* archivi */
.wb-archivio__testata { margin-bottom: 1.5em; }
.wb-archivio__titolo, .wb-scheda__titolo { font-size: clamp(1.7rem, 3.2vw, 2.3rem); line-height: 1.2; margin: .2em 0 .6em; }  /* il tema della demo usa H1 enormi: qui una misura sobria, sovrascrivibile */
.wb-scheda__percorso { font-size: .85em; opacity: .75; margin: 0 0 .5em; }
.wb-archivio__manifesto { opacity: .9; }  /* se si vuole una riga più corta per leggibilità: max-width: 48em */
.wb-archivio__h2 { font-size: 1.3em; margin: 1.6em 0 .6em; }
.wb-regione__h3 { font-size: 1.05em; margin: 1.2em 0 .3em; opacity: .85; }
.wb-regione__indice { font-size: .9em; margin: 0 0 1em; }
.wb-filtro-regioni { font-size: .9em; margin: 1em 0 1.5em; line-height: 2; }
.wb-filtro-regioni a { margin-right: .7em; white-space: nowrap; }
.wb-filtro-regioni a.wb-attiva { font-weight: 700; text-decoration: underline; }
.wb-vuoto { opacity: .7; font-style: italic; }

/* scheda singola */
.wb-scheda__link { margin: .5em 0 1em; }
.wb-bottone { display: inline-block; padding: .55em 1.2em; border-radius: 4px; background: var(--ast-global-color-0, #0170B9); color: #fff !important; text-decoration: none; font-weight: 600; }
.wb-bottone:hover { opacity: .9; }
.wb-scheda__dominio { margin-left: .8em; opacity: .65; font-size: .9em; }
.wb-scheda__meta { font-size: .9em; opacity: .8; }
.wb-scheda__meta-item + .wb-scheda__meta-item::before { content: " · "; }
.wb-scheda__piede { margin-top: 2em; padding-top: 1em; border-top: 1px solid rgba(0,0,0,.08); font-size: .95em; }
