/* Eventi Alto Adige – stile schede */
.odhev{--odhev-red:#E50927;--odhev-red-dark:#A8061C;--odhev-bg:#F6F6F4;--odhev-line:rgba(0,0,0,.08);margin:1.5em 0}

/* Navigazione: pulsanti a pillola */
.odhev-nav{margin:0 0 2em;padding:1em 1.1em;background:var(--odhev-bg);border-radius:14px;font-size:.9em}
.odhev-nav-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45em}
.odhev-nav-row+.odhev-nav-row{margin-top:.7em}
.odhev-nav-lbl{font-weight:700;margin-right:.3em;text-transform:uppercase;font-size:.78em;letter-spacing:.06em;opacity:.65}
.odhev-nav-item{display:inline-block;padding:.35em .85em;border-radius:999px;background:#fff;border:1px solid var(--odhev-line);text-decoration:none!important;color:inherit!important;white-space:nowrap;line-height:1.3;transition:border-color .15s,color .15s}
a.odhev-nav-item:hover{border-color:var(--odhev-red);color:var(--odhev-red)!important}
strong.odhev-nav-item{background:var(--odhev-red);border-color:var(--odhev-red);color:#fff!important}

/* Titoli dei giorni */
.odhev-day{font-size:1.2em;font-weight:800;margin:2em 0 .8em;padding-left:.7em;border-left:5px solid var(--odhev-red);line-height:1.2}

/* Schede evento */
.odhev-list{list-style:none;margin:0;padding:0;display:grid;gap:.7em}
.odhev-item{display:flex;gap:1em;align-items:flex-start;padding:1em;background:#fff;border:1px solid var(--odhev-line);border-radius:14px;box-shadow:0 1px 2px rgba(0,0,0,.04);transition:box-shadow .15s,transform .15s}
.odhev-item:hover{box-shadow:0 6px 18px rgba(0,0,0,.08);transform:translateY(-1px)}
.odhev-badge-box{flex:0 0 4.6em;min-height:4.6em;border-radius:12px;background:var(--odhev-red);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.05;padding:.3em}
.odhev-badge-top{font-size:.7em;text-transform:uppercase;letter-spacing:.05em;opacity:.9}
.odhev-badge-main{font-size:1.45em;font-weight:900}
.odhev-badge-time .odhev-badge-main{font-size:1.15em}
.odhev-badge-until{background:#fff;color:var(--odhev-red);border:2px solid var(--odhev-red)}
.odhev-badge-until .odhev-badge-main{font-size:1.05em}
.odhev-body{flex:1;min-width:0}
.odhev-title{font-weight:800;font-size:1.05em;line-height:1.3}
.odhev-meta{display:flex;flex-wrap:wrap;gap:.2em .9em;margin-top:.3em;font-size:.88em;opacity:.8}
.odhev-where:before{content:"📍 "}
.odhev-where a{color:inherit;text-decoration:underline;text-decoration-color:rgba(0,0,0,.25)}
.odhev-links{display:flex;flex-wrap:wrap;gap:.4em;margin-top:.6em}
.odhev-btn{display:inline-block;font-size:.8em;font-weight:600;padding:.3em .8em;border-radius:999px;border:1px solid var(--odhev-red);color:var(--odhev-red)!important;text-decoration:none!important;line-height:1.3}
.odhev-btn:hover{background:var(--odhev-red);color:#fff!important}
.odhev-cancelled .odhev-title{text-decoration:line-through;opacity:.55}
.odhev-cancelled .odhev-badge-box{background:#999}
.odhev-badge{font-size:.72em;padding:.15em .5em;border-radius:4px;background:#333;color:#fff;vertical-align:middle;font-weight:600}

/* Testi */
.odhev-intro{font-size:1.1em;margin-bottom:1.5em}
.odhev-note,.odhev-source{font-size:.82em;opacity:.65;margin-top:2em}
.odhev-empty{padding:1.5em;background:var(--odhev-bg);border-radius:14px}

/* Elenco comuni */
.odhev-places{margin-top:2.5em;padding:1em 1.2em;background:var(--odhev-bg);border-radius:14px}
.odhev-places summary{cursor:pointer;font-weight:800;font-size:1.1em}
.odhev-places-list{list-style:none;margin:1em 0 0;padding:0;columns:3 11em;column-gap:2em;font-size:.9em}
.odhev-places-list li{break-inside:avoid;padding:.15em 0}

/* Blocco home: griglia di schede */
.odhev-compact .odhev-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.odhev-compact .odhev-item{height:100%;box-sizing:border-box}
.odhev-more{margin-top:1.2em}
.odhev-more a{display:inline-block;padding:.6em 1.3em;border-radius:999px;background:var(--odhev-red);color:#fff!important;font-weight:700;text-decoration:none!important}
.odhev-more a:hover{background:var(--odhev-red-dark)}

@media (max-width:600px){
.odhev-item{padding:.8em;gap:.8em}
.odhev-badge-box{flex-basis:3.9em;min-height:3.9em}
.odhev-badge-main{font-size:1.2em}
.odhev-badge-time .odhev-badge-main{font-size:1em}
}
