

#list .daygroup{grid-column:1/-1;margin:24px 0 0;padding:0 16px;font-size:var(--fs-heading);font-weight:600;line-height:1.35;color:var(--muted);
  text-transform:none;letter-spacing:0}
#list .daygroup:first-child{margin-top:0}
#list .daygroup b{font-weight:600;color:var(--ink)}
#list{gap:16px}

#list > .lcard--a{grid-row:span 3;display:grid;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr);row-gap:0}
#list > .fbanner{grid-row:span 3}

@media (max-width:860px){
  .mobile-events #list{gap:12px;padding:8px 10px 32px;background:var(--bg)}
  .mobile-events #list .daygroup{display:block;margin-top:16px}
  .mobile-events #list .daygroup:first-child{margin-top:4px}
  .mobile-events.mobile-nearest #list .daygroup{display:none}
}

@media (min-width:861px){
  #side{width:330px;padding:0;box-sizing:border-box;background:var(--surface);border-right:1px solid var(--line)}
  #map{border:0;border-radius:0;overflow:hidden;background:var(--chip)}

  #list{padding:12px 10px 24px 5px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(272px,1fr))}
  body.list-only #list{padding:12px 10px 24px 10px}
}

#map .whenlegend{border:0;border-radius:var(--r-md);box-shadow:var(--shadow-media);color:var(--ink-2);font:400 var(--fs-label)/1.4 var(--font)}
#map .whenlegend:not(.open){border-radius:var(--r-pill)}
#map .whenlegend .wl-pill{height:28px;padding:0 12px;gap:6px;color:var(--ink)}
#map .whenlegend{position:relative;display:flex;flex-direction:column;justify-content:flex-end}
#map .whenlegend.off{display:none}
#map .whenlegend>*{flex:none}
#map .whenlegend .wl-body{padding:12px 14px;width:max-content}
#map .whenlegend .wl-row{gap:8px;line-height:1.6}
#map .whenlegend i{width:8px;height:8px}

#map .leaflet-bottom.leaflet-left{display:flex;align-items:flex-end;right:0}
#map .mappages{pointer-events:auto;margin:0 10px 10px auto;height:28px;display:flex;align-items:center}
#map .mappages__about{color:var(--ink);font:400 var(--fs-meta)/18px var(--font);white-space:nowrap;text-decoration-color:rgba(21,36,44,.3)}
#map .mappages__about:hover{color:var(--link-hover);text-decoration-color:var(--link-hover-line)}
#map .leaflet-control-attribution{padding:0 6px;font-size:9px;line-height:10px;white-space:nowrap}

#map .mdot--lift{filter:drop-shadow(0 1px 1px rgba(21,36,44,.3))}
.mbadge-at{width:0;height:0;border:0;background:none}
.mbadge{position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;
  padding:0 6px;box-sizing:border-box;border:2px solid #fff;border-radius:var(--r-pill);transform:translate(-50%,-50%);
  font:700 var(--fs-label)/1 var(--font);font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;
  box-shadow:0 1px 3px rgba(21,36,44,.3);transition:box-shadow var(--motion)}
.mbadge--today{background:var(--badge-today);color:#fff}
.mbadge--weekend{background:var(--yellow);color:var(--ink)}
.mbadge--later{background:var(--when-later);color:var(--ink)}
.mbadge.hl{box-shadow:0 1px 3px rgba(21,36,44,.3),0 0 0 4px rgba(224,36,94,.45)}

#list > .fbanner{position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;box-sizing:border-box;padding:20px;
  border:1px solid #C9DBF7;border-radius:var(--r-md);background:var(--blue-soft);color:var(--ink);font:400 var(--fs-body)/var(--lh-text) var(--font)}

.fbanner__title{margin:0;font-size:17px;font-weight:700;line-height:1.35}

.lauf-word b{font-weight:800}
.lauf-word b:nth-child(1){color:var(--red-text)}.lauf-word b:nth-child(2){color:var(--blue-text)}
.lauf-word b:nth-child(3){color:var(--tbc-fg)}.lauf-word b:nth-child(4){color:var(--green-text)}
.fbanner__text{margin:0;color:var(--ink-2)}
.fbanner__acts{display:flex;flex-direction:column;gap:8px}
.fbanner__btn{justify-content:flex-start;width:100%;height:40px;border-color:var(--link-line);background:var(--surface);color:var(--blue-text);font-weight:400}

.fbanner__btn:hover{background:#F3F7FE;border-color:var(--blue);color:var(--blue-hover)}
.fbanner__mail{margin:0;font-size:var(--fs-meta);color:var(--ink-2)}

.fbanner__mail .lnk:not(:hover){color:var(--blue-text)}

.fbanner__ai svg{flex:none;margin-top:1px}
.fbanner__ai{display:flex;align-items:flex-start;gap:6px;line-height:18px;margin:0;padding:8px 10px;border-radius:var(--r-sm);background:var(--ai-bg);color:var(--ai-fg);font-size:var(--fs-meta)}
@media (max-width:860px){ .fbanner__btn{height:44px} }

.pfoot{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;margin-top:40px;padding-top:16px;border-top:1px solid var(--line);
  font-size:var(--fs-meta);color:var(--muted)}
#list > .pfoot{grid-column:1/-1;margin:24px 0 8px;padding-left:16px;padding-right:16px}

@media (min-width:861px){ #list > .pfoot{margin-bottom:-9px;line-height:18px} }
.pfoot button.lnk{padding:0;border:0;background:none;font:inherit;cursor:pointer}
@media (max-width:860px){ .pfoot a,.pfoot button.lnk{display:inline-flex;align-items:center;min-height:44px} }

.langmenu .langmenu__link{display:flex;align-items:center;min-height:44px;padding:0 12px;border-top:1px solid var(--line);color:var(--ink);font-size:var(--fs-body);text-decoration:none}
.langmenu .langmenu__link + .langmenu__link{border-top:0}
.langmenu .langmenu__link:hover,.langmenu .langmenu__link:focus-visible{background:var(--bg);outline:none}
